@sparkleideas/browser 3.0.0-alpha.2-patch.17 → 3.0.0-alpha.2-patch.18

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/package.json +2 -2
  2. package/dist/agent/index.d.ts +0 -25
  3. package/dist/agent/index.d.ts.map +0 -1
  4. package/dist/agent/index.js +0 -33
  5. package/dist/agent/index.js.map +0 -1
  6. package/dist/application/browser-service.d.ts +0 -228
  7. package/dist/application/browser-service.d.ts.map +0 -1
  8. package/dist/application/browser-service.js +0 -470
  9. package/dist/application/browser-service.js.map +0 -1
  10. package/dist/domain/types.d.ts +0 -428
  11. package/dist/domain/types.d.ts.map +0 -1
  12. package/dist/domain/types.js +0 -95
  13. package/dist/domain/types.js.map +0 -1
  14. package/dist/index.d.ts +0 -131
  15. package/dist/index.d.ts.map +0 -1
  16. package/dist/index.js +0 -84
  17. package/dist/index.js.map +0 -1
  18. package/dist/infrastructure/agent-browser-adapter.d.ts +0 -134
  19. package/dist/infrastructure/agent-browser-adapter.d.ts.map +0 -1
  20. package/dist/infrastructure/agent-browser-adapter.js +0 -551
  21. package/dist/infrastructure/agent-browser-adapter.js.map +0 -1
  22. package/dist/infrastructure/hooks-integration.d.ts +0 -109
  23. package/dist/infrastructure/hooks-integration.d.ts.map +0 -1
  24. package/dist/infrastructure/hooks-integration.js +0 -111
  25. package/dist/infrastructure/hooks-integration.js.map +0 -1
  26. package/dist/infrastructure/memory-integration.d.ts +0 -149
  27. package/dist/infrastructure/memory-integration.d.ts.map +0 -1
  28. package/dist/infrastructure/memory-integration.js +0 -335
  29. package/dist/infrastructure/memory-integration.js.map +0 -1
  30. package/dist/infrastructure/reasoningbank-adapter.d.ts +0 -90
  31. package/dist/infrastructure/reasoningbank-adapter.d.ts.map +0 -1
  32. package/dist/infrastructure/reasoningbank-adapter.js +0 -224
  33. package/dist/infrastructure/reasoningbank-adapter.js.map +0 -1
  34. package/dist/infrastructure/security-integration.d.ts +0 -80
  35. package/dist/infrastructure/security-integration.d.ts.map +0 -1
  36. package/dist/infrastructure/security-integration.js +0 -404
  37. package/dist/infrastructure/security-integration.js.map +0 -1
  38. package/dist/infrastructure/workflow-templates.d.ts +0 -95
  39. package/dist/infrastructure/workflow-templates.d.ts.map +0 -1
  40. package/dist/infrastructure/workflow-templates.js +0 -366
  41. package/dist/infrastructure/workflow-templates.js.map +0 -1
  42. package/dist/mcp-tools/browser-tools.d.ts +0 -18
  43. package/dist/mcp-tools/browser-tools.d.ts.map +0 -1
  44. package/dist/mcp-tools/browser-tools.js +0 -1163
  45. package/dist/mcp-tools/browser-tools.js.map +0 -1
  46. package/dist/mcp-tools/index.d.ts +0 -6
  47. package/dist/mcp-tools/index.d.ts.map +0 -1
  48. package/dist/mcp-tools/index.js +0 -6
  49. package/dist/mcp-tools/index.js.map +0 -1
  50. package/dist/skill/index.d.ts +0 -15
  51. package/dist/skill/index.d.ts.map +0 -1
  52. package/dist/skill/index.js +0 -23
  53. package/dist/skill/index.js.map +0 -1
