agent-portal-2 0.1.0 → 0.2.0

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 (124) hide show
  1. package/dist/index.d.ts +360 -0
  2. package/dist/index.d.ts.map +1 -0
  3. package/dist/index.js +1203 -0
  4. package/dist/index.js.map +1 -0
  5. package/package.json +8 -14
  6. package/{packages/core/src → src}/index.ts +0 -0
  7. package/{apps/desktop/tsconfig.json → tsconfig.json} +0 -0
  8. package/.continue/agents/new-config.yaml +0 -22
  9. package/AGENT_STEERING.md +0 -36
  10. package/ARCHITECTURE.md +0 -13
  11. package/CHANGELOG.md +0 -97
  12. package/CLI.md +0 -38
  13. package/CONTRIBUTING.md +0 -55
  14. package/INSTALLATION.md +0 -58
  15. package/LICENSE +0 -60
  16. package/PLUGIN_SYSTEM.md +0 -33
  17. package/PYTHON_SDK.md +0 -22
  18. package/QUICKSTART.md +0 -19
  19. package/README.md +0 -385
  20. package/RELEASE_NOTES_v0.1.0.md +0 -281
  21. package/ROADMAP.md +0 -3
  22. package/RUNTIME.md +0 -44
  23. package/SAFETY_MODEL.md +0 -24
  24. package/TESTING.md +0 -35
  25. package/TROUBLESHOOTING.md +0 -30
  26. package/UPGRADE_GUIDE.md +0 -288
  27. package/VS_CODE_EXTENSION.md +0 -47
  28. package/agent-portal.config.json +0 -20
  29. package/apps/desktop/agent-portal-desktop.zip +0 -0
  30. package/apps/desktop/fixtures/local-workflow.html +0 -151
  31. package/apps/desktop/package.json +0 -18
  32. package/apps/desktop/src/main.ts +0 -117
  33. package/apps/vscode-extension/LICENSE +0 -60
  34. package/apps/vscode-extension/README.md +0 -20
  35. package/apps/vscode-extension/media/agent-portal-logo.png +0 -0
  36. package/apps/vscode-extension/package.json +0 -149
  37. package/apps/vscode-extension/src/extension.ts +0 -614
  38. package/apps/vscode-extension/tsconfig.json +0 -12
  39. package/assets/branding/agent-portal-logo.png +0 -0
  40. package/connectors/chatgpt-tools/README.md +0 -9
  41. package/connectors/claude-mcp-server/README.md +0 -9
  42. package/connectors/gemini-connector/README.md +0 -9
  43. package/connectors/rest-websocket-api/README.md +0 -9
  44. package/docs/MCP_SERVER.md +0 -68
  45. package/docs/architecture.md +0 -214
  46. package/docs/roadmap.md +0 -125
  47. package/packages/agent-portal-mcp/README.md +0 -12
  48. package/packages/agent-portal-mcp/agent_portal_mcp/__init__.py +0 -3
  49. package/packages/agent-portal-mcp/agent_portal_mcp/bridge/__init__.py +0 -1
  50. package/packages/agent-portal-mcp/agent_portal_mcp/bridge/runtime_client.py +0 -180
  51. package/packages/agent-portal-mcp/agent_portal_mcp/cli.py +0 -32
  52. package/packages/agent-portal-mcp/agent_portal_mcp/doctor.py +0 -71
  53. package/packages/agent-portal-mcp/agent_portal_mcp/schemas/__init__.py +0 -1
  54. package/packages/agent-portal-mcp/agent_portal_mcp/schemas/actions.py +0 -17
  55. package/packages/agent-portal-mcp/agent_portal_mcp/schemas/results.py +0 -24
  56. package/packages/agent-portal-mcp/agent_portal_mcp/schemas/risk.py +0 -20
  57. package/packages/agent-portal-mcp/agent_portal_mcp/security/__init__.py +0 -1
  58. package/packages/agent-portal-mcp/agent_portal_mcp/security/policy.py +0 -27
  59. package/packages/agent-portal-mcp/agent_portal_mcp/server.py +0 -148
  60. package/packages/agent-portal-mcp/agent_portal_mcp/tool_registry.py +0 -58
  61. package/packages/agent-portal-mcp/agent_portal_mcp/tools/__init__.py +0 -1
  62. package/packages/agent-portal-mcp/agent_portal_mcp/tools/browser.py +0 -89
  63. package/packages/agent-portal-mcp/agent_portal_mcp/tools/common.py +0 -98
  64. package/packages/agent-portal-mcp/agent_portal_mcp/tools/inspection.py +0 -93
  65. package/packages/agent-portal-mcp/agent_portal_mcp/tools/navigation.py +0 -93
  66. package/packages/agent-portal-mcp/agent_portal_mcp/tools/reports.py +0 -34
  67. package/packages/agent-portal-mcp/agent_portal_mcp/tools/steering.py +0 -93
  68. package/packages/agent-portal-mcp/pyproject.toml +0 -20
  69. package/packages/agent-portal-mcp/tests/test_doctor.py +0 -20
  70. package/packages/agent-portal-mcp/tests/test_mcp_server.py +0 -161
  71. package/packages/core/package.json +0 -15
  72. package/packages/core/tsconfig.json +0 -8
  73. package/packages/mcp-server/package.json +0 -15
  74. package/packages/mcp-server/src/index.ts +0 -73
  75. package/packages/mcp-server/tsconfig.json +0 -8
  76. package/packages/sdk/package.json +0 -15
  77. package/packages/sdk/src/index.ts +0 -544
  78. package/packages/sdk/tsconfig.json +0 -8
  79. package/plugins/README.md +0 -16
  80. package/plugins/agent-portal-browser/plugin.json +0 -19
  81. package/plugins/agent-portal-python/plugin.json +0 -16
  82. package/plugins/agent-portal-skills/plugin.json +0 -19
  83. package/plugins/agent-portal-vscode/plugin.json +0 -27
  84. package/plugins/example-runtime-plugin/README.md +0 -3
  85. package/plugins/example-runtime-plugin/plugin.json +0 -20
  86. package/plugins/plugin.schema.json +0 -53
  87. package/python/README.md +0 -18
  88. package/python/agent_portal/__init__.py +0 -5
  89. package/python/agent_portal/__main__.py +0 -5
  90. package/python/agent_portal/browser.py +0 -393
  91. package/python/agent_portal/cli.py +0 -164
  92. package/python/agent_portal/config.py +0 -31
  93. package/python/agent_portal/doctor.py +0 -165
  94. package/python/agent_portal/exceptions.py +0 -39
  95. package/python/agent_portal/logging_utils.py +0 -33
  96. package/python/agent_portal/metrics.py +0 -309
  97. package/python/agent_portal/models.py +0 -160
  98. package/python/agent_portal/plugin_system.py +0 -42
  99. package/python/agent_portal/rate_limit.py +0 -253
  100. package/python/agent_portal/runtime.py +0 -739
  101. package/python/agent_portal/server.py +0 -351
  102. package/python/agent_portal/validation.py +0 -299
  103. package/python/pyproject.toml +0 -29
  104. package/python/tests/test_config.py +0 -24
  105. package/python/tests/test_doctor.py +0 -19
  106. package/python/tests/test_metrics.py +0 -180
  107. package/python/tests/test_rate_limit.py +0 -237
  108. package/python/tests/test_runtime.py +0 -122
  109. package/python/tests/test_server.py +0 -53
  110. package/python/tests/test_validation.py +0 -170
  111. package/releases/desktop/agent-portal-desktop/README.md +0 -378
  112. package/releases/desktop/agent-portal-desktop/RELEASE_NOTES.md +0 -14
  113. package/releases/desktop/agent-portal-desktop/assets/branding/agent-portal-logo.png +0 -0
  114. package/releases/desktop/agent-portal-desktop/fixtures/local-workflow.html +0 -151
  115. package/releases/desktop/agent-portal-desktop/launch-agent-portal.bat +0 -4
  116. package/releases/desktop/agent-portal-desktop.zip +0 -0
  117. package/releases/python/agent_portal-0.0.2-py3-none-any.whl +0 -0
  118. package/releases/python/agent_portal-0.0.2.tar.gz +0 -0
  119. package/scripts/package_desktop.mjs +0 -117
  120. package/scripts/release_python.py +0 -46
  121. package/tests/plugin-manifest.test.mjs +0 -26
  122. package/tests/runtime.test.mjs +0 -41
  123. package/tests/vscode-extension.test.mjs +0 -22
  124. package/tsconfig.base.json +0 -16
