claude-flow
Version:
Ruflo - Enterprise AI agent orchestration for Claude Code. Deploy 60+ specialized agents in coordinated swarms with self-learning, fault-tolerant consensus, vector memory, and MCP integration
157 lines (139 loc) • 4.17 kB
text/typescript
/**
* @claude-flow/browser
* Browser automation for AI agents - integrates agent-browser with claude-flow swarms
*
* Features:
* - 50+ MCP tools for browser automation
* - AI-optimized snapshots with element refs (@e1, @e2)
* - Multi-session support for swarm coordination
* - Trajectory tracking for ReasoningBank/SONA learning
* - Integration with agentic-flow optimizations
*
* @example
* ```typescript
* import { createBrowserService, browserTools } from '@claude-flow/browser';
*
* // Create a browser service
* const browser = createBrowserService({ sessionId: 'my-session' });
*
* // Start a trajectory for learning
* const trajectoryId = browser.startTrajectory('Login to dashboard');
*
* // Perform actions
* await browser.open('https://example.com/login');
* await browser.snapshot({ interactive: true });
* await browser.fill('@e1', 'user@example.com');
* await browser.fill('@e2', 'password');
* await browser.click('@e3');
*
* // End trajectory
* const trajectory = browser.endTrajectory(true, 'Login successful');
* ```
*/
// Domain types
export * from './domain/types.js';
// Infrastructure
export { AgentBrowserAdapter } from './infrastructure/agent-browser-adapter.js';
export type { AgentBrowserAdapterOptions } from './infrastructure/agent-browser-adapter.js';
// ReasoningBank integration
export {
ReasoningBankAdapter,
getReasoningBank,
type BrowserPattern,
type PatternStep,
} from './infrastructure/reasoningbank-adapter.js';
// Hooks integration
export {
preBrowseHook,
postBrowseHook,
browserHooks,
type PreBrowseInput,
type PreBrowseResult,
type PostBrowseInput,
type PostBrowseResult,
} from './infrastructure/hooks-integration.js';
// Memory integration (HNSW semantic search)
export {
ClaudeFlowMemoryAdapter,
BrowserMemoryManager,
createMemoryManager,
getMemoryAdapter,
type BrowserMemoryEntry,
type MemorySearchResult,
type MemoryStats,
type MemorySearchOptions,
type MemoryFilter,
type IMemoryAdapter,
} from './infrastructure/memory-integration.js';
// Security integration (AIDefence)
export {
BrowserSecurityScanner,
getSecurityScanner,
isUrlSafe,
containsPII,
type ThreatScanResult,
type Threat,
type ThreatType,
type PIIMatch,
type PIIType,
type SecurityConfig,
} from './infrastructure/security-integration.js';
// Workflow templates
export {
WorkflowManager,
getWorkflowManager,
listWorkflows,
getWorkflow,
WORKFLOW_TEMPLATES,
type WorkflowTemplate,
type WorkflowCategory,
type WorkflowStep,
type WorkflowVariable,
type WorkflowExecution,
type WorkflowStepResult,
type BrowserAction,
} from './infrastructure/workflow-templates.js';
// Application services
export {
BrowserService,
BrowserSwarmCoordinator,
createBrowserService,
createBrowserSwarm,
type BrowserServiceConfig,
} from './application/browser-service.js';
// MCP tools
export { browserTools } from './mcp-tools/browser-tools.js';
export type { MCPTool } from './mcp-tools/browser-tools.js';
// Re-export main classes as defaults
import { BrowserService, createBrowserService, createBrowserSwarm } from './application/browser-service.js';
import { browserTools } from './mcp-tools/browser-tools.js';
import { browserHooks, preBrowseHook, postBrowseHook } from './infrastructure/hooks-integration.js';
import { getReasoningBank } from './infrastructure/reasoningbank-adapter.js';
import { getMemoryAdapter, createMemoryManager } from './infrastructure/memory-integration.js';
import { getSecurityScanner, isUrlSafe, containsPII } from './infrastructure/security-integration.js';
import { getWorkflowManager, listWorkflows, getWorkflow } from './infrastructure/workflow-templates.js';
export default {
// Services
BrowserService,
createBrowserService,
createBrowserSwarm,
// MCP tools
browserTools,
// Hooks
browserHooks,
preBrowseHook,
postBrowseHook,
// Learning
getReasoningBank,
// Memory (HNSW-indexed)
getMemoryAdapter,
createMemoryManager,
// Security (AIDefence)
getSecurityScanner,
isUrlSafe,
containsPII,
// Workflows
getWorkflowManager,
listWorkflows,
getWorkflow,
};