package/dist/index.js DELETED
@@ -1,84 +0,0 @@
1
- /**
2
- * @sparkleideas/browser
3
- * Browser automation for AI agents - integrates agent-browser with claude-flow swarms
4
- *
5
- * Features:
6
- * - 50+ MCP tools for browser automation
7
- * - AI-optimized snapshots with element refs (@e1, @e2)
8
- * - Multi-session support for swarm coordination
9
- * - Trajectory tracking for ReasoningBank/SONA learning
10
- * - Integration with agentic-flow optimizations
11
- *
12
- * @example
13
- * ```typescript
14
- * import { createBrowserService, browserTools } from '@sparkleideas/browser';
15
- *
16
- * // Create a browser service
17
- * const browser = createBrowserService({ sessionId: 'my-session' });
18
- *
19
- * // Start a trajectory for learning
20
- * const trajectoryId = browser.startTrajectory('Login to dashboard');
21
- *
22
- * // Perform actions
23
- * await browser.open('https://example.com/login');
24
- * await browser.snapshot({ interactive: true });
25
- * await browser.fill('@e1', 'user@example.com');
26
- * await browser.fill('@e2', 'password');
27
- * await browser.click('@e3');
28
- *
29
- * // End trajectory
30
- * const trajectory = browser.endTrajectory(true, 'Login successful');
31
- * ```
32
- */
33
- // Domain types
34
- export * from './domain/types.js';
35
- // Infrastructure
36
- export { AgentBrowserAdapter } from './infrastructure/agent-browser-adapter.js';
37
- // ReasoningBank integration
38
- export { ReasoningBankAdapter, getReasoningBank, } from './infrastructure/reasoningbank-adapter.js';
39
- // Hooks integration
40
- export { preBrowseHook, postBrowseHook, browserHooks, } from './infrastructure/hooks-integration.js';
41
- // Memory integration (HNSW semantic search)
42
- export { ClaudeFlowMemoryAdapter, BrowserMemoryManager, createMemoryManager, getMemoryAdapter, } from './infrastructure/memory-integration.js';
43
- // Security integration (AIDefence)
44
- export { BrowserSecurityScanner, getSecurityScanner, isUrlSafe, containsPII, } from './infrastructure/security-integration.js';
45
- // Workflow templates
46
- export { WorkflowManager, getWorkflowManager, listWorkflows, getWorkflow, WORKFLOW_TEMPLATES, } from './infrastructure/workflow-templates.js';
47
- // Application services
48
- export { BrowserService, BrowserSwarmCoordinator, createBrowserService, createBrowserSwarm, } from './application/browser-service.js';
49
- // MCP tools
50
- export { browserTools } from './mcp-tools/browser-tools.js';
51
- // Re-export main classes as defaults
52
- import { BrowserService, createBrowserService, createBrowserSwarm } from './application/browser-service.js';
53
- import { browserTools } from './mcp-tools/browser-tools.js';
54
- import { browserHooks, preBrowseHook, postBrowseHook } from './infrastructure/hooks-integration.js';
55
- import { getReasoningBank } from './infrastructure/reasoningbank-adapter.js';
56
- import { getMemoryAdapter, createMemoryManager } from './infrastructure/memory-integration.js';
57
- import { getSecurityScanner, isUrlSafe, containsPII } from './infrastructure/security-integration.js';
58
- import { getWorkflowManager, listWorkflows, getWorkflow } from './infrastructure/workflow-templates.js';
59
- export default {
60
- // Services
61
- BrowserService,
62
- createBrowserService,
63
- createBrowserSwarm,
64
- // MCP tools
65
- browserTools,
66
- // Hooks
67
- browserHooks,
68
- preBrowseHook,
69
- postBrowseHook,
70
- // Learning
71
- getReasoningBank,
72
- // Memory (HNSW-indexed)
73
- getMemoryAdapter,
74
- createMemoryManager,
75
- // Security (AIDefence)
76
- getSecurityScanner,
77
- isUrlSafe,
78
- containsPII,
79
- // Workflows
80
- getWorkflowManager,
81
- listWorkflows,
82
- getWorkflow,
83
- };
84
- //# sourceMappingURL=index.js.map
package/dist/index.js.map DELETED
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AAEH,eAAe;AACf,cAAc,mBAAmB,CAAC;AAElC,iBAAiB;AACjB,OAAO,EAAE,mBAAmB,EAAE,MAAM,2CAA2C,CAAC;AAGhF,4BAA4B;AAC5B,OAAO,EACL,oBAAoB,EACpB,gBAAgB,GAGjB,MAAM,2CAA2C,CAAC;AAEnD,oBAAoB;AACpB,OAAO,EACL,aAAa,EACb,cAAc,EACd,YAAY,GAKb,MAAM,uCAAuC,CAAC;AAE/C,4CAA4C;AAC5C,OAAO,EACL,uBAAuB,EACvB,oBAAoB,EACpB,mBAAmB,EACnB,gBAAgB,GAOjB,MAAM,wCAAwC,CAAC;AAEhD,mCAAmC;AACnC,OAAO,EACL,sBAAsB,EACtB,kBAAkB,EAClB,SAAS,EACT,WAAW,GAOZ,MAAM,0CAA0C,CAAC;AAElD,qBAAqB;AACrB,OAAO,EACL,eAAe,EACf,kBAAkB,EAClB,aAAa,EACb,WAAW,EACX,kBAAkB,GAQnB,MAAM,wCAAwC,CAAC;AAEhD,uBAAuB;AACvB,OAAO,EACL,cAAc,EACd,uBAAuB,EACvB,oBAAoB,EACpB,kBAAkB,GAEnB,MAAM,kCAAkC,CAAC;AAE1C,YAAY;AACZ,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAG5D,qCAAqC;AACrC,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAC5G,OAAO,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AAC5D,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AACpG,OAAO,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAC7E,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAC;AAC/F,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AACtG,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,wCAAwC,CAAC;AAExG,eAAe;IACb,WAAW;IACX,cAAc;IACd,oBAAoB;IACpB,kBAAkB;IAElB,YAAY;IACZ,YAAY;IAEZ,QAAQ;IACR,YAAY;IACZ,aAAa;IACb,cAAc;IAEd,WAAW;IACX,gBAAgB;IAEhB,wBAAwB;IACxB,gBAAgB;IAChB,mBAAmB;IAEnB,uBAAuB;IACvB,kBAAkB;IAClB,SAAS;IACT,WAAW;IAEX,YAAY;IACZ,kBAAkB;IAClB,aAAa;IACb,WAAW;CACZ,CAAC"}
@@ -1,134 +0,0 @@
1
- /**
2
- * @sparkleideas/browser - Agent Browser Adapter
3
- * Wraps agent-browser CLI for programmatic access
4
- */
5
- import type { ActionResult, Snapshot, SnapshotOptions, OpenInput, ClickInput, FillInput, TypeInput, ScreenshotInput, WaitInput, EvalInput, GetInput, NetworkRouteInput } from '../domain/types.js';
6
- export interface AgentBrowserAdapterOptions {
7
- session?: string;
8
- timeout?: number;
9
- headless?: boolean;
10
- executablePath?: string;
11
- proxy?: string;
12
- viewport?: {
13
- width: number;
14
- height: number;
15
- };
16
- debug?: boolean;
17
- }
18
- export declare class AgentBrowserAdapter {
19
- private session;
20
- private timeout;
21
- private headless;
22
- private executablePath?;
23
- private proxy?;
24
- private viewport?;
25
- private debug;
26
- constructor(options?: AgentBrowserAdapterOptions);
27
- private exec;
28
- open(input: OpenInput): Promise<ActionResult>;
29
- back(): Promise<ActionResult>;
30
- forward(): Promise<ActionResult>;
31
- reload(): Promise<ActionResult>;
32
- close(): Promise<ActionResult>;
33
- click(input: ClickInput): Promise<ActionResult>;
34
- dblclick(target: string): Promise<ActionResult>;
35
- fill(input: FillInput): Promise<ActionResult>;
36
- type(input: TypeInput): Promise<ActionResult>;
37
- press(key: string, delay?: number): Promise<ActionResult>;
38
- hover(target: string): Promise<ActionResult>;
39
- focus(target: string): Promise<ActionResult>;
40
- select(target: string, value: string): Promise<ActionResult>;
41
- check(target: string): Promise<ActionResult>;
42
- uncheck(target: string): Promise<ActionResult>;
43
- scroll(direction: 'up' | 'down' | 'left' | 'right', pixels?: number): Promise<ActionResult>;
44
- scrollIntoView(target: string): Promise<ActionResult>;
45
- drag(source: string, target: string): Promise<ActionResult>;
46
- upload(target: string, files: string[]): Promise<ActionResult>;
47
- get(input: GetInput): Promise<ActionResult>;
48
- getText(target: string): Promise<ActionResult<string>>;
49
- getHtml(target: string): Promise<ActionResult<string>>;
50
- getValue(target: string): Promise<ActionResult<string>>;
51
- getAttr(target: string, attribute: string): Promise<ActionResult<string>>;
52
- getTitle(): Promise<ActionResult<string>>;
53
- getUrl(): Promise<ActionResult<string>>;
54
- getCount(selector: string): Promise<ActionResult<number>>;
55
- getBox(target: string): Promise<ActionResult<{
56
- x: number;
57
- y: number;
58
- width: number;
59
- height: number;
60
- }>>;
61
- isVisible(target: string): Promise<ActionResult<boolean>>;
62
- isEnabled(target: string): Promise<ActionResult<boolean>>;
63
- isChecked(target: string): Promise<ActionResult<boolean>>;
64
- snapshot(options?: SnapshotOptions): Promise<ActionResult<Snapshot>>;
65
- screenshot(input?: ScreenshotInput): Promise<ActionResult<string>>;
66
- pdf(path: string): Promise<ActionResult>;
67
- wait(input: WaitInput): Promise<ActionResult>;
68
- waitForSelector(selector: string, timeout?: number): Promise<ActionResult>;
69
- waitForText(text: string): Promise<ActionResult>;
70
- waitForUrl(pattern: string): Promise<ActionResult>;
71
- waitForLoad(state: 'load' | 'domcontentloaded' | 'networkidle'): Promise<ActionResult>;
72
- waitForFunction(fn: string): Promise<ActionResult>;
73
- eval<T = unknown>(input: EvalInput): Promise<ActionResult<T>>;
74
- mouseMove(x: number, y: number): Promise<ActionResult>;
75
- mouseDown(button?: 'left' | 'right' | 'middle'): Promise<ActionResult>;
76
- mouseUp(button?: 'left' | 'right' | 'middle'): Promise<ActionResult>;
77
- mouseWheel(deltaY: number, deltaX?: number): Promise<ActionResult>;
78
- setViewport(width: number, height: number): Promise<ActionResult>;
79
- setDevice(device: string): Promise<ActionResult>;
80
- setGeolocation(lat: number, lng: number): Promise<ActionResult>;
81
- setOffline(enabled: boolean): Promise<ActionResult>;
82
- setHeaders(headers: Record<string, string>): Promise<ActionResult>;
83
- setCredentials(username: string, password: string): Promise<ActionResult>;
84
- setMedia(scheme: 'dark' | 'light'): Promise<ActionResult>;
85
- getCookies(): Promise<ActionResult>;
86
- setCookie(name: string, value: string): Promise<ActionResult>;
87
- clearCookies(): Promise<ActionResult>;
88
- getLocalStorage(key?: string): Promise<ActionResult>;
89
- setLocalStorage(key: string, value: string): Promise<ActionResult>;
90
- clearLocalStorage(): Promise<ActionResult>;
91
- getSessionStorage(key?: string): Promise<ActionResult>;
92
- setSessionStorage(key: string, value: string): Promise<ActionResult>;
93
- clearSessionStorage(): Promise<ActionResult>;
94
- networkRoute(input: NetworkRouteInput): Promise<ActionResult>;
95
- networkUnroute(urlPattern?: string): Promise<ActionResult>;
96
- networkRequests(filter?: string): Promise<ActionResult>;
97
- listTabs(): Promise<ActionResult>;
98
- newTab(url?: string): Promise<ActionResult>;
99
- switchTab(index: number): Promise<ActionResult>;
100
- closeTab(index?: number): Promise<ActionResult>;
101
- newWindow(): Promise<ActionResult>;
102
- switchFrame(selector: string): Promise<ActionResult>;
103
- switchToMainFrame(): Promise<ActionResult>;
104
- dialogAccept(text?: string): Promise<ActionResult>;
105
- dialogDismiss(): Promise<ActionResult>;
106
- traceStart(path?: string): Promise<ActionResult>;
107
- traceStop(path?: string): Promise<ActionResult>;
108
- getConsole(): Promise<ActionResult>;
109
- clearConsole(): Promise<ActionResult>;
110
- getErrors(): Promise<ActionResult>;
111
- clearErrors(): Promise<ActionResult>;
112
- highlight(selector: string): Promise<ActionResult>;
113
- saveState(path: string): Promise<ActionResult>;
114
- loadState(path: string): Promise<ActionResult>;
115
- findByRole(role: string, action: string, options?: {
116
- name?: string;
117
- exact?: boolean;
118
- }): Promise<ActionResult>;
119
- findByText(text: string, action: string): Promise<ActionResult>;
120
- findByLabel(label: string, action: string, value?: string): Promise<ActionResult>;
121
- findByPlaceholder(placeholder: string, action: string, value?: string): Promise<ActionResult>;
122
- findByTestId(testId: string, action: string, value?: string): Promise<ActionResult>;
123
- findFirst(selector: string, action: string, value?: string): Promise<ActionResult>;
124
- findLast(selector: string, action: string, value?: string): Promise<ActionResult>;
125
- findNth(n: number, selector: string, action: string, value?: string): Promise<ActionResult>;
126
- listSessions(): Promise<ActionResult>;
127
- getCurrentSession(): Promise<ActionResult>;
128
- setSession(sessionId: string): void;
129
- getSession(): string;
130
- connect(port: number): Promise<ActionResult>;
131
- static install(withDeps?: boolean): Promise<ActionResult>;
132
- }
133
- export default AgentBrowserAdapter;
134
- //# sourceMappingURL=agent-browser-adapter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-browser-adapter.d.ts","sourceRoot":"","sources":["../../src/infrastructure/agent-browser-adapter.ts"],"names":[],"mappings":"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"}