@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,224 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview SpecialistPool — LRU+TTL cache of domain specialists.
|
|
3
|
+
*
|
|
4
|
+
* Spawns (or reuses) specialist agents keyed by domain name.
|
|
5
|
+
* Each specialist can have skills injected and maintains conversation history.
|
|
6
|
+
*/
|
|
7
|
+
import { createLogger } from '@agntk/logger';
|
|
8
|
+
import { loadSkillsFromPaths, buildSkillsSystemPrompt } from '../skills/index.js';
|
|
9
|
+
const log = createLogger('@agntk/core:pool');
|
|
10
|
+
// ============================================================================
|
|
11
|
+
// Constants
|
|
12
|
+
// ============================================================================
|
|
13
|
+
const DEFAULT_MAX_AGENTS = 10;
|
|
14
|
+
const DEFAULT_TTL_MS = 30 * 60 * 1000; // 30 minutes
|
|
15
|
+
const DEFAULT_HISTORY_STRATEGY = 'full';
|
|
16
|
+
const DEFAULT_WINDOW_SIZE = 20;
|
|
17
|
+
// ============================================================================
|
|
18
|
+
// SpecialistPool
|
|
19
|
+
// ============================================================================
|
|
20
|
+
export class SpecialistPool {
|
|
21
|
+
cache = new Map();
|
|
22
|
+
maxAgents;
|
|
23
|
+
ttlMs;
|
|
24
|
+
defaultHistoryStrategy;
|
|
25
|
+
defaultWindowSize;
|
|
26
|
+
createAgent;
|
|
27
|
+
constructor(config) {
|
|
28
|
+
this.maxAgents = config.maxAgents ?? DEFAULT_MAX_AGENTS;
|
|
29
|
+
this.ttlMs = config.ttlMs ?? DEFAULT_TTL_MS;
|
|
30
|
+
this.defaultHistoryStrategy = config.defaultHistoryStrategy ?? DEFAULT_HISTORY_STRATEGY;
|
|
31
|
+
this.defaultWindowSize = config.defaultWindowSize ?? DEFAULT_WINDOW_SIZE;
|
|
32
|
+
this.createAgent = config.createAgent;
|
|
33
|
+
log.info('SpecialistPool created', {
|
|
34
|
+
maxAgents: this.maxAgents,
|
|
35
|
+
ttlMs: this.ttlMs,
|
|
36
|
+
defaultHistoryStrategy: this.defaultHistoryStrategy,
|
|
37
|
+
});
|
|
38
|
+
}
|
|
39
|
+
// --------------------------------------------------------------------------
|
|
40
|
+
// Public API
|
|
41
|
+
// --------------------------------------------------------------------------
|
|
42
|
+
/**
|
|
43
|
+
* Spawn or reuse a specialist for the given domain.
|
|
44
|
+
* Returns the cached specialist if not expired; otherwise creates a new one.
|
|
45
|
+
*/
|
|
46
|
+
async spawn(config) {
|
|
47
|
+
const { domain } = config;
|
|
48
|
+
// Check for existing cached specialist
|
|
49
|
+
const existing = this.cache.get(domain);
|
|
50
|
+
if (existing && !this.isExpired(existing)) {
|
|
51
|
+
log.debug('Cache hit', { domain, useCount: existing.useCount });
|
|
52
|
+
existing.lastUsedAt = Date.now();
|
|
53
|
+
existing.useCount += 1;
|
|
54
|
+
return existing;
|
|
55
|
+
}
|
|
56
|
+
// Remove expired entry if present
|
|
57
|
+
if (existing) {
|
|
58
|
+
log.debug('Cache expired, recreating', { domain });
|
|
59
|
+
this.cache.delete(domain);
|
|
60
|
+
}
|
|
61
|
+
// Evict LRU if at capacity
|
|
62
|
+
this.evictIfNeeded();
|
|
63
|
+
// Create new specialist
|
|
64
|
+
const specialist = await this.createSpecialist(config);
|
|
65
|
+
this.cache.set(domain, specialist);
|
|
66
|
+
log.info('Specialist spawned', { domain, skills: config.skills?.length ?? 0 });
|
|
67
|
+
return specialist;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Generate a response from a specialist, managing conversation history.
|
|
71
|
+
*/
|
|
72
|
+
async generate(domain, prompt) {
|
|
73
|
+
const cached = this.cache.get(domain);
|
|
74
|
+
if (!cached) {
|
|
75
|
+
throw new Error(`No specialist found for domain: ${domain}. Call spawn() first.`);
|
|
76
|
+
}
|
|
77
|
+
if (this.isExpired(cached)) {
|
|
78
|
+
this.cache.delete(domain);
|
|
79
|
+
throw new Error(`Specialist for domain "${domain}" has expired. Call spawn() again.`);
|
|
80
|
+
}
|
|
81
|
+
cached.lastUsedAt = Date.now();
|
|
82
|
+
cached.useCount += 1;
|
|
83
|
+
// Build prompt with history context
|
|
84
|
+
const contextualPrompt = this.buildContextualPrompt(cached, prompt);
|
|
85
|
+
const result = await cached.agent.generate({ prompt: contextualPrompt });
|
|
86
|
+
const text = result.text ?? '';
|
|
87
|
+
// Update history
|
|
88
|
+
cached.history.push({ role: 'user', content: prompt, timestamp: Date.now() }, { role: 'assistant', content: text, timestamp: Date.now() });
|
|
89
|
+
return text;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* List all cached specialists with their metadata.
|
|
93
|
+
*/
|
|
94
|
+
list() {
|
|
95
|
+
return Array.from(this.cache.values()).map((entry) => ({
|
|
96
|
+
domain: entry.domain,
|
|
97
|
+
createdAt: entry.createdAt,
|
|
98
|
+
lastUsedAt: entry.lastUsedAt,
|
|
99
|
+
useCount: entry.useCount,
|
|
100
|
+
historyLength: entry.history.length,
|
|
101
|
+
expired: this.isExpired(entry),
|
|
102
|
+
skills: entry.agent.skills,
|
|
103
|
+
}));
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Remove a specialist from the cache.
|
|
107
|
+
*/
|
|
108
|
+
remove(domain) {
|
|
109
|
+
const deleted = this.cache.delete(domain);
|
|
110
|
+
if (deleted) {
|
|
111
|
+
log.info('Specialist removed', { domain });
|
|
112
|
+
}
|
|
113
|
+
return deleted;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* Clear all cached specialists.
|
|
117
|
+
*/
|
|
118
|
+
clear() {
|
|
119
|
+
const count = this.cache.size;
|
|
120
|
+
this.cache.clear();
|
|
121
|
+
log.info('Pool cleared', { removedCount: count });
|
|
122
|
+
}
|
|
123
|
+
/**
|
|
124
|
+
* Get the current number of cached specialists.
|
|
125
|
+
*/
|
|
126
|
+
get size() {
|
|
127
|
+
return this.cache.size;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Get a cached specialist by domain (without modifying LRU state).
|
|
131
|
+
*/
|
|
132
|
+
get(domain) {
|
|
133
|
+
return this.cache.get(domain);
|
|
134
|
+
}
|
|
135
|
+
// --------------------------------------------------------------------------
|
|
136
|
+
// Private
|
|
137
|
+
// --------------------------------------------------------------------------
|
|
138
|
+
isExpired(entry) {
|
|
139
|
+
return Date.now() - entry.createdAt > this.ttlMs;
|
|
140
|
+
}
|
|
141
|
+
evictIfNeeded() {
|
|
142
|
+
while (this.cache.size >= this.maxAgents) {
|
|
143
|
+
// Find LRU: oldest lastUsedAt
|
|
144
|
+
let lruKey;
|
|
145
|
+
let lruTime = Infinity;
|
|
146
|
+
for (const [key, entry] of this.cache) {
|
|
147
|
+
if (entry.lastUsedAt < lruTime) {
|
|
148
|
+
lruTime = entry.lastUsedAt;
|
|
149
|
+
lruKey = key;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
if (lruKey) {
|
|
153
|
+
log.info('Evicting LRU specialist', { domain: lruKey, lastUsedAt: lruTime });
|
|
154
|
+
this.cache.delete(lruKey);
|
|
155
|
+
}
|
|
156
|
+
else {
|
|
157
|
+
break;
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
async createSpecialist(config) {
|
|
162
|
+
const role = config.role ?? 'generic';
|
|
163
|
+
const skills = config.skills ?? [];
|
|
164
|
+
// Build system prompt with skills
|
|
165
|
+
let systemPrompt = config.instructions ?? '';
|
|
166
|
+
if (skills.length > 0) {
|
|
167
|
+
const loadedSkills = loadSkillsFromPaths(skills);
|
|
168
|
+
if (loadedSkills.length > 0) {
|
|
169
|
+
const skillsPrompt = buildSkillsSystemPrompt(loadedSkills);
|
|
170
|
+
systemPrompt = systemPrompt ? `${systemPrompt}\n${skillsPrompt}` : skillsPrompt;
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
// Create the agent via the factory
|
|
174
|
+
const agentOptions = {
|
|
175
|
+
role,
|
|
176
|
+
...(systemPrompt && { systemPrompt }),
|
|
177
|
+
...config.agentOptions,
|
|
178
|
+
};
|
|
179
|
+
const rawAgent = this.createAgent(agentOptions);
|
|
180
|
+
const agent = {
|
|
181
|
+
generate: rawAgent.generate,
|
|
182
|
+
domain: config.domain,
|
|
183
|
+
skills,
|
|
184
|
+
};
|
|
185
|
+
const now = Date.now();
|
|
186
|
+
return {
|
|
187
|
+
domain: config.domain,
|
|
188
|
+
agent,
|
|
189
|
+
createdAt: now,
|
|
190
|
+
lastUsedAt: now,
|
|
191
|
+
useCount: 1,
|
|
192
|
+
history: [],
|
|
193
|
+
};
|
|
194
|
+
}
|
|
195
|
+
buildContextualPrompt(cached, prompt) {
|
|
196
|
+
const history = this.getRelevantHistory(cached);
|
|
197
|
+
if (history.length === 0)
|
|
198
|
+
return prompt;
|
|
199
|
+
const historyText = history
|
|
200
|
+
.map((msg) => `${msg.role === 'user' ? 'User' : 'Assistant'}: ${msg.content}`)
|
|
201
|
+
.join('\n\n');
|
|
202
|
+
return `Previous conversation:\n${historyText}\n\nCurrent request: ${prompt}`;
|
|
203
|
+
}
|
|
204
|
+
getRelevantHistory(cached) {
|
|
205
|
+
const strategy = this.defaultHistoryStrategy;
|
|
206
|
+
const history = cached.history;
|
|
207
|
+
switch (strategy) {
|
|
208
|
+
case 'full':
|
|
209
|
+
return history;
|
|
210
|
+
case 'sliding-window': {
|
|
211
|
+
const windowSize = this.defaultWindowSize;
|
|
212
|
+
return history.slice(-windowSize);
|
|
213
|
+
}
|
|
214
|
+
case 'summary':
|
|
215
|
+
// Summary strategy: keep first message + last few for context
|
|
216
|
+
if (history.length <= 4)
|
|
217
|
+
return history;
|
|
218
|
+
return [...history.slice(0, 2), ...history.slice(-2)];
|
|
219
|
+
default:
|
|
220
|
+
return history;
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=specialist-pool.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"specialist-pool.js","sourceRoot":"","sources":["../../src/pool/specialist-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview AI SDK tools for SpecialistPool interaction.
|
|
3
|
+
*
|
|
4
|
+
* - spawn_specialist: Spawn or reuse a cached domain specialist.
|
|
5
|
+
* - list_specialists: List all cached specialists and their state.
|
|
6
|
+
*/
|
|
7
|
+
import type { SpecialistPool } from './specialist-pool.js';
|
|
8
|
+
export declare function createSpawnSpecialistTool(pool: SpecialistPool): import("ai").Tool<{
|
|
9
|
+
prompt: string;
|
|
10
|
+
domain: string;
|
|
11
|
+
role?: "generic" | "coder" | "researcher" | "analyst" | undefined;
|
|
12
|
+
skills?: string[] | undefined;
|
|
13
|
+
instructions?: string | undefined;
|
|
14
|
+
}, {
|
|
15
|
+
domain: string;
|
|
16
|
+
response: string;
|
|
17
|
+
useCount: number;
|
|
18
|
+
skills: string[];
|
|
19
|
+
fromCache: boolean;
|
|
20
|
+
}>;
|
|
21
|
+
export declare function createListSpecialistsTool(pool: SpecialistPool): import("ai").Tool<{}, {
|
|
22
|
+
count: number;
|
|
23
|
+
specialists: {
|
|
24
|
+
domain: string;
|
|
25
|
+
useCount: number;
|
|
26
|
+
historyLength: number;
|
|
27
|
+
expired: boolean;
|
|
28
|
+
skills: string[];
|
|
29
|
+
ageMs: number;
|
|
30
|
+
lastUsedMs: number;
|
|
31
|
+
}[];
|
|
32
|
+
}>;
|
|
33
|
+
/**
|
|
34
|
+
* Create all pool tools for use with an Agent's tool set.
|
|
35
|
+
*/
|
|
36
|
+
export declare function createPoolTools(pool: SpecialistPool): {
|
|
37
|
+
spawn_specialist: import("ai").Tool<{
|
|
38
|
+
prompt: string;
|
|
39
|
+
domain: string;
|
|
40
|
+
role?: "generic" | "coder" | "researcher" | "analyst" | undefined;
|
|
41
|
+
skills?: string[] | undefined;
|
|
42
|
+
instructions?: string | undefined;
|
|
43
|
+
}, {
|
|
44
|
+
domain: string;
|
|
45
|
+
response: string;
|
|
46
|
+
useCount: number;
|
|
47
|
+
skills: string[];
|
|
48
|
+
fromCache: boolean;
|
|
49
|
+
}>;
|
|
50
|
+
list_specialists: import("ai").Tool<{}, {
|
|
51
|
+
count: number;
|
|
52
|
+
specialists: {
|
|
53
|
+
domain: string;
|
|
54
|
+
useCount: number;
|
|
55
|
+
historyLength: number;
|
|
56
|
+
expired: boolean;
|
|
57
|
+
skills: string[];
|
|
58
|
+
ageMs: number;
|
|
59
|
+
lastUsedMs: number;
|
|
60
|
+
}[];
|
|
61
|
+
}>;
|
|
62
|
+
};
|
|
63
|
+
//# sourceMappingURL=tools.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../src/pool/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAMxD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,cAAc;;;;;;;;;;;;GAmC7D;AAMD,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,cAAc;;;;;;;;;;;GAsB7D;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;EAKnD"}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview AI SDK tools for SpecialistPool interaction.
|
|
3
|
+
*
|
|
4
|
+
* - spawn_specialist: Spawn or reuse a cached domain specialist.
|
|
5
|
+
* - list_specialists: List all cached specialists and their state.
|
|
6
|
+
*/
|
|
7
|
+
import { z } from 'zod';
|
|
8
|
+
import { tool } from 'ai';
|
|
9
|
+
// ============================================================================
|
|
10
|
+
// spawn_specialist
|
|
11
|
+
// ============================================================================
|
|
12
|
+
export function createSpawnSpecialistTool(pool) {
|
|
13
|
+
return tool({
|
|
14
|
+
description: 'Spawn or reuse a cached domain specialist. If a specialist for the given domain ' +
|
|
15
|
+
'already exists and has not expired, it is reused. Otherwise a new specialist is created ' +
|
|
16
|
+
'with the specified role, skills, and instructions.',
|
|
17
|
+
inputSchema: z.object({
|
|
18
|
+
domain: z.string().describe('Domain/specialty name (used as cache key).'),
|
|
19
|
+
role: z
|
|
20
|
+
.enum(['generic', 'coder', 'researcher', 'analyst'])
|
|
21
|
+
.optional()
|
|
22
|
+
.describe('Agent role. Default: generic.'),
|
|
23
|
+
skills: z
|
|
24
|
+
.array(z.string())
|
|
25
|
+
.optional()
|
|
26
|
+
.describe('Skill directory paths or skill names to inject.'),
|
|
27
|
+
instructions: z
|
|
28
|
+
.string()
|
|
29
|
+
.optional()
|
|
30
|
+
.describe('Custom system prompt instructions for this specialist.'),
|
|
31
|
+
prompt: z.string().describe('The prompt/task to send to the specialist.'),
|
|
32
|
+
}),
|
|
33
|
+
execute: async ({ domain, role, skills, instructions, prompt }) => {
|
|
34
|
+
const cached = await pool.spawn({ domain, role, skills, instructions });
|
|
35
|
+
const response = await pool.generate(domain, prompt);
|
|
36
|
+
return {
|
|
37
|
+
domain: cached.domain,
|
|
38
|
+
response,
|
|
39
|
+
useCount: cached.useCount,
|
|
40
|
+
skills: cached.agent.skills,
|
|
41
|
+
fromCache: cached.useCount > 1,
|
|
42
|
+
};
|
|
43
|
+
},
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
// ============================================================================
|
|
47
|
+
// list_specialists
|
|
48
|
+
// ============================================================================
|
|
49
|
+
export function createListSpecialistsTool(pool) {
|
|
50
|
+
return tool({
|
|
51
|
+
description: 'List all cached specialists in the pool with their domain, age, usage count, ' +
|
|
52
|
+
'history length, and expiration status.',
|
|
53
|
+
inputSchema: z.object({}),
|
|
54
|
+
execute: async () => {
|
|
55
|
+
const specialists = pool.list();
|
|
56
|
+
return {
|
|
57
|
+
count: specialists.length,
|
|
58
|
+
specialists: specialists.map((s) => ({
|
|
59
|
+
domain: s.domain,
|
|
60
|
+
useCount: s.useCount,
|
|
61
|
+
historyLength: s.historyLength,
|
|
62
|
+
expired: s.expired,
|
|
63
|
+
skills: s.skills,
|
|
64
|
+
ageMs: Date.now() - s.createdAt,
|
|
65
|
+
lastUsedMs: Date.now() - s.lastUsedAt,
|
|
66
|
+
})),
|
|
67
|
+
};
|
|
68
|
+
},
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
// ============================================================================
|
|
72
|
+
// Factory
|
|
73
|
+
// ============================================================================
|
|
74
|
+
/**
|
|
75
|
+
* Create all pool tools for use with an Agent's tool set.
|
|
76
|
+
*/
|
|
77
|
+
export function createPoolTools(pool) {
|
|
78
|
+
return {
|
|
79
|
+
spawn_specialist: createSpawnSpecialistTool(pool),
|
|
80
|
+
list_specialists: createListSpecialistsTool(pool),
|
|
81
|
+
};
|
|
82
|
+
}
|
|
83
|
+
//# sourceMappingURL=tools.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../src/pool/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAG1B,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,MAAM,UAAU,yBAAyB,CAAC,IAAoB;IAC5D,OAAO,IAAI,CAAC;QACV,WAAW,EACT,kFAAkF;YAClF,0FAA0F;YAC1F,oDAAoD;QACtD,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;YACpB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;YACzE,IAAI,EAAE,CAAC;iBACJ,IAAI,CAAC,CAAC,SAAS,EAAE,OAAO,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;iBACnD,QAAQ,EAAE;iBACV,QAAQ,CAAC,+BAA+B,CAAC;YAC5C,MAAM,EAAE,CAAC;iBACN,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;iBACjB,QAAQ,EAAE;iBACV,QAAQ,CAAC,iDAAiD,CAAC;YAC9D,YAAY,EAAE,CAAC;iBACZ,MAAM,EAAE;iBACR,QAAQ,EAAE;iBACV,QAAQ,CAAC,wDAAwD,CAAC;YACrE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;SAC1E,CAAC;QACF,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE;YAChE,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;YACxE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;YAErD,OAAO;gBACL,MAAM,EAAE,MAAM,CAAC,MAAM;gBACrB,QAAQ;gBACR,QAAQ,EAAE,MAAM,CAAC,QAAQ;gBACzB,MAAM,EAAE,MAAM,CAAC,KAAK,CAAC,MAAM;gBAC3B,SAAS,EAAE,MAAM,CAAC,QAAQ,GAAG,CAAC;aAC/B,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,mBAAmB;AACnB,+EAA+E;AAE/E,MAAM,UAAU,yBAAyB,CAAC,IAAoB;IAC5D,OAAO,IAAI,CAAC;QACV,WAAW,EACT,+EAA+E;YAC/E,wCAAwC;QAC1C,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QACzB,OAAO,EAAE,KAAK,IAAI,EAAE;YAClB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YAChC,OAAO;gBACL,KAAK,EAAE,WAAW,CAAC,MAAM;gBACzB,WAAW,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACnC,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,QAAQ,EAAE,CAAC,CAAC,QAAQ;oBACpB,aAAa,EAAE,CAAC,CAAC,aAAa;oBAC9B,OAAO,EAAE,CAAC,CAAC,OAAO;oBAClB,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,SAAS;oBAC/B,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,UAAU;iBACtC,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,+EAA+E;AAC/E,UAAU;AACV,+EAA+E;AAE/E;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,IAAoB;IAClD,OAAO;QACL,gBAAgB,EAAE,yBAAyB,CAAC,IAAI,CAAC;QACjD,gBAAgB,EAAE,yBAAyB,CAAC,IAAI,CAAC;KAClD,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Types for the SpecialistPool.
|
|
3
|
+
*/
|
|
4
|
+
import type { AgentOptions, AgentRole } from '../types/agent.js';
|
|
5
|
+
/** History management strategy for cached specialists. */
|
|
6
|
+
export type HistoryStrategy = 'full' | 'sliding-window' | 'summary';
|
|
7
|
+
/** Configuration for a specialist in the pool. */
|
|
8
|
+
export interface SpecialistConfig {
|
|
9
|
+
/** Domain/specialty name (used as cache key). */
|
|
10
|
+
domain: string;
|
|
11
|
+
/** Agent role. Default: 'generic'. */
|
|
12
|
+
role?: AgentRole;
|
|
13
|
+
/** Skills to inject (directory paths or skill names). */
|
|
14
|
+
skills?: string[];
|
|
15
|
+
/** Custom system prompt (appended to role prompt + skills). */
|
|
16
|
+
instructions?: string;
|
|
17
|
+
/** History strategy for conversation continuity. Default: 'full'. */
|
|
18
|
+
historyStrategy?: HistoryStrategy;
|
|
19
|
+
/** Max messages for sliding-window strategy. Default: 20. */
|
|
20
|
+
historyWindowSize?: number;
|
|
21
|
+
/** Additional agent options. */
|
|
22
|
+
agentOptions?: Partial<AgentOptions>;
|
|
23
|
+
}
|
|
24
|
+
/** A cached specialist entry. */
|
|
25
|
+
export interface CachedSpecialist {
|
|
26
|
+
/** Domain name. */
|
|
27
|
+
domain: string;
|
|
28
|
+
/** The specialist agent. */
|
|
29
|
+
agent: SpecialistAgent;
|
|
30
|
+
/** When this specialist was created. */
|
|
31
|
+
createdAt: number;
|
|
32
|
+
/** When this specialist was last used. */
|
|
33
|
+
lastUsedAt: number;
|
|
34
|
+
/** Number of times this specialist has been used. */
|
|
35
|
+
useCount: number;
|
|
36
|
+
/** Conversation history (for stateful specialists). */
|
|
37
|
+
history: ConversationMessage[];
|
|
38
|
+
}
|
|
39
|
+
/** A message in conversation history. */
|
|
40
|
+
export interface ConversationMessage {
|
|
41
|
+
role: 'user' | 'assistant';
|
|
42
|
+
content: string;
|
|
43
|
+
timestamp: number;
|
|
44
|
+
}
|
|
45
|
+
/** A specialist agent with metadata. */
|
|
46
|
+
export interface SpecialistAgent {
|
|
47
|
+
/** Generate a response. */
|
|
48
|
+
generate: (input: {
|
|
49
|
+
prompt: string;
|
|
50
|
+
}) => Promise<{
|
|
51
|
+
text: string;
|
|
52
|
+
[key: string]: unknown;
|
|
53
|
+
}>;
|
|
54
|
+
/** The domain this specialist serves. */
|
|
55
|
+
domain: string;
|
|
56
|
+
/** Skills loaded for this specialist. */
|
|
57
|
+
skills: string[];
|
|
58
|
+
}
|
|
59
|
+
/** Configuration for the SpecialistPool. */
|
|
60
|
+
export interface SpecialistPoolConfig {
|
|
61
|
+
/** Maximum number of cached specialists. Default: 10. */
|
|
62
|
+
maxAgents?: number;
|
|
63
|
+
/** TTL for cached specialists (ms). Default: 30 minutes. */
|
|
64
|
+
ttlMs?: number;
|
|
65
|
+
/** Default history strategy. Default: 'full'. */
|
|
66
|
+
defaultHistoryStrategy?: HistoryStrategy;
|
|
67
|
+
/** Default sliding-window size. Default: 20. */
|
|
68
|
+
defaultWindowSize?: number;
|
|
69
|
+
/** Factory function to create agent instances. */
|
|
70
|
+
createAgent: (options: AgentOptions) => {
|
|
71
|
+
generate: (input: {
|
|
72
|
+
prompt: string;
|
|
73
|
+
}) => Promise<{
|
|
74
|
+
text: string;
|
|
75
|
+
[key: string]: unknown;
|
|
76
|
+
}>;
|
|
77
|
+
};
|
|
78
|
+
}
|
|
79
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/pool/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE9D,0DAA0D;AAC1D,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,gBAAgB,GAAG,SAAS,CAAC;AAEpE,kDAAkD;AAClD,MAAM,WAAW,gBAAgB;IAC/B,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,sCAAsC;IACtC,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,yDAAyD;IACzD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qEAAqE;IACrE,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,6DAA6D;IAC7D,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,gCAAgC;IAChC,YAAY,CAAC,EAAE,OAAO,CAAC,YAAY,CAAC,CAAC;CACtC;AAED,iCAAiC;AACjC,MAAM,WAAW,gBAAgB;IAC/B,mBAAmB;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,4BAA4B;IAC5B,KAAK,EAAE,eAAe,CAAC;IACvB,wCAAwC;IACxC,SAAS,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,UAAU,EAAE,MAAM,CAAC;IACnB,qDAAqD;IACrD,QAAQ,EAAE,MAAM,CAAC;IACjB,uDAAuD;IACvD,OAAO,EAAE,mBAAmB,EAAE,CAAC;CAChC;AAED,yCAAyC;AACzC,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wCAAwC;AACxC,MAAM,WAAW,eAAe;IAC9B,2BAA2B;IAC3B,QAAQ,EAAE,CAAC,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;KAAE,CAAC,CAAC;IAC3F,yCAAyC;IACzC,MAAM,EAAE,MAAM,CAAC;IACf,yCAAyC;IACzC,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,4CAA4C;AAC5C,MAAM,WAAW,oBAAoB;IACnC,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4DAA4D;IAC5D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,iDAAiD;IACjD,sBAAsB,CAAC,EAAE,eAAe,CAAC;IACzC,gDAAgD;IAChD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,kDAAkD;IAClD,WAAW,EAAE,CAAC,OAAO,EAAE,YAAY,KAAK;QAAE,QAAQ,EAAE,CAAC,KAAK,EAAE;YAAE,MAAM,EAAE,MAAM,CAAA;SAAE,KAAK,OAAO,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC;CACxI"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/pool/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @agntk/core - Presets Module Index
|
|
3
|
+
*/
|
|
4
|
+
export { roleConfigs, rolePrompts, systemPrompts, roleCallOptionsSchemas, AGENT_ROLES, SPAWNED_AGENT_CONTEXT, buildSpawnedAgentPrompt, getRoleSystemPrompt, getRoleCallOptionsSchema, type AgentRole, type RoleConfig, } from './roles.js';
|
|
5
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/presets/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,EACxB,KAAK,SAAS,EACd,KAAK,UAAU,GAChB,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @agntk/core - Presets Module Index
|
|
3
|
+
*/
|
|
4
|
+
export { roleConfigs, rolePrompts, systemPrompts, roleCallOptionsSchemas, AGENT_ROLES, SPAWNED_AGENT_CONTEXT, buildSpawnedAgentPrompt, getRoleSystemPrompt, getRoleCallOptionsSchema, } from './roles.js';
|
|
5
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/presets/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EACL,WAAW,EACX,WAAW,EACX,aAAa,EACb,sBAAsB,EACtB,WAAW,EACX,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,wBAAwB,GAGzB,MAAM,SAAS,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @fileoverview Role Registry - manages built-in and custom roles.
|
|
3
|
+
*/
|
|
4
|
+
import { z } from 'zod';
|
|
5
|
+
export interface RoleDefinition {
|
|
6
|
+
/** System prompt for this role */
|
|
7
|
+
systemPrompt: string;
|
|
8
|
+
/** Zod schema for call options */
|
|
9
|
+
callOptionsSchema?: z.ZodType;
|
|
10
|
+
/** Default tools to include */
|
|
11
|
+
defaultTools?: string[];
|
|
12
|
+
/** Recommended model tier */
|
|
13
|
+
recommendedModel?: 'fast' | 'standard' | 'reasoning' | 'powerful';
|
|
14
|
+
}
|
|
15
|
+
declare const BASE_SYSTEM_PROMPT = "You are an AI assistant with access to tools for completing tasks.\n\n**Guidelines:**\n- Be direct and concise in your responses\n- Use tools when they would help accomplish the task\n- Explain your reasoning when making decisions\n- Ask for clarification if the request is ambiguous\n- Complete tasks step by step, validating progress";
|
|
16
|
+
/**
|
|
17
|
+
* Register a role in the registry.
|
|
18
|
+
*/
|
|
19
|
+
export declare function registerRole(name: string, definition: RoleDefinition): void;
|
|
20
|
+
/**
|
|
21
|
+
* Get a role from the registry.
|
|
22
|
+
* Falls back to built-in roles, then generic.
|
|
23
|
+
* Templates are applied to the system prompt.
|
|
24
|
+
*/
|
|
25
|
+
export declare function getRole(name: string): RoleDefinition;
|
|
26
|
+
/**
|
|
27
|
+
* Get all registered role names.
|
|
28
|
+
*/
|
|
29
|
+
export declare function getAllRoleNames(): string[];
|
|
30
|
+
/**
|
|
31
|
+
* Check if a role exists.
|
|
32
|
+
*/
|
|
33
|
+
export declare function hasRole(name: string): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Reset the registry (for testing).
|
|
36
|
+
*/
|
|
37
|
+
export declare function resetRoleRegistry(): void;
|
|
38
|
+
export declare const SPAWNED_AGENT_CONTEXT = "\n# Context: Spawned Sub-Agent\n\nYou are running as a sub-agent spawned by a parent agent to handle a delegated task.\n\n**Constraints:**\n- The delegate tool is disabled to prevent infinite recursion\n- Focus on completing the delegated task autonomously\n";
|
|
39
|
+
export declare function buildSpawnedAgentPrompt(role: string): string;
|
|
40
|
+
export { BASE_SYSTEM_PROMPT };
|
|
41
|
+
//# sourceMappingURL=role-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"role-registry.d.ts","sourceRoot":"","sources":["../../src/presets/role-registry.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAWxB,MAAM,WAAW,cAAc;IAC7B,kCAAkC;IAClC,YAAY,EAAE,MAAM,CAAC;IACrB,kCAAkC;IAClC,iBAAiB,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC;IAC9B,+BAA+B;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,6BAA6B;IAC7B,gBAAgB,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,WAAW,GAAG,UAAU,CAAC;CACnE;AAaD,QAAA,MAAM,kBAAkB,oVAO2B,CAAC;AA0FpD;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,GAAG,IAAI,CAG3E;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAoBpD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,EAAE,CAK1C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAG7C;AA2CD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAGxC;AAMD,eAAO,MAAM,qBAAqB,uQAQjC,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAG5D;AAED,OAAO,EAAE,kBAAkB,EAAE,CAAC"}
|