overai 1.4.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.
- package/README.md +248 -0
- package/dist/agent/context.d.ts +74 -0
- package/dist/agent/context.js +140 -0
- package/dist/agent/enhanced.d.ts +98 -0
- package/dist/agent/enhanced.js +293 -0
- package/dist/agent/handoff.d.ts +82 -0
- package/dist/agent/handoff.js +124 -0
- package/dist/agent/image.d.ts +57 -0
- package/dist/agent/image.js +116 -0
- package/dist/agent/index.d.ts +19 -0
- package/dist/agent/index.js +38 -0
- package/dist/agent/prompt-expander.d.ts +43 -0
- package/dist/agent/prompt-expander.js +99 -0
- package/dist/agent/proxy.d.ts +26 -0
- package/dist/agent/proxy.js +173 -0
- package/dist/agent/query-rewriter.d.ts +41 -0
- package/dist/agent/query-rewriter.js +94 -0
- package/dist/agent/research.d.ts +55 -0
- package/dist/agent/research.js +134 -0
- package/dist/agent/router.d.ts +141 -0
- package/dist/agent/router.js +209 -0
- package/dist/agent/simple.d.ts +289 -0
- package/dist/agent/simple.js +696 -0
- package/dist/agent/types.d.ts +56 -0
- package/dist/agent/types.js +165 -0
- package/dist/ai/agent-loop.d.ts +177 -0
- package/dist/ai/agent-loop.js +313 -0
- package/dist/ai/devtools.d.ts +74 -0
- package/dist/ai/devtools.js +216 -0
- package/dist/ai/embed.d.ts +71 -0
- package/dist/ai/embed.js +154 -0
- package/dist/ai/generate-image.d.ts +66 -0
- package/dist/ai/generate-image.js +138 -0
- package/dist/ai/generate-object.d.ts +132 -0
- package/dist/ai/generate-object.js +206 -0
- package/dist/ai/generate-text.d.ts +201 -0
- package/dist/ai/generate-text.js +253 -0
- package/dist/ai/index.d.ts +27 -0
- package/dist/ai/index.js +140 -0
- package/dist/ai/mcp.d.ts +181 -0
- package/dist/ai/mcp.js +234 -0
- package/dist/ai/middleware.d.ts +110 -0
- package/dist/ai/middleware.js +186 -0
- package/dist/ai/models.d.ts +67 -0
- package/dist/ai/models.js +249 -0
- package/dist/ai/multimodal.d.ts +125 -0
- package/dist/ai/multimodal.js +270 -0
- package/dist/ai/nextjs.d.ts +122 -0
- package/dist/ai/nextjs.js +218 -0
- package/dist/ai/server.d.ts +126 -0
- package/dist/ai/server.js +336 -0
- package/dist/ai/speech.d.ts +135 -0
- package/dist/ai/speech.js +296 -0
- package/dist/ai/telemetry.d.ts +162 -0
- package/dist/ai/telemetry.js +311 -0
- package/dist/ai/tool-approval.d.ts +225 -0
- package/dist/ai/tool-approval.js +407 -0
- package/dist/ai/tools.d.ts +93 -0
- package/dist/ai/tools.js +89 -0
- package/dist/ai/types.d.ts +47 -0
- package/dist/ai/types.js +5 -0
- package/dist/ai/ui-message.d.ts +218 -0
- package/dist/ai/ui-message.js +291 -0
- package/dist/auto/index.d.ts +62 -0
- package/dist/auto/index.js +163 -0
- package/dist/cache/index.d.ts +78 -0
- package/dist/cache/index.js +235 -0
- package/dist/cli/commands/agent.d.ts +30 -0
- package/dist/cli/commands/agent.js +151 -0
- package/dist/cli/commands/agents.d.ts +24 -0
- package/dist/cli/commands/agents.js +166 -0
- package/dist/cli/commands/approval.d.ts +10 -0
- package/dist/cli/commands/approval.js +253 -0
- package/dist/cli/commands/auto.d.ts +12 -0
- package/dist/cli/commands/auto.js +109 -0
- package/dist/cli/commands/autonomy.d.ts +5 -0
- package/dist/cli/commands/autonomy.js +152 -0
- package/dist/cli/commands/benchmark.d.ts +19 -0
- package/dist/cli/commands/benchmark.js +484 -0
- package/dist/cli/commands/cache.d.ts +9 -0
- package/dist/cli/commands/cache.js +143 -0
- package/dist/cli/commands/chat.d.ts +14 -0
- package/dist/cli/commands/chat.js +127 -0
- package/dist/cli/commands/checkpoints.d.ts +5 -0
- package/dist/cli/commands/checkpoints.js +236 -0
- package/dist/cli/commands/context.d.ts +11 -0
- package/dist/cli/commands/context.js +182 -0
- package/dist/cli/commands/cost.d.ts +5 -0
- package/dist/cli/commands/cost.js +146 -0
- package/dist/cli/commands/db.d.ts +9 -0
- package/dist/cli/commands/db.js +149 -0
- package/dist/cli/commands/embed.d.ts +20 -0
- package/dist/cli/commands/embed.js +375 -0
- package/dist/cli/commands/eval.d.ts +17 -0
- package/dist/cli/commands/eval.js +247 -0
- package/dist/cli/commands/external-agents.d.ts +5 -0
- package/dist/cli/commands/external-agents.js +170 -0
- package/dist/cli/commands/fast-context.d.ts +5 -0
- package/dist/cli/commands/fast-context.js +126 -0
- package/dist/cli/commands/flow.d.ts +5 -0
- package/dist/cli/commands/flow.js +141 -0
- package/dist/cli/commands/git.d.ts +5 -0
- package/dist/cli/commands/git.js +178 -0
- package/dist/cli/commands/graph-rag.d.ts +9 -0
- package/dist/cli/commands/graph-rag.js +131 -0
- package/dist/cli/commands/guardrail.d.ts +11 -0
- package/dist/cli/commands/guardrail.js +156 -0
- package/dist/cli/commands/handoff.d.ts +9 -0
- package/dist/cli/commands/handoff.js +133 -0
- package/dist/cli/commands/help.d.ts +8 -0
- package/dist/cli/commands/help.js +139 -0
- package/dist/cli/commands/image.d.ts +13 -0
- package/dist/cli/commands/image.js +192 -0
- package/dist/cli/commands/interactive.d.ts +6 -0
- package/dist/cli/commands/interactive.js +79 -0
- package/dist/cli/commands/jobs.d.ts +5 -0
- package/dist/cli/commands/jobs.js +282 -0
- package/dist/cli/commands/knowledge.d.ts +9 -0
- package/dist/cli/commands/knowledge.js +226 -0
- package/dist/cli/commands/llm.d.ts +21 -0
- package/dist/cli/commands/llm.js +748 -0
- package/dist/cli/commands/mcp.d.ts +9 -0
- package/dist/cli/commands/mcp.js +243 -0
- package/dist/cli/commands/memory.d.ts +10 -0
- package/dist/cli/commands/memory.js +198 -0
- package/dist/cli/commands/n8n.d.ts +5 -0
- package/dist/cli/commands/n8n.js +137 -0
- package/dist/cli/commands/observability.d.ts +16 -0
- package/dist/cli/commands/observability.js +335 -0
- package/dist/cli/commands/planning.d.ts +9 -0
- package/dist/cli/commands/planning.js +167 -0
- package/dist/cli/commands/prompt-expand.d.ts +11 -0
- package/dist/cli/commands/prompt-expand.js +100 -0
- package/dist/cli/commands/providers.d.ts +17 -0
- package/dist/cli/commands/providers.js +386 -0
- package/dist/cli/commands/query-rewrite.d.ts +12 -0
- package/dist/cli/commands/query-rewrite.js +102 -0
- package/dist/cli/commands/repo-map.d.ts +5 -0
- package/dist/cli/commands/repo-map.js +151 -0
- package/dist/cli/commands/reranker.d.ts +10 -0
- package/dist/cli/commands/reranker.js +144 -0
- package/dist/cli/commands/research.d.ts +12 -0
- package/dist/cli/commands/research.js +108 -0
- package/dist/cli/commands/router.d.ts +11 -0
- package/dist/cli/commands/router.js +142 -0
- package/dist/cli/commands/run.d.ts +14 -0
- package/dist/cli/commands/run.js +111 -0
- package/dist/cli/commands/sandbox.d.ts +5 -0
- package/dist/cli/commands/sandbox.js +135 -0
- package/dist/cli/commands/scheduler.d.ts +5 -0
- package/dist/cli/commands/scheduler.js +260 -0
- package/dist/cli/commands/session.d.ts +9 -0
- package/dist/cli/commands/session.js +238 -0
- package/dist/cli/commands/skills.d.ts +9 -0
- package/dist/cli/commands/skills.js +256 -0
- package/dist/cli/commands/telemetry.d.ts +9 -0
- package/dist/cli/commands/telemetry.js +146 -0
- package/dist/cli/commands/tools.d.ts +19 -0
- package/dist/cli/commands/tools.js +576 -0
- package/dist/cli/commands/vector.d.ts +10 -0
- package/dist/cli/commands/vector.js +171 -0
- package/dist/cli/commands/version.d.ts +8 -0
- package/dist/cli/commands/version.js +40 -0
- package/dist/cli/commands/voice.d.ts +10 -0
- package/dist/cli/commands/voice.js +162 -0
- package/dist/cli/commands/workflow.d.ts +13 -0
- package/dist/cli/commands/workflow.js +184 -0
- package/dist/cli/config/index.d.ts +6 -0
- package/dist/cli/config/index.js +22 -0
- package/dist/cli/config/load.d.ts +20 -0
- package/dist/cli/config/load.js +229 -0
- package/dist/cli/config/resolve.d.ts +28 -0
- package/dist/cli/config/resolve.js +70 -0
- package/dist/cli/config/schema.d.ts +15 -0
- package/dist/cli/config/schema.js +65 -0
- package/dist/cli/features/autonomy-mode.d.ts +98 -0
- package/dist/cli/features/autonomy-mode.js +266 -0
- package/dist/cli/features/background-jobs.d.ts +155 -0
- package/dist/cli/features/background-jobs.js +416 -0
- package/dist/cli/features/checkpoints.d.ts +126 -0
- package/dist/cli/features/checkpoints.js +288 -0
- package/dist/cli/features/cost-tracker.d.ts +101 -0
- package/dist/cli/features/cost-tracker.js +212 -0
- package/dist/cli/features/external-agents.d.ts +117 -0
- package/dist/cli/features/external-agents.js +296 -0
- package/dist/cli/features/fast-context.d.ts +126 -0
- package/dist/cli/features/fast-context.js +310 -0
- package/dist/cli/features/flow-display.d.ts +100 -0
- package/dist/cli/features/flow-display.js +254 -0
- package/dist/cli/features/git-integration.d.ts +138 -0
- package/dist/cli/features/git-integration.js +374 -0
- package/dist/cli/features/index.d.ts +17 -0
- package/dist/cli/features/index.js +102 -0
- package/dist/cli/features/interactive-tui.d.ts +114 -0
- package/dist/cli/features/interactive-tui.js +326 -0
- package/dist/cli/features/n8n-integration.d.ts +111 -0
- package/dist/cli/features/n8n-integration.js +299 -0
- package/dist/cli/features/repo-map.d.ts +101 -0
- package/dist/cli/features/repo-map.js +350 -0
- package/dist/cli/features/sandbox-executor.d.ts +89 -0
- package/dist/cli/features/sandbox-executor.js +314 -0
- package/dist/cli/features/scheduler.d.ts +111 -0
- package/dist/cli/features/scheduler.js +298 -0
- package/dist/cli/features/slash-commands.d.ts +77 -0
- package/dist/cli/features/slash-commands.js +316 -0
- package/dist/cli/index.d.ts +24 -0
- package/dist/cli/index.js +214 -0
- package/dist/cli/output/errors.d.ts +23 -0
- package/dist/cli/output/errors.js +36 -0
- package/dist/cli/output/json.d.ts +27 -0
- package/dist/cli/output/json.js +31 -0
- package/dist/cli/output/pretty.d.ts +13 -0
- package/dist/cli/output/pretty.js +31 -0
- package/dist/cli/runtime/env.d.ts +12 -0
- package/dist/cli/runtime/env.js +55 -0
- package/dist/cli/runtime/exit.d.ts +11 -0
- package/dist/cli/runtime/exit.js +49 -0
- package/dist/cli/runtime/index.d.ts +6 -0
- package/dist/cli/runtime/index.js +22 -0
- package/dist/cli/runtime/lazy.d.ts +18 -0
- package/dist/cli/runtime/lazy.js +85 -0
- package/dist/cli/spec/cli-spec.d.ts +87 -0
- package/dist/cli/spec/cli-spec.js +551 -0
- package/dist/cli/spec/index.d.ts +4 -0
- package/dist/cli/spec/index.js +20 -0
- package/dist/db/index.d.ts +6 -0
- package/dist/db/index.js +75 -0
- package/dist/db/types.d.ts +42 -0
- package/dist/db/types.js +2 -0
- package/dist/eval/index.d.ts +61 -0
- package/dist/eval/index.js +157 -0
- package/dist/events/index.d.ts +84 -0
- package/dist/events/index.js +153 -0
- package/dist/guardrails/index.d.ts +82 -0
- package/dist/guardrails/index.js +202 -0
- package/dist/guardrails/llm-guardrail.d.ts +46 -0
- package/dist/guardrails/llm-guardrail.js +112 -0
- package/dist/index.d.ts +92 -0
- package/dist/index.js +608 -0
- package/dist/integrations/computer-use.d.ts +182 -0
- package/dist/integrations/computer-use.js +356 -0
- package/dist/integrations/index.d.ts +7 -0
- package/dist/integrations/index.js +26 -0
- package/dist/integrations/observability/base.d.ts +123 -0
- package/dist/integrations/observability/base.js +183 -0
- package/dist/integrations/observability/index.d.ts +8 -0
- package/dist/integrations/observability/index.js +29 -0
- package/dist/integrations/observability/langfuse.d.ts +32 -0
- package/dist/integrations/observability/langfuse.js +174 -0
- package/dist/integrations/postgres.d.ts +162 -0
- package/dist/integrations/postgres.js +396 -0
- package/dist/integrations/slack.d.ts +145 -0
- package/dist/integrations/slack.js +270 -0
- package/dist/integrations/vector/base.d.ts +110 -0
- package/dist/integrations/vector/base.js +158 -0
- package/dist/integrations/vector/chroma.d.ts +25 -0
- package/dist/integrations/vector/chroma.js +143 -0
- package/dist/integrations/vector/index.d.ts +14 -0
- package/dist/integrations/vector/index.js +37 -0
- package/dist/integrations/vector/pinecone.d.ts +28 -0
- package/dist/integrations/vector/pinecone.js +172 -0
- package/dist/integrations/vector/qdrant.d.ts +25 -0
- package/dist/integrations/vector/qdrant.js +146 -0
- package/dist/integrations/vector/weaviate.d.ts +30 -0
- package/dist/integrations/vector/weaviate.js +206 -0
- package/dist/integrations/voice/base.d.ts +76 -0
- package/dist/integrations/voice/base.js +168 -0
- package/dist/integrations/voice/index.d.ts +6 -0
- package/dist/integrations/voice/index.js +26 -0
- package/dist/knowledge/chunking.d.ts +55 -0
- package/dist/knowledge/chunking.js +158 -0
- package/dist/knowledge/graph-rag.d.ts +125 -0
- package/dist/knowledge/graph-rag.js +289 -0
- package/dist/knowledge/index.d.ts +24 -0
- package/dist/knowledge/index.js +47 -0
- package/dist/knowledge/knowledge.d.ts +0 -0
- package/dist/knowledge/knowledge.js +1 -0
- package/dist/knowledge/rag.d.ts +80 -0
- package/dist/knowledge/rag.js +147 -0
- package/dist/knowledge/reranker.d.ts +86 -0
- package/dist/knowledge/reranker.js +196 -0
- package/dist/llm/backend-resolver.d.ts +77 -0
- package/dist/llm/backend-resolver.js +242 -0
- package/dist/llm/embeddings.d.ts +66 -0
- package/dist/llm/embeddings.js +294 -0
- package/dist/llm/index.d.ts +29 -0
- package/dist/llm/index.js +33 -0
- package/dist/llm/llm.d.ts +0 -0
- package/dist/llm/llm.js +1 -0
- package/dist/llm/openai.d.ts +39 -0
- package/dist/llm/openai.js +302 -0
- package/dist/llm/providers/ai-sdk/adapter.d.ts +121 -0
- package/dist/llm/providers/ai-sdk/adapter.js +399 -0
- package/dist/llm/providers/ai-sdk/backend.d.ts +49 -0
- package/dist/llm/providers/ai-sdk/backend.js +421 -0
- package/dist/llm/providers/ai-sdk/index.d.ts +69 -0
- package/dist/llm/providers/ai-sdk/index.js +200 -0
- package/dist/llm/providers/ai-sdk/middleware.d.ts +60 -0
- package/dist/llm/providers/ai-sdk/middleware.js +262 -0
- package/dist/llm/providers/ai-sdk/provider-map.d.ts +75 -0
- package/dist/llm/providers/ai-sdk/provider-map.js +258 -0
- package/dist/llm/providers/ai-sdk/types.d.ts +217 -0
- package/dist/llm/providers/ai-sdk/types.js +222 -0
- package/dist/llm/providers/anthropic.d.ts +33 -0
- package/dist/llm/providers/anthropic.js +291 -0
- package/dist/llm/providers/base.d.ts +25 -0
- package/dist/llm/providers/base.js +43 -0
- package/dist/llm/providers/google.d.ts +27 -0
- package/dist/llm/providers/google.js +275 -0
- package/dist/llm/providers/index.d.ts +107 -0
- package/dist/llm/providers/index.js +216 -0
- package/dist/llm/providers/openai.d.ts +18 -0
- package/dist/llm/providers/openai.js +203 -0
- package/dist/llm/providers/registry.d.ts +159 -0
- package/dist/llm/providers/registry.js +279 -0
- package/dist/llm/providers/types.d.ts +94 -0
- package/dist/llm/providers/types.js +5 -0
- package/dist/main.d.ts +0 -0
- package/dist/main.js +1 -0
- package/dist/memory/auto-memory.d.ts +136 -0
- package/dist/memory/auto-memory.js +301 -0
- package/dist/memory/file-memory.d.ts +88 -0
- package/dist/memory/file-memory.js +287 -0
- package/dist/memory/index.d.ts +26 -0
- package/dist/memory/index.js +41 -0
- package/dist/memory/memory.d.ts +92 -0
- package/dist/memory/memory.js +170 -0
- package/dist/observability/adapters/console.d.ts +33 -0
- package/dist/observability/adapters/console.js +71 -0
- package/dist/observability/adapters/external/arize.d.ts +20 -0
- package/dist/observability/adapters/external/arize.js +22 -0
- package/dist/observability/adapters/external/axiom.d.ts +20 -0
- package/dist/observability/adapters/external/axiom.js +22 -0
- package/dist/observability/adapters/external/braintrust.d.ts +20 -0
- package/dist/observability/adapters/external/braintrust.js +22 -0
- package/dist/observability/adapters/external/helicone.d.ts +20 -0
- package/dist/observability/adapters/external/helicone.js +22 -0
- package/dist/observability/adapters/external/laminar.d.ts +20 -0
- package/dist/observability/adapters/external/laminar.js +22 -0
- package/dist/observability/adapters/external/langfuse.d.ts +28 -0
- package/dist/observability/adapters/external/langfuse.js +186 -0
- package/dist/observability/adapters/external/langsmith.d.ts +21 -0
- package/dist/observability/adapters/external/langsmith.js +83 -0
- package/dist/observability/adapters/external/langwatch.d.ts +20 -0
- package/dist/observability/adapters/external/langwatch.js +22 -0
- package/dist/observability/adapters/external/maxim.d.ts +20 -0
- package/dist/observability/adapters/external/maxim.js +22 -0
- package/dist/observability/adapters/external/patronus.d.ts +20 -0
- package/dist/observability/adapters/external/patronus.js +22 -0
- package/dist/observability/adapters/external/scorecard.d.ts +20 -0
- package/dist/observability/adapters/external/scorecard.js +22 -0
- package/dist/observability/adapters/external/signoz.d.ts +20 -0
- package/dist/observability/adapters/external/signoz.js +22 -0
- package/dist/observability/adapters/external/traceloop.d.ts +20 -0
- package/dist/observability/adapters/external/traceloop.js +22 -0
- package/dist/observability/adapters/external/weave.d.ts +20 -0
- package/dist/observability/adapters/external/weave.js +22 -0
- package/dist/observability/adapters/index.d.ts +19 -0
- package/dist/observability/adapters/index.js +289 -0
- package/dist/observability/adapters/memory.d.ts +41 -0
- package/dist/observability/adapters/memory.js +190 -0
- package/dist/observability/adapters/noop.d.ts +25 -0
- package/dist/observability/adapters/noop.js +64 -0
- package/dist/observability/index.d.ts +47 -0
- package/dist/observability/index.js +115 -0
- package/dist/observability/types.d.ts +165 -0
- package/dist/observability/types.js +165 -0
- package/dist/planning/index.d.ts +253 -0
- package/dist/planning/index.js +475 -0
- package/dist/process/index.d.ts +25 -0
- package/dist/process/index.js +37 -0
- package/dist/process/process.d.ts +0 -0
- package/dist/process/process.js +1 -0
- package/dist/session/index.d.ts +111 -0
- package/dist/session/index.js +250 -0
- package/dist/skills/index.d.ts +70 -0
- package/dist/skills/index.js +233 -0
- package/dist/task/index.d.ts +25 -0
- package/dist/task/index.js +32 -0
- package/dist/task/task.d.ts +0 -0
- package/dist/task/task.js +1 -0
- package/dist/telemetry/index.d.ts +175 -0
- package/dist/telemetry/index.js +287 -0
- package/dist/tools/arxivTools.d.ts +32 -0
- package/dist/tools/arxivTools.js +81 -0
- package/dist/tools/base.d.ts +97 -0
- package/dist/tools/base.js +147 -0
- package/dist/tools/builtins/airweave.d.ts +32 -0
- package/dist/tools/builtins/airweave.js +119 -0
- package/dist/tools/builtins/bedrock-agentcore.d.ts +62 -0
- package/dist/tools/builtins/bedrock-agentcore.js +233 -0
- package/dist/tools/builtins/code-execution.d.ts +36 -0
- package/dist/tools/builtins/code-execution.js +136 -0
- package/dist/tools/builtins/code-mode.d.ts +54 -0
- package/dist/tools/builtins/code-mode.js +167 -0
- package/dist/tools/builtins/custom.d.ts +42 -0
- package/dist/tools/builtins/custom.js +195 -0
- package/dist/tools/builtins/exa.d.ts +53 -0
- package/dist/tools/builtins/exa.js +112 -0
- package/dist/tools/builtins/firecrawl.d.ts +56 -0
- package/dist/tools/builtins/firecrawl.js +158 -0
- package/dist/tools/builtins/index.d.ts +45 -0
- package/dist/tools/builtins/index.js +180 -0
- package/dist/tools/builtins/parallel.d.ts +30 -0
- package/dist/tools/builtins/parallel.js +113 -0
- package/dist/tools/builtins/perplexity.d.ts +32 -0
- package/dist/tools/builtins/perplexity.js +113 -0
- package/dist/tools/builtins/superagent.d.ts +66 -0
- package/dist/tools/builtins/superagent.js +187 -0
- package/dist/tools/builtins/tavily.d.ts +99 -0
- package/dist/tools/builtins/tavily.js +285 -0
- package/dist/tools/builtins/valyu.d.ts +65 -0
- package/dist/tools/builtins/valyu.js +193 -0
- package/dist/tools/decorator.d.ts +91 -0
- package/dist/tools/decorator.js +165 -0
- package/dist/tools/index.d.ts +8 -0
- package/dist/tools/index.js +36 -0
- package/dist/tools/mcpSse.d.ts +43 -0
- package/dist/tools/mcpSse.js +110 -0
- package/dist/tools/registry/index.d.ts +9 -0
- package/dist/tools/registry/index.js +28 -0
- package/dist/tools/registry/middleware.d.ts +43 -0
- package/dist/tools/registry/middleware.js +220 -0
- package/dist/tools/registry/registry.d.ts +92 -0
- package/dist/tools/registry/registry.js +280 -0
- package/dist/tools/registry/types.d.ts +217 -0
- package/dist/tools/registry/types.js +49 -0
- package/dist/tools/test.d.ts +0 -0
- package/dist/tools/test.js +1 -0
- package/dist/tools/tools.d.ts +74 -0
- package/dist/tools/tools.js +133 -0
- package/dist/utils/logger.d.ts +25 -0
- package/dist/utils/logger.js +149 -0
- package/dist/utils/pretty-logger.d.ts +21 -0
- package/dist/utils/pretty-logger.js +248 -0
- package/dist/workflows/index.d.ts +118 -0
- package/dist/workflows/index.js +247 -0
- package/dist/workflows/loop.d.ts +0 -0
- package/dist/workflows/loop.js +1 -0
- package/dist/workflows/yaml-parser.d.ts +48 -0
- package/dist/workflows/yaml-parser.js +304 -0
- package/package.json +119 -0
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Agents command - Run multi-agent orchestration
|
|
4
|
+
*
|
|
5
|
+
* Usage:
|
|
6
|
+
* overai agents run --agents "researcher,writer" "Research AI trends"
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.executeRun = executeRun;
|
|
10
|
+
exports.execute = execute;
|
|
11
|
+
const agent_1 = require("../../agent");
|
|
12
|
+
const resolve_1 = require("../config/resolve");
|
|
13
|
+
const cli_spec_1 = require("../spec/cli-spec");
|
|
14
|
+
const pretty_logger_1 = require("../../utils/pretty-logger");
|
|
15
|
+
const outputJson = (obj) => console.log(JSON.stringify(obj));
|
|
16
|
+
const formatSuccess = (data, meta) => meta ? { success: true, data, meta } : { success: true, data };
|
|
17
|
+
const formatError = (code, message, details) => details
|
|
18
|
+
? { success: false, error: { code, message, details } }
|
|
19
|
+
: { success: false, error: { code, message } };
|
|
20
|
+
const ERROR_CODES = {
|
|
21
|
+
INVALID_ARGS: 'INVALID_ARGUMENTS',
|
|
22
|
+
MISSING_ARG: 'MISSING_ARGUMENT',
|
|
23
|
+
UNKNOWN: 'UNKNOWN_ERROR',
|
|
24
|
+
};
|
|
25
|
+
function normalizeError(error) {
|
|
26
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
27
|
+
const details = error instanceof Error && error.stack ? { stack: error.stack } : undefined;
|
|
28
|
+
return { code: ERROR_CODES.UNKNOWN, message, details, exitCode: cli_spec_1.EXIT_CODES.RUNTIME_ERROR };
|
|
29
|
+
}
|
|
30
|
+
const pretty = {
|
|
31
|
+
success: pretty_logger_1.PrettyLogger.success,
|
|
32
|
+
error: pretty_logger_1.PrettyLogger.error,
|
|
33
|
+
info: pretty_logger_1.PrettyLogger.info,
|
|
34
|
+
dim: async (s) => console.log(s),
|
|
35
|
+
plain: async (s) => console.log(s),
|
|
36
|
+
heading: async (s) => console.log(s),
|
|
37
|
+
newline: async () => console.log(),
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* Parse agent definitions from comma-separated string
|
|
41
|
+
*/
|
|
42
|
+
function parseAgentDefinitions(agentsStr) {
|
|
43
|
+
return agentsStr.split(',').map(s => s.trim()).filter(s => s.length > 0);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Execute agents run subcommand
|
|
47
|
+
*/
|
|
48
|
+
async function executeRun(args, options) {
|
|
49
|
+
const prompt = args[0];
|
|
50
|
+
if (!prompt) {
|
|
51
|
+
if (options.json || options.output === 'json') {
|
|
52
|
+
outputJson(formatError(ERROR_CODES.MISSING_ARG, 'Please provide a prompt/task'));
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
await pretty.error('Please provide a prompt/task');
|
|
56
|
+
}
|
|
57
|
+
process.exit(cli_spec_1.EXIT_CODES.INVALID_ARGUMENTS);
|
|
58
|
+
}
|
|
59
|
+
const config = (0, resolve_1.resolveConfig)({
|
|
60
|
+
configPath: options.config,
|
|
61
|
+
profile: options.profile,
|
|
62
|
+
model: options.model,
|
|
63
|
+
verbose: options.verbose
|
|
64
|
+
});
|
|
65
|
+
const startTime = Date.now();
|
|
66
|
+
const outputFormat = options.json ? 'json' : (options.output || 'pretty');
|
|
67
|
+
try {
|
|
68
|
+
// Create agents from definitions or use defaults
|
|
69
|
+
let agentList;
|
|
70
|
+
if (options.agents) {
|
|
71
|
+
const definitions = parseAgentDefinitions(options.agents);
|
|
72
|
+
agentList = definitions.map((instructions, i) => new agent_1.Agent({
|
|
73
|
+
instructions,
|
|
74
|
+
name: `Agent_${i + 1}`,
|
|
75
|
+
llm: config.model,
|
|
76
|
+
verbose: config.verbose
|
|
77
|
+
}));
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
// Default: create a researcher and writer
|
|
81
|
+
agentList = [
|
|
82
|
+
new agent_1.Agent({
|
|
83
|
+
instructions: `Research the following topic thoroughly: ${prompt}`,
|
|
84
|
+
name: 'Researcher',
|
|
85
|
+
llm: config.model,
|
|
86
|
+
verbose: config.verbose
|
|
87
|
+
}),
|
|
88
|
+
new agent_1.Agent({
|
|
89
|
+
instructions: 'Summarize and write a clear report based on the research provided.',
|
|
90
|
+
name: 'Writer',
|
|
91
|
+
llm: config.model,
|
|
92
|
+
verbose: config.verbose
|
|
93
|
+
})
|
|
94
|
+
];
|
|
95
|
+
}
|
|
96
|
+
if (outputFormat !== 'json') {
|
|
97
|
+
await pretty.heading(`Running ${agentList.length} agents (${options.process || 'sequential'})`);
|
|
98
|
+
}
|
|
99
|
+
const agents = new agent_1.Agents({
|
|
100
|
+
agents: agentList,
|
|
101
|
+
process: options.process || 'sequential',
|
|
102
|
+
verbose: config.verbose
|
|
103
|
+
});
|
|
104
|
+
const results = await agents.start();
|
|
105
|
+
const duration = Date.now() - startTime;
|
|
106
|
+
if (outputFormat === 'json') {
|
|
107
|
+
outputJson(formatSuccess({
|
|
108
|
+
results,
|
|
109
|
+
agentCount: agentList.length,
|
|
110
|
+
process: options.process || 'sequential'
|
|
111
|
+
}, {
|
|
112
|
+
duration_ms: duration,
|
|
113
|
+
model: config.model
|
|
114
|
+
}));
|
|
115
|
+
}
|
|
116
|
+
else if (outputFormat === 'text') {
|
|
117
|
+
results.forEach((result, i) => {
|
|
118
|
+
console.log(`\n--- Agent ${i + 1} ---\n${result}`);
|
|
119
|
+
});
|
|
120
|
+
}
|
|
121
|
+
else {
|
|
122
|
+
// Pretty output
|
|
123
|
+
console.log();
|
|
124
|
+
await pretty.success(`Completed ${agentList.length} agents in ${duration}ms`);
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
catch (error) {
|
|
128
|
+
const cliError = normalizeError(error);
|
|
129
|
+
if (outputFormat === 'json') {
|
|
130
|
+
outputJson(formatError(cliError.code, cliError.message, cliError.details));
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
await pretty.error(cliError.message);
|
|
134
|
+
if (config.verbose && error instanceof Error && error.stack) {
|
|
135
|
+
await pretty.dim(error.stack);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
process.exit(cliError.exitCode);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* Main execute function - routes to subcommands
|
|
143
|
+
*/
|
|
144
|
+
async function execute(args, options) {
|
|
145
|
+
const subcommand = args[0];
|
|
146
|
+
const subArgs = args.slice(1);
|
|
147
|
+
switch (subcommand) {
|
|
148
|
+
case 'run':
|
|
149
|
+
return executeRun(subArgs, options);
|
|
150
|
+
default:
|
|
151
|
+
// If no subcommand, treat as run
|
|
152
|
+
if (subcommand) {
|
|
153
|
+
return executeRun(args, options);
|
|
154
|
+
}
|
|
155
|
+
if (options.json || options.output === 'json') {
|
|
156
|
+
outputJson(formatError(ERROR_CODES.MISSING_ARG, 'Please provide a task/prompt'));
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
await pretty.error('Usage: overai agents [run] <task>');
|
|
160
|
+
await pretty.info(' agents run "Research AI" - Run with default agents');
|
|
161
|
+
await pretty.info(' agents run --agents "..." "Research AI" - Run with custom agents');
|
|
162
|
+
await pretty.info(' agents run --process parallel "Research AI" - Run in parallel');
|
|
163
|
+
}
|
|
164
|
+
process.exit(cli_spec_1.EXIT_CODES.INVALID_ARGUMENTS);
|
|
165
|
+
}
|
|
166
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Approval command - Tool approval management for AI SDK v6 parity
|
|
3
|
+
*/
|
|
4
|
+
export interface ApprovalOptions {
|
|
5
|
+
verbose?: boolean;
|
|
6
|
+
output?: 'json' | 'text' | 'pretty';
|
|
7
|
+
json?: boolean;
|
|
8
|
+
timeout?: number;
|
|
9
|
+
}
|
|
10
|
+
export declare function execute(args: string[], options: ApprovalOptions): Promise<void>;
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Approval command - Tool approval management for AI SDK v6 parity
|
|
4
|
+
*/
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.execute = execute;
|
|
7
|
+
const tool_approval_1 = require("../../ai/tool-approval");
|
|
8
|
+
const cli_spec_1 = require("../spec/cli-spec");
|
|
9
|
+
const pretty_logger_1 = require("../../utils/pretty-logger");
|
|
10
|
+
function outputJson(data) {
|
|
11
|
+
console.log(JSON.stringify(data, null, 2));
|
|
12
|
+
}
|
|
13
|
+
function formatSuccess(data) {
|
|
14
|
+
return { success: true, data };
|
|
15
|
+
}
|
|
16
|
+
function formatError(code, message) {
|
|
17
|
+
return { success: false, error: { code, message } };
|
|
18
|
+
}
|
|
19
|
+
const ERROR_CODES = {
|
|
20
|
+
INVALID_ARGS: 'INVALID_ARGS',
|
|
21
|
+
MISSING_ARG: 'MISSING_ARG',
|
|
22
|
+
UNKNOWN: 'UNKNOWN_ERROR',
|
|
23
|
+
};
|
|
24
|
+
async function execute(args, options) {
|
|
25
|
+
const action = args[0] || 'status';
|
|
26
|
+
const outputFormat = options.json ? 'json' : (options.output || 'pretty');
|
|
27
|
+
try {
|
|
28
|
+
switch (action) {
|
|
29
|
+
case 'status':
|
|
30
|
+
await showStatus(outputFormat);
|
|
31
|
+
break;
|
|
32
|
+
case 'pending':
|
|
33
|
+
await showPending(outputFormat);
|
|
34
|
+
break;
|
|
35
|
+
case 'approve':
|
|
36
|
+
await approveRequest(args[1], outputFormat);
|
|
37
|
+
break;
|
|
38
|
+
case 'deny':
|
|
39
|
+
await denyRequest(args[1], outputFormat);
|
|
40
|
+
break;
|
|
41
|
+
case 'cancel':
|
|
42
|
+
await cancelRequest(args[1], outputFormat);
|
|
43
|
+
break;
|
|
44
|
+
case 'cancel-all':
|
|
45
|
+
await cancelAll(outputFormat);
|
|
46
|
+
break;
|
|
47
|
+
case 'auto-approve':
|
|
48
|
+
await addAutoApprove(args.slice(1), outputFormat);
|
|
49
|
+
break;
|
|
50
|
+
case 'auto-deny':
|
|
51
|
+
await addAutoDeny(args.slice(1), outputFormat);
|
|
52
|
+
break;
|
|
53
|
+
case 'interactive':
|
|
54
|
+
await startInteractive(options);
|
|
55
|
+
break;
|
|
56
|
+
case 'help':
|
|
57
|
+
default:
|
|
58
|
+
await showHelp(outputFormat);
|
|
59
|
+
break;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
catch (error) {
|
|
63
|
+
if (outputFormat === 'json') {
|
|
64
|
+
outputJson(formatError(ERROR_CODES.UNKNOWN, error instanceof Error ? error.message : String(error)));
|
|
65
|
+
}
|
|
66
|
+
else {
|
|
67
|
+
await pretty_logger_1.PrettyLogger.error(error instanceof Error ? error.message : String(error));
|
|
68
|
+
}
|
|
69
|
+
process.exit(cli_spec_1.EXIT_CODES.RUNTIME_ERROR);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
async function showStatus(outputFormat) {
|
|
73
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
74
|
+
const pending = manager.getPendingRequests();
|
|
75
|
+
if (outputFormat === 'json') {
|
|
76
|
+
outputJson(formatSuccess({
|
|
77
|
+
pendingCount: pending.length,
|
|
78
|
+
pending: pending.map(r => ({
|
|
79
|
+
requestId: r.requestId,
|
|
80
|
+
toolName: r.toolName,
|
|
81
|
+
timestamp: r.timestamp,
|
|
82
|
+
})),
|
|
83
|
+
}));
|
|
84
|
+
}
|
|
85
|
+
else {
|
|
86
|
+
await pretty_logger_1.PrettyLogger.heading('Approval Status');
|
|
87
|
+
await pretty_logger_1.PrettyLogger.plain(`Pending requests: ${pending.length}`);
|
|
88
|
+
if (pending.length > 0) {
|
|
89
|
+
await pretty_logger_1.PrettyLogger.plain('\nPending:');
|
|
90
|
+
for (const req of pending) {
|
|
91
|
+
await pretty_logger_1.PrettyLogger.plain(` - ${req.toolName} (${req.requestId})`);
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
async function showPending(outputFormat) {
|
|
97
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
98
|
+
const pending = manager.getPendingRequests();
|
|
99
|
+
if (outputFormat === 'json') {
|
|
100
|
+
outputJson(formatSuccess({ pending }));
|
|
101
|
+
}
|
|
102
|
+
else {
|
|
103
|
+
if (pending.length === 0) {
|
|
104
|
+
await pretty_logger_1.PrettyLogger.plain('No pending approval requests');
|
|
105
|
+
return;
|
|
106
|
+
}
|
|
107
|
+
await pretty_logger_1.PrettyLogger.heading('Pending Approval Requests');
|
|
108
|
+
for (const req of pending) {
|
|
109
|
+
await pretty_logger_1.PrettyLogger.plain(`\n🔐 ${req.toolName}`);
|
|
110
|
+
await pretty_logger_1.PrettyLogger.plain(` ID: ${req.requestId}`);
|
|
111
|
+
await pretty_logger_1.PrettyLogger.plain(` Input: ${JSON.stringify(req.input)}`);
|
|
112
|
+
await pretty_logger_1.PrettyLogger.plain(` Time: ${new Date(req.timestamp).toISOString()}`);
|
|
113
|
+
if (req.reason) {
|
|
114
|
+
await pretty_logger_1.PrettyLogger.plain(` Reason: ${req.reason}`);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
async function approveRequest(requestId, outputFormat) {
|
|
120
|
+
if (!requestId) {
|
|
121
|
+
throw new Error('Request ID required. Usage: praisonai approval approve <requestId>');
|
|
122
|
+
}
|
|
123
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
124
|
+
manager.respond({
|
|
125
|
+
requestId,
|
|
126
|
+
approved: true,
|
|
127
|
+
timestamp: Date.now(),
|
|
128
|
+
});
|
|
129
|
+
if (outputFormat === 'json') {
|
|
130
|
+
outputJson(formatSuccess({ requestId, approved: true }));
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
await pretty_logger_1.PrettyLogger.success(`Approved request: ${requestId}`);
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
async function denyRequest(requestId, outputFormat) {
|
|
137
|
+
if (!requestId) {
|
|
138
|
+
throw new Error('Request ID required. Usage: praisonai approval deny <requestId>');
|
|
139
|
+
}
|
|
140
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
141
|
+
manager.respond({
|
|
142
|
+
requestId,
|
|
143
|
+
approved: false,
|
|
144
|
+
timestamp: Date.now(),
|
|
145
|
+
});
|
|
146
|
+
if (outputFormat === 'json') {
|
|
147
|
+
outputJson(formatSuccess({ requestId, approved: false }));
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
await pretty_logger_1.PrettyLogger.success(`Denied request: ${requestId}`);
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
async function cancelRequest(requestId, outputFormat) {
|
|
154
|
+
if (!requestId) {
|
|
155
|
+
throw new Error('Request ID required. Usage: praisonai approval cancel <requestId>');
|
|
156
|
+
}
|
|
157
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
158
|
+
manager.cancel(requestId);
|
|
159
|
+
if (outputFormat === 'json') {
|
|
160
|
+
outputJson(formatSuccess({ requestId, cancelled: true }));
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
await pretty_logger_1.PrettyLogger.success(`Cancelled request: ${requestId}`);
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
async function cancelAll(outputFormat) {
|
|
167
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
168
|
+
const pending = manager.getPendingRequests();
|
|
169
|
+
const count = pending.length;
|
|
170
|
+
manager.cancelAll();
|
|
171
|
+
if (outputFormat === 'json') {
|
|
172
|
+
outputJson(formatSuccess({ cancelled: count }));
|
|
173
|
+
}
|
|
174
|
+
else {
|
|
175
|
+
await pretty_logger_1.PrettyLogger.success(`Cancelled ${count} pending requests`);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
async function addAutoApprove(args, outputFormat) {
|
|
179
|
+
const toolName = args[0];
|
|
180
|
+
if (!toolName) {
|
|
181
|
+
throw new Error('Tool name required. Usage: praisonai approval auto-approve <toolName>');
|
|
182
|
+
}
|
|
183
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
184
|
+
manager.addAutoApprove(toolName);
|
|
185
|
+
if (outputFormat === 'json') {
|
|
186
|
+
outputJson(formatSuccess({ toolName, autoApprove: true }));
|
|
187
|
+
}
|
|
188
|
+
else {
|
|
189
|
+
await pretty_logger_1.PrettyLogger.success(`Added auto-approve for: ${toolName}`);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
async function addAutoDeny(args, outputFormat) {
|
|
193
|
+
const toolName = args[0];
|
|
194
|
+
if (!toolName) {
|
|
195
|
+
throw new Error('Tool name required. Usage: praisonai approval auto-deny <toolName>');
|
|
196
|
+
}
|
|
197
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
198
|
+
manager.addAutoDeny(toolName);
|
|
199
|
+
if (outputFormat === 'json') {
|
|
200
|
+
outputJson(formatSuccess({ toolName, autoDeny: true }));
|
|
201
|
+
}
|
|
202
|
+
else {
|
|
203
|
+
await pretty_logger_1.PrettyLogger.success(`Added auto-deny for: ${toolName}`);
|
|
204
|
+
}
|
|
205
|
+
}
|
|
206
|
+
async function startInteractive(options) {
|
|
207
|
+
await pretty_logger_1.PrettyLogger.heading('Interactive Approval Mode');
|
|
208
|
+
await pretty_logger_1.PrettyLogger.plain('Waiting for approval requests... (Ctrl+C to exit)\n');
|
|
209
|
+
const manager = (0, tool_approval_1.getApprovalManager)();
|
|
210
|
+
const handler = (0, tool_approval_1.createCLIApprovalPrompt)();
|
|
211
|
+
manager.onApprovalRequest(handler);
|
|
212
|
+
// Keep process alive
|
|
213
|
+
await new Promise(() => { });
|
|
214
|
+
}
|
|
215
|
+
async function showHelp(outputFormat) {
|
|
216
|
+
const help = {
|
|
217
|
+
command: 'approval',
|
|
218
|
+
description: 'Manage tool approval requests (AI SDK v6 parity)',
|
|
219
|
+
subcommands: [
|
|
220
|
+
{ name: 'status', description: 'Show approval status' },
|
|
221
|
+
{ name: 'pending', description: 'List pending approval requests' },
|
|
222
|
+
{ name: 'approve <id>', description: 'Approve a pending request' },
|
|
223
|
+
{ name: 'deny <id>', description: 'Deny a pending request' },
|
|
224
|
+
{ name: 'cancel <id>', description: 'Cancel a pending request' },
|
|
225
|
+
{ name: 'cancel-all', description: 'Cancel all pending requests' },
|
|
226
|
+
{ name: 'auto-approve <tool>', description: 'Auto-approve a tool' },
|
|
227
|
+
{ name: 'auto-deny <tool>', description: 'Auto-deny a tool' },
|
|
228
|
+
{ name: 'interactive', description: 'Start interactive approval mode' },
|
|
229
|
+
],
|
|
230
|
+
examples: [
|
|
231
|
+
'overai approval status',
|
|
232
|
+
'overai approval pending',
|
|
233
|
+
'overai approval approve abc123',
|
|
234
|
+
'overai approval auto-approve readFile',
|
|
235
|
+
'overai approval interactive',
|
|
236
|
+
],
|
|
237
|
+
};
|
|
238
|
+
if (outputFormat === 'json') {
|
|
239
|
+
outputJson(formatSuccess(help));
|
|
240
|
+
}
|
|
241
|
+
else {
|
|
242
|
+
await pretty_logger_1.PrettyLogger.heading('Approval Command');
|
|
243
|
+
await pretty_logger_1.PrettyLogger.plain('Manage tool approval requests for safe AI agent execution.\n');
|
|
244
|
+
await pretty_logger_1.PrettyLogger.plain('Subcommands:');
|
|
245
|
+
for (const cmd of help.subcommands) {
|
|
246
|
+
await pretty_logger_1.PrettyLogger.plain(` ${cmd.name.padEnd(20)} ${cmd.description}`);
|
|
247
|
+
}
|
|
248
|
+
await pretty_logger_1.PrettyLogger.plain('\nExamples:');
|
|
249
|
+
for (const ex of help.examples) {
|
|
250
|
+
await pretty_logger_1.PrettyLogger.plain(` ${ex}`);
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auto command - AutoAgents for automatic agent generation
|
|
3
|
+
*/
|
|
4
|
+
export interface AutoOptions {
|
|
5
|
+
model?: string;
|
|
6
|
+
verbose?: boolean;
|
|
7
|
+
output?: 'json' | 'text' | 'pretty';
|
|
8
|
+
json?: boolean;
|
|
9
|
+
pattern?: string;
|
|
10
|
+
agents?: number;
|
|
11
|
+
}
|
|
12
|
+
export declare function execute(args: string[], options: AutoOptions): Promise<void>;
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Auto command - AutoAgents for automatic agent generation
|
|
4
|
+
*/
|
|
5
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
8
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
9
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
10
|
+
}
|
|
11
|
+
Object.defineProperty(o, k2, desc);
|
|
12
|
+
}) : (function(o, m, k, k2) {
|
|
13
|
+
if (k2 === undefined) k2 = k;
|
|
14
|
+
o[k2] = m[k];
|
|
15
|
+
}));
|
|
16
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
17
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
18
|
+
}) : function(o, v) {
|
|
19
|
+
o["default"] = v;
|
|
20
|
+
});
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.execute = execute;
|
|
40
|
+
const auto_1 = require("../../auto");
|
|
41
|
+
const resolve_1 = require("../config/resolve");
|
|
42
|
+
const json_1 = require("../output/json");
|
|
43
|
+
const pretty = __importStar(require("../output/pretty"));
|
|
44
|
+
const cli_spec_1 = require("../spec/cli-spec");
|
|
45
|
+
const errors_1 = require("../output/errors");
|
|
46
|
+
async function execute(args, options) {
|
|
47
|
+
const topic = args.join(' ');
|
|
48
|
+
const outputFormat = options.json ? 'json' : (options.output || 'pretty');
|
|
49
|
+
const config = (0, resolve_1.resolveConfig)(options);
|
|
50
|
+
if (!topic) {
|
|
51
|
+
if (outputFormat === 'json') {
|
|
52
|
+
(0, json_1.outputJson)((0, json_1.formatError)(errors_1.ERROR_CODES.MISSING_ARG, 'Please provide a topic for auto-generation'));
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
await pretty.error('Please provide a topic for auto-generation');
|
|
56
|
+
await pretty.dim('Usage: praisonai-ts auto "Create a research team"');
|
|
57
|
+
}
|
|
58
|
+
process.exit(cli_spec_1.EXIT_CODES.INVALID_ARGUMENTS);
|
|
59
|
+
}
|
|
60
|
+
const startTime = Date.now();
|
|
61
|
+
try {
|
|
62
|
+
if (outputFormat !== 'json') {
|
|
63
|
+
await pretty.info(`Generating agents for: "${topic}"`);
|
|
64
|
+
}
|
|
65
|
+
const autoAgents = (0, auto_1.createAutoAgents)({
|
|
66
|
+
llm: config.model,
|
|
67
|
+
pattern: options.pattern,
|
|
68
|
+
verbose: options.verbose
|
|
69
|
+
});
|
|
70
|
+
const result = await autoAgents.generate(topic);
|
|
71
|
+
const duration = Date.now() - startTime;
|
|
72
|
+
if (outputFormat === 'json') {
|
|
73
|
+
(0, json_1.outputJson)((0, json_1.formatSuccess)({
|
|
74
|
+
topic,
|
|
75
|
+
agents: result.agents,
|
|
76
|
+
tasks: result.tasks,
|
|
77
|
+
pattern: result.pattern
|
|
78
|
+
}, {
|
|
79
|
+
duration_ms: duration,
|
|
80
|
+
model: config.model
|
|
81
|
+
}));
|
|
82
|
+
}
|
|
83
|
+
else {
|
|
84
|
+
await pretty.heading('Generated Team');
|
|
85
|
+
await pretty.plain(`Pattern: ${result.pattern}`);
|
|
86
|
+
await pretty.newline();
|
|
87
|
+
await pretty.plain('Agents:');
|
|
88
|
+
for (const agent of result.agents) {
|
|
89
|
+
await pretty.plain(` • ${agent.name}: ${agent.role}`);
|
|
90
|
+
}
|
|
91
|
+
await pretty.newline();
|
|
92
|
+
await pretty.plain('Tasks:');
|
|
93
|
+
for (const task of result.tasks) {
|
|
94
|
+
await pretty.plain(` • ${task.description?.substring(0, 60)}...`);
|
|
95
|
+
}
|
|
96
|
+
await pretty.newline();
|
|
97
|
+
await pretty.success(`Generated in ${duration}ms`);
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
catch (error) {
|
|
101
|
+
if (outputFormat === 'json') {
|
|
102
|
+
(0, json_1.outputJson)((0, json_1.formatError)(errors_1.ERROR_CODES.UNKNOWN, error instanceof Error ? error.message : String(error)));
|
|
103
|
+
}
|
|
104
|
+
else {
|
|
105
|
+
await pretty.error(error instanceof Error ? error.message : String(error));
|
|
106
|
+
}
|
|
107
|
+
process.exit(cli_spec_1.EXIT_CODES.RUNTIME_ERROR);
|
|
108
|
+
}
|
|
109
|
+
}
|