@agntk/core 0.1.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 +227 -0
- package/dist/advanced/index.d.ts +35 -0
- package/dist/advanced/index.d.ts.map +1 -0
- package/dist/advanced/index.js +52 -0
- package/dist/advanced/index.js.map +1 -0
- package/dist/agent.d.ts +46 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +381 -0
- package/dist/agent.js.map +1 -0
- package/dist/config/defaults.d.ts +10 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +34 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/index.d.ts +7 -0
- package/dist/config/index.d.ts.map +1 -0
- package/dist/config/index.js +11 -0
- package/dist/config/index.js.map +1 -0
- package/dist/config/loader.d.ts +54 -0
- package/dist/config/loader.d.ts.map +1 -0
- package/dist/config/loader.js +222 -0
- package/dist/config/loader.js.map +1 -0
- package/dist/config/schema.d.ts +912 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/config/schema.js +119 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/constants.d.ts +17 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +23 -0
- package/dist/constants.js.map +1 -0
- package/dist/evals/assertions.d.ts +54 -0
- package/dist/evals/assertions.d.ts.map +1 -0
- package/dist/evals/assertions.js +200 -0
- package/dist/evals/assertions.js.map +1 -0
- package/dist/evals/index.d.ts +9 -0
- package/dist/evals/index.d.ts.map +1 -0
- package/dist/evals/index.js +8 -0
- package/dist/evals/index.js.map +1 -0
- package/dist/evals/runner.d.ts +34 -0
- package/dist/evals/runner.d.ts.map +1 -0
- package/dist/evals/runner.js +186 -0
- package/dist/evals/runner.js.map +1 -0
- package/dist/evals/types.d.ts +68 -0
- package/dist/evals/types.d.ts.map +1 -0
- package/dist/evals/types.js +5 -0
- package/dist/evals/types.js.map +1 -0
- package/dist/guardrails/built-ins.d.ts +48 -0
- package/dist/guardrails/built-ins.d.ts.map +1 -0
- package/dist/guardrails/built-ins.js +149 -0
- package/dist/guardrails/built-ins.js.map +1 -0
- package/dist/guardrails/index.d.ts +8 -0
- package/dist/guardrails/index.d.ts.map +1 -0
- package/dist/guardrails/index.js +7 -0
- package/dist/guardrails/index.js.map +1 -0
- package/dist/guardrails/runner.d.ts +49 -0
- package/dist/guardrails/runner.d.ts.map +1 -0
- package/dist/guardrails/runner.js +148 -0
- package/dist/guardrails/runner.js.map +1 -0
- package/dist/guardrails/types.d.ts +63 -0
- package/dist/guardrails/types.d.ts.map +1 -0
- package/dist/guardrails/types.js +22 -0
- package/dist/guardrails/types.js.map +1 -0
- package/dist/index.d.ts +31 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +35 -0
- package/dist/index.js.map +1 -0
- package/dist/memory/engine.d.ts +130 -0
- package/dist/memory/engine.d.ts.map +1 -0
- package/dist/memory/engine.js +227 -0
- package/dist/memory/engine.js.map +1 -0
- package/dist/memory/extraction.d.ts +24 -0
- package/dist/memory/extraction.d.ts.map +1 -0
- package/dist/memory/extraction.js +130 -0
- package/dist/memory/extraction.js.map +1 -0
- package/dist/memory/loader.d.ts +20 -0
- package/dist/memory/loader.d.ts.map +1 -0
- package/dist/memory/loader.js +73 -0
- package/dist/memory/loader.js.map +1 -0
- package/dist/memory/store.d.ts +42 -0
- package/dist/memory/store.d.ts.map +1 -0
- package/dist/memory/store.js +120 -0
- package/dist/memory/store.js.map +1 -0
- package/dist/memory/tools.d.ts +39 -0
- package/dist/memory/tools.d.ts.map +1 -0
- package/dist/memory/tools.js +225 -0
- package/dist/memory/tools.js.map +1 -0
- package/dist/memory/types.d.ts +46 -0
- package/dist/memory/types.d.ts.map +1 -0
- package/dist/memory/types.js +8 -0
- package/dist/memory/types.js.map +1 -0
- package/dist/memory/vectra-store.d.ts +31 -0
- package/dist/memory/vectra-store.d.ts.map +1 -0
- package/dist/memory/vectra-store.js +122 -0
- package/dist/memory/vectra-store.js.map +1 -0
- package/dist/models.d.ts +37 -0
- package/dist/models.d.ts.map +1 -0
- package/dist/models.js +131 -0
- package/dist/models.js.map +1 -0
- package/dist/observability/index.d.ts +6 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +5 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/langfuse.d.ts +47 -0
- package/dist/observability/langfuse.d.ts.map +1 -0
- package/dist/observability/langfuse.js +112 -0
- package/dist/observability/langfuse.js.map +1 -0
- package/dist/observability/types.d.ts +37 -0
- package/dist/observability/types.d.ts.map +1 -0
- package/dist/observability/types.js +5 -0
- package/dist/observability/types.js.map +1 -0
- package/dist/pool/index.d.ts +7 -0
- package/dist/pool/index.d.ts.map +1 -0
- package/dist/pool/index.js +6 -0
- package/dist/pool/index.js.map +1 -0
- package/dist/pool/specialist-pool.d.ts +59 -0
- package/dist/pool/specialist-pool.d.ts.map +1 -0
- package/dist/pool/specialist-pool.js +224 -0
- package/dist/pool/specialist-pool.js.map +1 -0
- package/dist/pool/tools.d.ts +63 -0
- package/dist/pool/tools.d.ts.map +1 -0
- package/dist/pool/tools.js +83 -0
- package/dist/pool/tools.js.map +1 -0
- package/dist/pool/types.d.ts +79 -0
- package/dist/pool/types.d.ts.map +1 -0
- package/dist/pool/types.js +5 -0
- package/dist/pool/types.js.map +1 -0
- package/dist/presets/index.d.ts +5 -0
- package/dist/presets/index.d.ts.map +1 -0
- package/dist/presets/index.js +5 -0
- package/dist/presets/index.js.map +1 -0
- package/dist/presets/role-registry.d.ts +41 -0
- package/dist/presets/role-registry.d.ts.map +1 -0
- package/dist/presets/role-registry.js +213 -0
- package/dist/presets/role-registry.js.map +1 -0
- package/dist/presets/roles.d.ts +105 -0
- package/dist/presets/roles.d.ts.map +1 -0
- package/dist/presets/roles.js +207 -0
- package/dist/presets/roles.js.map +1 -0
- package/dist/presets/sub-agent-configs.d.ts +19 -0
- package/dist/presets/sub-agent-configs.d.ts.map +1 -0
- package/dist/presets/sub-agent-configs.js +71 -0
- package/dist/presets/sub-agent-configs.js.map +1 -0
- package/dist/presets/tool-preset-registry.d.ts +34 -0
- package/dist/presets/tool-preset-registry.d.ts.map +1 -0
- package/dist/presets/tool-preset-registry.js +107 -0
- package/dist/presets/tool-preset-registry.js.map +1 -0
- package/dist/presets/tools.d.ts +278 -0
- package/dist/presets/tools.d.ts.map +1 -0
- package/dist/presets/tools.js +108 -0
- package/dist/presets/tools.js.map +1 -0
- package/dist/prompts/context.d.ts +47 -0
- package/dist/prompts/context.d.ts.map +1 -0
- package/dist/prompts/context.js +187 -0
- package/dist/prompts/context.js.map +1 -0
- package/dist/prompts/template.d.ts +17 -0
- package/dist/prompts/template.d.ts.map +1 -0
- package/dist/prompts/template.js +32 -0
- package/dist/prompts/template.js.map +1 -0
- package/dist/prompts/templates.d.ts +11 -0
- package/dist/prompts/templates.d.ts.map +1 -0
- package/dist/prompts/templates.js +115 -0
- package/dist/prompts/templates.js.map +1 -0
- package/dist/reflection.d.ts +48 -0
- package/dist/reflection.d.ts.map +1 -0
- package/dist/reflection.js +91 -0
- package/dist/reflection.js.map +1 -0
- package/dist/skills/index.d.ts +6 -0
- package/dist/skills/index.d.ts.map +1 -0
- package/dist/skills/index.js +5 -0
- package/dist/skills/index.js.map +1 -0
- package/dist/skills/loader.d.ts +84 -0
- package/dist/skills/loader.d.ts.map +1 -0
- package/dist/skills/loader.js +400 -0
- package/dist/skills/loader.js.map +1 -0
- package/dist/skills/types.d.ts +66 -0
- package/dist/skills/types.d.ts.map +1 -0
- package/dist/skills/types.js +6 -0
- package/dist/skills/types.js.map +1 -0
- package/dist/streaming/data-parts.d.ts +163 -0
- package/dist/streaming/data-parts.d.ts.map +1 -0
- package/dist/streaming/data-parts.js +14 -0
- package/dist/streaming/data-parts.js.map +1 -0
- package/dist/streaming/index.d.ts +8 -0
- package/dist/streaming/index.d.ts.map +1 -0
- package/dist/streaming/index.js +10 -0
- package/dist/streaming/index.js.map +1 -0
- package/dist/streaming/transient.d.ts +136 -0
- package/dist/streaming/transient.d.ts.map +1 -0
- package/dist/streaming/transient.js +201 -0
- package/dist/streaming/transient.js.map +1 -0
- package/dist/tools/approval.d.ts +67 -0
- package/dist/tools/approval.d.ts.map +1 -0
- package/dist/tools/approval.js +113 -0
- package/dist/tools/approval.js.map +1 -0
- package/dist/tools/ast-grep/cli.d.ts +16 -0
- package/dist/tools/ast-grep/cli.d.ts.map +1 -0
- package/dist/tools/ast-grep/cli.js +198 -0
- package/dist/tools/ast-grep/cli.js.map +1 -0
- package/dist/tools/ast-grep/constants.d.ts +24 -0
- package/dist/tools/ast-grep/constants.d.ts.map +1 -0
- package/dist/tools/ast-grep/constants.js +247 -0
- package/dist/tools/ast-grep/constants.js.map +1 -0
- package/dist/tools/ast-grep/downloader.d.ts +6 -0
- package/dist/tools/ast-grep/downloader.d.ts.map +1 -0
- package/dist/tools/ast-grep/downloader.js +137 -0
- package/dist/tools/ast-grep/downloader.js.map +1 -0
- package/dist/tools/ast-grep/index.d.ts +7 -0
- package/dist/tools/ast-grep/index.d.ts.map +1 -0
- package/dist/tools/ast-grep/index.js +6 -0
- package/dist/tools/ast-grep/index.js.map +1 -0
- package/dist/tools/ast-grep/tools.d.ts +33 -0
- package/dist/tools/ast-grep/tools.d.ts.map +1 -0
- package/dist/tools/ast-grep/tools.js +140 -0
- package/dist/tools/ast-grep/tools.js.map +1 -0
- package/dist/tools/ast-grep/types.d.ts +68 -0
- package/dist/tools/ast-grep/types.d.ts.map +1 -0
- package/dist/tools/ast-grep/types.js +2 -0
- package/dist/tools/ast-grep/types.js.map +1 -0
- package/dist/tools/ast-grep/utils.d.ts +4 -0
- package/dist/tools/ast-grep/utils.d.ts.map +1 -0
- package/dist/tools/ast-grep/utils.js +55 -0
- package/dist/tools/ast-grep/utils.js.map +1 -0
- package/dist/tools/browser/index.d.ts +6 -0
- package/dist/tools/browser/index.d.ts.map +1 -0
- package/dist/tools/browser/index.js +5 -0
- package/dist/tools/browser/index.js.map +1 -0
- package/dist/tools/browser/stream.d.ts +112 -0
- package/dist/tools/browser/stream.d.ts.map +1 -0
- package/dist/tools/browser/stream.js +228 -0
- package/dist/tools/browser/stream.js.map +1 -0
- package/dist/tools/browser/tool.d.ts +144 -0
- package/dist/tools/browser/tool.d.ts.map +1 -0
- package/dist/tools/browser/tool.js +214 -0
- package/dist/tools/browser/tool.js.map +1 -0
- package/dist/tools/browser/types.d.ts +216 -0
- package/dist/tools/browser/types.d.ts.map +1 -0
- package/dist/tools/browser/types.js +146 -0
- package/dist/tools/browser/types.js.map +1 -0
- package/dist/tools/deep-reasoning/constants.d.ts +11 -0
- package/dist/tools/deep-reasoning/constants.d.ts.map +1 -0
- package/dist/tools/deep-reasoning/constants.js +35 -0
- package/dist/tools/deep-reasoning/constants.js.map +1 -0
- package/dist/tools/deep-reasoning/engine.d.ts +20 -0
- package/dist/tools/deep-reasoning/engine.d.ts.map +1 -0
- package/dist/tools/deep-reasoning/engine.js +77 -0
- package/dist/tools/deep-reasoning/engine.js.map +1 -0
- package/dist/tools/deep-reasoning/index.d.ts +5 -0
- package/dist/tools/deep-reasoning/index.d.ts.map +1 -0
- package/dist/tools/deep-reasoning/index.js +7 -0
- package/dist/tools/deep-reasoning/index.js.map +1 -0
- package/dist/tools/deep-reasoning/tools.d.ts +12 -0
- package/dist/tools/deep-reasoning/tools.d.ts.map +1 -0
- package/dist/tools/deep-reasoning/tools.js +23 -0
- package/dist/tools/deep-reasoning/tools.js.map +1 -0
- package/dist/tools/deep-reasoning/types.d.ts +66 -0
- package/dist/tools/deep-reasoning/types.d.ts.map +1 -0
- package/dist/tools/deep-reasoning/types.js +13 -0
- package/dist/tools/deep-reasoning/types.js.map +1 -0
- package/dist/tools/factory.d.ts +109 -0
- package/dist/tools/factory.d.ts.map +1 -0
- package/dist/tools/factory.js +166 -0
- package/dist/tools/factory.js.map +1 -0
- package/dist/tools/file/index.d.ts +8 -0
- package/dist/tools/file/index.d.ts.map +1 -0
- package/dist/tools/file/index.js +8 -0
- package/dist/tools/file/index.js.map +1 -0
- package/dist/tools/file/tools.d.ts +45 -0
- package/dist/tools/file/tools.d.ts.map +1 -0
- package/dist/tools/file/tools.js +206 -0
- package/dist/tools/file/tools.js.map +1 -0
- package/dist/tools/glob/cli.d.ts +8 -0
- package/dist/tools/glob/cli.d.ts.map +1 -0
- package/dist/tools/glob/cli.js +168 -0
- package/dist/tools/glob/cli.js.map +1 -0
- package/dist/tools/glob/constants.d.ts +7 -0
- package/dist/tools/glob/constants.d.ts.map +1 -0
- package/dist/tools/glob/constants.js +17 -0
- package/dist/tools/glob/constants.js.map +1 -0
- package/dist/tools/glob/index.d.ts +6 -0
- package/dist/tools/glob/index.d.ts.map +1 -0
- package/dist/tools/glob/index.js +5 -0
- package/dist/tools/glob/index.js.map +1 -0
- package/dist/tools/glob/tools.d.ts +15 -0
- package/dist/tools/glob/tools.d.ts.map +1 -0
- package/dist/tools/glob/tools.js +74 -0
- package/dist/tools/glob/tools.js.map +1 -0
- package/dist/tools/glob/types.d.ts +20 -0
- package/dist/tools/glob/types.d.ts.map +1 -0
- package/dist/tools/glob/types.js +2 -0
- package/dist/tools/glob/types.js.map +1 -0
- package/dist/tools/glob/utils.d.ts +3 -0
- package/dist/tools/glob/utils.d.ts.map +1 -0
- package/dist/tools/glob/utils.js +20 -0
- package/dist/tools/glob/utils.js.map +1 -0
- package/dist/tools/grep/cli.d.ts +4 -0
- package/dist/tools/grep/cli.d.ts.map +1 -0
- package/dist/tools/grep/cli.js +224 -0
- package/dist/tools/grep/cli.js.map +1 -0
- package/dist/tools/grep/constants.d.ts +19 -0
- package/dist/tools/grep/constants.d.ts.map +1 -0
- package/dist/tools/grep/constants.js +115 -0
- package/dist/tools/grep/constants.js.map +1 -0
- package/dist/tools/grep/downloader.d.ts +3 -0
- package/dist/tools/grep/downloader.d.ts.map +1 -0
- package/dist/tools/grep/downloader.js +164 -0
- package/dist/tools/grep/downloader.js.map +1 -0
- package/dist/tools/grep/index.d.ts +7 -0
- package/dist/tools/grep/index.d.ts.map +1 -0
- package/dist/tools/grep/index.js +6 -0
- package/dist/tools/grep/index.js.map +1 -0
- package/dist/tools/grep/tools.d.ts +19 -0
- package/dist/tools/grep/tools.d.ts.map +1 -0
- package/dist/tools/grep/tools.js +82 -0
- package/dist/tools/grep/tools.js.map +1 -0
- package/dist/tools/grep/types.d.ts +37 -0
- package/dist/tools/grep/types.d.ts.map +1 -0
- package/dist/tools/grep/types.js +2 -0
- package/dist/tools/grep/types.js.map +1 -0
- package/dist/tools/grep/utils.d.ts +4 -0
- package/dist/tools/grep/utils.d.ts.map +1 -0
- package/dist/tools/grep/utils.js +41 -0
- package/dist/tools/grep/utils.js.map +1 -0
- package/dist/tools/index.d.ts +21 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +33 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/model-retry.d.ts +54 -0
- package/dist/tools/model-retry.d.ts.map +1 -0
- package/dist/tools/model-retry.js +110 -0
- package/dist/tools/model-retry.js.map +1 -0
- package/dist/tools/plan/constants.d.ts +18 -0
- package/dist/tools/plan/constants.d.ts.map +1 -0
- package/dist/tools/plan/constants.js +13 -0
- package/dist/tools/plan/constants.js.map +1 -0
- package/dist/tools/plan/index.d.ts +5 -0
- package/dist/tools/plan/index.d.ts.map +1 -0
- package/dist/tools/plan/index.js +7 -0
- package/dist/tools/plan/index.js.map +1 -0
- package/dist/tools/plan/tools.d.ts +16 -0
- package/dist/tools/plan/tools.d.ts.map +1 -0
- package/dist/tools/plan/tools.js +217 -0
- package/dist/tools/plan/tools.js.map +1 -0
- package/dist/tools/plan/types.d.ts +75 -0
- package/dist/tools/plan/types.d.ts.map +1 -0
- package/dist/tools/plan/types.js +16 -0
- package/dist/tools/plan/types.js.map +1 -0
- package/dist/tools/plan/utils.d.ts +9 -0
- package/dist/tools/plan/utils.d.ts.map +1 -0
- package/dist/tools/plan/utils.js +27 -0
- package/dist/tools/plan/utils.js.map +1 -0
- package/dist/tools/progress/index.d.ts +53 -0
- package/dist/tools/progress/index.d.ts.map +1 -0
- package/dist/tools/progress/index.js +144 -0
- package/dist/tools/progress/index.js.map +1 -0
- package/dist/tools/provider.d.ts +97 -0
- package/dist/tools/provider.d.ts.map +1 -0
- package/dist/tools/provider.js +178 -0
- package/dist/tools/provider.js.map +1 -0
- package/dist/tools/search-skills.d.ts +44 -0
- package/dist/tools/search-skills.d.ts.map +1 -0
- package/dist/tools/search-skills.js +134 -0
- package/dist/tools/search-skills.js.map +1 -0
- package/dist/tools/shell/background.d.ts +38 -0
- package/dist/tools/shell/background.d.ts.map +1 -0
- package/dist/tools/shell/background.js +229 -0
- package/dist/tools/shell/background.js.map +1 -0
- package/dist/tools/shell/constants.d.ts +10 -0
- package/dist/tools/shell/constants.d.ts.map +1 -0
- package/dist/tools/shell/constants.js +55 -0
- package/dist/tools/shell/constants.js.map +1 -0
- package/dist/tools/shell/index.d.ts +7 -0
- package/dist/tools/shell/index.d.ts.map +1 -0
- package/dist/tools/shell/index.js +5 -0
- package/dist/tools/shell/index.js.map +1 -0
- package/dist/tools/shell/tools.d.ts +22 -0
- package/dist/tools/shell/tools.d.ts.map +1 -0
- package/dist/tools/shell/tools.js +70 -0
- package/dist/tools/shell/tools.js.map +1 -0
- package/dist/tools/shell/types.d.ts +30 -0
- package/dist/tools/shell/types.d.ts.map +1 -0
- package/dist/tools/shell/types.js +10 -0
- package/dist/tools/shell/types.js.map +1 -0
- package/dist/tools/shell/utils.d.ts +7 -0
- package/dist/tools/shell/utils.d.ts.map +1 -0
- package/dist/tools/shell/utils.js +26 -0
- package/dist/tools/shell/utils.js.map +1 -0
- package/dist/tools/spawn-agent/index.d.ts +96 -0
- package/dist/tools/spawn-agent/index.d.ts.map +1 -0
- package/dist/tools/spawn-agent/index.js +168 -0
- package/dist/tools/spawn-agent/index.js.map +1 -0
- package/dist/tools/utils/errors.d.ts +21 -0
- package/dist/tools/utils/errors.d.ts.map +1 -0
- package/dist/tools/utils/errors.js +29 -0
- package/dist/tools/utils/errors.js.map +1 -0
- package/dist/tools/utils/shell.d.ts +23 -0
- package/dist/tools/utils/shell.d.ts.map +1 -0
- package/dist/tools/utils/shell.js +99 -0
- package/dist/tools/utils/shell.js.map +1 -0
- package/dist/tools/utils/tool-result.d.ts +6 -0
- package/dist/tools/utils/tool-result.d.ts.map +1 -0
- package/dist/tools/utils/tool-result.js +22 -0
- package/dist/tools/utils/tool-result.js.map +1 -0
- package/dist/types/agent.d.ts +218 -0
- package/dist/types/agent.d.ts.map +1 -0
- package/dist/types/agent.js +6 -0
- package/dist/types/agent.js.map +1 -0
- package/dist/types/index.d.ts +7 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +6 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/lifecycle.d.ts +218 -0
- package/dist/types/lifecycle.d.ts.map +1 -0
- package/dist/types/lifecycle.js +99 -0
- package/dist/types/lifecycle.js.map +1 -0
- package/dist/types/streaming.d.ts +120 -0
- package/dist/types/streaming.d.ts.map +1 -0
- package/dist/types/streaming.js +6 -0
- package/dist/types/streaming.js.map +1 -0
- package/dist/usage-limits.d.ts +63 -0
- package/dist/usage-limits.d.ts.map +1 -0
- package/dist/usage-limits.js +88 -0
- package/dist/usage-limits.js.map +1 -0
- package/dist/utils/logger.d.ts +35 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +149 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/workflow/builders/adapt.d.ts +20 -0
- package/dist/workflow/builders/adapt.d.ts.map +1 -0
- package/dist/workflow/builders/adapt.js +33 -0
- package/dist/workflow/builders/adapt.js.map +1 -0
- package/dist/workflow/builders/index.d.ts +8 -0
- package/dist/workflow/builders/index.d.ts.map +1 -0
- package/dist/workflow/builders/index.js +7 -0
- package/dist/workflow/builders/index.js.map +1 -0
- package/dist/workflow/builders/parallel.d.ts +25 -0
- package/dist/workflow/builders/parallel.d.ts.map +1 -0
- package/dist/workflow/builders/parallel.js +60 -0
- package/dist/workflow/builders/parallel.js.map +1 -0
- package/dist/workflow/builders/pipeline.d.ts +22 -0
- package/dist/workflow/builders/pipeline.d.ts.map +1 -0
- package/dist/workflow/builders/pipeline.js +48 -0
- package/dist/workflow/builders/pipeline.js.map +1 -0
- package/dist/workflow/builders/types.d.ts +54 -0
- package/dist/workflow/builders/types.d.ts.map +1 -0
- package/dist/workflow/builders/types.js +5 -0
- package/dist/workflow/builders/types.js.map +1 -0
- package/dist/workflow/durable-agent.d.ts +128 -0
- package/dist/workflow/durable-agent.d.ts.map +1 -0
- package/dist/workflow/durable-agent.js +323 -0
- package/dist/workflow/durable-agent.js.map +1 -0
- package/dist/workflow/durable-tool.d.ts +103 -0
- package/dist/workflow/durable-tool.d.ts.map +1 -0
- package/dist/workflow/durable-tool.js +173 -0
- package/dist/workflow/durable-tool.js.map +1 -0
- package/dist/workflow/hooks.d.ts +318 -0
- package/dist/workflow/hooks.d.ts.map +1 -0
- package/dist/workflow/hooks.js +629 -0
- package/dist/workflow/hooks.js.map +1 -0
- package/dist/workflow/index.d.ts +17 -0
- package/dist/workflow/index.d.ts.map +1 -0
- package/dist/workflow/index.js +24 -0
- package/dist/workflow/index.js.map +1 -0
- package/dist/workflow/schedulers.d.ts +231 -0
- package/dist/workflow/schedulers.d.ts.map +1 -0
- package/dist/workflow/schedulers.js +250 -0
- package/dist/workflow/schedulers.js.map +1 -0
- package/dist/workflow/team/create-team.d.ts +34 -0
- package/dist/workflow/team/create-team.d.ts.map +1 -0
- package/dist/workflow/team/create-team.js +242 -0
- package/dist/workflow/team/create-team.js.map +1 -0
- package/dist/workflow/team/index.d.ts +9 -0
- package/dist/workflow/team/index.d.ts.map +1 -0
- package/dist/workflow/team/index.js +8 -0
- package/dist/workflow/team/index.js.map +1 -0
- package/dist/workflow/team/machines.d.ts +152 -0
- package/dist/workflow/team/machines.d.ts.map +1 -0
- package/dist/workflow/team/machines.js +197 -0
- package/dist/workflow/team/machines.js.map +1 -0
- package/dist/workflow/team/task-board.d.ts +47 -0
- package/dist/workflow/team/task-board.d.ts.map +1 -0
- package/dist/workflow/team/task-board.js +111 -0
- package/dist/workflow/team/task-board.js.map +1 -0
- package/dist/workflow/team/tools.d.ts +66 -0
- package/dist/workflow/team/tools.d.ts.map +1 -0
- package/dist/workflow/team/tools.js +100 -0
- package/dist/workflow/team/tools.js.map +1 -0
- package/dist/workflow/team/types.d.ts +109 -0
- package/dist/workflow/team/types.d.ts.map +1 -0
- package/dist/workflow/team/types.js +5 -0
- package/dist/workflow/team/types.js.map +1 -0
- package/dist/workflow/templates.d.ts +71 -0
- package/dist/workflow/templates.d.ts.map +1 -0
- package/dist/workflow/templates.js +132 -0
- package/dist/workflow/templates.js.map +1 -0
- package/dist/workflow/utils.d.ts +29 -0
- package/dist/workflow/utils.d.ts.map +1 -0
- package/dist/workflow/utils.js +84 -0
- package/dist/workflow/utils.js.map +1 -0
- package/dist/wrappers/best-of-n.d.ts +69 -0
- package/dist/wrappers/best-of-n.d.ts.map +1 -0
- package/dist/wrappers/best-of-n.js +242 -0
- package/dist/wrappers/best-of-n.js.map +1 -0
- package/package.json +101 -0
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @agntk/core - Tool Provider
|
|
3
|
+
*
|
|
4
|
+
* Central provider for creating and managing tool sets.
|
|
5
|
+
* Adapted from packages/core/src/tools/provider.ts
|
|
6
|
+
*/
|
|
7
|
+
import { type ToolSet } from './factory.js';
|
|
8
|
+
/**
|
|
9
|
+
* Names of core tools that are always available.
|
|
10
|
+
*/
|
|
11
|
+
export declare const CORE_TOOL_NAMES: readonly ["fs", "shell", "web", "memory", "delegate", "task", "plan", "validate", "reasoning"];
|
|
12
|
+
export type CoreToolName = (typeof CORE_TOOL_NAMES)[number];
|
|
13
|
+
export interface ToolProviderConfig {
|
|
14
|
+
/** Workspace root directory */
|
|
15
|
+
workspaceRoot?: string;
|
|
16
|
+
/** Allowed directories for file operations */
|
|
17
|
+
allowedDirectories?: string[];
|
|
18
|
+
/** Enable tool execution instrumentation/logging */
|
|
19
|
+
enableInstrumentation?: boolean;
|
|
20
|
+
/** Enable dynamic tool activation/deactivation */
|
|
21
|
+
enableActivation?: boolean;
|
|
22
|
+
/** Custom tool dependencies */
|
|
23
|
+
customDependencies?: Record<string, unknown>;
|
|
24
|
+
}
|
|
25
|
+
export interface ToolActivationManager {
|
|
26
|
+
/** Currently active tool names */
|
|
27
|
+
activeTools: Set<string>;
|
|
28
|
+
/** All available tool names */
|
|
29
|
+
availableTools: Set<string>;
|
|
30
|
+
/** Activate a tool */
|
|
31
|
+
activate(name: string): boolean;
|
|
32
|
+
/** Deactivate a tool */
|
|
33
|
+
deactivate(name: string): boolean;
|
|
34
|
+
/** Check if a tool is active */
|
|
35
|
+
isActive(name: string): boolean;
|
|
36
|
+
/** Get all active tools */
|
|
37
|
+
getActiveTools(): string[];
|
|
38
|
+
/** Set available tools */
|
|
39
|
+
setAvailableTools(names: string[]): void;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Create a tool activation manager.
|
|
43
|
+
*/
|
|
44
|
+
export declare function createToolActivationManager(): ToolActivationManager;
|
|
45
|
+
export interface ToolRegistryEntry {
|
|
46
|
+
name: string;
|
|
47
|
+
description: string;
|
|
48
|
+
category: string;
|
|
49
|
+
tags: string[];
|
|
50
|
+
}
|
|
51
|
+
export interface ToolRegistry {
|
|
52
|
+
entries: Map<string, ToolRegistryEntry>;
|
|
53
|
+
register(entry: ToolRegistryEntry): void;
|
|
54
|
+
unregister(name: string): boolean;
|
|
55
|
+
get(name: string): ToolRegistryEntry | undefined;
|
|
56
|
+
search(query: string): ToolRegistryEntry[];
|
|
57
|
+
listByCategory(category: string): ToolRegistryEntry[];
|
|
58
|
+
listAll(): ToolRegistryEntry[];
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Create a tool registry for metadata and search.
|
|
62
|
+
*/
|
|
63
|
+
export declare function createToolRegistry(): ToolRegistry;
|
|
64
|
+
export interface ToolProviderResult {
|
|
65
|
+
/** All created tools */
|
|
66
|
+
tools: ToolSet;
|
|
67
|
+
/** Core tool names */
|
|
68
|
+
coreToolNames: readonly string[];
|
|
69
|
+
/** Activation manager instance */
|
|
70
|
+
activationManager: ToolActivationManager;
|
|
71
|
+
/** Registry instance */
|
|
72
|
+
registry: ToolRegistry;
|
|
73
|
+
/** Cleanup function */
|
|
74
|
+
cleanup: () => Promise<void>;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* Wrap tools with instrumentation for logging and metrics.
|
|
78
|
+
*/
|
|
79
|
+
export declare function instrumentTools(tools: ToolSet): ToolSet;
|
|
80
|
+
/**
|
|
81
|
+
* Create all tools with the given configuration.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```typescript
|
|
85
|
+
* const { tools, cleanup } = await createAllTools({
|
|
86
|
+
* workspaceRoot: process.cwd(),
|
|
87
|
+
* enableInstrumentation: true,
|
|
88
|
+
* });
|
|
89
|
+
*
|
|
90
|
+
* // Use tools...
|
|
91
|
+
*
|
|
92
|
+
* await cleanup();
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
export declare function createAllTools(config?: ToolProviderConfig): Promise<ToolProviderResult>;
|
|
96
|
+
export { ToolFactory, type ToolDependencies, type ToolSet } from './factory.js';
|
|
97
|
+
//# sourceMappingURL=provider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../src/tools/provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAsC,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC;AAM7E;;GAEG;AACH,eAAO,MAAM,eAAe,gGAUlB,CAAC;AAEX,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAM5D,MAAM,WAAW,kBAAkB;IACjC,+BAA+B;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,8CAA8C;IAC9C,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,oDAAoD;IACpD,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,kDAAkD;IAClD,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,+BAA+B;IAC/B,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C;AAMD,MAAM,WAAW,qBAAqB;IACpC,kCAAkC;IAClC,WAAW,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACzB,+BAA+B;IAC/B,cAAc,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAE5B,sBAAsB;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,wBAAwB;IACxB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,gCAAgC;IAChC,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAChC,2BAA2B;IAC3B,cAAc,IAAI,MAAM,EAAE,CAAC;IAC3B,0BAA0B;IAC1B,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC;CAC1C;AAED;;GAEG;AACH,wBAAgB,2BAA2B,IAAI,qBAAqB,CAqCnE;AAMD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;CAChB;AAED,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI,CAAC;IACzC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAClC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAAC;IACjD,MAAM,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAAC;IAC3C,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACtD,OAAO,IAAI,iBAAiB,EAAE,CAAC;CAChC;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAsCjD;AAMD,MAAM,WAAW,kBAAkB;IACjC,wBAAwB;IACxB,KAAK,EAAE,OAAO,CAAC;IACf,sBAAsB;IACtB,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;IACjC,kCAAkC;IAClC,iBAAiB,EAAE,qBAAqB,CAAC;IACzC,wBAAwB;IACxB,QAAQ,EAAE,YAAY,CAAC;IACvB,uBAAuB;IACvB,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CA6BvD;AAMD;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,cAAc,CAClC,MAAM,GAAE,kBAAuB,GAC9B,OAAO,CAAC,kBAAkB,CAAC,CA4C7B;AAMD,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,KAAK,OAAO,EAAE,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @agntk/core - Tool Provider
|
|
3
|
+
*
|
|
4
|
+
* Central provider for creating and managing tool sets.
|
|
5
|
+
* Adapted from packages/core/src/tools/provider.ts
|
|
6
|
+
*/
|
|
7
|
+
import { ToolFactory } from './factory.js';
|
|
8
|
+
// ============================================================================
|
|
9
|
+
// Core Tool Names
|
|
10
|
+
// ============================================================================
|
|
11
|
+
/**
|
|
12
|
+
* Names of core tools that are always available.
|
|
13
|
+
*/
|
|
14
|
+
export const CORE_TOOL_NAMES = [
|
|
15
|
+
'fs',
|
|
16
|
+
'shell',
|
|
17
|
+
'web',
|
|
18
|
+
'memory',
|
|
19
|
+
'delegate',
|
|
20
|
+
'task',
|
|
21
|
+
'plan',
|
|
22
|
+
'validate',
|
|
23
|
+
'reasoning',
|
|
24
|
+
];
|
|
25
|
+
/**
|
|
26
|
+
* Create a tool activation manager.
|
|
27
|
+
*/
|
|
28
|
+
export function createToolActivationManager() {
|
|
29
|
+
const activeTools = new Set();
|
|
30
|
+
const availableTools = new Set();
|
|
31
|
+
return {
|
|
32
|
+
activeTools,
|
|
33
|
+
availableTools,
|
|
34
|
+
activate(name) {
|
|
35
|
+
if (!availableTools.has(name)) {
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
activeTools.add(name);
|
|
39
|
+
return true;
|
|
40
|
+
},
|
|
41
|
+
deactivate(name) {
|
|
42
|
+
return activeTools.delete(name);
|
|
43
|
+
},
|
|
44
|
+
isActive(name) {
|
|
45
|
+
return activeTools.has(name);
|
|
46
|
+
},
|
|
47
|
+
getActiveTools() {
|
|
48
|
+
return Array.from(activeTools);
|
|
49
|
+
},
|
|
50
|
+
setAvailableTools(names) {
|
|
51
|
+
availableTools.clear();
|
|
52
|
+
for (const name of names) {
|
|
53
|
+
availableTools.add(name);
|
|
54
|
+
// Activate all by default
|
|
55
|
+
activeTools.add(name);
|
|
56
|
+
}
|
|
57
|
+
},
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Create a tool registry for metadata and search.
|
|
62
|
+
*/
|
|
63
|
+
export function createToolRegistry() {
|
|
64
|
+
const entries = new Map();
|
|
65
|
+
return {
|
|
66
|
+
entries,
|
|
67
|
+
register(entry) {
|
|
68
|
+
entries.set(entry.name, entry);
|
|
69
|
+
},
|
|
70
|
+
unregister(name) {
|
|
71
|
+
return entries.delete(name);
|
|
72
|
+
},
|
|
73
|
+
get(name) {
|
|
74
|
+
return entries.get(name);
|
|
75
|
+
},
|
|
76
|
+
search(query) {
|
|
77
|
+
const lowerQuery = query.toLowerCase();
|
|
78
|
+
return Array.from(entries.values()).filter((entry) => entry.name.toLowerCase().includes(lowerQuery) ||
|
|
79
|
+
entry.description.toLowerCase().includes(lowerQuery) ||
|
|
80
|
+
entry.tags.some((tag) => tag.toLowerCase().includes(lowerQuery)));
|
|
81
|
+
},
|
|
82
|
+
listByCategory(category) {
|
|
83
|
+
return Array.from(entries.values()).filter((entry) => entry.category === category);
|
|
84
|
+
},
|
|
85
|
+
listAll() {
|
|
86
|
+
return Array.from(entries.values());
|
|
87
|
+
},
|
|
88
|
+
};
|
|
89
|
+
}
|
|
90
|
+
// ============================================================================
|
|
91
|
+
// Tool Instrumentation
|
|
92
|
+
// ============================================================================
|
|
93
|
+
/**
|
|
94
|
+
* Wrap tools with instrumentation for logging and metrics.
|
|
95
|
+
*/
|
|
96
|
+
export function instrumentTools(tools) {
|
|
97
|
+
const instrumented = {};
|
|
98
|
+
for (const [name, tool] of Object.entries(tools)) {
|
|
99
|
+
if (!tool.execute) {
|
|
100
|
+
instrumented[name] = tool;
|
|
101
|
+
continue;
|
|
102
|
+
}
|
|
103
|
+
const originalExecute = tool.execute;
|
|
104
|
+
instrumented[name] = {
|
|
105
|
+
...tool,
|
|
106
|
+
execute: async (input, options) => {
|
|
107
|
+
const startTime = Date.now();
|
|
108
|
+
try {
|
|
109
|
+
const result = await originalExecute(input, options);
|
|
110
|
+
const duration = Date.now() - startTime;
|
|
111
|
+
console.debug(`[tool:${name}] completed in ${duration}ms`);
|
|
112
|
+
return result;
|
|
113
|
+
}
|
|
114
|
+
catch (error) {
|
|
115
|
+
const duration = Date.now() - startTime;
|
|
116
|
+
console.error(`[tool:${name}] failed after ${duration}ms`, error);
|
|
117
|
+
throw error;
|
|
118
|
+
}
|
|
119
|
+
},
|
|
120
|
+
};
|
|
121
|
+
}
|
|
122
|
+
return instrumented;
|
|
123
|
+
}
|
|
124
|
+
// ============================================================================
|
|
125
|
+
// Create All Tools
|
|
126
|
+
// ============================================================================
|
|
127
|
+
/**
|
|
128
|
+
* Create all tools with the given configuration.
|
|
129
|
+
*
|
|
130
|
+
* @example
|
|
131
|
+
* ```typescript
|
|
132
|
+
* const { tools, cleanup } = await createAllTools({
|
|
133
|
+
* workspaceRoot: process.cwd(),
|
|
134
|
+
* enableInstrumentation: true,
|
|
135
|
+
* });
|
|
136
|
+
*
|
|
137
|
+
* // Use tools...
|
|
138
|
+
*
|
|
139
|
+
* await cleanup();
|
|
140
|
+
* ```
|
|
141
|
+
*/
|
|
142
|
+
export async function createAllTools(config = {}) {
|
|
143
|
+
const { workspaceRoot = process.cwd(), allowedDirectories = [workspaceRoot], enableInstrumentation = true, enableActivation = false, customDependencies = {}, } = config;
|
|
144
|
+
const deps = {
|
|
145
|
+
workspaceRoot,
|
|
146
|
+
allowedDirectories,
|
|
147
|
+
context: customDependencies,
|
|
148
|
+
};
|
|
149
|
+
const activationManager = createToolActivationManager();
|
|
150
|
+
const registry = createToolRegistry();
|
|
151
|
+
const factory = new ToolFactory();
|
|
152
|
+
// Note: Individual tool creators will be registered by the tools themselves
|
|
153
|
+
// when they are imported. For now, return an empty tool set that will be
|
|
154
|
+
// populated when tools are migrated.
|
|
155
|
+
let tools = factory.createAll(deps);
|
|
156
|
+
// Set available tools in activation manager
|
|
157
|
+
activationManager.setAvailableTools(Object.keys(tools));
|
|
158
|
+
// Apply instrumentation if enabled
|
|
159
|
+
if (enableInstrumentation) {
|
|
160
|
+
tools = instrumentTools(tools);
|
|
161
|
+
}
|
|
162
|
+
const cleanup = async () => {
|
|
163
|
+
// Cleanup logic (close connections, release resources, etc.)
|
|
164
|
+
factory.clear();
|
|
165
|
+
};
|
|
166
|
+
return {
|
|
167
|
+
tools,
|
|
168
|
+
coreToolNames: CORE_TOOL_NAMES,
|
|
169
|
+
activationManager,
|
|
170
|
+
registry,
|
|
171
|
+
cleanup,
|
|
172
|
+
};
|
|
173
|
+
}
|
|
174
|
+
// ============================================================================
|
|
175
|
+
// Exports
|
|
176
|
+
// ============================================================================
|
|
177
|
+
export { ToolFactory } from './factory.js';
|
|
178
|
+
//# sourceMappingURL=provider.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"provider.js","sourceRoot":"","sources":["../../src/tools/provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,WAAW,EAAuC,MAAM,WAAW,CAAC;AAE7E,+EAA+E;AAC/E,kBAAkB;AAClB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI;IACJ,OAAO;IACP,KAAK;IACL,QAAQ;IACR,UAAU;IACV,MAAM;IACN,MAAM;IACN,UAAU;IACV,WAAW;CACH,CAAC;AA2CX;;GAEG;AACH,MAAM,UAAU,2BAA2B;IACzC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,MAAM,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IAEzC,OAAO;QACL,WAAW;QACX,cAAc;QAEd,QAAQ,CAAC,IAAY;YACnB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC9B,OAAO,KAAK,CAAC;YACf,CAAC;YACD,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;QACd,CAAC;QAED,UAAU,CAAC,IAAY;YACrB,OAAO,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAClC,CAAC;QAED,QAAQ,CAAC,IAAY;YACnB,OAAO,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC/B,CAAC;QAED,cAAc;YACZ,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;QACjC,CAAC;QAED,iBAAiB,CAAC,KAAe;YAC/B,cAAc,CAAC,KAAK,EAAE,CAAC;YACvB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,cAAc,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;gBACzB,0BAA0B;gBAC1B,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;KACF,CAAC;AACJ,CAAC;AAuBD;;GAEG;AACH,MAAM,UAAU,kBAAkB;IAChC,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAC;IAErD,OAAO;QACL,OAAO;QAEP,QAAQ,CAAC,KAAwB;YAC/B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;QACjC,CAAC;QAED,UAAU,CAAC,IAAY;YACrB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAC9B,CAAC;QAED,GAAG,CAAC,IAAY;YACd,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC;QAED,MAAM,CAAC,KAAa;YAClB,MAAM,UAAU,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;YACvC,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CACxC,CAAC,KAAK,EAAE,EAAE,CACR,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;gBAC7C,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC;gBACpD,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CACnE,CAAC;QACJ,CAAC;QAED,cAAc,CAAC,QAAgB;YAC7B,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,MAAM,CACxC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,KAAK,QAAQ,CACvC,CAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC;QACtC,CAAC;KACF,CAAC;AACJ,CAAC;AAmBD,+EAA+E;AAC/E,uBAAuB;AACvB,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,KAAc;IAC5C,MAAM,YAAY,GAAY,EAAE,CAAC;IAEjC,KAAK,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACjD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;YAClB,YAAY,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;YAC1B,SAAS;QACX,CAAC;QAED,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC;QACrC,YAAY,CAAC,IAAI,CAAC,GAAG;YACnB,GAAG,IAAI;YACP,OAAO,EAAE,KAAK,EAAE,KAAc,EAAE,OAAgB,EAAE,EAAE;gBAClD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;gBAC7B,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,eAAgB,CAAC,KAAK,EAAE,OAAgB,CAAC,CAAC;oBAC/D,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,kBAAkB,QAAQ,IAAI,CAAC,CAAC;oBAC3D,OAAO,MAAM,CAAC;gBAChB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;oBACxC,OAAO,CAAC,KAAK,CAAC,SAAS,IAAI,kBAAkB,QAAQ,IAAI,EAAE,KAAK,CAAC,CAAC;oBAClE,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;SACM,CAAC;IACZ,CAAC;IAED,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,SAA6B,EAAE;IAE/B,MAAM,EACJ,aAAa,GAAG,OAAO,CAAC,GAAG,EAAE,EAC7B,kBAAkB,GAAG,CAAC,aAAa,CAAC,EACpC,qBAAqB,GAAG,IAAI,EAC5B,gBAAgB,GAAG,KAAK,EACxB,kBAAkB,GAAG,EAAE,GACxB,GAAG,MAAM,CAAC;IAEX,MAAM,IAAI,GAAqB;QAC7B,aAAa;QACb,kBAAkB;QAClB,OAAO,EAAE,kBAAkB;KAC5B,CAAC;IAEF,MAAM,iBAAiB,GAAG,2BAA2B,EAAE,CAAC;IACxD,MAAM,QAAQ,GAAG,kBAAkB,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,WAAW,EAAE,CAAC;IAElC,4EAA4E;IAC5E,yEAAyE;IACzE,qCAAqC;IACrC,IAAI,KAAK,GAAG,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;IAEpC,4CAA4C;IAC5C,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAExD,mCAAmC;IACnC,IAAI,qBAAqB,EAAE,CAAC;QAC1B,KAAK,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACjC,CAAC;IAED,MAAM,OAAO,GAAG,KAAK,IAAI,EAAE;QACzB,6DAA6D;QAC7D,OAAO,CAAC,KAAK,EAAE,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO;QACL,KAAK;QACL,aAAa,EAAE,eAAe;QAC9B,iBAAiB;QACjB,QAAQ;QACR,OAAO;KACR,CAAC;AACJ,CAAC;AAED,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E,OAAO,EAAE,WAAW,EAAuC,MAAM,WAAW,CAAC"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @agntk/core - Search Skills Tool
|
|
3
|
+
*
|
|
4
|
+
* AI SDK tool that allows agents to dynamically search for skills by keyword.
|
|
5
|
+
* Backed by cached frontmatter metadata with file-change invalidation.
|
|
6
|
+
*/
|
|
7
|
+
import type { SkillMeta } from '../skills/types.js';
|
|
8
|
+
interface SkillCache {
|
|
9
|
+
skills: SkillMeta[];
|
|
10
|
+
/** Map of skill path → mtime at load time */
|
|
11
|
+
mtimes: Map<string, number>;
|
|
12
|
+
loadedAt: number;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Clear the skills cache. Useful for testing.
|
|
16
|
+
*/
|
|
17
|
+
export declare function clearSkillsCache(): void;
|
|
18
|
+
/**
|
|
19
|
+
* Get the current cache for testing inspection.
|
|
20
|
+
*/
|
|
21
|
+
export declare function getSkillsCache(): SkillCache | null;
|
|
22
|
+
export interface SearchSkillsToolConfig {
|
|
23
|
+
/** Directories to scan for skills. */
|
|
24
|
+
directories?: string[];
|
|
25
|
+
/** Base path for resolving relative directories. */
|
|
26
|
+
basePath?: string;
|
|
27
|
+
/** Maximum results to return. Default: 5 */
|
|
28
|
+
maxResults?: number;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Create a search_skills tool for agent skill discovery.
|
|
32
|
+
*
|
|
33
|
+
* The tool searches cached skill metadata by keyword, returning
|
|
34
|
+
* top matches ranked by relevance. Results include name, description,
|
|
35
|
+
* tags, and when_to_use for the supervisor LLM to pick from.
|
|
36
|
+
*/
|
|
37
|
+
export declare function createSearchSkillsTool(config?: SearchSkillsToolConfig): {
|
|
38
|
+
search_skills: import("ai").Tool<{
|
|
39
|
+
query: string;
|
|
40
|
+
limit?: number | undefined;
|
|
41
|
+
}, string>;
|
|
42
|
+
};
|
|
43
|
+
export {};
|
|
44
|
+
//# sourceMappingURL=search-skills.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-skills.d.ts","sourceRoot":"","sources":["../../src/tools/search-skills.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAQjD,UAAU,UAAU;IAClB,MAAM,EAAE,SAAS,EAAE,CAAC;IACpB,6CAA6C;IAC7C,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAqDD;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,UAAU,GAAG,IAAI,CAElD;AAMD,MAAM,WAAW,sBAAsB;IACrC,sCAAsC;IACtC,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,oDAAoD;IACpD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,GAAE,sBAA2B;;;;;EA8DzE"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @agntk/core - Search Skills Tool
|
|
3
|
+
*
|
|
4
|
+
* AI SDK tool that allows agents to dynamically search for skills by keyword.
|
|
5
|
+
* Backed by cached frontmatter metadata with file-change invalidation.
|
|
6
|
+
*/
|
|
7
|
+
import { tool } from 'ai';
|
|
8
|
+
import { z } from 'zod';
|
|
9
|
+
import * as fs from 'node:fs';
|
|
10
|
+
import { createLogger } from '@agntk/logger';
|
|
11
|
+
import { discoverSkills, searchSkills } from '../skills/loader.js';
|
|
12
|
+
const log = createLogger('@agntk/core:search-skills');
|
|
13
|
+
let cache = null;
|
|
14
|
+
/** Maximum age before a full re-scan (5 minutes). */
|
|
15
|
+
const MAX_CACHE_AGE_MS = 5 * 60 * 1000;
|
|
16
|
+
/**
|
|
17
|
+
* Check if cached skill files have changed on disk.
|
|
18
|
+
*/
|
|
19
|
+
function isCacheStale(c) {
|
|
20
|
+
// Time-based expiry
|
|
21
|
+
if (Date.now() - c.loadedAt > MAX_CACHE_AGE_MS)
|
|
22
|
+
return true;
|
|
23
|
+
// Check mtimes of known files
|
|
24
|
+
for (const [filePath, cachedMtime] of c.mtimes) {
|
|
25
|
+
try {
|
|
26
|
+
const stat = fs.statSync(filePath);
|
|
27
|
+
if (stat.mtimeMs !== cachedMtime)
|
|
28
|
+
return true;
|
|
29
|
+
}
|
|
30
|
+
catch (_e) {
|
|
31
|
+
// File deleted → stale
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
return false;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Get skills from cache or re-scan from disk.
|
|
39
|
+
*/
|
|
40
|
+
function getCachedSkills(directories, basePath) {
|
|
41
|
+
if (cache && !isCacheStale(cache)) {
|
|
42
|
+
return cache.skills;
|
|
43
|
+
}
|
|
44
|
+
log.debug('Refreshing skills cache');
|
|
45
|
+
const skills = discoverSkills(directories, basePath);
|
|
46
|
+
const mtimes = new Map();
|
|
47
|
+
for (const skill of skills) {
|
|
48
|
+
try {
|
|
49
|
+
const stat = fs.statSync(skill.path);
|
|
50
|
+
mtimes.set(skill.path, stat.mtimeMs);
|
|
51
|
+
}
|
|
52
|
+
catch (_e) {
|
|
53
|
+
// Skip if stat fails
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
cache = { skills, mtimes, loadedAt: Date.now() };
|
|
57
|
+
return skills;
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Clear the skills cache. Useful for testing.
|
|
61
|
+
*/
|
|
62
|
+
export function clearSkillsCache() {
|
|
63
|
+
cache = null;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Get the current cache for testing inspection.
|
|
67
|
+
*/
|
|
68
|
+
export function getSkillsCache() {
|
|
69
|
+
return cache;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Create a search_skills tool for agent skill discovery.
|
|
73
|
+
*
|
|
74
|
+
* The tool searches cached skill metadata by keyword, returning
|
|
75
|
+
* top matches ranked by relevance. Results include name, description,
|
|
76
|
+
* tags, and when_to_use for the supervisor LLM to pick from.
|
|
77
|
+
*/
|
|
78
|
+
export function createSearchSkillsTool(config = {}) {
|
|
79
|
+
const { directories, basePath, maxResults = 5 } = config;
|
|
80
|
+
return {
|
|
81
|
+
search_skills: tool({
|
|
82
|
+
description: 'Search for available skills by keyword. Returns ranked matches ' +
|
|
83
|
+
'with name, description, tags, and when_to_use guidance. ' +
|
|
84
|
+
'Use this to find the right skill for a subtask.',
|
|
85
|
+
inputSchema: z.object({
|
|
86
|
+
query: z.string().describe('Search keywords (e.g. "deploy docker", "code review")'),
|
|
87
|
+
limit: z
|
|
88
|
+
.number()
|
|
89
|
+
.min(1)
|
|
90
|
+
.max(10)
|
|
91
|
+
.optional()
|
|
92
|
+
.describe('Maximum results to return. Default: 5'),
|
|
93
|
+
}),
|
|
94
|
+
execute: async ({ query, limit }) => {
|
|
95
|
+
const effectiveLimit = limit ?? maxResults;
|
|
96
|
+
try {
|
|
97
|
+
const skills = getCachedSkills(directories, basePath);
|
|
98
|
+
if (skills.length === 0) {
|
|
99
|
+
return JSON.stringify({
|
|
100
|
+
success: true,
|
|
101
|
+
count: 0,
|
|
102
|
+
results: [],
|
|
103
|
+
message: 'No skills found. Add SKILL.md files to your skills directory.',
|
|
104
|
+
});
|
|
105
|
+
}
|
|
106
|
+
const matches = searchSkills(skills, query, effectiveLimit);
|
|
107
|
+
const results = matches.map((m) => ({
|
|
108
|
+
name: m.skill.name,
|
|
109
|
+
description: m.skill.description,
|
|
110
|
+
tags: m.skill.tags ?? [],
|
|
111
|
+
whenToUse: m.skill.whenToUse ?? '',
|
|
112
|
+
model: m.skill.model,
|
|
113
|
+
score: Math.round(m.score * 100) / 100,
|
|
114
|
+
}));
|
|
115
|
+
log.debug('Skills search', { query, found: results.length, total: skills.length });
|
|
116
|
+
return JSON.stringify({
|
|
117
|
+
success: true,
|
|
118
|
+
count: results.length,
|
|
119
|
+
totalSkills: skills.length,
|
|
120
|
+
results,
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
catch (error) {
|
|
124
|
+
log.error('Skills search failed', { query, error: String(error) });
|
|
125
|
+
return JSON.stringify({
|
|
126
|
+
success: false,
|
|
127
|
+
error: `Search failed: ${error instanceof Error ? error.message : String(error)}`,
|
|
128
|
+
});
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
}),
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=search-skills.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-skills.js","sourceRoot":"","sources":["../../src/tools/search-skills.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @agntk/core - Background Process Management Tool
|
|
3
|
+
*
|
|
4
|
+
* Manages long-running background processes with session tracking.
|
|
5
|
+
* Ported from @agntk/brain shell to consolidate shell tools.
|
|
6
|
+
*/
|
|
7
|
+
import { type ChildProcess } from 'node:child_process';
|
|
8
|
+
export interface BackgroundSession {
|
|
9
|
+
id: string;
|
|
10
|
+
command: string;
|
|
11
|
+
process: ChildProcess;
|
|
12
|
+
stdout: string;
|
|
13
|
+
stderr: string;
|
|
14
|
+
startedAt: number;
|
|
15
|
+
status: 'running' | 'completed' | 'failed' | 'stopped';
|
|
16
|
+
exitCode?: number;
|
|
17
|
+
cwd?: string;
|
|
18
|
+
}
|
|
19
|
+
/** Get all sessions (for testing). */
|
|
20
|
+
export declare function getBackgroundSessions(): Map<string, BackgroundSession>;
|
|
21
|
+
/** Clear all sessions (for testing). */
|
|
22
|
+
export declare function clearBackgroundSessions(): void;
|
|
23
|
+
/**
|
|
24
|
+
* Create a background process management tool.
|
|
25
|
+
*
|
|
26
|
+
* @example
|
|
27
|
+
* ```typescript
|
|
28
|
+
* const tools = { shell: createShellTool('/my/project'), background: createBackgroundTool() };
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
31
|
+
export declare function createBackgroundTool(): import("ai").Tool<{
|
|
32
|
+
operation: "status" | "output" | "start" | "stop" | "list";
|
|
33
|
+
cwd?: string | undefined;
|
|
34
|
+
env?: Record<string, string> | undefined;
|
|
35
|
+
command?: string | undefined;
|
|
36
|
+
sessionId?: string | undefined;
|
|
37
|
+
}, string>;
|
|
38
|
+
//# sourceMappingURL=background.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"background.d.ts","sourceRoot":"","sources":["../../../src/tools/shell/background.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,EAAS,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAQ9D,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,YAAY,CAAC;IACtB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAeD,sCAAsC;AACtC,wBAAgB,qBAAqB,IAAI,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAEtE;AAED,wCAAwC;AACxC,wBAAgB,uBAAuB,IAAI,IAAI,CAO9C;AAuED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB;;;;;;WAoInC"}
|