agent-orcha 0.0.5 → 0.0.8
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.
- package/README.md +250 -1275
- package/dist/lib/agents/agent-executor.d.ts +4 -2
- package/dist/lib/agents/agent-executor.d.ts.map +1 -1
- package/dist/lib/agents/agent-executor.js +85 -53
- package/dist/lib/agents/agent-executor.js.map +1 -1
- package/dist/lib/agents/agent-loader.d.ts +3 -0
- package/dist/lib/agents/agent-loader.d.ts.map +1 -1
- package/dist/lib/agents/agent-loader.js +10 -1
- package/dist/lib/agents/agent-loader.js.map +1 -1
- package/dist/lib/agents/react-loop.d.ts.map +1 -1
- package/dist/lib/agents/react-loop.js +207 -142
- package/dist/lib/agents/react-loop.js.map +1 -1
- package/dist/lib/agents/types.d.ts +181 -18
- package/dist/lib/agents/types.d.ts.map +1 -1
- package/dist/lib/agents/types.js +18 -2
- package/dist/lib/agents/types.js.map +1 -1
- package/dist/lib/functions/function-loader.d.ts +2 -0
- package/dist/lib/functions/function-loader.d.ts.map +1 -1
- package/dist/lib/functions/function-loader.js +10 -0
- package/dist/lib/functions/function-loader.js.map +1 -1
- package/dist/lib/functions/simple-function-wrapper.js +3 -3
- package/dist/lib/functions/simple-function-wrapper.js.map +1 -1
- package/dist/lib/integrations/email.d.ts +38 -0
- package/dist/lib/integrations/email.d.ts.map +1 -0
- package/dist/lib/integrations/email.js +249 -0
- package/dist/lib/integrations/email.js.map +1 -0
- package/dist/lib/integrations/integration-manager.d.ts +5 -0
- package/dist/lib/integrations/integration-manager.d.ts.map +1 -1
- package/dist/lib/integrations/integration-manager.js +53 -3
- package/dist/lib/integrations/integration-manager.js.map +1 -1
- package/dist/lib/integrations/types.d.ts +187 -4
- package/dist/lib/integrations/types.d.ts.map +1 -1
- package/dist/lib/integrations/types.js +24 -1
- package/dist/lib/integrations/types.js.map +1 -1
- package/dist/lib/knowledge/knowledge-store.d.ts +7 -1
- package/dist/lib/knowledge/knowledge-store.d.ts.map +1 -1
- package/dist/lib/knowledge/knowledge-store.js +96 -8
- package/dist/lib/knowledge/knowledge-store.js.map +1 -1
- package/dist/lib/knowledge/loaders/file-loaders.d.ts +8 -3
- package/dist/lib/knowledge/loaders/file-loaders.d.ts.map +1 -1
- package/dist/lib/knowledge/loaders/file-loaders.js +96 -75
- package/dist/lib/knowledge/loaders/file-loaders.js.map +1 -1
- package/dist/lib/knowledge/loaders/web-loader.d.ts +12 -3
- package/dist/lib/knowledge/loaders/web-loader.d.ts.map +1 -1
- package/dist/lib/knowledge/loaders/web-loader.js +56 -22
- package/dist/lib/knowledge/loaders/web-loader.js.map +1 -1
- package/dist/lib/knowledge/sqlite-store.d.ts.map +1 -1
- package/dist/lib/knowledge/sqlite-store.js +19 -10
- package/dist/lib/knowledge/sqlite-store.js.map +1 -1
- package/dist/lib/knowledge/types.d.ts +69 -33
- package/dist/lib/knowledge/types.d.ts.map +1 -1
- package/dist/lib/knowledge/types.js +18 -3
- package/dist/lib/knowledge/types.js.map +1 -1
- package/dist/lib/llm/index.d.ts +1 -1
- package/dist/lib/llm/index.d.ts.map +1 -1
- package/dist/lib/llm/index.js +1 -1
- package/dist/lib/llm/index.js.map +1 -1
- package/dist/lib/llm/llm-call-logger.d.ts +3 -1
- package/dist/lib/llm/llm-call-logger.d.ts.map +1 -1
- package/dist/lib/llm/llm-call-logger.js +31 -26
- package/dist/lib/llm/llm-call-logger.js.map +1 -1
- package/dist/lib/llm/llm-config.d.ts +59 -8
- package/dist/lib/llm/llm-config.d.ts.map +1 -1
- package/dist/lib/llm/llm-config.js +163 -17
- package/dist/lib/llm/llm-config.js.map +1 -1
- package/dist/lib/llm/llm-factory.d.ts +1 -2
- package/dist/lib/llm/llm-factory.d.ts.map +1 -1
- package/dist/lib/llm/llm-factory.js +44 -8
- package/dist/lib/llm/llm-factory.js.map +1 -1
- package/dist/lib/llm/providers/anthropic-chat-model.d.ts +5 -1
- package/dist/lib/llm/providers/anthropic-chat-model.d.ts.map +1 -1
- package/dist/lib/llm/providers/anthropic-chat-model.js +118 -42
- package/dist/lib/llm/providers/anthropic-chat-model.js.map +1 -1
- package/dist/lib/llm/providers/gemini-chat-model.d.ts +3 -2
- package/dist/lib/llm/providers/gemini-chat-model.d.ts.map +1 -1
- package/dist/lib/llm/providers/gemini-chat-model.js +83 -24
- package/dist/lib/llm/providers/gemini-chat-model.js.map +1 -1
- package/dist/lib/llm/providers/openai-chat-model.d.ts +20 -1
- package/dist/lib/llm/providers/openai-chat-model.d.ts.map +1 -1
- package/dist/lib/llm/providers/openai-chat-model.js +265 -32
- package/dist/lib/llm/providers/openai-chat-model.js.map +1 -1
- package/dist/lib/llm/providers/openai-embeddings.d.ts.map +1 -1
- package/dist/lib/llm/providers/openai-embeddings.js +41 -10
- package/dist/lib/llm/providers/openai-embeddings.js.map +1 -1
- package/dist/lib/local-llm/binary-manager.d.ts +66 -0
- package/dist/lib/local-llm/binary-manager.d.ts.map +1 -0
- package/dist/lib/local-llm/binary-manager.js +441 -0
- package/dist/lib/local-llm/binary-manager.js.map +1 -0
- package/dist/lib/local-llm/engine-interface.d.ts +47 -0
- package/dist/lib/local-llm/engine-interface.d.ts.map +1 -0
- package/dist/lib/local-llm/engine-interface.js +2 -0
- package/dist/lib/local-llm/engine-interface.js.map +1 -0
- package/dist/lib/local-llm/engine-registry.d.ts +20 -0
- package/dist/lib/local-llm/engine-registry.d.ts.map +1 -0
- package/dist/lib/local-llm/engine-registry.js +56 -0
- package/dist/lib/local-llm/engine-registry.js.map +1 -0
- package/dist/lib/local-llm/engines/llama-cpp-engine.d.ts +31 -0
- package/dist/lib/local-llm/engines/llama-cpp-engine.d.ts.map +1 -0
- package/dist/lib/local-llm/engines/llama-cpp-engine.js +164 -0
- package/dist/lib/local-llm/engines/llama-cpp-engine.js.map +1 -0
- package/dist/lib/local-llm/engines/mlx-serve-engine.d.ts +31 -0
- package/dist/lib/local-llm/engines/mlx-serve-engine.d.ts.map +1 -0
- package/dist/lib/local-llm/engines/mlx-serve-engine.js +161 -0
- package/dist/lib/local-llm/engines/mlx-serve-engine.js.map +1 -0
- package/dist/lib/local-llm/gguf-reader.d.ts +20 -0
- package/dist/lib/local-llm/gguf-reader.d.ts.map +1 -0
- package/dist/lib/local-llm/gguf-reader.js +190 -0
- package/dist/lib/local-llm/gguf-reader.js.map +1 -0
- package/dist/lib/local-llm/index.d.ts +9 -0
- package/dist/lib/local-llm/index.d.ts.map +1 -0
- package/dist/lib/local-llm/index.js +6 -0
- package/dist/lib/local-llm/index.js.map +1 -0
- package/dist/lib/local-llm/llama-server-process.d.ts +42 -0
- package/dist/lib/local-llm/llama-server-process.d.ts.map +1 -0
- package/dist/lib/local-llm/llama-server-process.js +237 -0
- package/dist/lib/local-llm/llama-server-process.js.map +1 -0
- package/dist/lib/local-llm/mlx-binary-manager.d.ts +33 -0
- package/dist/lib/local-llm/mlx-binary-manager.d.ts.map +1 -0
- package/dist/lib/local-llm/mlx-binary-manager.js +211 -0
- package/dist/lib/local-llm/mlx-binary-manager.js.map +1 -0
- package/dist/lib/local-llm/mlx-server-process.d.ts +26 -0
- package/dist/lib/local-llm/mlx-server-process.d.ts.map +1 -0
- package/dist/lib/local-llm/mlx-server-process.js +210 -0
- package/dist/lib/local-llm/mlx-server-process.js.map +1 -0
- package/dist/lib/local-llm/model-manager.d.ts +33 -0
- package/dist/lib/local-llm/model-manager.d.ts.map +1 -0
- package/dist/lib/local-llm/model-manager.js +591 -0
- package/dist/lib/local-llm/model-manager.js.map +1 -0
- package/dist/lib/local-llm/types.d.ts +51 -0
- package/dist/lib/local-llm/types.d.ts.map +1 -0
- package/dist/lib/local-llm/types.js +2 -0
- package/dist/lib/local-llm/types.js.map +1 -0
- package/dist/lib/logger.d.ts +2 -0
- package/dist/lib/logger.d.ts.map +1 -1
- package/dist/lib/logger.js +68 -6
- package/dist/lib/logger.js.map +1 -1
- package/dist/lib/mcp/mcp-client.d.ts.map +1 -1
- package/dist/lib/mcp/mcp-client.js +5 -3
- package/dist/lib/mcp/mcp-client.js.map +1 -1
- package/dist/lib/mcp/types.d.ts +0 -9
- package/dist/lib/mcp/types.d.ts.map +1 -1
- package/dist/lib/mcp/types.js +1 -2
- package/dist/lib/mcp/types.js.map +1 -1
- package/dist/lib/memory/memory-manager.d.ts +1 -0
- package/dist/lib/memory/memory-manager.d.ts.map +1 -1
- package/dist/lib/memory/memory-manager.js +9 -0
- package/dist/lib/memory/memory-manager.js.map +1 -1
- package/dist/lib/orchestrator.d.ts +11 -8
- package/dist/lib/orchestrator.d.ts.map +1 -1
- package/dist/lib/orchestrator.js +246 -5
- package/dist/lib/orchestrator.js.map +1 -1
- package/dist/lib/sandbox/cdp-client.d.ts +15 -0
- package/dist/lib/sandbox/cdp-client.d.ts.map +1 -0
- package/dist/lib/sandbox/cdp-client.js +139 -0
- package/dist/lib/sandbox/cdp-client.js.map +1 -0
- package/dist/lib/sandbox/html-to-markdown.d.ts +9 -1
- package/dist/lib/sandbox/html-to-markdown.d.ts.map +1 -1
- package/dist/lib/sandbox/html-to-markdown.js +67 -10
- package/dist/lib/sandbox/html-to-markdown.js.map +1 -1
- package/dist/lib/sandbox/index.d.ts +6 -0
- package/dist/lib/sandbox/index.d.ts.map +1 -1
- package/dist/lib/sandbox/index.js +5 -0
- package/dist/lib/sandbox/index.js.map +1 -1
- package/dist/lib/sandbox/page-readiness.d.ts +37 -0
- package/dist/lib/sandbox/page-readiness.d.ts.map +1 -0
- package/dist/lib/sandbox/page-readiness.js +268 -0
- package/dist/lib/sandbox/page-readiness.js.map +1 -0
- package/dist/lib/sandbox/sandbox-browser.d.ts +4 -0
- package/dist/lib/sandbox/sandbox-browser.d.ts.map +1 -0
- package/dist/lib/sandbox/sandbox-browser.js +316 -0
- package/dist/lib/sandbox/sandbox-browser.js.map +1 -0
- package/dist/lib/sandbox/sandbox-container.d.ts +39 -0
- package/dist/lib/sandbox/sandbox-container.d.ts.map +1 -0
- package/dist/lib/sandbox/sandbox-container.js +176 -0
- package/dist/lib/sandbox/sandbox-container.js.map +1 -0
- package/dist/lib/sandbox/sandbox-file.d.ts +4 -0
- package/dist/lib/sandbox/sandbox-file.d.ts.map +1 -0
- package/dist/lib/sandbox/sandbox-file.js +169 -0
- package/dist/lib/sandbox/sandbox-file.js.map +1 -0
- package/dist/lib/sandbox/sandbox-shell.d.ts +5 -0
- package/dist/lib/sandbox/sandbox-shell.d.ts.map +1 -0
- package/dist/lib/sandbox/sandbox-shell.js +111 -0
- package/dist/lib/sandbox/sandbox-shell.js.map +1 -0
- package/dist/lib/sandbox/sandbox-web.d.ts.map +1 -1
- package/dist/lib/sandbox/sandbox-web.js +64 -24
- package/dist/lib/sandbox/sandbox-web.js.map +1 -1
- package/dist/lib/sandbox/types.d.ts +9 -0
- package/dist/lib/sandbox/types.d.ts.map +1 -1
- package/dist/lib/sandbox/types.js +1 -0
- package/dist/lib/sandbox/types.js.map +1 -1
- package/dist/lib/sandbox/vision-browser.d.ts +4 -0
- package/dist/lib/sandbox/vision-browser.d.ts.map +1 -0
- package/dist/lib/sandbox/vision-browser.js +298 -0
- package/dist/lib/sandbox/vision-browser.js.map +1 -0
- package/dist/lib/sea/app-window.d.ts +7 -0
- package/dist/lib/sea/app-window.d.ts.map +1 -0
- package/dist/lib/sea/app-window.js +95 -0
- package/dist/lib/sea/app-window.js.map +1 -0
- package/dist/lib/sea/bootstrap.d.ts +18 -0
- package/dist/lib/sea/bootstrap.d.ts.map +1 -0
- package/dist/lib/sea/bootstrap.js +103 -0
- package/dist/lib/sea/bootstrap.js.map +1 -0
- package/dist/lib/sea/sqlite-vec-shim.d.ts +3 -0
- package/dist/lib/sea/sqlite-vec-shim.d.ts.map +1 -0
- package/dist/lib/sea/sqlite-vec-shim.js +10 -0
- package/dist/lib/sea/sqlite-vec-shim.js.map +1 -0
- package/dist/lib/skills/skill-loader.d.ts +2 -0
- package/dist/lib/skills/skill-loader.d.ts.map +1 -1
- package/dist/lib/skills/skill-loader.js +12 -1
- package/dist/lib/skills/skill-loader.js.map +1 -1
- package/dist/lib/tasks/task-manager.d.ts +3 -1
- package/dist/lib/tasks/task-manager.d.ts.map +1 -1
- package/dist/lib/tasks/task-manager.js +11 -0
- package/dist/lib/tasks/task-manager.js.map +1 -1
- package/dist/lib/tasks/task-store.d.ts +1 -1
- package/dist/lib/tasks/task-store.d.ts.map +1 -1
- package/dist/lib/tasks/task-store.js.map +1 -1
- package/dist/lib/tasks/types.d.ts +18 -0
- package/dist/lib/tasks/types.d.ts.map +1 -1
- package/dist/lib/tools/built-in/integration-tools.d.ts +4 -0
- package/dist/lib/tools/built-in/integration-tools.d.ts.map +1 -0
- package/dist/lib/tools/built-in/integration-tools.js +47 -0
- package/dist/lib/tools/built-in/integration-tools.js.map +1 -0
- package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.d.ts +1 -2
- package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.d.ts.map +1 -1
- package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.js +17 -17
- package/dist/lib/tools/built-in/knowledge-entity-lookup.tool.js.map +1 -1
- package/dist/lib/tools/built-in/knowledge-graph-schema.tool.d.ts.map +1 -1
- package/dist/lib/tools/built-in/knowledge-graph-schema.tool.js +2 -4
- package/dist/lib/tools/built-in/knowledge-graph-schema.tool.js.map +1 -1
- package/dist/lib/tools/built-in/knowledge-search.tool.js +4 -4
- package/dist/lib/tools/built-in/knowledge-search.tool.js.map +1 -1
- package/dist/lib/tools/built-in/knowledge-sql.tool.d.ts.map +1 -1
- package/dist/lib/tools/built-in/knowledge-sql.tool.js +74 -40
- package/dist/lib/tools/built-in/knowledge-sql.tool.js.map +1 -1
- package/dist/lib/tools/built-in/knowledge-tools-factory.js +2 -2
- package/dist/lib/tools/built-in/knowledge-tools-factory.js.map +1 -1
- package/dist/lib/tools/built-in/knowledge-traverse.tool.d.ts +1 -2
- package/dist/lib/tools/built-in/knowledge-traverse.tool.d.ts.map +1 -1
- package/dist/lib/tools/built-in/knowledge-traverse.tool.js +5 -11
- package/dist/lib/tools/built-in/knowledge-traverse.tool.js.map +1 -1
- package/dist/lib/tools/built-in/query-validators.d.ts.map +1 -1
- package/dist/lib/tools/built-in/query-validators.js +4 -0
- package/dist/lib/tools/built-in/query-validators.js.map +1 -1
- package/dist/lib/tools/workspace/workspace-tools.d.ts +1 -0
- package/dist/lib/tools/workspace/workspace-tools.d.ts.map +1 -1
- package/dist/lib/tools/workspace/workspace-tools.js +44 -4
- package/dist/lib/tools/workspace/workspace-tools.js.map +1 -1
- package/dist/lib/triggers/cron-trigger.d.ts +1 -1
- package/dist/lib/triggers/cron-trigger.d.ts.map +1 -1
- package/dist/lib/triggers/cron-trigger.js.map +1 -1
- package/dist/lib/triggers/trigger-manager.d.ts +1 -0
- package/dist/lib/triggers/trigger-manager.d.ts.map +1 -1
- package/dist/lib/triggers/trigger-manager.js +26 -0
- package/dist/lib/triggers/trigger-manager.js.map +1 -1
- package/dist/lib/triggers/webhook-trigger.d.ts +1 -1
- package/dist/lib/triggers/webhook-trigger.d.ts.map +1 -1
- package/dist/lib/triggers/webhook-trigger.js.map +1 -1
- package/dist/lib/types/llm-types.d.ts +22 -4
- package/dist/lib/types/llm-types.d.ts.map +1 -1
- package/dist/lib/types/llm-types.js +50 -0
- package/dist/lib/types/llm-types.js.map +1 -1
- package/dist/lib/types/tool-factory.d.ts +2 -2
- package/dist/lib/types/tool-factory.d.ts.map +1 -1
- package/dist/lib/types/tool-factory.js +9 -2
- package/dist/lib/types/tool-factory.js.map +1 -1
- package/dist/lib/utils/document-extract.d.ts +10 -0
- package/dist/lib/utils/document-extract.d.ts.map +1 -0
- package/dist/lib/utils/document-extract.js +149 -0
- package/dist/lib/utils/document-extract.js.map +1 -0
- package/dist/lib/utils/env-substitution.d.ts +6 -0
- package/dist/lib/utils/env-substitution.d.ts.map +1 -0
- package/dist/lib/utils/env-substitution.js +15 -0
- package/dist/lib/utils/env-substitution.js.map +1 -0
- package/dist/lib/workflows/react-workflow-executor.d.ts.map +1 -1
- package/dist/lib/workflows/react-workflow-executor.js +23 -17
- package/dist/lib/workflows/react-workflow-executor.js.map +1 -1
- package/dist/lib/workflows/types.d.ts +81 -55
- package/dist/lib/workflows/types.d.ts.map +1 -1
- package/dist/lib/workflows/types.js +10 -0
- package/dist/lib/workflows/types.js.map +1 -1
- package/dist/lib/workflows/workflow-loader.d.ts +3 -0
- package/dist/lib/workflows/workflow-loader.d.ts.map +1 -1
- package/dist/lib/workflows/workflow-loader.js +10 -1
- package/dist/lib/workflows/workflow-loader.js.map +1 -1
- package/dist/public/assets/logo.png +0 -0
- package/dist/public/chat.html +39 -0
- package/dist/public/index.html +6 -176
- package/dist/public/src/components/AgentComposer.js +807 -0
- package/dist/public/src/components/AgentsView.js +1812 -508
- package/dist/public/src/components/AppRoot.js +125 -38
- package/dist/public/src/components/GraphView.js +382 -300
- package/dist/public/src/components/IdeView.js +277 -86
- package/dist/public/src/components/KnowledgeView.js +94 -130
- package/dist/public/src/components/LlmView.js +15 -19
- package/dist/public/src/components/LocalLlmView.js +2440 -0
- package/dist/public/src/components/LogViewer.js +155 -0
- package/dist/public/src/components/McpView.js +41 -49
- package/dist/public/src/components/MonitorView.js +174 -83
- package/dist/public/src/components/NavBar.js +16 -26
- package/dist/public/src/components/StandaloneChat.js +875 -0
- package/dist/public/src/services/ApiService.js +203 -4
- package/dist/public/src/services/SessionStore.js +86 -0
- package/dist/public/src/services/StreamManager.js +183 -0
- package/dist/public/src/store.js +1 -3
- package/dist/public/src/utils/card.js +21 -0
- package/dist/public/src/utils/markdown.js +7 -0
- package/dist/public/styles.css +2777 -0
- package/dist/src/cli/commands/init.d.ts.map +1 -1
- package/dist/src/cli/commands/init.js +7 -1
- package/dist/src/cli/commands/init.js.map +1 -1
- package/dist/src/cli/commands/start.d.ts.map +1 -1
- package/dist/src/cli/commands/start.js +28 -5
- package/dist/src/cli/commands/start.js.map +1 -1
- package/dist/src/cli/index.js +19 -5
- package/dist/src/cli/index.js.map +1 -1
- package/dist/src/index.js +7 -1
- package/dist/src/index.js.map +1 -1
- package/dist/src/middleware/auth.d.ts.map +1 -1
- package/dist/src/middleware/auth.js +28 -6
- package/dist/src/middleware/auth.js.map +1 -1
- package/dist/src/middleware/rate-limit.d.ts +8 -0
- package/dist/src/middleware/rate-limit.d.ts.map +1 -0
- package/dist/src/middleware/rate-limit.js +21 -0
- package/dist/src/middleware/rate-limit.js.map +1 -0
- package/dist/src/routes/agents.route.d.ts.map +1 -1
- package/dist/src/routes/agents.route.js +138 -10
- package/dist/src/routes/agents.route.js.map +1 -1
- package/dist/src/routes/chat.route.d.ts +3 -0
- package/dist/src/routes/chat.route.d.ts.map +1 -0
- package/dist/src/routes/chat.route.js +156 -0
- package/dist/src/routes/chat.route.js.map +1 -0
- package/dist/src/routes/files.route.d.ts.map +1 -1
- package/dist/src/routes/files.route.js +37 -2
- package/dist/src/routes/files.route.js.map +1 -1
- package/dist/src/routes/llm.route.d.ts.map +1 -1
- package/dist/src/routes/llm.route.js +263 -8
- package/dist/src/routes/llm.route.js.map +1 -1
- package/dist/src/routes/local-llm.route.d.ts +3 -0
- package/dist/src/routes/local-llm.route.d.ts.map +1 -0
- package/dist/src/routes/local-llm.route.js +688 -0
- package/dist/src/routes/local-llm.route.js.map +1 -0
- package/dist/src/routes/logs.route.d.ts +3 -0
- package/dist/src/routes/logs.route.d.ts.map +1 -0
- package/dist/src/routes/logs.route.js +24 -0
- package/dist/src/routes/logs.route.js.map +1 -0
- package/dist/src/routes/tasks.route.d.ts.map +1 -1
- package/dist/src/routes/tasks.route.js +15 -1
- package/dist/src/routes/tasks.route.js.map +1 -1
- package/dist/src/routes/vnc.route.d.ts +12 -0
- package/dist/src/routes/vnc.route.d.ts.map +1 -0
- package/dist/src/routes/vnc.route.js +74 -0
- package/dist/src/routes/vnc.route.js.map +1 -0
- package/dist/src/routes/workflows.route.d.ts.map +1 -1
- package/dist/src/routes/workflows.route.js +24 -0
- package/dist/src/routes/workflows.route.js.map +1 -1
- package/dist/src/server.d.ts.map +1 -1
- package/dist/src/server.js +29 -3
- package/dist/src/server.js.map +1 -1
- package/dist/templates/Demo.md +152 -0
- package/dist/templates/README.md +12 -3
- package/dist/templates/agents/actor.agent.yaml +34 -0
- package/dist/templates/agents/architect.agent.yaml +20 -13
- package/dist/templates/agents/chatbot.agent.yaml +23 -27
- package/dist/templates/agents/corporate.agent.yaml +64 -0
- package/dist/templates/agents/functions.agent.yaml +29 -0
- package/dist/templates/agents/investment-analyst.agent.yaml +79 -0
- package/dist/templates/agents/music-librarian.agent.yaml +46 -0
- package/dist/templates/agents/network-security.agent.yaml +81 -0
- package/dist/templates/agents/transport-security.agent.yaml +69 -0
- package/dist/templates/agents/web-engineer.agent.yaml +98 -0
- package/dist/templates/agents/web-pilot.agent.yaml +57 -0
- package/dist/templates/knowledge/music-store/LICENSE.md +11 -0
- package/dist/templates/knowledge/music-store/musicstore.sqlite +0 -0
- package/dist/templates/knowledge/music-store/tables.png +0 -0
- package/dist/templates/knowledge/music-store.knowledge.yaml +138 -0
- package/dist/templates/knowledge/org-chart/personnel.csv +21 -21
- package/dist/templates/knowledge/org-chart.knowledge.yaml +4 -0
- package/dist/templates/knowledge/patient-records.knowledge.yaml +20 -0
- package/dist/templates/knowledge/pdf-patients/PDF_Deid_Deidentification_0.pdf +0 -0
- package/dist/templates/knowledge/pdf-patients/PDF_Deid_Deidentification_1.pdf +0 -0
- package/dist/templates/knowledge/pdf-patients/PDF_Deid_Deidentification_10.pdf +0 -0
- package/dist/templates/knowledge/pdf-patients/PDF_Deid_Deidentification_11.pdf +0 -0
- package/dist/templates/knowledge/pet-store.knowledge.yaml +3 -0
- package/dist/templates/knowledge/security-incidents/incidents.json +55935 -0
- package/dist/templates/knowledge/security-incidents.knowledge.yaml +46 -0
- package/dist/templates/knowledge/{example.knowledge.yaml → transcripts.knowledge.yaml} +9 -5
- package/dist/templates/knowledge/transport-ot/systems.csv +117 -0
- package/dist/templates/knowledge/transport-ot.knowledge.yaml +55 -0
- package/dist/templates/knowledge/web-docs.knowledge.yaml +1 -1
- package/dist/templates/llm.json +62 -22
- package/dist/templates/mcp.json +7 -4
- package/dist/templates/skills/orcha-builder/SKILL.md +148 -215
- package/dist/templates/skills/pii-guard/SKILL.md +22 -0
- package/dist/templates/skills/sandbox/SKILL.md +25 -48
- package/dist/templates/skills/web-pilot/SKILL.md +51 -0
- package/dist/templates/workflows/example.workflow.yaml +27 -35
- package/dist/templates/workflows/react-example.workflow.yaml +14 -19
- package/dist/templates/workflows/team-chat.workflow.yaml +47 -0
- package/package.json +17 -4
- package/dist/public/src/components/SkillsView.js +0 -137
- package/dist/public/src/components/WorkflowsView.js +0 -416
- package/dist/templates/agents/knowledge-broker.agent.yaml +0 -39
- package/dist/templates/agents/sandbox.agent.yaml +0 -56
|
@@ -5,106 +5,95 @@ description: Documentation for creating and modifying ORCHA resources (agents, w
|
|
|
5
5
|
|
|
6
6
|
# ORCHA Resource Schemas
|
|
7
7
|
|
|
8
|
-
Use this reference when creating or modifying ORCHA resources. All resource files live in the workspace root under their respective directories.
|
|
9
|
-
|
|
10
|
-
---
|
|
11
|
-
|
|
12
8
|
## Agents (`agents/<name>.agent.yaml`)
|
|
13
9
|
|
|
14
10
|
```yaml
|
|
15
|
-
name: my-agent
|
|
16
|
-
description: What the agent does
|
|
17
|
-
version: "1.0.0" # Optional, defaults to 1.0.0
|
|
18
|
-
|
|
11
|
+
name: my-agent
|
|
12
|
+
description: What the agent does
|
|
19
13
|
llm:
|
|
20
|
-
name: default
|
|
21
|
-
temperature: 0.7
|
|
22
|
-
|
|
14
|
+
name: default
|
|
15
|
+
temperature: 0.7
|
|
23
16
|
prompt:
|
|
24
17
|
system: |
|
|
25
|
-
|
|
26
|
-
Your instructions go here.
|
|
18
|
+
Your system prompt here.
|
|
27
19
|
inputVariables:
|
|
28
|
-
- query
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
-
|
|
32
|
-
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
output:
|
|
44
|
-
format: text
|
|
45
|
-
|
|
46
|
-
type: object
|
|
47
|
-
properties:
|
|
48
|
-
result:
|
|
49
|
-
type: string
|
|
50
|
-
|
|
51
|
-
memory: # Optional conversation memory
|
|
20
|
+
- query
|
|
21
|
+
tools: # mcp:<server> | knowledge:<store> | function:<name>
|
|
22
|
+
- mcp:server-name # builtin:<name> | sandbox:<tool> | workspace:<tool>
|
|
23
|
+
- knowledge:store-name # workspace: read, write, delete, list, list_resources, diagnostics
|
|
24
|
+
- sandbox:browser_navigate # sandbox: exec, shell, web_fetch, web_search
|
|
25
|
+
# sandbox: browser_navigate, browser_observe, browser_screenshot,
|
|
26
|
+
# browser_content, browser_click, browser_type, browser_evaluate
|
|
27
|
+
# sandbox: vision_screenshot, vision_navigate, vision_click,
|
|
28
|
+
# vision_type, vision_scroll, vision_key, vision_drag
|
|
29
|
+
# (requires EXPERIMENTAL_VISION=true)
|
|
30
|
+
# sandbox: file_read, file_write, file_edit, file_insert, file_replace_lines
|
|
31
|
+
# builtin: ask_user, save_memory
|
|
32
|
+
# (conditional: integration_post, integration_context, email_send)
|
|
33
|
+
skills:
|
|
34
|
+
- skill-name # or use mode: all to attach all skills
|
|
35
|
+
output:
|
|
36
|
+
format: text # text | structured
|
|
37
|
+
memory:
|
|
52
38
|
enabled: true
|
|
53
|
-
maxLines: 100
|
|
54
|
-
|
|
55
|
-
metadata: # Optional metadata
|
|
56
|
-
category: general
|
|
57
|
-
tags:
|
|
58
|
-
- example
|
|
59
|
-
|
|
60
|
-
integrations: # Optional integrations
|
|
39
|
+
maxLines: 100
|
|
40
|
+
integrations:
|
|
61
41
|
- type: collabnook
|
|
62
|
-
url: wss://collabnook.com/ws
|
|
42
|
+
url: "wss://collabnook.com/ws" # optional — defaults to wss://collabnook.com/ws
|
|
63
43
|
channel: general
|
|
64
|
-
botName:
|
|
65
|
-
|
|
66
|
-
|
|
44
|
+
botName: Bot
|
|
45
|
+
- type: email
|
|
46
|
+
imap:
|
|
47
|
+
host: imap.gmail.com
|
|
48
|
+
port: 993
|
|
49
|
+
smtp:
|
|
50
|
+
host: smtp.gmail.com
|
|
51
|
+
port: 587
|
|
52
|
+
auth:
|
|
53
|
+
user: agent@example.com
|
|
54
|
+
pass: pw
|
|
55
|
+
pollInterval: 60
|
|
56
|
+
folder: INBOX
|
|
57
|
+
triggers:
|
|
67
58
|
- type: cron
|
|
68
|
-
schedule: "*/5 * * * *"
|
|
59
|
+
schedule: "*/5 * * * *"
|
|
69
60
|
input:
|
|
70
|
-
query: "
|
|
61
|
+
query: "Task"
|
|
62
|
+
publish: true # or { enabled: true, password: "secret" }
|
|
63
|
+
sampleQuestions: # optional — clickable chips shown in chat UI on initial load
|
|
64
|
+
- "What can you help me with?"
|
|
65
|
+
- "Summarize the latest report"
|
|
71
66
|
```
|
|
72
67
|
|
|
73
|
-
|
|
68
|
+
Published agents are accessible at `/chat/<agent-name>` with optional per-agent password.
|
|
74
69
|
|
|
75
70
|
## Step-Based Workflows (`workflows/<name>.workflow.yaml`)
|
|
76
71
|
|
|
77
72
|
```yaml
|
|
78
73
|
name: my-workflow
|
|
79
74
|
description: What the workflow does
|
|
80
|
-
|
|
81
|
-
type: steps # "steps" for step-based workflows
|
|
82
|
-
|
|
75
|
+
type: steps
|
|
83
76
|
input:
|
|
84
|
-
schema:
|
|
77
|
+
schema:
|
|
85
78
|
query:
|
|
86
|
-
type: string
|
|
79
|
+
type: string
|
|
87
80
|
required: true
|
|
88
|
-
description: "The user query"
|
|
89
|
-
|
|
90
81
|
steps:
|
|
91
|
-
- id: step-one
|
|
92
|
-
agent: agent-name
|
|
82
|
+
- id: step-one
|
|
83
|
+
agent: agent-name
|
|
93
84
|
input:
|
|
94
|
-
query: "{{query}}"
|
|
95
|
-
output:
|
|
96
|
-
key: step_one_result
|
|
97
|
-
extract: output
|
|
98
|
-
|
|
85
|
+
query: "{{query}}"
|
|
86
|
+
output:
|
|
87
|
+
key: step_one_result
|
|
88
|
+
extract: output
|
|
99
89
|
- id: step-two
|
|
100
90
|
agent: another-agent
|
|
101
91
|
input:
|
|
102
92
|
query: "{{step_one_result}}"
|
|
103
93
|
output:
|
|
104
94
|
key: step_two_result
|
|
105
|
-
condition: "{{step_one_result}}"
|
|
106
|
-
|
|
107
|
-
- parallel: # Parallel execution (no "name" key here)
|
|
95
|
+
condition: "{{step_one_result}}"
|
|
96
|
+
- parallel:
|
|
108
97
|
- id: branch-a
|
|
109
98
|
agent: agent-a
|
|
110
99
|
input:
|
|
@@ -117,223 +106,167 @@ steps:
|
|
|
117
106
|
query: "{{query}}"
|
|
118
107
|
output:
|
|
119
108
|
key: result_b
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
onError: stop # stop | continue | retry
|
|
124
|
-
|
|
109
|
+
config:
|
|
110
|
+
timeout: 300000
|
|
111
|
+
onError: stop # stop | continue | retry
|
|
125
112
|
output:
|
|
126
113
|
result: "{{step_two_result}}"
|
|
114
|
+
chatOutputFormat: text # text | json
|
|
115
|
+
sampleQuestions:
|
|
116
|
+
- "Run the pipeline"
|
|
127
117
|
```
|
|
128
118
|
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
## LangGraph Workflows (`workflows/<name>.workflow.yaml`)
|
|
119
|
+
## ReAct Workflows (`workflows/<name>.workflow.yaml`)
|
|
132
120
|
|
|
133
121
|
```yaml
|
|
134
|
-
name: my-
|
|
135
|
-
description:
|
|
136
|
-
|
|
137
|
-
type: langgraph
|
|
138
|
-
|
|
122
|
+
name: my-react-workflow
|
|
123
|
+
description: Autonomous workflow with tool and agent discovery
|
|
124
|
+
type: react
|
|
139
125
|
input:
|
|
140
|
-
schema:
|
|
126
|
+
schema:
|
|
141
127
|
query:
|
|
142
128
|
type: string
|
|
143
129
|
required: true
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
prompt: # REQUIRED for langgraph workflows
|
|
130
|
+
prompt:
|
|
147
131
|
system: |
|
|
148
|
-
You are a helpful assistant
|
|
149
|
-
goal: "Answer the user's query
|
|
150
|
-
|
|
132
|
+
You are a helpful assistant.
|
|
133
|
+
goal: "Answer the user's query"
|
|
151
134
|
graph:
|
|
152
|
-
model: default
|
|
135
|
+
model: default
|
|
153
136
|
tools:
|
|
154
|
-
sources:
|
|
137
|
+
sources:
|
|
155
138
|
- mcp
|
|
156
139
|
- knowledge
|
|
157
140
|
- function
|
|
158
141
|
- builtin
|
|
159
|
-
mode: all
|
|
160
|
-
exclude:
|
|
142
|
+
mode: all # all | none | include | exclude
|
|
143
|
+
exclude:
|
|
161
144
|
- dangerous_tool
|
|
162
145
|
agents:
|
|
163
|
-
mode: all
|
|
146
|
+
mode: all
|
|
164
147
|
exclude:
|
|
165
|
-
- architect
|
|
166
|
-
executionMode: react
|
|
167
|
-
maxIterations: 10
|
|
168
|
-
timeout: 300000
|
|
169
|
-
|
|
148
|
+
- architect
|
|
149
|
+
executionMode: react # react | single-turn
|
|
150
|
+
maxIterations: 10
|
|
151
|
+
timeout: 300000
|
|
170
152
|
output:
|
|
171
153
|
result: "{{result}}"
|
|
154
|
+
chatOutputFormat: text # text | json
|
|
155
|
+
sampleQuestions:
|
|
156
|
+
- "What can you do?"
|
|
172
157
|
```
|
|
173
158
|
|
|
174
|
-
---
|
|
175
|
-
|
|
176
159
|
## Knowledge Stores (`knowledge/<name>.knowledge.yaml`)
|
|
177
160
|
|
|
178
161
|
```yaml
|
|
179
162
|
name: my-knowledge
|
|
180
|
-
description: What this
|
|
181
|
-
|
|
163
|
+
description: What this store contains
|
|
182
164
|
source:
|
|
183
|
-
#
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
# --- OR file source ---
|
|
190
|
-
# type: file
|
|
191
|
-
# path: ./data/report.pdf
|
|
192
|
-
|
|
193
|
-
# --- OR database source ---
|
|
194
|
-
# type: database
|
|
195
|
-
# connectionString: postgresql://user:pass@host:5432/db # postgresql://, mysql://, or sqlite://
|
|
196
|
-
# query: "SELECT content FROM documents"
|
|
197
|
-
# contentColumn: content # Default: "content"
|
|
198
|
-
# metadataColumns: [id, title] # Optional
|
|
199
|
-
# batchSize: 100 # Optional, default: 100
|
|
200
|
-
|
|
201
|
-
# --- OR web source ---
|
|
202
|
-
# type: web
|
|
203
|
-
# url: https://example.com/docs
|
|
204
|
-
# selector: ".main-content" # Optional CSS selector
|
|
205
|
-
# headers: # Optional custom headers
|
|
206
|
-
# Authorization: "Bearer token"
|
|
207
|
-
|
|
208
|
-
loader: # REQUIRED (has defaults)
|
|
209
|
-
type: text # text | pdf | csv | json | markdown
|
|
210
|
-
|
|
165
|
+
type: directory # directory | file | database | web
|
|
166
|
+
path: ./docs
|
|
167
|
+
pattern: "**/*.md"
|
|
168
|
+
# Web-specific: url, selector (html only), headers, jsonPath (dot-notation for nested arrays)
|
|
169
|
+
loader: # optional — defaults: html (web), text (file/directory)
|
|
170
|
+
type: text # text | pdf | csv | json | markdown | html
|
|
211
171
|
splitter:
|
|
212
|
-
type: recursive
|
|
172
|
+
type: recursive # character | recursive | token | markdown
|
|
213
173
|
chunkSize: 1000
|
|
214
174
|
chunkOverlap: 200
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
search: # Optional
|
|
175
|
+
embedding: default # reference to llm.json config
|
|
176
|
+
search:
|
|
219
177
|
defaultK: 4
|
|
220
|
-
scoreThreshold: 0.5
|
|
221
|
-
|
|
222
|
-
|
|
178
|
+
scoreThreshold: 0.5
|
|
179
|
+
reindex: # optional — periodic refresh
|
|
180
|
+
schedule: "0 * * * *" # cron expression
|
|
181
|
+
graph: # optional — works with database, csv, json (array of objects)
|
|
223
182
|
directMapping:
|
|
224
183
|
entities:
|
|
225
|
-
- type: Person
|
|
226
|
-
idColumn: id
|
|
227
|
-
nameColumn: name
|
|
228
|
-
properties:
|
|
229
|
-
- email
|
|
230
|
-
-
|
|
231
|
-
relationships:
|
|
184
|
+
- type: Person
|
|
185
|
+
idColumn: id
|
|
186
|
+
nameColumn: name
|
|
187
|
+
properties:
|
|
188
|
+
- email
|
|
189
|
+
- role: job_title
|
|
190
|
+
relationships:
|
|
232
191
|
- type: WORKS_FOR
|
|
233
|
-
source: Person
|
|
234
|
-
target: Organization
|
|
192
|
+
source: Person
|
|
193
|
+
target: Organization
|
|
235
194
|
sourceIdColumn: person_id
|
|
236
195
|
targetIdColumn: org_id
|
|
237
|
-
groupNode: department # Optional: group by column
|
|
238
196
|
```
|
|
239
197
|
|
|
240
|
-
|
|
198
|
+
Web sources support all loader types. Use `loader.type: json` for APIs, `text` for raw content, `html` (default) for web pages with optional `selector`. Add `headers` for authenticated endpoints. Use `jsonPath` (e.g., `items` or `data.results`) to extract a nested array from the JSON response before parsing.
|
|
241
199
|
|
|
242
200
|
## Custom Functions (`functions/<name>.function.js`)
|
|
243
201
|
|
|
244
202
|
```javascript
|
|
245
|
-
export const metadata = {
|
|
246
|
-
name: "my-function",
|
|
247
|
-
description: "What this function does",
|
|
248
|
-
version: "1.0.0",
|
|
249
|
-
tags: ["utility"]
|
|
250
|
-
};
|
|
251
|
-
|
|
203
|
+
export const metadata = { name: "my-function", description: "What it does" };
|
|
252
204
|
export const parameters = {
|
|
253
205
|
type: "object",
|
|
254
|
-
properties: {
|
|
255
|
-
input: {
|
|
256
|
-
type: "string",
|
|
257
|
-
description: "The input parameter"
|
|
258
|
-
}
|
|
259
|
-
},
|
|
206
|
+
properties: { input: { type: "string", description: "Input" } },
|
|
260
207
|
required: ["input"]
|
|
261
208
|
};
|
|
262
|
-
|
|
263
209
|
export default async function({ input }) {
|
|
264
|
-
// Your logic here
|
|
265
210
|
return { result: `Processed: ${input}` };
|
|
266
211
|
}
|
|
267
212
|
```
|
|
268
213
|
|
|
269
|
-
|
|
214
|
+
Function parameters support automatic type coercion — if an LLM passes a number as a string, it is auto-coerced to the declared type.
|
|
270
215
|
|
|
271
216
|
## Skills (`skills/<name>/SKILL.md`)
|
|
272
217
|
|
|
273
|
-
|
|
274
|
-
---
|
|
275
|
-
name: my-skill
|
|
276
|
-
description: What this skill teaches the agent
|
|
277
|
-
---
|
|
218
|
+
Markdown files with YAML frontmatter (`name`, `description`). Content is injected into the agent's system prompt. Add `sandbox: true` if the skill requires sandbox tools.
|
|
278
219
|
|
|
279
|
-
|
|
220
|
+
## MCP Servers (`mcp.json`)
|
|
280
221
|
|
|
281
|
-
|
|
282
|
-
|
|
222
|
+
```json
|
|
223
|
+
{ "servers": { "name": { "url": "https://example.com/mcp", "enabled": true } } }
|
|
283
224
|
```
|
|
284
225
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
---
|
|
288
|
-
|
|
289
|
-
## MCP Server Configuration (`mcp.json`)
|
|
226
|
+
Remote: `url`. Local: `command` + `args`. Optional: `headers`, `env`, `timeout`, `transport`, `description`. Transport is auto-detected. To add a server: read `mcp.json`, add entry, write back, then reference as `mcp:<name>` in agent tools.
|
|
290
227
|
|
|
291
|
-
|
|
228
|
+
## LLM Configuration (`llm.json`)
|
|
292
229
|
|
|
293
230
|
```json
|
|
294
231
|
{
|
|
295
|
-
"
|
|
296
|
-
"
|
|
297
|
-
"
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
}
|
|
232
|
+
"default": "llama-cpp",
|
|
233
|
+
"llama-cpp": {
|
|
234
|
+
"engine": "llama-cpp",
|
|
235
|
+
"model": "qwen3-8b",
|
|
236
|
+
"temperature": 0.7,
|
|
237
|
+
"reasoningBudget": 4096,
|
|
238
|
+
"thinkingBudget": 4096
|
|
303
239
|
},
|
|
304
|
-
"
|
|
305
|
-
"
|
|
306
|
-
"
|
|
307
|
-
"
|
|
308
|
-
|
|
240
|
+
"ollama-model": {
|
|
241
|
+
"engine": "ollama",
|
|
242
|
+
"model": "llama3",
|
|
243
|
+
"temperature": 0.5
|
|
244
|
+
},
|
|
245
|
+
"embeddings": {
|
|
246
|
+
"engine": "llama-cpp",
|
|
247
|
+
"model": "nomic-embed",
|
|
248
|
+
"type": "embedding"
|
|
249
|
+
},
|
|
250
|
+
"engineUrls": {
|
|
251
|
+
"llama-cpp": "http://localhost:8080",
|
|
252
|
+
"mlx-serve": "http://localhost:8081",
|
|
253
|
+
"ollama": "http://localhost:11434",
|
|
254
|
+
"lmstudio": "http://localhost:1234"
|
|
309
255
|
}
|
|
310
256
|
}
|
|
311
257
|
```
|
|
312
258
|
|
|
313
|
-
|
|
314
|
-
- `url` — Required for remote servers (auto-detects `streamable-http` transport)
|
|
315
|
-
- `command` + `args` — Required for local stdio servers (auto-detects `stdio` transport)
|
|
316
|
-
- `transport` — Explicit: `stdio`, `sse`, `streamable-http`, or `sse-only` (auto-detected if omitted)
|
|
317
|
-
- `headers` — Optional HTTP headers (e.g. for auth)
|
|
318
|
-
- `env` — Optional environment variables (for stdio servers)
|
|
319
|
-
- `description` — Optional human-readable description
|
|
320
|
-
- `timeout` — Request timeout in ms (default: 30000)
|
|
321
|
-
- `enabled` — Set to `false` to disable without removing (default: true)
|
|
259
|
+
The `"default"` key is a string pointer to another config name. Engines: `llama-cpp`, `mlx-serve`, `ollama`, `lmstudio`. Use `reasoningBudget`/`thinkingBudget` for thinking models. Values support `${ENV_VAR}` substitution.
|
|
322
260
|
|
|
323
|
-
|
|
324
|
-
1. Read `mcp.json` first to preserve existing servers
|
|
325
|
-
2. Add the new server entry to the `servers` object
|
|
326
|
-
3. Write the updated `mcp.json` back
|
|
327
|
-
4. Create an agent that references it with `tools: [mcp:server-name]`
|
|
261
|
+
## Environment Variable Substitution
|
|
328
262
|
|
|
329
|
-
|
|
263
|
+
All YAML and JSON config files support `${ENV_VAR}` and `${ENV_VAR:-default}` syntax. Use this for secrets, URLs, and any values that differ between environments.
|
|
330
264
|
|
|
331
265
|
## Best Practices
|
|
332
266
|
|
|
333
|
-
-
|
|
334
|
-
-
|
|
335
|
-
-
|
|
336
|
-
-
|
|
337
|
-
-
|
|
338
|
-
-
|
|
339
|
-
- **Skills**: Use skills to share knowledge across multiple agents without duplicating prompt content
|
|
267
|
+
- Use kebab-case for all resource names
|
|
268
|
+
- Temperature: 0.0-0.3 for structured tasks, 0.5-0.7 for creative
|
|
269
|
+
- Only include tools the agent actually needs
|
|
270
|
+
- Always read existing resources before modifying them
|
|
271
|
+
- Check `workspace_list_resources` before creating to avoid name collisions
|
|
272
|
+
- Use skills to share knowledge across agents without duplicating prompts
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pii-guard
|
|
3
|
+
description: PII and OWASP security filtering rules
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# PII Guard
|
|
7
|
+
|
|
8
|
+
## Sensitive Data Categories (NEVER include in responses)
|
|
9
|
+
|
|
10
|
+
- SSN, tax IDs, government identifiers
|
|
11
|
+
- Salary, compensation, financial data
|
|
12
|
+
- Home addresses, personal phone numbers
|
|
13
|
+
- Dates of birth, ages
|
|
14
|
+
- Full email addresses (mask as j***@company.com)
|
|
15
|
+
- Medical, legal, or disciplinary records
|
|
16
|
+
|
|
17
|
+
## Behavior
|
|
18
|
+
|
|
19
|
+
- **Default:** silently omit PII from responses — don't announce filtering
|
|
20
|
+
- **Explicit request:** decline politely citing company data policy
|
|
21
|
+
- **User provides PII:** refuse to process, store, or format it
|
|
22
|
+
- **Partial info OK:** name, title, department, general location, hire year
|
|
@@ -1,63 +1,40 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: sandbox
|
|
3
|
-
description: Execute JavaScript
|
|
3
|
+
description: Execute JavaScript, shell commands, fetch web content, and control a browser
|
|
4
4
|
sandbox: true
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
# Sandbox
|
|
7
|
+
# Sandbox Tools
|
|
8
8
|
|
|
9
|
-
|
|
9
|
+
## sandbox_exec
|
|
10
|
+
Run JavaScript in isolated VM. Use `console.log()` for output, `return` for result. No `fetch`/`require` — use `sandbox_web_fetch` for HTTP.
|
|
10
11
|
|
|
11
|
-
##
|
|
12
|
+
## sandbox_shell
|
|
13
|
+
Run shell commands in `/tmp` with limited permissions (Docker only).
|
|
12
14
|
|
|
13
|
-
|
|
15
|
+
## sandbox_web_fetch
|
|
16
|
+
Fetch web pages (auto-converted to markdown) or APIs (`raw: true`).
|
|
14
17
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
- `timeout` (optional): Execution timeout in milliseconds
|
|
18
|
+
## sandbox_web_search
|
|
19
|
+
Search DuckDuckGo. Params: `query`, `num_results`.
|
|
18
20
|
|
|
19
|
-
|
|
21
|
+
## Browser Tools
|
|
20
22
|
|
|
21
|
-
|
|
23
|
+
Observe → Act → Observe loop. Elements have short refs (e1, e2...) — use them in click/type.
|
|
22
24
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
- `runScripts` (optional): Run page JavaScript before extracting content (default: true)
|
|
33
|
-
|
|
34
|
-
**Returns:** JSON with `content`, `url`, `status`, and `truncated`
|
|
35
|
-
|
|
36
|
-
## Tool: sandbox_web_search
|
|
37
|
-
|
|
38
|
-
Search the web using DuckDuckGo.
|
|
39
|
-
|
|
40
|
-
**Parameters:**
|
|
41
|
-
- `query` (required): Search query
|
|
42
|
-
- `num_results` (optional): Max results to return (default 10)
|
|
43
|
-
|
|
44
|
-
**Returns:** JSON with `results` (formatted list) and `query`
|
|
45
|
-
|
|
46
|
-
## Usage Examples
|
|
47
|
-
|
|
48
|
-
Run JavaScript code:
|
|
49
|
-
```
|
|
50
|
-
sandbox_exec({ code: "const sum = [1,2,3].reduce((a,b) => a+b, 0); console.log(sum); return sum;" })
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
Fetch a web page:
|
|
54
|
-
```
|
|
55
|
-
sandbox_web_fetch({ url: "https://example.com" })
|
|
56
|
-
```
|
|
25
|
+
| Tool | Use |
|
|
26
|
+
|------|-----|
|
|
27
|
+
| `sandbox_browser_observe` | Text snapshot with element refs. Primary verification tool. |
|
|
28
|
+
| `sandbox_browser_navigate` | Go to URL, wait for ready, return snapshot |
|
|
29
|
+
| `sandbox_browser_click` | Click by ref (`"e3"`) or text (`"Submit"`) |
|
|
30
|
+
| `sandbox_browser_type` | Type by ref (`"e5"`), dispatches input/change events |
|
|
31
|
+
| `sandbox_browser_content` | Page as markdown (optional selector) |
|
|
32
|
+
| `sandbox_browser_evaluate` | Run JS, reports side effects |
|
|
33
|
+
| `sandbox_browser_screenshot` | PNG screenshot (expensive, last resort) |
|
|
57
34
|
|
|
58
35
|
## Best Practices
|
|
59
36
|
|
|
60
|
-
1. Use `
|
|
61
|
-
2. Use
|
|
62
|
-
3.
|
|
63
|
-
4.
|
|
37
|
+
1. Use `sandbox_web_fetch` for HTTP — not `fetch` in sandbox_exec
|
|
38
|
+
2. Use observe to verify page state — not screenshots
|
|
39
|
+
3. Use refs from observe output in click/type — don't guess selectors
|
|
40
|
+
4. Check `sideEffects` in evaluate results
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: web-pilot
|
|
3
|
+
description: Browser automation — observe-act loop with refs
|
|
4
|
+
sandbox: true
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Web Pilot
|
|
8
|
+
|
|
9
|
+
## Tools
|
|
10
|
+
|
|
11
|
+
| Tool | Purpose |
|
|
12
|
+
|------|---------|
|
|
13
|
+
| `sandbox_browser_observe` | Text snapshot: URL, title, headings, textExcerpt, elements with refs |
|
|
14
|
+
| `sandbox_browser_navigate` | Go to URL, wait for ready, return snapshot with textExcerpt |
|
|
15
|
+
| `sandbox_browser_click` | Click by ref (e.g. "e3") or visible text |
|
|
16
|
+
| `sandbox_browser_type` | Type into input by ref (e.g. "e5") |
|
|
17
|
+
| `sandbox_browser_content` | Page as markdown (optional CSS selector) |
|
|
18
|
+
| `sandbox_browser_evaluate` | Run JS, reports side effects |
|
|
19
|
+
| `sandbox_browser_screenshot` | PNG screenshot (expensive, last resort) |
|
|
20
|
+
| `sandbox_web_search` | Search DuckDuckGo for URLs |
|
|
21
|
+
|
|
22
|
+
## Workflow: Observe → Act → Observe
|
|
23
|
+
|
|
24
|
+
1. **Navigate** → returns snapshot with element refs
|
|
25
|
+
2. **Act** using refs from snapshot: `click({ ref: "e3" })` or `type({ ref: "e5", text: "hello" })`
|
|
26
|
+
3. **Observe** → verify action worked
|
|
27
|
+
4. Repeat. Screenshot only if text can't answer your question.
|
|
28
|
+
|
|
29
|
+
## Refs
|
|
30
|
+
|
|
31
|
+
Observe output lists elements like:
|
|
32
|
+
```
|
|
33
|
+
- button "Submit" [ref=e1]
|
|
34
|
+
- textbox [ref=e2] name=email placeholder="Enter email"
|
|
35
|
+
- link "Home" [ref=e3]
|
|
36
|
+
```
|
|
37
|
+
Use refs in click/type: `{ "ref": "e1" }`. Refs update on each observe — always use latest.
|
|
38
|
+
|
|
39
|
+
## Data Extraction Strategy
|
|
40
|
+
|
|
41
|
+
1. **Check textExcerpt first** — observe/navigate returns the first 2000 chars of visible text. For many tasks this is enough.
|
|
42
|
+
2. **Use content(selector)** over content() — target a specific section (e.g. `{ selector: "main" }` or `{ selector: ".repo-list" }`) to avoid huge dumps.
|
|
43
|
+
3. **Use evaluate() for structured extraction** — `evaluate({ expression: "..." })` with JS that returns exactly the data you need (e.g. `[...document.querySelectorAll('.repo')].map(...)`)
|
|
44
|
+
4. **Prefer web_fetch for read-only pages** — if you just need page content without interaction, `sandbox_web_fetch` is cheaper than navigating.
|
|
45
|
+
5. **Never repeat a failed approach** — if a tool call returns nothing useful, switch to a different strategy immediately.
|
|
46
|
+
|
|
47
|
+
## Patterns
|
|
48
|
+
|
|
49
|
+
- **Click by text:** `{ "text": "Accept cookies" }` (when ref unavailable)
|
|
50
|
+
- **Scroll:** evaluate `window.scrollBy(0, 500)` then observe
|
|
51
|
+
- **Dropdown:** evaluate with value set + change event dispatch
|