@@ -0,0 +1,360 @@
1
+ export type AgentRole = "frontend" | "backend" | "qa" | "security" | "research" | "custom";
2
+ export type AgentStatus = "idle" | "running" | "blocked" | "completed";
3
+ export type RuntimeStatus = "idle" | "thinking" | "acting" | "waiting-approval" | "paused" | "blocked" | "finished" | "failed" | "stopped";
4
+ export type BrowserSessionStatus = "idle" | "launching" | "ready" | "disconnected" | "closing" | "closed" | "error";
5
+ export type ActionRiskLevel = "safe" | "low" | "medium" | "high" | "blocked";
6
+ export type ActionQueueStatus = "pending" | "approved" | "rejected" | "completed" | "failed" | "blocked";
7
+ export interface AgentDefinition {
8
+ id: string;
9
+ role: AgentRole;
10
+ status: AgentStatus;
11
+ description?: string;
12
+ }
13
+ export interface WorkspaceDirectories {
14
+ browserSessions: string;
15
+ documents: string;
16
+ reports: string;
17
+ screenshots: string;
18
+ logs: string;
19
+ agents: string;
20
+ tasks: string;
21
+ workflows: string;
22
+ memory: string;
23
+ settings: string;
24
+ }
25
+ export interface WorkspaceDefinition {
26
+ id: string;
27
+ name: string;
28
+ rootPath: string;
29
+ directories: WorkspaceDirectories;
30
+ }
31
+ export type UIElementType = "button" | "form" | "input" | "dropdown" | "modal" | "menu" | "table" | "tab" | "card" | "dialog" | "link" | "custom";
32
+ export interface UIElement {
33
+ id: string;
34
+ type: UIElementType;
35
+ label?: string;
36
+ selector?: string;
37
+ bounds?: {
38
+ x: number;
39
+ y: number;
40
+ width: number;
41
+ height: number;
42
+ };
43
+ actionable: boolean;
44
+ }
45
+ export interface ConsoleLogEntry {
46
+ type: "log" | "warning" | "error" | "info";
47
+ text: string;
48
+ location?: string;
49
+ at: string;
50
+ }
51
+ export interface NetworkEvent {
52
+ url: string;
53
+ status?: number;
54
+ method: string;
55
+ resourceType: string;
56
+ outcome: "pending" | "ok" | "failed";
57
+ failureText?: string;
58
+ at: string;
59
+ }
60
+ export interface VisualSnapshot {
61
+ id: string;
62
+ source: "browser" | "desktop" | "application";
63
+ capturedAt: string;
64
+ screenshotPath?: string;
65
+ dom?: string;
66
+ accessibilityTree?: string;
67
+ ocrText?: string;
68
+ consoleLogs?: ConsoleLogEntry[];
69
+ networkEvents?: NetworkEvent[];
70
+ label?: string;
71
+ url?: string;
72
+ detectedElements: UIElement[];
73
+ }
74
+ export interface BrowserAction {
75
+ kind: "open" | "click" | "type" | "scroll" | "hover" | "drag" | "drop" | "upload" | "download" | "capture" | "inspect" | "wait" | "execute";
76
+ target?: string;
77
+ payload?: string;
78
+ timeoutMs?: number;
79
+ }
80
+ export interface ScrollOptions {
81
+ selector?: string;
82
+ deltaX?: number;
83
+ deltaY?: number;
84
+ }
85
+ export interface SessionEvent {
86
+ type: string;
87
+ at: string;
88
+ detail: string;
89
+ artifactPath?: string;
90
+ }
91
+ export interface RootCauseHypothesis {
92
+ label: string;
93
+ confidence: number;
94
+ evidence: string[];
95
+ }
96
+ export interface ScreenUnderstanding {
97
+ pageCategory: "login" | "signup" | "dashboard" | "docs" | "pricing" | "form" | "unknown";
98
+ summary: string;
99
+ userIntent?: string;
100
+ issues: string[];
101
+ likelyNextActions: string[];
102
+ rootCauseHypotheses: RootCauseHypothesis[];
103
+ }
104
+ export interface PortalGraphNode {
105
+ id: string;
106
+ label: string;
107
+ pageCategory: ScreenUnderstanding["pageCategory"];
108
+ url?: string;
109
+ links: string[];
110
+ }
111
+ export interface MemoryRecord {
112
+ id: string;
113
+ kind: "page-understanding" | "goal-plan" | "issue" | "project-awareness";
114
+ summary: string;
115
+ createdAt: string;
116
+ payload: Record<string, unknown>;
117
+ }
118
+ export interface PluginManifest {
119
+ name: string;
120
+ version: string;
121
+ type: "vscode-extension" | "browser-extension" | "python-plugin" | "agent-connector" | "skill-plugin";
122
+ permissions: string[];
123
+ entryPoint?: string;
124
+ commands: string[];
125
+ settings?: Record<string, unknown>;
126
+ panels?: string[];
127
+ lifecycleHooks?: string[];
128
+ }
129
+ export interface ActionPolicyDecision {
130
+ riskLevel: ActionRiskLevel;
131
+ requiresApproval: boolean;
132
+ blockedReason?: string;
133
+ matchedPolicies: string[];
134
+ }
135
+ export interface ActionContext {
136
+ reason: string;
137
+ currentUrl?: string;
138
+ candidateLabel?: string;
139
+ targetFieldType?: string;
140
+ }
141
+ export interface ActionQueueItem {
142
+ id: string;
143
+ actionType: BrowserAction["kind"];
144
+ target?: string;
145
+ payload?: string;
146
+ reason: string;
147
+ riskLevel: ActionRiskLevel;
148
+ timestamp: string;
149
+ status: ActionQueueStatus;
150
+ result?: string;
151
+ errorMessage?: string;
152
+ requiresApproval: boolean;
153
+ beforeScreenshotPath?: string;
154
+ afterScreenshotPath?: string;
155
+ blockedReason?: string;
156
+ }
157
+ export interface SteeringState {
158
+ paused: boolean;
159
+ stopped: boolean;
160
+ stepByStepMode: boolean;
161
+ currentGoal?: string;
162
+ lockedDomain?: string;
163
+ lockedTabUrl?: string;
164
+ requireApprovalAtOrAbove: ActionRiskLevel;
165
+ }
166
+ export interface SessionSummary {
167
+ currentGoal?: string;
168
+ actionsAttempted: number;
169
+ approvedActions: number;
170
+ rejectedActions: number;
171
+ failedActions: number;
172
+ blockedActions: number;
173
+ consoleErrors: number;
174
+ networkErrors: number;
175
+ riskEvents: number;
176
+ suggestedFixes: string[];
177
+ reproductionSteps: string[];
178
+ }
179
+ export interface SessionReport {
180
+ summary: SessionSummary;
181
+ state: RuntimeState;
182
+ }
183
+ export interface RuntimeState {
184
+ workspace: WorkspaceDefinition;
185
+ agents: AgentDefinition[];
186
+ runtimeStatus: RuntimeStatus;
187
+ browserStatus: BrowserSessionStatus;
188
+ steering: SteeringState;
189
+ sessionEvents: SessionEvent[];
190
+ snapshots: VisualSnapshot[];
191
+ graph: PortalGraphNode[];
192
+ memoryRecords: MemoryRecord[];
193
+ actionQueue: ActionQueueItem[];
194
+ }
195
+ export interface RuntimeConfig {
196
+ workspace: WorkspaceDefinition;
197
+ agents?: AgentDefinition[];
198
+ workspaceBasePath?: string;
199
+ }
200
+ export interface CaptureOptions {
201
+ label?: string;
202
+ includeAccessibilityTree?: boolean;
203
+ }
204
+ export interface BrowserSessionOptions {
205
+ headless?: boolean;
206
+ viewport?: {
207
+ width: number;
208
+ height: number;
209
+ };
210
+ basePath?: string;
211
+ evidenceScreenshots?: boolean;
212
+ }
213
+ export interface BrowserInspectionResult {
214
+ url: string;
215
+ title: string;
216
+ dom: string;
217
+ accessibilityTree?: string;
218
+ screenshotPath: string;
219
+ consoleLogs: ConsoleLogEntry[];
220
+ networkEvents: NetworkEvent[];
221
+ snapshot: VisualSnapshot;
222
+ }
223
+ export interface BrowserElementText {
224
+ selector: string;
225
+ text: string | null;
226
+ }
227
+ export interface BrowserExecuteResult {
228
+ result: unknown;
229
+ }
230
+ export interface VisionContext {
231
+ snapshot: VisualSnapshot;
232
+ goal?: string;
233
+ }
234
+ export interface GoalDefinition {
235
+ id: string;
236
+ title: string;
237
+ description?: string;
238
+ }
239
+ export interface GoalPlanStep {
240
+ id: string;
241
+ title: string;
242
+ detail: string;
243
+ status: "pending" | "ready" | "blocked";
244
+ }
245
+ export interface GoalPlan {
246
+ goal: GoalDefinition;
247
+ steps: GoalPlanStep[];
248
+ }
249
+ export interface ProjectAwareness {
250
+ frameworks: string[];
251
+ services: string[];
252
+ packageManagers: string[];
253
+ summary: string;
254
+ }
255
+ export declare class AgentPortalError extends Error {
256
+ readonly code: string;
257
+ readonly details?: string | undefined;
258
+ constructor(code: string, message: string, details?: string | undefined);
259
+ }
260
+ export declare class ActionApprovalRequiredError extends AgentPortalError {
261
+ readonly actionId: string;
262
+ constructor(actionId: string, message: string);
263
+ }
264
+ export declare class ActionBlockedError extends AgentPortalError {
265
+ readonly actionId: string;
266
+ constructor(actionId: string, message: string);
267
+ }
268
+ export declare class AgentPortalRuntime {
269
+ private readonly state;
270
+ private readonly workspaceBasePath;
271
+ constructor(config: RuntimeConfig);
272
+ addAgent(agent: AgentDefinition): void;
273
+ startAgent(agentId: string): AgentDefinition;
274
+ blockAgent(agentId: string): AgentDefinition;
275
+ completeAgent(agentId: string): AgentDefinition;
276
+ resetAgent(agentId: string): AgentDefinition;
277
+ pauseAgentExecution(): void;
278
+ resumeAgentExecution(): void;
279
+ stopAgentExecution(): void;
280
+ clearStoppedState(): void;
281
+ enableStepByStepMode(): void;
282
+ disableStepByStepMode(): void;
283
+ redirectGoal(goal: string): void;
284
+ lockToDomain(domain: string): void;
285
+ unlockDomain(): void;
286
+ lockToTab(url: string): void;
287
+ unlockTab(): void;
288
+ setApprovalThreshold(level: ActionRiskLevel): void;
289
+ setBrowserStatus(status: BrowserSessionStatus): void;
290
+ setRuntimeStatus(status: RuntimeStatus): void;
291
+ record(event: SessionEvent): void;
292
+ addSnapshot(snapshot: VisualSnapshot): void;
293
+ addGraphNode(node: PortalGraphNode): void;
294
+ addMemoryRecord(record: MemoryRecord): void;
295
+ planAction(action: BrowserAction): string;
296
+ getOverview(): RuntimeState;
297
+ getWorkspaceBasePath(): string;
298
+ getPendingActions(): ActionQueueItem[];
299
+ approveAction(actionId: string): ActionQueueItem;
300
+ rejectAction(actionId: string, reason?: string): ActionQueueItem;
301
+ editAction(actionId: string, patch: Partial<Pick<ActionQueueItem, "target" | "payload" | "reason">>): ActionQueueItem;
302
+ createActionRecord(action: BrowserAction, context: ActionContext): ActionQueueItem;
303
+ attachActionEvidence(actionId: string, evidence: Pick<ActionQueueItem, "beforeScreenshotPath" | "afterScreenshotPath">): void;
304
+ completeAction(actionId: string, result: string): ActionQueueItem;
305
+ failAction(actionId: string, message: string): ActionQueueItem;
306
+ ensureWorkspaceDirectories(basePath?: string): Promise<void>;
307
+ writeSessionReport(basePath?: string): Promise<string>;
308
+ writeMemoryRecord(record: MemoryRecord): Promise<string>;
309
+ detectProjectAwareness(scanBasePath?: string): Promise<ProjectAwareness>;
310
+ private buildSessionSummary;
311
+ private requireAction;
312
+ private updateAgentStatus;
313
+ private recordStatusEvent;
314
+ }
315
+ export declare class BrowserSession {
316
+ private readonly runtime;
317
+ private readonly basePath;
318
+ private readonly options;
319
+ private page?;
320
+ private closeBrowser?;
321
+ private readonly consoleLogs;
322
+ private readonly networkEvents;
323
+ private status;
324
+ constructor(runtime: AgentPortalRuntime, options?: BrowserSessionOptions, basePath?: string);
325
+ getStatus(): BrowserSessionStatus;
326
+ launch(): Promise<void>;
327
+ open(url: string): Promise<void>;
328
+ click(selector: string): Promise<void>;
329
+ type(selector: string, value: string): Promise<void>;
330
+ hover(selector: string): Promise<void>;
331
+ scroll(options?: ScrollOptions): Promise<void>;
332
+ waitForSelector(selector: string, timeoutMs?: number): Promise<void>;
333
+ execute(script: string): Promise<BrowserExecuteResult>;
334
+ readText(selector: string): Promise<BrowserElementText>;
335
+ inspect(label?: string): Promise<BrowserInspectionResult>;
336
+ capture(options?: CaptureOptions): Promise<BrowserInspectionResult>;
337
+ close(): Promise<void>;
338
+ shutdownGracefully(): Promise<void>;
339
+ private runAction;
340
+ private captureActionEvidence;
341
+ private attachPageListeners;
342
+ private resolveLocator;
343
+ private tryReadLabel;
344
+ private tryReadInputType;
345
+ private ensureBrowserReady;
346
+ private getPage;
347
+ }
348
+ export declare class VisionCore {
349
+ analyze(context: VisionContext): ScreenUnderstanding;
350
+ }
351
+ export declare class GoalPlanner {
352
+ createPlan(goal: GoalDefinition, understanding?: ScreenUnderstanding): GoalPlan;
353
+ }
354
+ export declare class PortalGraph {
355
+ fromSnapshot(snapshot: VisualSnapshot, understanding: ScreenUnderstanding): PortalGraphNode;
356
+ }
357
+ export declare function createDefaultWorkspace(name: string): WorkspaceDefinition;
358
+ export declare function resolveWorkspaceFileUrl(workspaceBasePath: string, relativeFilePath: string): string;
359
+ export declare function validatePluginManifest(manifest: PluginManifest): string[];
360
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}