qlogicagent 0.2.0 → 0.3.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/dist/agent.js +1 -0
- package/dist/cli.js +9 -0
- package/dist/contracts.js +1 -0
- package/dist/index.js +5 -16
- package/dist/orchestration.js +118 -0
- package/dist/{agent → types/agent}/agent.d.ts +0 -1
- package/dist/{agent → types/agent}/tool-loop.d.ts +0 -1
- package/dist/{agent → types/agent}/types.d.ts +0 -1
- package/dist/{cli → types/cli}/main.d.ts +0 -1
- package/dist/{cli → types/cli}/stdio-server.d.ts +0 -1
- package/dist/{config → types/config}/config.d.ts +0 -1
- package/dist/{contracts → types/contracts}/hooks.d.ts +0 -1
- package/dist/{contracts/index.js → types/contracts/index.d.ts} +0 -1
- package/dist/{contracts → types/contracts}/planner.d.ts +0 -1
- package/dist/{contracts → types/contracts}/skill-candidate.d.ts +0 -1
- package/dist/{contracts → types/contracts}/todo.d.ts +0 -1
- package/dist/{index.d.ts → types/index.d.ts} +0 -1
- package/dist/{llm → types/llm}/builtin-providers.d.ts +0 -1
- package/dist/{llm → types/llm}/index.d.ts +0 -1
- package/dist/{llm → types/llm}/llm-client.d.ts +0 -1
- package/dist/{llm → types/llm}/model-catalog.d.ts +0 -1
- package/dist/{llm → types/llm}/provider-def.d.ts +0 -1
- package/dist/{llm → types/llm}/provider-registry.d.ts +0 -1
- package/dist/{llm → types/llm}/transport.d.ts +0 -1
- package/dist/{llm → types/llm}/transports/anthropic-messages.d.ts +0 -1
- package/dist/{llm → types/llm}/transports/openai-chat.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/agent-registry.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/approval-aware-tool-plan.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/context-compression.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/conversation-repair.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/curator-scheduler.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/embedded-failover-policy.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/error-classification.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/failover-classification.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/failover-error.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/fork-subagent.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/index.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/memory-flush-policy.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/memory-provider.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/parallel-tool-calls.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/prompt-cache-strategy.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/reactive-compact.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/retry-loop.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/skill-candidate.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/skill-consolidation.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/skill-improvement.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/skill-similarity.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/streaming-tool-executor.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/team-orchestration.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/team-tool-loop-wiring.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/tool-choice-policy.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/tool-loop-state.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/tool-schema.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/transcript-repair.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/turn-loop-guard.d.ts +0 -1
- package/dist/{orchestration → types/orchestration}/web-browser-policy.d.ts +0 -1
- package/dist/{runtime → types/runtime}/context-compression.d.ts +0 -1
- package/dist/{runtime → types/runtime}/hook-registry.d.ts +0 -1
- package/dist/{runtime → types/runtime}/memory-hooks.d.ts +0 -1
- package/dist/{runtime → types/runtime}/tool-eligibility.d.ts +0 -1
- package/dist/{skills → types/skills}/index.d.ts +0 -1
- package/dist/{skills → types/skills}/memory-extractor.d.ts +0 -1
- package/dist/{skills → types/skills}/memory-query-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/memory-store.d.ts +0 -1
- package/dist/{skills → types/skills}/memory-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/portable-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/qmemory-adapter.d.ts +0 -1
- package/dist/{skills → types/skills}/skill-frontmatter.d.ts +0 -1
- package/dist/{skills → types/skills}/skill-guard.d.ts +0 -1
- package/dist/{skills → types/skills}/skill-loader.d.ts +0 -1
- package/dist/{skills → types/skills}/skill-source.d.ts +0 -1
- package/dist/{skills → types/skills}/skill-types.d.ts +0 -1
- package/dist/{skills → types/skills}/think-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/todo-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/agent-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/apply-patch-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/ask-user-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/brief-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/browser-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/checkpoint-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/config-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/cron-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/edit-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/exec-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/image-generate-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/instructions-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/lsp-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/mcp-client-types.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/mcp-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/memory-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/monitor-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/music-generate-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/notify-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/patch-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/pdf-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/plan-mode-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/read-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/repl-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/search-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/send-message-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/skill-list-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/skill-manage-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/skill-view-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/sleep-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/structured-output-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/task-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/team-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/tool-search-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/tts-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/video-edit-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/video-generate-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/video-merge-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/video-upscale-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/web-fetch-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/web-search-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/worktree-tool.d.ts +0 -1
- package/dist/{skills → types/skills}/tools/write-tool.d.ts +0 -1
- package/package.json +56 -42
- package/dist/agent/agent.d.ts.map +0 -1
- package/dist/agent/agent.js +0 -114
- package/dist/agent/agent.js.map +0 -1
- package/dist/agent/tool-loop.d.ts.map +0 -1
- package/dist/agent/tool-loop.js +0 -576
- package/dist/agent/tool-loop.js.map +0 -1
- package/dist/agent/types.d.ts.map +0 -1
- package/dist/agent/types.js +0 -15
- package/dist/agent/types.js.map +0 -1
- package/dist/cli/main.d.ts.map +0 -1
- package/dist/cli/main.js +0 -24
- package/dist/cli/main.js.map +0 -1
- package/dist/cli/stdio-server.d.ts.map +0 -1
- package/dist/cli/stdio-server.js +0 -464
- package/dist/cli/stdio-server.js.map +0 -1
- package/dist/config/config.d.ts.map +0 -1
- package/dist/config/config.js +0 -22
- package/dist/config/config.js.map +0 -1
- package/dist/contracts/hooks.d.ts.map +0 -1
- package/dist/contracts/hooks.js +0 -8
- package/dist/contracts/hooks.js.map +0 -1
- package/dist/contracts/index.d.ts +0 -11
- package/dist/contracts/index.d.ts.map +0 -1
- package/dist/contracts/index.js.map +0 -1
- package/dist/contracts/planner.d.ts.map +0 -1
- package/dist/contracts/planner.js +0 -3
- package/dist/contracts/planner.js.map +0 -1
- package/dist/contracts/skill-candidate.d.ts.map +0 -1
- package/dist/contracts/skill-candidate.js +0 -196
- package/dist/contracts/skill-candidate.js.map +0 -1
- package/dist/contracts/todo.d.ts.map +0 -1
- package/dist/contracts/todo.js +0 -10
- package/dist/contracts/todo.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/llm/builtin-providers.d.ts.map +0 -1
- package/dist/llm/builtin-providers.js +0 -532
- package/dist/llm/builtin-providers.js.map +0 -1
- package/dist/llm/index.d.ts.map +0 -1
- package/dist/llm/index.js +0 -15
- package/dist/llm/index.js.map +0 -1
- package/dist/llm/llm-client.d.ts.map +0 -1
- package/dist/llm/llm-client.js +0 -68
- package/dist/llm/llm-client.js.map +0 -1
- package/dist/llm/model-catalog.d.ts.map +0 -1
- package/dist/llm/model-catalog.js +0 -192
- package/dist/llm/model-catalog.js.map +0 -1
- package/dist/llm/provider-def.d.ts.map +0 -1
- package/dist/llm/provider-def.js +0 -13
- package/dist/llm/provider-def.js.map +0 -1
- package/dist/llm/provider-registry.d.ts.map +0 -1
- package/dist/llm/provider-registry.js +0 -148
- package/dist/llm/provider-registry.js.map +0 -1
- package/dist/llm/transport.d.ts.map +0 -1
- package/dist/llm/transport.js +0 -28
- package/dist/llm/transport.js.map +0 -1
- package/dist/llm/transports/anthropic-messages.d.ts.map +0 -1
- package/dist/llm/transports/anthropic-messages.js +0 -294
- package/dist/llm/transports/anthropic-messages.js.map +0 -1
- package/dist/llm/transports/openai-chat.d.ts.map +0 -1
- package/dist/llm/transports/openai-chat.js +0 -166
- package/dist/llm/transports/openai-chat.js.map +0 -1
- package/dist/orchestration/agent-registry.d.ts.map +0 -1
- package/dist/orchestration/agent-registry.js +0 -117
- package/dist/orchestration/agent-registry.js.map +0 -1
- package/dist/orchestration/approval-aware-tool-plan.d.ts.map +0 -1
- package/dist/orchestration/approval-aware-tool-plan.js +0 -88
- package/dist/orchestration/approval-aware-tool-plan.js.map +0 -1
- package/dist/orchestration/context-compression.d.ts.map +0 -1
- package/dist/orchestration/context-compression.js +0 -584
- package/dist/orchestration/context-compression.js.map +0 -1
- package/dist/orchestration/conversation-repair.d.ts.map +0 -1
- package/dist/orchestration/conversation-repair.js +0 -430
- package/dist/orchestration/conversation-repair.js.map +0 -1
- package/dist/orchestration/curator-scheduler.d.ts.map +0 -1
- package/dist/orchestration/curator-scheduler.js +0 -136
- package/dist/orchestration/curator-scheduler.js.map +0 -1
- package/dist/orchestration/embedded-failover-policy.d.ts.map +0 -1
- package/dist/orchestration/embedded-failover-policy.js +0 -169
- package/dist/orchestration/embedded-failover-policy.js.map +0 -1
- package/dist/orchestration/error-classification.d.ts.map +0 -1
- package/dist/orchestration/error-classification.js +0 -78
- package/dist/orchestration/error-classification.js.map +0 -1
- package/dist/orchestration/failover-classification.d.ts.map +0 -1
- package/dist/orchestration/failover-classification.js +0 -382
- package/dist/orchestration/failover-classification.js.map +0 -1
- package/dist/orchestration/failover-error.d.ts.map +0 -1
- package/dist/orchestration/failover-error.js +0 -199
- package/dist/orchestration/failover-error.js.map +0 -1
- package/dist/orchestration/fork-subagent.d.ts.map +0 -1
- package/dist/orchestration/fork-subagent.js +0 -99
- package/dist/orchestration/fork-subagent.js.map +0 -1
- package/dist/orchestration/index.d.ts.map +0 -1
- package/dist/orchestration/index.js +0 -268
- package/dist/orchestration/index.js.map +0 -1
- package/dist/orchestration/memory-flush-policy.d.ts.map +0 -1
- package/dist/orchestration/memory-flush-policy.js +0 -86
- package/dist/orchestration/memory-flush-policy.js.map +0 -1
- package/dist/orchestration/memory-provider.d.ts.map +0 -1
- package/dist/orchestration/memory-provider.js +0 -3
- package/dist/orchestration/memory-provider.js.map +0 -1
- package/dist/orchestration/parallel-tool-calls.d.ts.map +0 -1
- package/dist/orchestration/parallel-tool-calls.js +0 -60
- package/dist/orchestration/parallel-tool-calls.js.map +0 -1
- package/dist/orchestration/prompt-cache-strategy.d.ts.map +0 -1
- package/dist/orchestration/prompt-cache-strategy.js +0 -229
- package/dist/orchestration/prompt-cache-strategy.js.map +0 -1
- package/dist/orchestration/reactive-compact.d.ts.map +0 -1
- package/dist/orchestration/reactive-compact.js +0 -79
- package/dist/orchestration/reactive-compact.js.map +0 -1
- package/dist/orchestration/retry-loop.d.ts.map +0 -1
- package/dist/orchestration/retry-loop.js +0 -25
- package/dist/orchestration/retry-loop.js.map +0 -1
- package/dist/orchestration/skill-candidate.d.ts.map +0 -1
- package/dist/orchestration/skill-candidate.js +0 -142
- package/dist/orchestration/skill-candidate.js.map +0 -1
- package/dist/orchestration/skill-consolidation.d.ts.map +0 -1
- package/dist/orchestration/skill-consolidation.js +0 -221
- package/dist/orchestration/skill-consolidation.js.map +0 -1
- package/dist/orchestration/skill-improvement.d.ts.map +0 -1
- package/dist/orchestration/skill-improvement.js +0 -67
- package/dist/orchestration/skill-improvement.js.map +0 -1
- package/dist/orchestration/skill-similarity.d.ts.map +0 -1
- package/dist/orchestration/skill-similarity.js +0 -132
- package/dist/orchestration/skill-similarity.js.map +0 -1
- package/dist/orchestration/streaming-tool-executor.d.ts.map +0 -1
- package/dist/orchestration/streaming-tool-executor.js +0 -97
- package/dist/orchestration/streaming-tool-executor.js.map +0 -1
- package/dist/orchestration/team-orchestration.d.ts.map +0 -1
- package/dist/orchestration/team-orchestration.js +0 -370
- package/dist/orchestration/team-orchestration.js.map +0 -1
- package/dist/orchestration/team-tool-loop-wiring.d.ts.map +0 -1
- package/dist/orchestration/team-tool-loop-wiring.js +0 -148
- package/dist/orchestration/team-tool-loop-wiring.js.map +0 -1
- package/dist/orchestration/tool-choice-policy.d.ts.map +0 -1
- package/dist/orchestration/tool-choice-policy.js +0 -165
- package/dist/orchestration/tool-choice-policy.js.map +0 -1
- package/dist/orchestration/tool-loop-state.d.ts.map +0 -1
- package/dist/orchestration/tool-loop-state.js +0 -134
- package/dist/orchestration/tool-loop-state.js.map +0 -1
- package/dist/orchestration/tool-schema.d.ts.map +0 -1
- package/dist/orchestration/tool-schema.js +0 -298
- package/dist/orchestration/tool-schema.js.map +0 -1
- package/dist/orchestration/transcript-repair.d.ts.map +0 -1
- package/dist/orchestration/transcript-repair.js +0 -427
- package/dist/orchestration/transcript-repair.js.map +0 -1
- package/dist/orchestration/turn-loop-guard.d.ts.map +0 -1
- package/dist/orchestration/turn-loop-guard.js +0 -93
- package/dist/orchestration/turn-loop-guard.js.map +0 -1
- package/dist/orchestration/web-browser-policy.d.ts.map +0 -1
- package/dist/orchestration/web-browser-policy.js +0 -40
- package/dist/orchestration/web-browser-policy.js.map +0 -1
- package/dist/runtime/context-compression.d.ts.map +0 -1
- package/dist/runtime/context-compression.js +0 -275
- package/dist/runtime/context-compression.js.map +0 -1
- package/dist/runtime/hook-registry.d.ts.map +0 -1
- package/dist/runtime/hook-registry.js +0 -54
- package/dist/runtime/hook-registry.js.map +0 -1
- package/dist/runtime/memory-hooks.d.ts.map +0 -1
- package/dist/runtime/memory-hooks.js +0 -66
- package/dist/runtime/memory-hooks.js.map +0 -1
- package/dist/runtime/tool-eligibility.d.ts.map +0 -1
- package/dist/runtime/tool-eligibility.js +0 -112
- package/dist/runtime/tool-eligibility.js.map +0 -1
- package/dist/skills/index.d.ts.map +0 -1
- package/dist/skills/index.js +0 -83
- package/dist/skills/index.js.map +0 -1
- package/dist/skills/memory-extractor.d.ts.map +0 -1
- package/dist/skills/memory-extractor.js +0 -174
- package/dist/skills/memory-extractor.js.map +0 -1
- package/dist/skills/memory-query-tool.d.ts.map +0 -1
- package/dist/skills/memory-query-tool.js +0 -128
- package/dist/skills/memory-query-tool.js.map +0 -1
- package/dist/skills/memory-store.d.ts.map +0 -1
- package/dist/skills/memory-store.js +0 -229
- package/dist/skills/memory-store.js.map +0 -1
- package/dist/skills/memory-tool.d.ts.map +0 -1
- package/dist/skills/memory-tool.js +0 -193
- package/dist/skills/memory-tool.js.map +0 -1
- package/dist/skills/portable-tool.d.ts.map +0 -1
- package/dist/skills/portable-tool.js +0 -15
- package/dist/skills/portable-tool.js.map +0 -1
- package/dist/skills/qmemory-adapter.d.ts.map +0 -1
- package/dist/skills/qmemory-adapter.js +0 -166
- package/dist/skills/qmemory-adapter.js.map +0 -1
- package/dist/skills/skill-frontmatter.d.ts.map +0 -1
- package/dist/skills/skill-frontmatter.js +0 -345
- package/dist/skills/skill-frontmatter.js.map +0 -1
- package/dist/skills/skill-guard.d.ts.map +0 -1
- package/dist/skills/skill-guard.js +0 -230
- package/dist/skills/skill-guard.js.map +0 -1
- package/dist/skills/skill-loader.d.ts.map +0 -1
- package/dist/skills/skill-loader.js +0 -304
- package/dist/skills/skill-loader.js.map +0 -1
- package/dist/skills/skill-source.d.ts.map +0 -1
- package/dist/skills/skill-source.js +0 -127
- package/dist/skills/skill-source.js.map +0 -1
- package/dist/skills/skill-types.d.ts.map +0 -1
- package/dist/skills/skill-types.js +0 -7
- package/dist/skills/skill-types.js.map +0 -1
- package/dist/skills/think-tool.d.ts.map +0 -1
- package/dist/skills/think-tool.js +0 -60
- package/dist/skills/think-tool.js.map +0 -1
- package/dist/skills/todo-tool.d.ts.map +0 -1
- package/dist/skills/todo-tool.js +0 -115
- package/dist/skills/todo-tool.js.map +0 -1
- package/dist/skills/tools/agent-tool.d.ts.map +0 -1
- package/dist/skills/tools/agent-tool.js +0 -143
- package/dist/skills/tools/agent-tool.js.map +0 -1
- package/dist/skills/tools/apply-patch-tool.d.ts.map +0 -1
- package/dist/skills/tools/apply-patch-tool.js +0 -185
- package/dist/skills/tools/apply-patch-tool.js.map +0 -1
- package/dist/skills/tools/ask-user-tool.d.ts.map +0 -1
- package/dist/skills/tools/ask-user-tool.js +0 -122
- package/dist/skills/tools/ask-user-tool.js.map +0 -1
- package/dist/skills/tools/brief-tool.d.ts.map +0 -1
- package/dist/skills/tools/brief-tool.js +0 -96
- package/dist/skills/tools/brief-tool.js.map +0 -1
- package/dist/skills/tools/browser-tool.d.ts.map +0 -1
- package/dist/skills/tools/browser-tool.js +0 -156
- package/dist/skills/tools/browser-tool.js.map +0 -1
- package/dist/skills/tools/checkpoint-tool.d.ts.map +0 -1
- package/dist/skills/tools/checkpoint-tool.js +0 -103
- package/dist/skills/tools/checkpoint-tool.js.map +0 -1
- package/dist/skills/tools/config-tool.d.ts.map +0 -1
- package/dist/skills/tools/config-tool.js +0 -144
- package/dist/skills/tools/config-tool.js.map +0 -1
- package/dist/skills/tools/cron-tool.d.ts.map +0 -1
- package/dist/skills/tools/cron-tool.js +0 -176
- package/dist/skills/tools/cron-tool.js.map +0 -1
- package/dist/skills/tools/edit-tool.d.ts.map +0 -1
- package/dist/skills/tools/edit-tool.js +0 -71
- package/dist/skills/tools/edit-tool.js.map +0 -1
- package/dist/skills/tools/exec-tool.d.ts.map +0 -1
- package/dist/skills/tools/exec-tool.js +0 -134
- package/dist/skills/tools/exec-tool.js.map +0 -1
- package/dist/skills/tools/image-generate-tool.d.ts.map +0 -1
- package/dist/skills/tools/image-generate-tool.js +0 -68
- package/dist/skills/tools/image-generate-tool.js.map +0 -1
- package/dist/skills/tools/instructions-tool.d.ts.map +0 -1
- package/dist/skills/tools/instructions-tool.js +0 -188
- package/dist/skills/tools/instructions-tool.js.map +0 -1
- package/dist/skills/tools/lsp-tool.d.ts.map +0 -1
- package/dist/skills/tools/lsp-tool.js +0 -228
- package/dist/skills/tools/lsp-tool.js.map +0 -1
- package/dist/skills/tools/mcp-client-types.d.ts.map +0 -1
- package/dist/skills/tools/mcp-client-types.js +0 -54
- package/dist/skills/tools/mcp-client-types.js.map +0 -1
- package/dist/skills/tools/mcp-tool.d.ts.map +0 -1
- package/dist/skills/tools/mcp-tool.js +0 -504
- package/dist/skills/tools/mcp-tool.js.map +0 -1
- package/dist/skills/tools/memory-tool.d.ts.map +0 -1
- package/dist/skills/tools/memory-tool.js +0 -89
- package/dist/skills/tools/memory-tool.js.map +0 -1
- package/dist/skills/tools/monitor-tool.d.ts.map +0 -1
- package/dist/skills/tools/monitor-tool.js +0 -132
- package/dist/skills/tools/monitor-tool.js.map +0 -1
- package/dist/skills/tools/music-generate-tool.d.ts.map +0 -1
- package/dist/skills/tools/music-generate-tool.js +0 -63
- package/dist/skills/tools/music-generate-tool.js.map +0 -1
- package/dist/skills/tools/notify-tool.d.ts.map +0 -1
- package/dist/skills/tools/notify-tool.js +0 -63
- package/dist/skills/tools/notify-tool.js.map +0 -1
- package/dist/skills/tools/patch-tool.d.ts.map +0 -1
- package/dist/skills/tools/patch-tool.js +0 -506
- package/dist/skills/tools/patch-tool.js.map +0 -1
- package/dist/skills/tools/pdf-tool.d.ts.map +0 -1
- package/dist/skills/tools/pdf-tool.js +0 -89
- package/dist/skills/tools/pdf-tool.js.map +0 -1
- package/dist/skills/tools/plan-mode-tool.d.ts.map +0 -1
- package/dist/skills/tools/plan-mode-tool.js +0 -123
- package/dist/skills/tools/plan-mode-tool.js.map +0 -1
- package/dist/skills/tools/read-tool.d.ts.map +0 -1
- package/dist/skills/tools/read-tool.js +0 -85
- package/dist/skills/tools/read-tool.js.map +0 -1
- package/dist/skills/tools/repl-tool.d.ts.map +0 -1
- package/dist/skills/tools/repl-tool.js +0 -70
- package/dist/skills/tools/repl-tool.js.map +0 -1
- package/dist/skills/tools/search-tool.d.ts.map +0 -1
- package/dist/skills/tools/search-tool.js +0 -226
- package/dist/skills/tools/search-tool.js.map +0 -1
- package/dist/skills/tools/send-message-tool.d.ts.map +0 -1
- package/dist/skills/tools/send-message-tool.js +0 -77
- package/dist/skills/tools/send-message-tool.js.map +0 -1
- package/dist/skills/tools/skill-list-tool.d.ts.map +0 -1
- package/dist/skills/tools/skill-list-tool.js +0 -55
- package/dist/skills/tools/skill-list-tool.js.map +0 -1
- package/dist/skills/tools/skill-manage-tool.d.ts.map +0 -1
- package/dist/skills/tools/skill-manage-tool.js +0 -154
- package/dist/skills/tools/skill-manage-tool.js.map +0 -1
- package/dist/skills/tools/skill-view-tool.d.ts.map +0 -1
- package/dist/skills/tools/skill-view-tool.js +0 -73
- package/dist/skills/tools/skill-view-tool.js.map +0 -1
- package/dist/skills/tools/sleep-tool.d.ts.map +0 -1
- package/dist/skills/tools/sleep-tool.js +0 -82
- package/dist/skills/tools/sleep-tool.js.map +0 -1
- package/dist/skills/tools/structured-output-tool.d.ts.map +0 -1
- package/dist/skills/tools/structured-output-tool.js +0 -177
- package/dist/skills/tools/structured-output-tool.js.map +0 -1
- package/dist/skills/tools/task-tool.d.ts.map +0 -1
- package/dist/skills/tools/task-tool.js +0 -162
- package/dist/skills/tools/task-tool.js.map +0 -1
- package/dist/skills/tools/team-tool.d.ts.map +0 -1
- package/dist/skills/tools/team-tool.js +0 -106
- package/dist/skills/tools/team-tool.js.map +0 -1
- package/dist/skills/tools/tool-search-tool.d.ts.map +0 -1
- package/dist/skills/tools/tool-search-tool.js +0 -111
- package/dist/skills/tools/tool-search-tool.js.map +0 -1
- package/dist/skills/tools/tts-tool.d.ts.map +0 -1
- package/dist/skills/tools/tts-tool.js +0 -46
- package/dist/skills/tools/tts-tool.js.map +0 -1
- package/dist/skills/tools/video-edit-tool.d.ts.map +0 -1
- package/dist/skills/tools/video-edit-tool.js +0 -75
- package/dist/skills/tools/video-edit-tool.js.map +0 -1
- package/dist/skills/tools/video-generate-tool.d.ts.map +0 -1
- package/dist/skills/tools/video-generate-tool.js +0 -67
- package/dist/skills/tools/video-generate-tool.js.map +0 -1
- package/dist/skills/tools/video-merge-tool.d.ts.map +0 -1
- package/dist/skills/tools/video-merge-tool.js +0 -93
- package/dist/skills/tools/video-merge-tool.js.map +0 -1
- package/dist/skills/tools/video-upscale-tool.d.ts.map +0 -1
- package/dist/skills/tools/video-upscale-tool.js +0 -53
- package/dist/skills/tools/video-upscale-tool.js.map +0 -1
- package/dist/skills/tools/web-fetch-tool.d.ts.map +0 -1
- package/dist/skills/tools/web-fetch-tool.js +0 -93
- package/dist/skills/tools/web-fetch-tool.js.map +0 -1
- package/dist/skills/tools/web-search-tool.d.ts.map +0 -1
- package/dist/skills/tools/web-search-tool.js +0 -87
- package/dist/skills/tools/web-search-tool.js.map +0 -1
- package/dist/skills/tools/worktree-tool.d.ts.map +0 -1
- package/dist/skills/tools/worktree-tool.js +0 -148
- package/dist/skills/tools/worktree-tool.js.map +0 -1
- package/dist/skills/tools/write-tool.d.ts.map +0 -1
- package/dist/skills/tools/write-tool.js +0 -82
- package/dist/skills/tools/write-tool.js.map +0 -1
|
@@ -1,162 +0,0 @@
|
|
|
1
|
-
// ============================================================
|
|
2
|
-
// Task Tool — background agent task management (CRUD + output).
|
|
3
|
-
// Reference: claude-code-haha/src/tools/TaskCreateTool/TaskCreateTool.ts
|
|
4
|
-
// claude-code-haha/src/tools/TaskGetTool/TaskGetTool.ts
|
|
5
|
-
// claude-code-haha/src/tools/TaskListTool/TaskListTool.ts
|
|
6
|
-
// claude-code-haha/src/tools/TaskOutputTool/TaskOutputTool.tsx
|
|
7
|
-
// claude-code-haha/src/tools/TaskStopTool/TaskStopTool.ts
|
|
8
|
-
// Category: system
|
|
9
|
-
// ============================================================
|
|
10
|
-
export const TASK_TOOL_NAME = "task";
|
|
11
|
-
export const TASK_TOOL_SCHEMA = {
|
|
12
|
-
type: "object",
|
|
13
|
-
properties: {
|
|
14
|
-
action: {
|
|
15
|
-
type: "string",
|
|
16
|
-
enum: ["create", "get", "list", "output", "stop"],
|
|
17
|
-
description: "Action to perform:\n" +
|
|
18
|
-
"- create: Spawn a new background agent task\n" +
|
|
19
|
-
"- get: Get task status and metadata by ID\n" +
|
|
20
|
-
"- list: List all tasks with their statuses\n" +
|
|
21
|
-
"- output: Get stdout/output from a running or completed task\n" +
|
|
22
|
-
"- stop: Terminate a running task",
|
|
23
|
-
},
|
|
24
|
-
taskId: {
|
|
25
|
-
type: "string",
|
|
26
|
-
description: "Task ID. Required for get/output/stop.",
|
|
27
|
-
},
|
|
28
|
-
prompt: {
|
|
29
|
-
type: "string",
|
|
30
|
-
description: "Detailed prompt for the background agent. Must contain all context needed " +
|
|
31
|
-
"to complete the task independently. Required for create.",
|
|
32
|
-
},
|
|
33
|
-
description: {
|
|
34
|
-
type: "string",
|
|
35
|
-
description: "Short (3-7 word) description of the task. Used for tracking and display.",
|
|
36
|
-
},
|
|
37
|
-
allowedTools: {
|
|
38
|
-
type: "array",
|
|
39
|
-
items: { type: "string" },
|
|
40
|
-
description: "Restrict background agent to only these tools. If omitted, inherits parent's tools.",
|
|
41
|
-
},
|
|
42
|
-
cwd: {
|
|
43
|
-
type: "string",
|
|
44
|
-
description: "Working directory for the background task (absolute path).",
|
|
45
|
-
},
|
|
46
|
-
model: {
|
|
47
|
-
type: "string",
|
|
48
|
-
description: "Model override for the task agent (e.g. 'sonnet', 'opus').",
|
|
49
|
-
},
|
|
50
|
-
maxLines: {
|
|
51
|
-
type: "number",
|
|
52
|
-
description: "Max output lines to return for the 'output' action (default: 100).",
|
|
53
|
-
minimum: 1,
|
|
54
|
-
maximum: 2000,
|
|
55
|
-
},
|
|
56
|
-
},
|
|
57
|
-
required: ["action"],
|
|
58
|
-
};
|
|
59
|
-
const DEFAULT_MAX_LINES = 100;
|
|
60
|
-
export function createTaskTool(deps) {
|
|
61
|
-
return {
|
|
62
|
-
name: TASK_TOOL_NAME,
|
|
63
|
-
label: "Task",
|
|
64
|
-
shouldDefer: true,
|
|
65
|
-
description: "Manage background agent tasks. Use this to spawn long-running tasks (image generation, " +
|
|
66
|
-
"code refactoring, research) that run independently while you continue working. " +
|
|
67
|
-
"Actions: create (spawn), get (status check), list (all tasks), output (logs), stop (terminate).",
|
|
68
|
-
parameters: TASK_TOOL_SCHEMA,
|
|
69
|
-
execute: async (_toolCallId, params) => {
|
|
70
|
-
switch (params.action) {
|
|
71
|
-
case "create": {
|
|
72
|
-
if (!params.prompt || params.prompt.trim().length < 10) {
|
|
73
|
-
return {
|
|
74
|
-
content: [{ type: "text", text: "Error: 'prompt' is required for create (min 10 chars)." }],
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
const task = await deps.createTask({
|
|
78
|
-
prompt: params.prompt.trim(),
|
|
79
|
-
description: params.description,
|
|
80
|
-
allowedTools: params.allowedTools,
|
|
81
|
-
cwd: params.cwd,
|
|
82
|
-
model: params.model,
|
|
83
|
-
});
|
|
84
|
-
return {
|
|
85
|
-
content: [{
|
|
86
|
-
type: "text",
|
|
87
|
-
text: [
|
|
88
|
-
`Task created successfully.`,
|
|
89
|
-
`ID: ${task.taskId}`,
|
|
90
|
-
`Status: ${task.status}`,
|
|
91
|
-
task.description ? `Description: ${task.description}` : "",
|
|
92
|
-
].filter(Boolean).join("\n"),
|
|
93
|
-
}],
|
|
94
|
-
details: { type: "task", action: "create", taskId: task.taskId, status: task.status },
|
|
95
|
-
};
|
|
96
|
-
}
|
|
97
|
-
case "get": {
|
|
98
|
-
if (!params.taskId) {
|
|
99
|
-
return { content: [{ type: "text", text: "Error: 'taskId' is required for get." }] };
|
|
100
|
-
}
|
|
101
|
-
const task = await deps.getTask(params.taskId);
|
|
102
|
-
if (!task) {
|
|
103
|
-
return { content: [{ type: "text", text: `Error: task "${params.taskId}" not found.` }] };
|
|
104
|
-
}
|
|
105
|
-
const lines = [
|
|
106
|
-
`Task: ${task.taskId}`,
|
|
107
|
-
`Status: ${task.status}`,
|
|
108
|
-
task.description ? `Description: ${task.description}` : "",
|
|
109
|
-
`Created: ${new Date(task.createdAt).toISOString()}`,
|
|
110
|
-
task.completedAt ? `Completed: ${new Date(task.completedAt).toISOString()}` : "",
|
|
111
|
-
task.result ? `Result: ${task.result.slice(0, 500)}` : "",
|
|
112
|
-
task.error ? `Error: ${task.error}` : "",
|
|
113
|
-
];
|
|
114
|
-
return {
|
|
115
|
-
content: [{ type: "text", text: lines.filter(Boolean).join("\n") }],
|
|
116
|
-
details: { type: "task", action: "get", task },
|
|
117
|
-
};
|
|
118
|
-
}
|
|
119
|
-
case "list": {
|
|
120
|
-
const tasks = await deps.listTasks();
|
|
121
|
-
if (tasks.length === 0) {
|
|
122
|
-
return { content: [{ type: "text", text: "No tasks found." }] };
|
|
123
|
-
}
|
|
124
|
-
const lines = tasks.map(t => {
|
|
125
|
-
const icon = t.status === "completed" ? "✅" :
|
|
126
|
-
t.status === "running" ? "🔄" :
|
|
127
|
-
t.status === "failed" ? "❌" :
|
|
128
|
-
t.status === "stopped" ? "⏹️" : "⏳";
|
|
129
|
-
return `${icon} [${t.taskId}] ${t.description || "(no description)"} — ${t.status}`;
|
|
130
|
-
});
|
|
131
|
-
return {
|
|
132
|
-
content: [{ type: "text", text: `Tasks (${tasks.length}):\n${lines.join("\n")}` }],
|
|
133
|
-
details: { type: "task", action: "list", count: tasks.length },
|
|
134
|
-
};
|
|
135
|
-
}
|
|
136
|
-
case "output": {
|
|
137
|
-
if (!params.taskId) {
|
|
138
|
-
return { content: [{ type: "text", text: "Error: 'taskId' is required for output." }] };
|
|
139
|
-
}
|
|
140
|
-
const output = await deps.getTaskOutput(params.taskId, params.maxLines ?? DEFAULT_MAX_LINES);
|
|
141
|
-
return {
|
|
142
|
-
content: [{ type: "text", text: output || "(no output yet)" }],
|
|
143
|
-
details: { type: "task", action: "output", taskId: params.taskId },
|
|
144
|
-
};
|
|
145
|
-
}
|
|
146
|
-
case "stop": {
|
|
147
|
-
if (!params.taskId) {
|
|
148
|
-
return { content: [{ type: "text", text: "Error: 'taskId' is required for stop." }] };
|
|
149
|
-
}
|
|
150
|
-
const stopped = await deps.stopTask(params.taskId);
|
|
151
|
-
return {
|
|
152
|
-
content: [{ type: "text", text: stopped ? `Task ${params.taskId} stopped.` : `Failed to stop task ${params.taskId} (may already be completed).` }],
|
|
153
|
-
details: { type: "task", action: "stop", taskId: params.taskId, stopped },
|
|
154
|
-
};
|
|
155
|
-
}
|
|
156
|
-
default:
|
|
157
|
-
return { content: [{ type: "text", text: `Error: unknown action "${params.action}". Use: create/get/list/output/stop.` }] };
|
|
158
|
-
}
|
|
159
|
-
},
|
|
160
|
-
};
|
|
161
|
-
}
|
|
162
|
-
//# sourceMappingURL=task-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task-tool.js","sourceRoot":"","sources":["../../../src/skills/tools/task-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"team-tool.d.ts","sourceRoot":"","sources":["../../../src/skills/tools/team-tool.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AAE5E,eAAO,MAAM,cAAc,EAAG,MAAe,CAAC;AAE9C,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEjE,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,UAAU,CAAC;IACnB,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,uBAAuB;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sCAAsC;IACtC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;CACxB;AAED,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BnB,CAAC;AAEX,MAAM,WAAW,IAAI;IACnB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,IAAI,CAAC;IACZ,KAAK,CAAC,EAAE,IAAI,EAAE,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,UAAU,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAA;KAAE,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAC5G,UAAU,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAClD,SAAS,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IACjC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACtD;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,YAAY,GAAG,YAAY,CAAC,cAAc,CAAC,CAuE/E"}
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
// ============================================================
|
|
2
|
-
// Team Tool — create and manage multi-agent teams (Swarm).
|
|
3
|
-
// Reference: claude-code-haha/src/tools/TeamCreateTool/TeamCreateTool.ts
|
|
4
|
-
// claude-code-haha/src/tools/TeamDeleteTool/TeamDeleteTool.ts
|
|
5
|
-
// Category: system
|
|
6
|
-
// ============================================================
|
|
7
|
-
export const TEAM_TOOL_NAME = "team";
|
|
8
|
-
export const TEAM_TOOL_SCHEMA = {
|
|
9
|
-
type: "object",
|
|
10
|
-
properties: {
|
|
11
|
-
action: {
|
|
12
|
-
type: "string",
|
|
13
|
-
enum: ["create", "delete", "list", "status"],
|
|
14
|
-
description: "Team action: create (new team), delete (disband), list (all teams), status (team details).",
|
|
15
|
-
},
|
|
16
|
-
teamName: {
|
|
17
|
-
type: "string",
|
|
18
|
-
description: "Team name. Required for create/delete/status.",
|
|
19
|
-
},
|
|
20
|
-
description: {
|
|
21
|
-
type: "string",
|
|
22
|
-
description: "Team description/objective. Used for create.",
|
|
23
|
-
},
|
|
24
|
-
members: {
|
|
25
|
-
type: "array",
|
|
26
|
-
description: "Team members with roles and tool restrictions.",
|
|
27
|
-
items: {
|
|
28
|
-
type: "object",
|
|
29
|
-
properties: {
|
|
30
|
-
name: { type: "string", description: "Agent name/role identifier." },
|
|
31
|
-
role: { type: "string", description: "Role description (e.g. 'frontend developer')." },
|
|
32
|
-
tools: { type: "array", items: { type: "string" }, description: "Allowed tools for this member." },
|
|
33
|
-
},
|
|
34
|
-
required: ["name", "role"],
|
|
35
|
-
},
|
|
36
|
-
},
|
|
37
|
-
},
|
|
38
|
-
required: ["action"],
|
|
39
|
-
};
|
|
40
|
-
export function createTeamTool(deps) {
|
|
41
|
-
return {
|
|
42
|
-
name: TEAM_TOOL_NAME,
|
|
43
|
-
label: "Team",
|
|
44
|
-
description: "Manage multi-agent teams. Create teams of specialized agents that collaborate via send_message. " +
|
|
45
|
-
"Each member has a role and optional tool restrictions. Use for complex tasks requiring parallel work.",
|
|
46
|
-
parameters: TEAM_TOOL_SCHEMA,
|
|
47
|
-
execute: async (_toolCallId, params) => {
|
|
48
|
-
switch (params.action) {
|
|
49
|
-
case "create": {
|
|
50
|
-
if (!params.teamName) {
|
|
51
|
-
return { content: [{ type: "text", text: "Error: teamName required for create." }], details: { type: "team", error: "missing_name" } };
|
|
52
|
-
}
|
|
53
|
-
const r = await deps.createTeam({ teamName: params.teamName, description: params.description, members: params.members });
|
|
54
|
-
if (!r.success) {
|
|
55
|
-
return { content: [{ type: "text", text: `Error: ${r.error}` }], details: { type: "team", error: r.error } };
|
|
56
|
-
}
|
|
57
|
-
const lines = [`Team "${r.team.name}" created.`, `Lead: ${r.team.leadId}`, `Members: ${r.team.members.length}`];
|
|
58
|
-
for (const m of r.team.members) {
|
|
59
|
-
lines.push(` - ${m.name} (${m.role})`);
|
|
60
|
-
}
|
|
61
|
-
return { content: [{ type: "text", text: lines.join("\n") }], details: { type: "team", action: "create", teamName: r.team.name } };
|
|
62
|
-
}
|
|
63
|
-
case "delete": {
|
|
64
|
-
if (!params.teamName) {
|
|
65
|
-
return { content: [{ type: "text", text: "Error: teamName required for delete." }], details: { type: "team", error: "missing_name" } };
|
|
66
|
-
}
|
|
67
|
-
const r = await deps.deleteTeam(params.teamName);
|
|
68
|
-
if (!r.success) {
|
|
69
|
-
return { content: [{ type: "text", text: `Error: ${r.error}` }], details: { type: "team", error: r.error } };
|
|
70
|
-
}
|
|
71
|
-
return { content: [{ type: "text", text: `Team "${params.teamName}" disbanded.` }], details: { type: "team", action: "delete", teamName: params.teamName } };
|
|
72
|
-
}
|
|
73
|
-
case "list": {
|
|
74
|
-
const r = await deps.listTeams();
|
|
75
|
-
if (!r.teams || r.teams.length === 0) {
|
|
76
|
-
return { content: [{ type: "text", text: "No active teams." }], details: { type: "team", action: "list", count: 0 } };
|
|
77
|
-
}
|
|
78
|
-
const lines = [`Active teams (${r.teams.length}):`, ""];
|
|
79
|
-
for (const t of r.teams) {
|
|
80
|
-
lines.push(`- **${t.name}**: ${t.description || "(no description)"} — ${t.members.length} members`);
|
|
81
|
-
}
|
|
82
|
-
return { content: [{ type: "text", text: lines.join("\n") }], details: { type: "team", action: "list", count: r.teams.length } };
|
|
83
|
-
}
|
|
84
|
-
case "status": {
|
|
85
|
-
if (!params.teamName) {
|
|
86
|
-
return { content: [{ type: "text", text: "Error: teamName required for status." }], details: { type: "team", error: "missing_name" } };
|
|
87
|
-
}
|
|
88
|
-
const r = await deps.getTeamStatus(params.teamName);
|
|
89
|
-
if (!r.success) {
|
|
90
|
-
return { content: [{ type: "text", text: `Error: ${r.error}` }], details: { type: "team", error: r.error } };
|
|
91
|
-
}
|
|
92
|
-
const t = r.team;
|
|
93
|
-
const lines = [`Team: ${t.name}`, `Description: ${t.description || "—"}`, `Lead: ${t.leadId}`, `Created: ${t.createdAt}`, "", `Members (${t.members.length}):`];
|
|
94
|
-
for (const m of t.members) {
|
|
95
|
-
const tools = m.tools ? ` [tools: ${m.tools.join(", ")}]` : "";
|
|
96
|
-
lines.push(` - ${m.name} (${m.role})${tools}`);
|
|
97
|
-
}
|
|
98
|
-
return { content: [{ type: "text", text: lines.join("\n") }], details: { type: "team", action: "status", teamName: t.name } };
|
|
99
|
-
}
|
|
100
|
-
default:
|
|
101
|
-
return { content: [{ type: "text", text: `Error: unknown action "${params.action}".` }], details: { type: "team", error: "unknown_action" } };
|
|
102
|
-
}
|
|
103
|
-
},
|
|
104
|
-
};
|
|
105
|
-
}
|
|
106
|
-
//# sourceMappingURL=team-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"team-tool.js","sourceRoot":"","sources":["../../../src/skills/tools/team-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-search-tool.d.ts","sourceRoot":"","sources":["../../../src/skills/tools/tool-search-tool.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AAE5E,eAAO,MAAM,qBAAqB,EAAG,aAAsB,CAAC;AAE5D,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;CAgB1B,CAAC;AAEX,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,gDAAgD;IAChD,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,WAAW,CACT,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,GAChC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE7B;;;OAGG;IACH,YAAY,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/C;AAID,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,kBAAkB,GAAG,YAAY,CAAC,oBAAoB,CAAC,CA2DjG"}
|
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
// ============================================================
|
|
2
|
-
// Tool Search Tool — discover deferred/hidden tools by keyword.
|
|
3
|
-
// Reference: claude-code-haha/src/tools/ToolSearchTool/ToolSearchTool.ts
|
|
4
|
-
// Category: system
|
|
5
|
-
// ============================================================
|
|
6
|
-
export const TOOL_SEARCH_TOOL_NAME = "tool_search";
|
|
7
|
-
export const TOOL_SEARCH_TOOL_SCHEMA = {
|
|
8
|
-
type: "object",
|
|
9
|
-
properties: {
|
|
10
|
-
query: {
|
|
11
|
-
type: "string",
|
|
12
|
-
description: 'Search query for tools. Use "select:toolName" to directly activate a deferred tool, ' +
|
|
13
|
-
"or provide keywords to search tool names/descriptions. " +
|
|
14
|
-
'Prefix a term with "+" to mark it as required (all +terms must match).',
|
|
15
|
-
},
|
|
16
|
-
maxResults: {
|
|
17
|
-
type: "number",
|
|
18
|
-
description: "Maximum number of results to return (default: 5).",
|
|
19
|
-
},
|
|
20
|
-
},
|
|
21
|
-
required: ["query"],
|
|
22
|
-
};
|
|
23
|
-
const DEFAULT_MAX_RESULTS = 5;
|
|
24
|
-
export function createToolSearchTool(deps) {
|
|
25
|
-
return {
|
|
26
|
-
name: TOOL_SEARCH_TOOL_NAME,
|
|
27
|
-
label: "Tool Search",
|
|
28
|
-
description: "Search for available tools that are not currently loaded. " +
|
|
29
|
-
"Many tools are deferred to save context tokens. " +
|
|
30
|
-
'Use "select:toolName" to directly activate a tool, ' +
|
|
31
|
-
"or provide keywords to find relevant tools. " +
|
|
32
|
-
"Activated tools become available in subsequent messages.",
|
|
33
|
-
parameters: TOOL_SEARCH_TOOL_SCHEMA,
|
|
34
|
-
execute: async (_toolCallId, params) => {
|
|
35
|
-
if (!params.query || params.query.trim().length === 0) {
|
|
36
|
-
return {
|
|
37
|
-
content: [{ type: "text", text: "Error: query is required." }],
|
|
38
|
-
details: { type: "tool_search", error: "empty_query" },
|
|
39
|
-
};
|
|
40
|
-
}
|
|
41
|
-
const query = params.query.trim();
|
|
42
|
-
const maxResults = params.maxResults ?? DEFAULT_MAX_RESULTS;
|
|
43
|
-
// Handle direct selection: "select:toolName" or "select:A,B,C"
|
|
44
|
-
if (query.startsWith("select:")) {
|
|
45
|
-
const names = query.slice(7).split(",").map((n) => n.trim()).filter(Boolean);
|
|
46
|
-
const activated = [];
|
|
47
|
-
const notFound = [];
|
|
48
|
-
if (deps.activateTool) {
|
|
49
|
-
for (const name of names) {
|
|
50
|
-
const ok = await deps.activateTool(name);
|
|
51
|
-
if (ok)
|
|
52
|
-
activated.push(name);
|
|
53
|
-
else
|
|
54
|
-
notFound.push(name);
|
|
55
|
-
}
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
// No activation support — just search
|
|
59
|
-
const result = await deps.searchTools(query, { maxResults });
|
|
60
|
-
return formatSearchResult(result);
|
|
61
|
-
}
|
|
62
|
-
const parts = [];
|
|
63
|
-
if (activated.length > 0) {
|
|
64
|
-
parts.push(`Activated: ${activated.join(", ")}. These tools are now available.`);
|
|
65
|
-
}
|
|
66
|
-
if (notFound.length > 0) {
|
|
67
|
-
parts.push(`Not found: ${notFound.join(", ")}.`);
|
|
68
|
-
}
|
|
69
|
-
return {
|
|
70
|
-
content: [{ type: "text", text: parts.join("\n") }],
|
|
71
|
-
details: { type: "tool_search", activated, notFound, mode: "select" },
|
|
72
|
-
};
|
|
73
|
-
}
|
|
74
|
-
// Keyword search
|
|
75
|
-
const result = await deps.searchTools(query, { maxResults });
|
|
76
|
-
return formatSearchResult(result);
|
|
77
|
-
},
|
|
78
|
-
};
|
|
79
|
-
}
|
|
80
|
-
function formatSearchResult(result) {
|
|
81
|
-
if (result.matches.length === 0) {
|
|
82
|
-
return {
|
|
83
|
-
content: [{
|
|
84
|
-
type: "text",
|
|
85
|
-
text: `No tools found matching "${result.query}". ` +
|
|
86
|
-
`Total deferred tools available: ${result.totalDeferred}.`,
|
|
87
|
-
}],
|
|
88
|
-
details: { type: "tool_search", query: result.query, matchCount: 0, totalDeferred: result.totalDeferred },
|
|
89
|
-
};
|
|
90
|
-
}
|
|
91
|
-
const lines = [
|
|
92
|
-
`Found ${result.matches.length} tool(s) matching "${result.query}" (${result.totalDeferred} total deferred):`,
|
|
93
|
-
"",
|
|
94
|
-
];
|
|
95
|
-
for (const tool of result.matches) {
|
|
96
|
-
lines.push(`- **${tool.name}**: ${tool.description}`);
|
|
97
|
-
}
|
|
98
|
-
lines.push("");
|
|
99
|
-
lines.push('Use "select:toolName" to activate a tool for use in subsequent messages.');
|
|
100
|
-
return {
|
|
101
|
-
content: [{ type: "text", text: lines.join("\n") }],
|
|
102
|
-
details: {
|
|
103
|
-
type: "tool_search",
|
|
104
|
-
query: result.query,
|
|
105
|
-
matchCount: result.matches.length,
|
|
106
|
-
totalDeferred: result.totalDeferred,
|
|
107
|
-
matches: result.matches.map((m) => m.name),
|
|
108
|
-
},
|
|
109
|
-
};
|
|
110
|
-
}
|
|
111
|
-
//# sourceMappingURL=tool-search-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool-search-tool.js","sourceRoot":"","sources":["../../../src/skills/tools/tool-search-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tts-tool.d.ts","sourceRoot":"","sources":["../../../src/skills/tools/tts-tool.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AAE5E,eAAO,MAAM,aAAa,EAAG,KAAc,CAAC;AAE5C,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,eAAe;;;;;;;;;;;;;CAalB,CAAC;AAEX,MAAM,WAAW,SAAS;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,iDAAiD;AACjD,MAAM,WAAW,WAAW;IAC1B;;;OAGG;IACH,YAAY,CAAC,MAAM,EAAE;QACnB,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;CACxB;AAED,wBAAgB,aAAa,CAC3B,IAAI,EAAE,WAAW,GAChB,YAAY,CAAC,aAAa,CAAC,CA4B7B"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
// ============================================================
|
|
2
|
-
// TTS Tool — text-to-speech via backend adapter.
|
|
3
|
-
// Category: media
|
|
4
|
-
// ============================================================
|
|
5
|
-
export const TTS_TOOL_NAME = "tts";
|
|
6
|
-
export const TTS_TOOL_SCHEMA = {
|
|
7
|
-
type: "object",
|
|
8
|
-
properties: {
|
|
9
|
-
text: {
|
|
10
|
-
type: "string",
|
|
11
|
-
description: "Text to convert to speech.",
|
|
12
|
-
},
|
|
13
|
-
channel: {
|
|
14
|
-
type: "string",
|
|
15
|
-
description: "Optional channel id to pick output format (e.g. telegram).",
|
|
16
|
-
},
|
|
17
|
-
},
|
|
18
|
-
required: ["text"],
|
|
19
|
-
};
|
|
20
|
-
export function createTtsTool(deps) {
|
|
21
|
-
return {
|
|
22
|
-
name: TTS_TOOL_NAME,
|
|
23
|
-
label: "TTS",
|
|
24
|
-
description: "Convert text to speech (TTS) — read text aloud as spoken audio. " +
|
|
25
|
-
"Use for narration, voice messages, or any spoken-word output. " +
|
|
26
|
-
"DO NOT use for music, songs, or melodies — use music_generate instead.",
|
|
27
|
-
parameters: TTS_TOOL_SCHEMA,
|
|
28
|
-
execute: async (_toolCallId, params) => {
|
|
29
|
-
const result = await deps.textToSpeech({
|
|
30
|
-
text: params.text,
|
|
31
|
-
channel: params.channel,
|
|
32
|
-
});
|
|
33
|
-
return {
|
|
34
|
-
content: [{ type: "text", text: "已成功生成语音。" }],
|
|
35
|
-
details: {
|
|
36
|
-
type: "tts",
|
|
37
|
-
audioPath: result.audioPath,
|
|
38
|
-
provider: result.provider,
|
|
39
|
-
voiceCompatible: result.voiceCompatible,
|
|
40
|
-
mediaUrls: result.mediaUrls,
|
|
41
|
-
},
|
|
42
|
-
};
|
|
43
|
-
},
|
|
44
|
-
};
|
|
45
|
-
}
|
|
46
|
-
//# sourceMappingURL=tts-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tts-tool.js","sourceRoot":"","sources":["../../../src/skills/tools/tts-tool.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,iDAAiD;AACjD,kBAAkB;AAClB,+DAA+D;AAI/D,MAAM,CAAC,MAAM,aAAa,GAAG,KAAc,CAAC;AAO5C,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,QAAiB;IACvB,UAAU,EAAE;QACV,IAAI,EAAE;YACJ,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,4BAA4B;SAC1C;QACD,OAAO,EAAE;YACP,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,4DAA4D;SAC1E;KACF;IACD,QAAQ,EAAE,CAAC,MAAM,CAAU;CACnB,CAAC;AAqBX,MAAM,UAAU,aAAa,CAC3B,IAAiB;IAEjB,OAAO;QACL,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,KAAK;QACZ,WAAW,EACT,kEAAkE;YAClE,gEAAgE;YAChE,wEAAwE;QAC1E,UAAU,EAAE,eAAe;QAE3B,OAAO,EAAE,KAAK,EAAE,WAAmB,EAAE,MAAqB,EAA+B,EAAE;YACzF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC;gBACrC,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,OAAO,EAAE,MAAM,CAAC,OAAO;aACxB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;gBAC7C,OAAO,EAAE;oBACP,IAAI,EAAE,KAAK;oBACX,SAAS,EAAE,MAAM,CAAC,SAAS;oBAC3B,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,eAAe,EAAE,MAAM,CAAC,eAAe;oBACvC,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"video-edit-tool.d.ts","sourceRoot":"","sources":["../../../src/skills/tools/video-edit-tool.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AAE5E,eAAO,MAAM,oBAAoB,EAAG,YAAqB,CAAC;AAE1D,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCzB,CAAC;AAEX,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,2DAA2D;AAC3D,MAAM,WAAW,iBAAiB;IAChC;;;OAGG;IACH,SAAS,CAAC,MAAM,EAAE;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,YAAY,EAAE,MAAM,EAAE,CAAC;QACvB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;QAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,CAAC,EAAE,MAAM,CAAC;KACrB,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAC9B;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,iBAAiB,GACtB,YAAY,CAAC,mBAAmB,CAAC,CAqCnC"}
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
// ============================================================
|
|
2
|
-
// Video Edit Tool — edit existing videos via backend adapter.
|
|
3
|
-
// Category: media
|
|
4
|
-
// ============================================================
|
|
5
|
-
export const VIDEO_EDIT_TOOL_NAME = "video_edit";
|
|
6
|
-
export const VIDEO_EDIT_TOOL_SCHEMA = {
|
|
7
|
-
type: "object",
|
|
8
|
-
properties: {
|
|
9
|
-
prompt: {
|
|
10
|
-
type: "string",
|
|
11
|
-
description: "Edit instruction. Reference videos as 视频1, 视频2, 视频3. " +
|
|
12
|
-
"Reference images as 图片1, 图片2. " +
|
|
13
|
-
"Operations: add/remove/modify elements, extend, track fill.",
|
|
14
|
-
},
|
|
15
|
-
source_videos: {
|
|
16
|
-
type: "array",
|
|
17
|
-
items: { type: "string" },
|
|
18
|
-
minItems: 1,
|
|
19
|
-
maxItems: 3,
|
|
20
|
-
description: "Video(s) to edit (1-3 URLs). Order: [0]=视频1, [1]=视频2, [2]=视频3.",
|
|
21
|
-
},
|
|
22
|
-
reference_images: {
|
|
23
|
-
type: "array",
|
|
24
|
-
items: { type: "string" },
|
|
25
|
-
description: "Optional reference images for element replacement (up to 9).",
|
|
26
|
-
},
|
|
27
|
-
duration: {
|
|
28
|
-
type: "number",
|
|
29
|
-
description: "Output duration in seconds (4-15s). Default: same as source.",
|
|
30
|
-
},
|
|
31
|
-
aspect_ratio: {
|
|
32
|
-
type: "string",
|
|
33
|
-
description: "Output aspect ratio: 16:9, 9:16, 1:1, 4:3, 3:4, 21:9. Default: same as source.",
|
|
34
|
-
},
|
|
35
|
-
resolution: {
|
|
36
|
-
type: "string",
|
|
37
|
-
description: "Output resolution: '480p' or '720p'. Default: '720p'.",
|
|
38
|
-
},
|
|
39
|
-
},
|
|
40
|
-
required: ["prompt", "source_videos"],
|
|
41
|
-
};
|
|
42
|
-
export function createVideoEditTool(deps) {
|
|
43
|
-
return {
|
|
44
|
-
name: VIDEO_EDIT_TOOL_NAME,
|
|
45
|
-
label: "Video Edit",
|
|
46
|
-
description: "Edit existing videos: add/remove/modify elements, extend, or bridge clips. " +
|
|
47
|
-
"Requires source_videos. Max 3 source videos, max 720p. " +
|
|
48
|
-
"For generating NEW videos from scratch, use video_generate instead.",
|
|
49
|
-
parameters: VIDEO_EDIT_TOOL_SCHEMA,
|
|
50
|
-
execute: async (_toolCallId, params) => {
|
|
51
|
-
if (!params.source_videos?.length) {
|
|
52
|
-
return { content: [{ type: "text", text: "Error: source_videos is required." }] };
|
|
53
|
-
}
|
|
54
|
-
const result = await deps.editVideo({
|
|
55
|
-
prompt: params.prompt,
|
|
56
|
-
sourceVideos: params.source_videos,
|
|
57
|
-
referenceImages: params.reference_images,
|
|
58
|
-
duration: params.duration,
|
|
59
|
-
aspectRatio: params.aspect_ratio,
|
|
60
|
-
resolution: params.resolution,
|
|
61
|
-
});
|
|
62
|
-
const text = `Video edited successfully${result.model ? ` (model: ${result.model})` : ""}`;
|
|
63
|
-
return {
|
|
64
|
-
content: [{ type: "text", text }],
|
|
65
|
-
details: {
|
|
66
|
-
type: "video_edit",
|
|
67
|
-
model: result.model,
|
|
68
|
-
durationMs: result.durationMs,
|
|
69
|
-
mediaUrls: result.mediaUrls,
|
|
70
|
-
},
|
|
71
|
-
};
|
|
72
|
-
},
|
|
73
|
-
};
|
|
74
|
-
}
|
|
75
|
-
//# sourceMappingURL=video-edit-tool.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"video-edit-tool.js","sourceRoot":"","sources":["../../../src/skills/tools/video-edit-tool.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,8DAA8D;AAC9D,kBAAkB;AAClB,+DAA+D;AAI/D,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAqB,CAAC;AAW1D,MAAM,CAAC,MAAM,sBAAsB,GAAG;IACpC,IAAI,EAAE,QAAiB;IACvB,UAAU,EAAE;QACV,MAAM,EAAE;YACN,IAAI,EAAE,QAAiB;YACvB,WAAW,EACT,uDAAuD;gBACvD,gCAAgC;gBAChC,6DAA6D;SAChE;QACD,aAAa,EAAE;YACb,IAAI,EAAE,OAAgB;YACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE;YAClC,QAAQ,EAAE,CAAC;YACX,QAAQ,EAAE,CAAC;YACX,WAAW,EAAE,gEAAgE;SAC9E;QACD,gBAAgB,EAAE;YAChB,IAAI,EAAE,OAAgB;YACtB,KAAK,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE;YAClC,WAAW,EAAE,8DAA8D;SAC5E;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,8DAA8D;SAC5E;QACD,YAAY,EAAE;YACZ,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,gFAAgF;SAC9F;QACD,UAAU,EAAE;YACV,IAAI,EAAE,QAAiB;YACvB,WAAW,EAAE,uDAAuD;SACrE;KACF;IACD,QAAQ,EAAE,CAAC,QAAQ,EAAE,eAAe,CAAU;CACtC,CAAC;AAwBX,MAAM,UAAU,mBAAmB,CACjC,IAAuB;IAEvB,OAAO;QACL,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,YAAY;QACnB,WAAW,EACT,6EAA6E;YAC7E,yDAAyD;YACzD,qEAAqE;QACvE,UAAU,EAAE,sBAAsB;QAElC,OAAO,EAAE,KAAK,EAAE,WAAmB,EAAE,MAA2B,EAA+B,EAAE;YAC/F,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,MAAM,EAAE,CAAC;gBAClC,OAAO,EAAE,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,mCAAmC,EAAE,CAAC,EAAE,CAAC;YACpF,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC;gBAClC,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,YAAY,EAAE,MAAM,CAAC,aAAa;gBAClC,eAAe,EAAE,MAAM,CAAC,gBAAgB;gBACxC,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,WAAW,EAAE,MAAM,CAAC,YAAY;gBAChC,UAAU,EAAE,MAAM,CAAC,UAAU;aAC9B,CAAC,CAAC;YAEH,MAAM,IAAI,GAAG,4BAA4B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,MAAM,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAE3F,OAAO;gBACL,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;gBACjC,OAAO,EAAE;oBACP,IAAI,EAAE,YAAY;oBAClB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,SAAS,EAAE,MAAM,CAAC,SAAS;iBAC5B;aACF,CAAC;QACJ,CAAC;KACF,CAAC;AACJ,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"video-generate-tool.d.ts","sourceRoot":"","sources":["../../../src/skills/tools/video-generate-tool.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAsB,MAAM,qBAAqB,CAAC;AAE5E,eAAO,MAAM,wBAAwB,EAAG,gBAAyB,CAAC;AAElE,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,eAAO,MAAM,0BAA0B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAgC7B,CAAC;AAEX,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,8DAA8D;AAC9D,MAAM,WAAW,qBAAqB;IACpC;;;;OAIG;IACH,aAAa,CAAC,MAAM,EAAE;QACpB,MAAM,EAAE,MAAM,CAAC;QACf,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAClC;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,qBAAqB,GAC1B,YAAY,CAAC,uBAAuB,CAAC,CAkCvC"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
// ============================================================
|
|
2
|
-
// Video Generate Tool — generate video clips via backend.
|
|
3
|
-
// Category: media
|
|
4
|
-
// ============================================================
|
|
5
|
-
export const VIDEO_GENERATE_TOOL_NAME = "video_generate";
|
|
6
|
-
export const VIDEO_GENERATE_TOOL_SCHEMA = {
|
|
7
|
-
type: "object",
|
|
8
|
-
properties: {
|
|
9
|
-
prompt: {
|
|
10
|
-
type: "string",
|
|
11
|
-
description: "Video generation prompt. MUST be in English. Include scene, movement, camera motion, lighting, style.",
|
|
12
|
-
},
|
|
13
|
-
purpose: {
|
|
14
|
-
type: "string",
|
|
15
|
-
description: "Intended use: 'social-media', 'short-video', 'presentation', etc.",
|
|
16
|
-
},
|
|
17
|
-
style: {
|
|
18
|
-
type: "string",
|
|
19
|
-
description: "Visual style: 'cinematic', 'anime', 'watercolor', etc.",
|
|
20
|
-
},
|
|
21
|
-
image_url: {
|
|
22
|
-
type: "string",
|
|
23
|
-
description: "Reference image for image-to-video. Preview image from storyboard Step 3, or user-uploaded image.",
|
|
24
|
-
},
|
|
25
|
-
aspect_ratio: {
|
|
26
|
-
type: "string",
|
|
27
|
-
description: "Video aspect ratio: '9:16' (vertical), '16:9' (horizontal), '1:1' (square). Default: '16:9'.",
|
|
28
|
-
},
|
|
29
|
-
duration: {
|
|
30
|
-
type: "number",
|
|
31
|
-
description: "Video duration in seconds (3-10s single-shot, >10s requires multi-shot workflow). Must be confirmed by user.",
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
required: ["prompt"],
|
|
35
|
-
};
|
|
36
|
-
export function createVideoGenerateTool(deps) {
|
|
37
|
-
return {
|
|
38
|
-
name: VIDEO_GENERATE_TOOL_NAME,
|
|
39
|
-
label: "Video Generate",
|
|
40
|
-
description: "Generate a short video clip from a text prompt (and optional reference image). " +
|
|
41
|
-
"Prompt MUST be in English. Include scene, movement, camera motion, lighting details. " +
|
|
42
|
-
"Single-shot: 3–10s. For longer videos (>10s), use multi-shot storyboard workflow.",
|
|
43
|
-
parameters: VIDEO_GENERATE_TOOL_SCHEMA,
|
|
44
|
-
execute: async (_toolCallId, params) => {
|
|
45
|
-
const result = await deps.generateVideo({
|
|
46
|
-
prompt: params.prompt,
|
|
47
|
-
purpose: params.purpose,
|
|
48
|
-
style: params.style,
|
|
49
|
-
imageUrl: params.image_url,
|
|
50
|
-
aspectRatio: params.aspect_ratio,
|
|
51
|
-
duration: params.duration,
|
|
52
|
-
});
|
|
53
|
-
const count = result.mediaUrls.length;
|
|
54
|
-
const text = `Generated ${count} video${count > 1 ? "s" : ""}${result.model ? ` (model: ${result.model})` : ""}`;
|
|
55
|
-
return {
|
|
56
|
-
content: [{ type: "text", text }],
|
|
57
|
-
details: {
|
|
58
|
-
type: "video_generate",
|
|
59
|
-
model: result.model,
|
|
60
|
-
durationMs: result.durationMs,
|
|
61
|
-
mediaUrls: result.mediaUrls,
|
|
62
|
-
},
|
|
63
|
-
};
|
|
64
|
-
},
|
|
65
|
-
};
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=video-generate-tool.js.map
|