@vinhnt-sdk/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/LICENSE +21 -0
- package/README.md +57 -0
- package/dist/agent/agent-def.d.ts +11 -0
- package/dist/agent/agent-def.d.ts.map +1 -0
- package/dist/agent/agent-def.js +2 -0
- package/dist/agent/agent-def.js.map +1 -0
- package/dist/agent/agent-factory.d.ts +21 -0
- package/dist/agent/agent-factory.d.ts.map +1 -0
- package/dist/agent/agent-factory.js +119 -0
- package/dist/agent/agent-factory.js.map +1 -0
- package/dist/agent/agent-file-loader.d.ts +46 -0
- package/dist/agent/agent-file-loader.d.ts.map +1 -0
- package/dist/agent/agent-file-loader.js +111 -0
- package/dist/agent/agent-file-loader.js.map +1 -0
- package/dist/agent/agent-parser.d.ts +9 -0
- package/dist/agent/agent-parser.d.ts.map +1 -0
- package/dist/agent/agent-parser.js +70 -0
- package/dist/agent/agent-parser.js.map +1 -0
- package/dist/agent/agent-registry.d.ts +49 -0
- package/dist/agent/agent-registry.d.ts.map +1 -0
- package/dist/agent/agent-registry.js +127 -0
- package/dist/agent/agent-registry.js.map +1 -0
- package/dist/agent/behaviour-profiles.d.ts +11 -0
- package/dist/agent/behaviour-profiles.d.ts.map +1 -0
- package/dist/agent/behaviour-profiles.js +46 -0
- package/dist/agent/behaviour-profiles.js.map +1 -0
- package/dist/agent/create-agent-tool.d.ts +20 -0
- package/dist/agent/create-agent-tool.d.ts.map +1 -0
- package/dist/agent/create-agent-tool.js +108 -0
- package/dist/agent/create-agent-tool.js.map +1 -0
- package/dist/agent/default-agents.d.ts +5 -0
- package/dist/agent/default-agents.d.ts.map +1 -0
- package/dist/agent/default-agents.js +38 -0
- package/dist/agent/default-agents.js.map +1 -0
- package/dist/agent/delegate-batch-tool.d.ts +10 -0
- package/dist/agent/delegate-batch-tool.d.ts.map +1 -0
- package/dist/agent/delegate-batch-tool.js +48 -0
- package/dist/agent/delegate-batch-tool.js.map +1 -0
- package/dist/agent/delegate-tool.d.ts +13 -0
- package/dist/agent/delegate-tool.d.ts.map +1 -0
- package/dist/agent/delegate-tool.js +49 -0
- package/dist/agent/delegate-tool.js.map +1 -0
- package/dist/agent/dynamic-registry.d.ts +30 -0
- package/dist/agent/dynamic-registry.d.ts.map +1 -0
- package/dist/agent/dynamic-registry.js +87 -0
- package/dist/agent/dynamic-registry.js.map +1 -0
- package/dist/agent/execution-engine.d.ts +25 -0
- package/dist/agent/execution-engine.d.ts.map +1 -0
- package/dist/agent/execution-engine.js +80 -0
- package/dist/agent/execution-engine.js.map +1 -0
- package/dist/agent/list-agents-tool.d.ts +4 -0
- package/dist/agent/list-agents-tool.d.ts.map +1 -0
- package/dist/agent/list-agents-tool.js +43 -0
- package/dist/agent/list-agents-tool.js.map +1 -0
- package/dist/agent/spawn-agent-tool.d.ts +15 -0
- package/dist/agent/spawn-agent-tool.d.ts.map +1 -0
- package/dist/agent/spawn-agent-tool.js +77 -0
- package/dist/agent/spawn-agent-tool.js.map +1 -0
- package/dist/crypto/password.d.ts +11 -0
- package/dist/crypto/password.d.ts.map +1 -0
- package/dist/crypto/password.js +44 -0
- package/dist/crypto/password.js.map +1 -0
- package/dist/event-bus/bridge.d.ts +19 -0
- package/dist/event-bus/bridge.d.ts.map +1 -0
- package/dist/event-bus/bridge.js +48 -0
- package/dist/event-bus/bridge.js.map +1 -0
- package/dist/event-bus/global-bus.d.ts +30 -0
- package/dist/event-bus/global-bus.d.ts.map +1 -0
- package/dist/event-bus/global-bus.js +92 -0
- package/dist/event-bus/global-bus.js.map +1 -0
- package/dist/event-bus/in-memory-bus.d.ts +19 -0
- package/dist/event-bus/in-memory-bus.d.ts.map +1 -0
- package/dist/event-bus/in-memory-bus.js +97 -0
- package/dist/event-bus/in-memory-bus.js.map +1 -0
- package/dist/event-bus/index.d.ts +5 -0
- package/dist/event-bus/index.d.ts.map +1 -0
- package/dist/event-bus/index.js +4 -0
- package/dist/event-bus/index.js.map +1 -0
- package/dist/event-bus/types.d.ts +20 -0
- package/dist/event-bus/types.d.ts.map +1 -0
- package/dist/event-bus/types.js +2 -0
- package/dist/event-bus/types.js.map +1 -0
- package/dist/fakes/fake-agent-registry.d.ts +17 -0
- package/dist/fakes/fake-agent-registry.d.ts.map +1 -0
- package/dist/fakes/fake-agent-registry.js +70 -0
- package/dist/fakes/fake-agent-registry.js.map +1 -0
- package/dist/fakes/fake-approval-store.d.ts +27 -0
- package/dist/fakes/fake-approval-store.d.ts.map +1 -0
- package/dist/fakes/fake-approval-store.js +66 -0
- package/dist/fakes/fake-approval-store.js.map +1 -0
- package/dist/fakes/fake-model.d.ts +37 -0
- package/dist/fakes/fake-model.d.ts.map +1 -0
- package/dist/fakes/fake-model.js +63 -0
- package/dist/fakes/fake-model.js.map +1 -0
- package/dist/fakes/fake-store.d.ts +16 -0
- package/dist/fakes/fake-store.d.ts.map +1 -0
- package/dist/fakes/fake-store.js +61 -0
- package/dist/fakes/fake-store.js.map +1 -0
- package/dist/fakes/fake-tool-context.d.ts +28 -0
- package/dist/fakes/fake-tool-context.d.ts.map +1 -0
- package/dist/fakes/fake-tool-context.js +34 -0
- package/dist/fakes/fake-tool-context.js.map +1 -0
- package/dist/fakes/fake-tool.d.ts +22 -0
- package/dist/fakes/fake-tool.d.ts.map +1 -0
- package/dist/fakes/fake-tool.js +27 -0
- package/dist/fakes/fake-tool.js.map +1 -0
- package/dist/fakes/index.d.ts +7 -0
- package/dist/fakes/index.d.ts.map +1 -0
- package/dist/fakes/index.js +7 -0
- package/dist/fakes/index.js.map +1 -0
- package/dist/index.d.ts +111 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +72 -0
- package/dist/index.js.map +1 -0
- package/dist/internal/index.d.ts +5 -0
- package/dist/internal/index.d.ts.map +1 -0
- package/dist/internal/index.js +8 -0
- package/dist/internal/index.js.map +1 -0
- package/dist/kernel/approval-handler.d.ts +17 -0
- package/dist/kernel/approval-handler.d.ts.map +1 -0
- package/dist/kernel/approval-handler.js +28 -0
- package/dist/kernel/approval-handler.js.map +1 -0
- package/dist/kernel/circuit-breaker.d.ts +25 -0
- package/dist/kernel/circuit-breaker.d.ts.map +1 -0
- package/dist/kernel/circuit-breaker.js +88 -0
- package/dist/kernel/circuit-breaker.js.map +1 -0
- package/dist/kernel/context-manager.d.ts +29 -0
- package/dist/kernel/context-manager.d.ts.map +1 -0
- package/dist/kernel/context-manager.js +64 -0
- package/dist/kernel/context-manager.js.map +1 -0
- package/dist/kernel/kernel-error.d.ts +7 -0
- package/dist/kernel/kernel-error.d.ts.map +1 -0
- package/dist/kernel/kernel-error.js +12 -0
- package/dist/kernel/kernel-error.js.map +1 -0
- package/dist/kernel/kernel-session.d.ts +30 -0
- package/dist/kernel/kernel-session.d.ts.map +1 -0
- package/dist/kernel/kernel-session.js +92 -0
- package/dist/kernel/kernel-session.js.map +1 -0
- package/dist/kernel/kernel-types.d.ts +72 -0
- package/dist/kernel/kernel-types.d.ts.map +1 -0
- package/dist/kernel/kernel-types.js +2 -0
- package/dist/kernel/kernel-types.js.map +1 -0
- package/dist/kernel/kernel-utils.d.ts +29 -0
- package/dist/kernel/kernel-utils.d.ts.map +1 -0
- package/dist/kernel/kernel-utils.js +74 -0
- package/dist/kernel/kernel-utils.js.map +1 -0
- package/dist/kernel/kernel.d.ts +150 -0
- package/dist/kernel/kernel.d.ts.map +1 -0
- package/dist/kernel/kernel.js +536 -0
- package/dist/kernel/kernel.js.map +1 -0
- package/dist/kernel/max-steps-prompt.d.ts +3 -0
- package/dist/kernel/max-steps-prompt.d.ts.map +1 -0
- package/dist/kernel/max-steps-prompt.js +13 -0
- package/dist/kernel/max-steps-prompt.js.map +1 -0
- package/dist/kernel/model-caller.d.ts +35 -0
- package/dist/kernel/model-caller.d.ts.map +1 -0
- package/dist/kernel/model-caller.js +196 -0
- package/dist/kernel/model-caller.js.map +1 -0
- package/dist/kernel/permission-gate.d.ts +74 -0
- package/dist/kernel/permission-gate.d.ts.map +1 -0
- package/dist/kernel/permission-gate.js +258 -0
- package/dist/kernel/permission-gate.js.map +1 -0
- package/dist/kernel/run-loop.d.ts +69 -0
- package/dist/kernel/run-loop.d.ts.map +1 -0
- package/dist/kernel/run-loop.js +437 -0
- package/dist/kernel/run-loop.js.map +1 -0
- package/dist/kernel/run-orchestrator.d.ts +66 -0
- package/dist/kernel/run-orchestrator.d.ts.map +1 -0
- package/dist/kernel/run-orchestrator.js +182 -0
- package/dist/kernel/run-orchestrator.js.map +1 -0
- package/dist/kernel/run-state.d.ts +25 -0
- package/dist/kernel/run-state.d.ts.map +1 -0
- package/dist/kernel/run-state.js +86 -0
- package/dist/kernel/run-state.js.map +1 -0
- package/dist/kernel/self-correction.d.ts +27 -0
- package/dist/kernel/self-correction.d.ts.map +1 -0
- package/dist/kernel/self-correction.js +80 -0
- package/dist/kernel/self-correction.js.map +1 -0
- package/dist/kernel/state-machine.d.ts +4 -0
- package/dist/kernel/state-machine.d.ts.map +1 -0
- package/dist/kernel/state-machine.js +18 -0
- package/dist/kernel/state-machine.js.map +1 -0
- package/dist/kernel/step-executor.d.ts +72 -0
- package/dist/kernel/step-executor.d.ts.map +1 -0
- package/dist/kernel/step-executor.js +301 -0
- package/dist/kernel/step-executor.js.map +1 -0
- package/dist/kernel/step-runner.d.ts +57 -0
- package/dist/kernel/step-runner.d.ts.map +1 -0
- package/dist/kernel/step-runner.js +124 -0
- package/dist/kernel/step-runner.js.map +1 -0
- package/dist/kernel/sub-agent-runner.d.ts +45 -0
- package/dist/kernel/sub-agent-runner.d.ts.map +1 -0
- package/dist/kernel/sub-agent-runner.js +128 -0
- package/dist/kernel/sub-agent-runner.js.map +1 -0
- package/dist/kernel/termination.d.ts +85 -0
- package/dist/kernel/termination.d.ts.map +1 -0
- package/dist/kernel/termination.js +89 -0
- package/dist/kernel/termination.js.map +1 -0
- package/dist/kernel/tool-context-builder.d.ts +15 -0
- package/dist/kernel/tool-context-builder.d.ts.map +1 -0
- package/dist/kernel/tool-context-builder.js +23 -0
- package/dist/kernel/tool-context-builder.js.map +1 -0
- package/dist/kernel/tool-error-router.d.ts +25 -0
- package/dist/kernel/tool-error-router.d.ts.map +1 -0
- package/dist/kernel/tool-error-router.js +102 -0
- package/dist/kernel/tool-error-router.js.map +1 -0
- package/dist/kernel/tool-result-processor.d.ts +22 -0
- package/dist/kernel/tool-result-processor.d.ts.map +1 -0
- package/dist/kernel/tool-result-processor.js +47 -0
- package/dist/kernel/tool-result-processor.js.map +1 -0
- package/dist/kernel/tool-saga.d.ts +24 -0
- package/dist/kernel/tool-saga.d.ts.map +1 -0
- package/dist/kernel/tool-saga.js +59 -0
- package/dist/kernel/tool-saga.js.map +1 -0
- package/dist/knowledge/approval.d.ts +19 -0
- package/dist/knowledge/approval.d.ts.map +1 -0
- package/dist/knowledge/approval.js +60 -0
- package/dist/knowledge/approval.js.map +1 -0
- package/dist/knowledge/compressor.d.ts +46 -0
- package/dist/knowledge/compressor.d.ts.map +1 -0
- package/dist/knowledge/compressor.js +86 -0
- package/dist/knowledge/compressor.js.map +1 -0
- package/dist/knowledge/index.d.ts +16 -0
- package/dist/knowledge/index.d.ts.map +1 -0
- package/dist/knowledge/index.js +10 -0
- package/dist/knowledge/index.js.map +1 -0
- package/dist/knowledge/learning-engine.d.ts +47 -0
- package/dist/knowledge/learning-engine.d.ts.map +1 -0
- package/dist/knowledge/learning-engine.js +83 -0
- package/dist/knowledge/learning-engine.js.map +1 -0
- package/dist/knowledge/llm-compactor.d.ts +25 -0
- package/dist/knowledge/llm-compactor.d.ts.map +1 -0
- package/dist/knowledge/llm-compactor.js +79 -0
- package/dist/knowledge/llm-compactor.js.map +1 -0
- package/dist/knowledge/memory-bounded.d.ts +21 -0
- package/dist/knowledge/memory-bounded.d.ts.map +1 -0
- package/dist/knowledge/memory-bounded.js +63 -0
- package/dist/knowledge/memory-bounded.js.map +1 -0
- package/dist/knowledge/memory.d.ts +21 -0
- package/dist/knowledge/memory.d.ts.map +1 -0
- package/dist/knowledge/memory.js +85 -0
- package/dist/knowledge/memory.js.map +1 -0
- package/dist/knowledge/prompt-builder.d.ts +11 -0
- package/dist/knowledge/prompt-builder.d.ts.map +1 -0
- package/dist/knowledge/prompt-builder.js +23 -0
- package/dist/knowledge/prompt-builder.js.map +1 -0
- package/dist/knowledge/review.d.ts +26 -0
- package/dist/knowledge/review.d.ts.map +1 -0
- package/dist/knowledge/review.js +69 -0
- package/dist/knowledge/review.js.map +1 -0
- package/dist/knowledge/tool.d.ts +4 -0
- package/dist/knowledge/tool.d.ts.map +1 -0
- package/dist/knowledge/tool.js +27 -0
- package/dist/knowledge/tool.js.map +1 -0
- package/dist/knowledge/types.d.ts +27 -0
- package/dist/knowledge/types.d.ts.map +1 -0
- package/dist/knowledge/types.js +2 -0
- package/dist/knowledge/types.js.map +1 -0
- package/dist/logger.d.ts +11 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +44 -0
- package/dist/logger.js.map +1 -0
- package/dist/model.d.ts +90 -0
- package/dist/model.d.ts.map +1 -0
- package/dist/model.js +13 -0
- package/dist/model.js.map +1 -0
- package/dist/permission/checker.d.ts +29 -0
- package/dist/permission/checker.d.ts.map +1 -0
- package/dist/permission/checker.js +102 -0
- package/dist/permission/checker.js.map +1 -0
- package/dist/permission/evaluator.d.ts +24 -0
- package/dist/permission/evaluator.d.ts.map +1 -0
- package/dist/permission/evaluator.js +89 -0
- package/dist/permission/evaluator.js.map +1 -0
- package/dist/permission/permission.d.ts +29 -0
- package/dist/permission/permission.d.ts.map +1 -0
- package/dist/permission/permission.js +18 -0
- package/dist/permission/permission.js.map +1 -0
- package/dist/permission/saved.d.ts +34 -0
- package/dist/permission/saved.d.ts.map +1 -0
- package/dist/permission/saved.js +43 -0
- package/dist/permission/saved.js.map +1 -0
- package/dist/plugin/manager.d.ts +33 -0
- package/dist/plugin/manager.d.ts.map +1 -0
- package/dist/plugin/manager.js +114 -0
- package/dist/plugin/manager.js.map +1 -0
- package/dist/plugin/plugin-file-loader.d.ts +43 -0
- package/dist/plugin/plugin-file-loader.d.ts.map +1 -0
- package/dist/plugin/plugin-file-loader.js +115 -0
- package/dist/plugin/plugin-file-loader.js.map +1 -0
- package/dist/plugin/plugin-tool-provider.d.ts +22 -0
- package/dist/plugin/plugin-tool-provider.d.ts.map +1 -0
- package/dist/plugin/plugin-tool-provider.js +27 -0
- package/dist/plugin/plugin-tool-provider.js.map +1 -0
- package/dist/plugin.d.ts +130 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +2 -0
- package/dist/plugin.js.map +1 -0
- package/dist/session/compaction.d.ts +9 -0
- package/dist/session/compaction.d.ts.map +1 -0
- package/dist/session/compaction.js +2 -0
- package/dist/session/compaction.js.map +1 -0
- package/dist/session/durable-reload.d.ts +41 -0
- package/dist/session/durable-reload.d.ts.map +1 -0
- package/dist/session/durable-reload.js +72 -0
- package/dist/session/durable-reload.js.map +1 -0
- package/dist/session/in-memory-session-state.d.ts +19 -0
- package/dist/session/in-memory-session-state.d.ts.map +1 -0
- package/dist/session/in-memory-session-state.js +51 -0
- package/dist/session/in-memory-session-state.js.map +1 -0
- package/dist/session/null-store.d.ts +30 -0
- package/dist/session/null-store.d.ts.map +1 -0
- package/dist/session/null-store.js +78 -0
- package/dist/session/null-store.js.map +1 -0
- package/dist/session/run-coordinator.d.ts +52 -0
- package/dist/session/run-coordinator.d.ts.map +1 -0
- package/dist/session/run-coordinator.js +127 -0
- package/dist/session/run-coordinator.js.map +1 -0
- package/dist/session/session-state.d.ts +37 -0
- package/dist/session/session-state.d.ts.map +1 -0
- package/dist/session/session-state.js +2 -0
- package/dist/session/session-state.js.map +1 -0
- package/dist/session/session-tree.d.ts +34 -0
- package/dist/session/session-tree.d.ts.map +1 -0
- package/dist/session/session-tree.js +171 -0
- package/dist/session/session-tree.js.map +1 -0
- package/dist/session/store.d.ts +45 -0
- package/dist/session/store.d.ts.map +1 -0
- package/dist/session/store.js +2 -0
- package/dist/session/store.js.map +1 -0
- package/dist/session/title.d.ts +7 -0
- package/dist/session/title.d.ts.map +1 -0
- package/dist/session/title.js +22 -0
- package/dist/session/title.js.map +1 -0
- package/dist/skill/create-skill-tool.d.ts +13 -0
- package/dist/skill/create-skill-tool.d.ts.map +1 -0
- package/dist/skill/create-skill-tool.js +77 -0
- package/dist/skill/create-skill-tool.js.map +1 -0
- package/dist/skill/skill-def-registry.d.ts +27 -0
- package/dist/skill/skill-def-registry.d.ts.map +1 -0
- package/dist/skill/skill-def-registry.js +74 -0
- package/dist/skill/skill-def-registry.js.map +1 -0
- package/dist/skill/skill-file-loader.d.ts +50 -0
- package/dist/skill/skill-file-loader.d.ts.map +1 -0
- package/dist/skill/skill-file-loader.js +115 -0
- package/dist/skill/skill-file-loader.js.map +1 -0
- package/dist/skill/skill-parser.d.ts +7 -0
- package/dist/skill/skill-parser.d.ts.map +1 -0
- package/dist/skill/skill-parser.js +42 -0
- package/dist/skill/skill-parser.js.map +1 -0
- package/dist/skill/skill-tool.d.ts +10 -0
- package/dist/skill/skill-tool.d.ts.map +1 -0
- package/dist/skill/skill-tool.js +100 -0
- package/dist/skill/skill-tool.js.map +1 -0
- package/dist/system-context/index.d.ts +10 -0
- package/dist/system-context/index.d.ts.map +1 -0
- package/dist/system-context/index.js +7 -0
- package/dist/system-context/index.js.map +1 -0
- package/dist/system-context/prompts/anthropic.d.ts +2 -0
- package/dist/system-context/prompts/anthropic.d.ts.map +1 -0
- package/dist/system-context/prompts/anthropic.js +35 -0
- package/dist/system-context/prompts/anthropic.js.map +1 -0
- package/dist/system-context/prompts/deepseek.d.ts +2 -0
- package/dist/system-context/prompts/deepseek.d.ts.map +1 -0
- package/dist/system-context/prompts/deepseek.js +38 -0
- package/dist/system-context/prompts/deepseek.js.map +1 -0
- package/dist/system-context/prompts/default.d.ts +2 -0
- package/dist/system-context/prompts/default.d.ts.map +1 -0
- package/dist/system-context/prompts/default.js +43 -0
- package/dist/system-context/prompts/default.js.map +1 -0
- package/dist/system-context/prompts/gemini.d.ts +2 -0
- package/dist/system-context/prompts/gemini.d.ts.map +1 -0
- package/dist/system-context/prompts/gemini.js +38 -0
- package/dist/system-context/prompts/gemini.js.map +1 -0
- package/dist/system-context/prompts/index.d.ts +3 -0
- package/dist/system-context/prompts/index.d.ts.map +1 -0
- package/dist/system-context/prompts/index.js +24 -0
- package/dist/system-context/prompts/index.js.map +1 -0
- package/dist/system-context/prompts/openai.d.ts +2 -0
- package/dist/system-context/prompts/openai.d.ts.map +1 -0
- package/dist/system-context/prompts/openai.js +31 -0
- package/dist/system-context/prompts/openai.js.map +1 -0
- package/dist/system-context/prompts/system-prompt-source.d.ts +3 -0
- package/dist/system-context/prompts/system-prompt-source.d.ts.map +1 -0
- package/dist/system-context/prompts/system-prompt-source.js +21 -0
- package/dist/system-context/prompts/system-prompt-source.js.map +1 -0
- package/dist/system-context/registry.d.ts +3 -0
- package/dist/system-context/registry.d.ts.map +1 -0
- package/dist/system-context/registry.js +73 -0
- package/dist/system-context/registry.js.map +1 -0
- package/dist/system-context/sources/agent-source.d.ts +14 -0
- package/dist/system-context/sources/agent-source.d.ts.map +1 -0
- package/dist/system-context/sources/agent-source.js +50 -0
- package/dist/system-context/sources/agent-source.js.map +1 -0
- package/dist/system-context/sources/date-source.d.ts +7 -0
- package/dist/system-context/sources/date-source.d.ts.map +1 -0
- package/dist/system-context/sources/date-source.js +26 -0
- package/dist/system-context/sources/date-source.js.map +1 -0
- package/dist/system-context/sources/instructions-source.d.ts +8 -0
- package/dist/system-context/sources/instructions-source.d.ts.map +1 -0
- package/dist/system-context/sources/instructions-source.js +50 -0
- package/dist/system-context/sources/instructions-source.js.map +1 -0
- package/dist/system-context/sources/skill-guidance-source.d.ts +7 -0
- package/dist/system-context/sources/skill-guidance-source.d.ts.map +1 -0
- package/dist/system-context/sources/skill-guidance-source.js +41 -0
- package/dist/system-context/sources/skill-guidance-source.js.map +1 -0
- package/dist/system-context/sources/workspace-source.d.ts +10 -0
- package/dist/system-context/sources/workspace-source.d.ts.map +1 -0
- package/dist/system-context/sources/workspace-source.js +29 -0
- package/dist/system-context/sources/workspace-source.js.map +1 -0
- package/dist/system-context/types.d.ts +37 -0
- package/dist/system-context/types.d.ts.map +1 -0
- package/dist/system-context/types.js +2 -0
- package/dist/system-context/types.js.map +1 -0
- package/dist/tool/arity.d.ts +22 -0
- package/dist/tool/arity.d.ts.map +1 -0
- package/dist/tool/arity.js +96 -0
- package/dist/tool/arity.js.map +1 -0
- package/dist/tool/bridge.d.ts +7 -0
- package/dist/tool/bridge.d.ts.map +1 -0
- package/dist/tool/bridge.js +48 -0
- package/dist/tool/bridge.js.map +1 -0
- package/dist/tool/context.d.ts +43 -0
- package/dist/tool/context.d.ts.map +1 -0
- package/dist/tool/context.js +2 -0
- package/dist/tool/context.js.map +1 -0
- package/dist/tool/define-tool.d.ts +45 -0
- package/dist/tool/define-tool.d.ts.map +1 -0
- package/dist/tool/define-tool.js +120 -0
- package/dist/tool/define-tool.js.map +1 -0
- package/dist/tool/definitions.d.ts +22 -0
- package/dist/tool/definitions.d.ts.map +1 -0
- package/dist/tool/definitions.js +2 -0
- package/dist/tool/definitions.js.map +1 -0
- package/dist/tool/description-lint.d.ts +25 -0
- package/dist/tool/description-lint.d.ts.map +1 -0
- package/dist/tool/description-lint.js +90 -0
- package/dist/tool/description-lint.js.map +1 -0
- package/dist/tool/diff.d.ts +7 -0
- package/dist/tool/diff.d.ts.map +1 -0
- package/dist/tool/diff.js +26 -0
- package/dist/tool/diff.js.map +1 -0
- package/dist/tool/domain.d.ts +39 -0
- package/dist/tool/domain.d.ts.map +1 -0
- package/dist/tool/domain.js +20 -0
- package/dist/tool/domain.js.map +1 -0
- package/dist/tool/file-history.d.ts +43 -0
- package/dist/tool/file-history.d.ts.map +1 -0
- package/dist/tool/file-history.js +55 -0
- package/dist/tool/file-history.js.map +1 -0
- package/dist/tool/file-tools.d.ts +51 -0
- package/dist/tool/file-tools.d.ts.map +1 -0
- package/dist/tool/file-tools.js +534 -0
- package/dist/tool/file-tools.js.map +1 -0
- package/dist/tool/git-tools.d.ts +8 -0
- package/dist/tool/git-tools.d.ts.map +1 -0
- package/dist/tool/git-tools.js +114 -0
- package/dist/tool/git-tools.js.map +1 -0
- package/dist/tool/history-hook.d.ts +4 -0
- package/dist/tool/history-hook.d.ts.map +1 -0
- package/dist/tool/history-hook.js +62 -0
- package/dist/tool/history-hook.js.map +1 -0
- package/dist/tool/image-tools.d.ts +11 -0
- package/dist/tool/image-tools.d.ts.map +1 -0
- package/dist/tool/image-tools.js +55 -0
- package/dist/tool/image-tools.js.map +1 -0
- package/dist/tool/in-memory-tool-registry.d.ts +13 -0
- package/dist/tool/in-memory-tool-registry.d.ts.map +1 -0
- package/dist/tool/in-memory-tool-registry.js +39 -0
- package/dist/tool/in-memory-tool-registry.js.map +1 -0
- package/dist/tool/index.d.ts +45 -0
- package/dist/tool/index.d.ts.map +1 -0
- package/dist/tool/index.js +33 -0
- package/dist/tool/index.js.map +1 -0
- package/dist/tool/json-schema.d.ts +22 -0
- package/dist/tool/json-schema.d.ts.map +1 -0
- package/dist/tool/json-schema.js +2 -0
- package/dist/tool/json-schema.js.map +1 -0
- package/dist/tool/lazy-registry.d.ts +23 -0
- package/dist/tool/lazy-registry.d.ts.map +1 -0
- package/dist/tool/lazy-registry.js +64 -0
- package/dist/tool/lazy-registry.js.map +1 -0
- package/dist/tool/policy.d.ts +5 -0
- package/dist/tool/policy.d.ts.map +1 -0
- package/dist/tool/policy.js +2 -0
- package/dist/tool/policy.js.map +1 -0
- package/dist/tool/provider-helpers.d.ts +31 -0
- package/dist/tool/provider-helpers.d.ts.map +1 -0
- package/dist/tool/provider-helpers.js +54 -0
- package/dist/tool/provider-helpers.js.map +1 -0
- package/dist/tool/provider.d.ts +80 -0
- package/dist/tool/provider.d.ts.map +1 -0
- package/dist/tool/provider.js +96 -0
- package/dist/tool/provider.js.map +1 -0
- package/dist/tool/providers/agent-provider.d.ts +26 -0
- package/dist/tool/providers/agent-provider.d.ts.map +1 -0
- package/dist/tool/providers/agent-provider.js +42 -0
- package/dist/tool/providers/agent-provider.js.map +1 -0
- package/dist/tool/providers/builtin-provider.d.ts +28 -0
- package/dist/tool/providers/builtin-provider.d.ts.map +1 -0
- package/dist/tool/providers/builtin-provider.js +67 -0
- package/dist/tool/providers/builtin-provider.js.map +1 -0
- package/dist/tool/providers/file-loader.d.ts +47 -0
- package/dist/tool/providers/file-loader.d.ts.map +1 -0
- package/dist/tool/providers/file-loader.js +120 -0
- package/dist/tool/providers/file-loader.js.map +1 -0
- package/dist/tool/providers/index.d.ts +8 -0
- package/dist/tool/providers/index.d.ts.map +1 -0
- package/dist/tool/providers/index.js +8 -0
- package/dist/tool/providers/index.js.map +1 -0
- package/dist/tool/providers/skill-provider.d.ts +23 -0
- package/dist/tool/providers/skill-provider.d.ts.map +1 -0
- package/dist/tool/providers/skill-provider.js +28 -0
- package/dist/tool/providers/skill-provider.js.map +1 -0
- package/dist/tool/question-tool.d.ts +15 -0
- package/dist/tool/question-tool.d.ts.map +1 -0
- package/dist/tool/question-tool.js +51 -0
- package/dist/tool/question-tool.js.map +1 -0
- package/dist/tool/read-tracker.d.ts +8 -0
- package/dist/tool/read-tracker.d.ts.map +1 -0
- package/dist/tool/read-tracker.js +33 -0
- package/dist/tool/read-tracker.js.map +1 -0
- package/dist/tool/registry.d.ts +58 -0
- package/dist/tool/registry.d.ts.map +1 -0
- package/dist/tool/registry.js +128 -0
- package/dist/tool/registry.js.map +1 -0
- package/dist/tool/runtime.d.ts +59 -0
- package/dist/tool/runtime.d.ts.map +1 -0
- package/dist/tool/runtime.js +108 -0
- package/dist/tool/runtime.js.map +1 -0
- package/dist/tool/sandbox.d.ts +12 -0
- package/dist/tool/sandbox.d.ts.map +1 -0
- package/dist/tool/sandbox.js +72 -0
- package/dist/tool/sandbox.js.map +1 -0
- package/dist/tool/search-tools.d.ts +6 -0
- package/dist/tool/search-tools.d.ts.map +1 -0
- package/dist/tool/search-tools.js +118 -0
- package/dist/tool/search-tools.js.map +1 -0
- package/dist/tool/shell-tool.d.ts +19 -0
- package/dist/tool/shell-tool.d.ts.map +1 -0
- package/dist/tool/shell-tool.js +139 -0
- package/dist/tool/shell-tool.js.map +1 -0
- package/dist/tool/todo-tool.d.ts +2 -0
- package/dist/tool/todo-tool.d.ts.map +1 -0
- package/dist/tool/todo-tool.js +121 -0
- package/dist/tool/todo-tool.js.map +1 -0
- package/dist/tool/tool-registry-types.d.ts +14 -0
- package/dist/tool/tool-registry-types.d.ts.map +1 -0
- package/dist/tool/tool-registry-types.js +2 -0
- package/dist/tool/tool-registry-types.js.map +1 -0
- package/dist/tool/validate.d.ts +9 -0
- package/dist/tool/validate.d.ts.map +1 -0
- package/dist/tool/validate.js +26 -0
- package/dist/tool/validate.js.map +1 -0
- package/dist/tool/web-search-tool.d.ts +24 -0
- package/dist/tool/web-search-tool.d.ts.map +1 -0
- package/dist/tool/web-search-tool.js +66 -0
- package/dist/tool/web-search-tool.js.map +1 -0
- package/dist/tool/web-tools.d.ts +10 -0
- package/dist/tool/web-tools.d.ts.map +1 -0
- package/dist/tool/web-tools.js +61 -0
- package/dist/tool/web-tools.js.map +1 -0
- package/dist/tracer.d.ts +21 -0
- package/dist/tracer.d.ts.map +1 -0
- package/dist/tracer.js +62 -0
- package/dist/tracer.js.map +1 -0
- package/dist/workspace.d.ts +33 -0
- package/dist/workspace.d.ts.map +1 -0
- package/dist/workspace.js +135 -0
- package/dist/workspace.js.map +1 -0
- package/dist/yaml-frontmatter.d.ts +5 -0
- package/dist/yaml-frontmatter.d.ts.map +1 -0
- package/dist/yaml-frontmatter.js +58 -0
- package/dist/yaml-frontmatter.js.map +1 -0
- package/package.json +108 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Nguyen Thanh Vinh
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
# @vnt/agent-core
|
|
2
|
+
|
|
3
|
+
Core agent engine for VNT Agent — kernel, tools, sessions, plugins, permissions, and knowledge.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
# npm
|
|
9
|
+
npm install @vnt/agent-core
|
|
10
|
+
|
|
11
|
+
# pnpm (monorepo)
|
|
12
|
+
pnpm add @vnt/agent-core
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Quick Start
|
|
16
|
+
|
|
17
|
+
```typescript
|
|
18
|
+
import { AgentKernel, InMemoryToolRegistry, InMemorySessionState } from '@vnt/agent-core';
|
|
19
|
+
|
|
20
|
+
const kernel = new AgentKernel({
|
|
21
|
+
modelProvider: myProvider,
|
|
22
|
+
toolRegistry: new InMemoryToolRegistry(),
|
|
23
|
+
sessionState: new InMemorySessionState(),
|
|
24
|
+
});
|
|
25
|
+
|
|
26
|
+
const handle = await kernel.startRun({ prompt: 'Refactor this function' });
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## API Reference
|
|
30
|
+
|
|
31
|
+
| Export | Type | Description |
|
|
32
|
+
|--------|------|-------------|
|
|
33
|
+
| `AgentKernel` | Class | Run loop orchestrator with circuit breaker |
|
|
34
|
+
| `ModelCaller` | Class | Model invocation with streaming |
|
|
35
|
+
| `PermissionGate` | Class | 4-phase permission evaluation |
|
|
36
|
+
| `ToolRegistry`, `InMemoryToolRegistry` | Class | Tool registration and lookup |
|
|
37
|
+
| `ToolRuntime` | Class | Tool execution with sandbox and hooks |
|
|
38
|
+
| `ToolSaga` | Class | Transactional tool rollback support |
|
|
39
|
+
| `SessionRunCoordinator` | Class | Session-aware run lifecycle management |
|
|
40
|
+
| `DefaultPluginManager` | Class | Plugin activation and lifecycle |
|
|
41
|
+
| `InMemoryEventBus` | Class | Typed pub/sub event bus |
|
|
42
|
+
| `createReadFileTool`, `createShellTool`, ... | Function | 36 built-in tool factories |
|
|
43
|
+
| `defineTool` | Function | Define custom tools with Zod schemas |
|
|
44
|
+
| `LearningEngine`, `ContextCompressor` | Class | Knowledge and memory management |
|
|
45
|
+
| `WorkspaceManager` | Class | Multi-workspace support |
|
|
46
|
+
|
|
47
|
+
## Subpath Imports
|
|
48
|
+
|
|
49
|
+
```typescript
|
|
50
|
+
import { AgentKernel } from '@vnt/agent-core'; // main
|
|
51
|
+
import { defineTool } from '@vnt/agent-core/tool/define'; // deep import
|
|
52
|
+
import { EventBus } from '@vnt/agent-core/event-bus'; // deep import
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
## License
|
|
56
|
+
|
|
57
|
+
MIT
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { AgentConfig, SkillSource } from "@vinhnt-sdk/schema";
|
|
2
|
+
export interface AgentDefinition {
|
|
3
|
+
readonly config: AgentConfig;
|
|
4
|
+
readonly source: SkillSource;
|
|
5
|
+
readonly raw: string;
|
|
6
|
+
}
|
|
7
|
+
export interface AgentDefParser {
|
|
8
|
+
parse(raw: string, source: SkillSource): AgentDefinition;
|
|
9
|
+
parseFile(filePath: string, source: SkillSource): Promise<AgentDefinition>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=agent-def.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-def.d.ts","sourceRoot":"","sources":["../../src/agent/agent-def.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEnE,MAAM,WAAW,eAAe;IAC9B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,eAAe,CAAC;IACzD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;CAC5E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-def.js","sourceRoot":"","sources":["../../src/agent/agent-def.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import type { AgentId, AgentConfig, AgentProfile, AgentCapabilities, AgentPermissions } from "@vinhnt-sdk/schema";
|
|
2
|
+
export interface CreateAgentParams {
|
|
3
|
+
id?: AgentId;
|
|
4
|
+
profile: AgentProfile;
|
|
5
|
+
capabilities?: AgentCapabilities;
|
|
6
|
+
permissions?: AgentPermissions;
|
|
7
|
+
systemPrompt?: string;
|
|
8
|
+
temperature?: number;
|
|
9
|
+
}
|
|
10
|
+
export interface SubAgentParams {
|
|
11
|
+
id?: AgentId;
|
|
12
|
+
profile: Pick<AgentProfile, "name" | "description">;
|
|
13
|
+
capabilities?: AgentCapabilities;
|
|
14
|
+
permissions?: AgentPermissions;
|
|
15
|
+
systemPrompt?: string;
|
|
16
|
+
temperature?: number;
|
|
17
|
+
}
|
|
18
|
+
export declare function createAgent(params: CreateAgentParams): AgentConfig;
|
|
19
|
+
export declare function validateAgentConfig(config: AgentConfig): string[];
|
|
20
|
+
export declare function createSubAgent(params: SubAgentParams, parent: AgentConfig): AgentConfig;
|
|
21
|
+
//# sourceMappingURL=agent-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-factory.d.ts","sourceRoot":"","sources":["../../src/agent/agent-factory.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAgB,MAAM,oBAAoB,CAAC;AAIhI,MAAM,WAAW,iBAAiB;IAChC,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,OAAO,EAAE,YAAY,CAAC;IACtB,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,CAAC,EAAE,OAAO,CAAC;IACb,OAAO,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC;IACpD,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,WAAW,CAAC,EAAE,gBAAgB,CAAC;IAC/B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAMD,wBAAgB,WAAW,CAAC,MAAM,EAAE,iBAAiB,GAAG,WAAW,CAgBlE;AAkDD,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,WAAW,GAAG,MAAM,EAAE,CAuBjE;AAED,wBAAgB,cAAc,CAAC,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,WAAW,GAAG,WAAW,CAsBvF"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import { mergeRulesets, normalizePermissions } from "../permission/checker.js";
|
|
2
|
+
import { DEFAULT_MAX_STEPS } from "../kernel/kernel-utils.js";
|
|
3
|
+
function generateId() {
|
|
4
|
+
return `agent_${Date.now()}_${Math.random().toString(36).slice(2, 8)}`;
|
|
5
|
+
}
|
|
6
|
+
export function createAgent(params) {
|
|
7
|
+
const { id, profile, capabilities, permissions, systemPrompt, temperature } = params;
|
|
8
|
+
if (!profile.name)
|
|
9
|
+
throw new Error("Agent name is required");
|
|
10
|
+
if (!profile.description)
|
|
11
|
+
throw new Error("Agent description is required");
|
|
12
|
+
return {
|
|
13
|
+
id: id ?? generateId(),
|
|
14
|
+
profile,
|
|
15
|
+
capabilities: {
|
|
16
|
+
streaming: true,
|
|
17
|
+
thinking: false,
|
|
18
|
+
...capabilities,
|
|
19
|
+
},
|
|
20
|
+
permissions: { mode: "primary", ...permissions },
|
|
21
|
+
...(systemPrompt !== undefined ? { systemPrompt } : {}),
|
|
22
|
+
...(temperature !== undefined ? { temperature } : {}),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
function buildRuleset(parent, child) {
|
|
26
|
+
return { ...mergeRulesets(normalizePermissions(child), normalizePermissions(parent.permissions)) };
|
|
27
|
+
}
|
|
28
|
+
function buildPermissions(parent, child) {
|
|
29
|
+
if (!parent.permissions && !child)
|
|
30
|
+
return undefined;
|
|
31
|
+
// Use ruleset-based inheritance when available
|
|
32
|
+
if (parent.permissions?.ruleset || child?.ruleset) {
|
|
33
|
+
const merged = buildRuleset(parent, child);
|
|
34
|
+
const perms = {
|
|
35
|
+
mode: child?.mode ?? "subagent",
|
|
36
|
+
};
|
|
37
|
+
if (merged)
|
|
38
|
+
perms.ruleset = merged;
|
|
39
|
+
return perms;
|
|
40
|
+
}
|
|
41
|
+
// Legacy field-based inheritance (backwards compat)
|
|
42
|
+
const allowedTools = child?.allowedTools ?? parent.permissions?.allowedTools;
|
|
43
|
+
const deniedTools = [
|
|
44
|
+
...(parent.permissions?.deniedTools ?? []),
|
|
45
|
+
...(child?.deniedTools ?? []),
|
|
46
|
+
];
|
|
47
|
+
const allowedRisks = child?.allowedRisks ?? parent.permissions?.allowedRisks;
|
|
48
|
+
const perms = {
|
|
49
|
+
mode: child?.mode ?? "subagent",
|
|
50
|
+
};
|
|
51
|
+
if (allowedTools)
|
|
52
|
+
perms.allowedTools = allowedTools;
|
|
53
|
+
if (deniedTools.length > 0)
|
|
54
|
+
perms.deniedTools = deniedTools;
|
|
55
|
+
if (allowedRisks)
|
|
56
|
+
perms.allowedRisks = allowedRisks;
|
|
57
|
+
const parentMaxSteps = parent.permissions?.maxSteps ?? DEFAULT_MAX_STEPS;
|
|
58
|
+
const childMaxSteps = child?.maxSteps;
|
|
59
|
+
if (childMaxSteps !== undefined || parent.permissions?.maxSteps !== undefined) {
|
|
60
|
+
perms.maxSteps = Math.min(childMaxSteps ?? parentMaxSteps, parentMaxSteps);
|
|
61
|
+
}
|
|
62
|
+
const DEFAULT_MAX_TOKENS = 100000;
|
|
63
|
+
const parentMaxTokens = parent.permissions?.maxTokens ?? DEFAULT_MAX_TOKENS;
|
|
64
|
+
const childMaxTokens = child?.maxTokens;
|
|
65
|
+
if (childMaxTokens !== undefined || parent.permissions?.maxTokens !== undefined) {
|
|
66
|
+
perms.maxTokens = Math.min(childMaxTokens ?? parentMaxTokens, parentMaxTokens);
|
|
67
|
+
}
|
|
68
|
+
return Object.keys(perms).length > 0 ? perms : undefined;
|
|
69
|
+
}
|
|
70
|
+
export function validateAgentConfig(config) {
|
|
71
|
+
const errors = [];
|
|
72
|
+
if (!config.id)
|
|
73
|
+
errors.push("Agent id is required");
|
|
74
|
+
if (!config.profile?.name)
|
|
75
|
+
errors.push("Agent profile.name is required");
|
|
76
|
+
if (!config.profile?.description)
|
|
77
|
+
errors.push("Agent profile.description is required");
|
|
78
|
+
const mode = config.permissions?.mode;
|
|
79
|
+
if (mode && !["primary", "subagent", "all"].includes(mode)) {
|
|
80
|
+
errors.push(`Invalid mode: ${mode}. Expected primary, subagent, or all`);
|
|
81
|
+
}
|
|
82
|
+
const rules = config.permissions?.ruleset?.rules;
|
|
83
|
+
if (rules) {
|
|
84
|
+
for (let i = 0; i < rules.length; i++) {
|
|
85
|
+
const r = rules[i];
|
|
86
|
+
if (!r.effect || !["allow", "deny"].includes(r.effect)) {
|
|
87
|
+
errors.push(`Rule[${i}]: effect must be 'allow' or 'deny'`);
|
|
88
|
+
}
|
|
89
|
+
if (!r.target)
|
|
90
|
+
errors.push(`Rule[${i}]: target is required`);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
return errors;
|
|
94
|
+
}
|
|
95
|
+
export function createSubAgent(params, parent) {
|
|
96
|
+
const { id, profile, capabilities, permissions, systemPrompt, temperature } = params;
|
|
97
|
+
if (!profile.name)
|
|
98
|
+
throw new Error("Sub-agent name is required");
|
|
99
|
+
if (!profile.description)
|
|
100
|
+
throw new Error("Sub-agent description is required");
|
|
101
|
+
return {
|
|
102
|
+
id: id ?? generateId(),
|
|
103
|
+
profile: {
|
|
104
|
+
name: profile.name,
|
|
105
|
+
description: profile.description,
|
|
106
|
+
...(parent.profile.version ? { version: parent.profile.version } : {}),
|
|
107
|
+
...(parent.profile.author ? { author: parent.profile.author } : {}),
|
|
108
|
+
},
|
|
109
|
+
capabilities: {
|
|
110
|
+
streaming: parent.capabilities.streaming ?? true,
|
|
111
|
+
thinking: parent.capabilities.thinking ?? false,
|
|
112
|
+
...capabilities,
|
|
113
|
+
},
|
|
114
|
+
...(buildPermissions(parent, permissions) ? { permissions: buildPermissions(parent, permissions) } : {}),
|
|
115
|
+
...(systemPrompt !== undefined ? { systemPrompt } : {}),
|
|
116
|
+
...(temperature !== undefined ? { temperature } : {}),
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
//# sourceMappingURL=agent-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-factory.js","sourceRoot":"","sources":["../../src/agent/agent-factory.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { AgentDefinition, AgentDefParser } from "../agent/agent-def.js";
|
|
2
|
+
import type { SkillSource } from "@vinhnt-sdk/schema";
|
|
3
|
+
/**
|
|
4
|
+
* AgentFileLoader — Discovers and loads agents from .vnt/agents/ directories.
|
|
5
|
+
*
|
|
6
|
+
* Supports multiple discovery locations:
|
|
7
|
+
* 1. Workspace-local: .vnt/agents/<name>.md
|
|
8
|
+
* 2. Global: ~/.vnt/agents/<name>.md
|
|
9
|
+
* 3. Claude-compatible: .claude/agents/<name>.md
|
|
10
|
+
* 4. Agents-compatible: .agents/agents/<name>.md
|
|
11
|
+
*/
|
|
12
|
+
export declare class AgentFileLoader {
|
|
13
|
+
private readonly parser;
|
|
14
|
+
constructor(parser?: AgentDefParser);
|
|
15
|
+
/**
|
|
16
|
+
* Load agents from a single directory.
|
|
17
|
+
*/
|
|
18
|
+
loadFromDirectory(dir: string, source: SkillSource): Promise<AgentDefinition[]>;
|
|
19
|
+
/**
|
|
20
|
+
* Discover agents from all conventional locations.
|
|
21
|
+
*
|
|
22
|
+
* Discovery order (workspace overrides global):
|
|
23
|
+
* 1. Global: ~/.vnt/agents/
|
|
24
|
+
* 2. Global Claude: ~/.claude/agents/
|
|
25
|
+
* 3. Global Agents: ~/.agents/agents/
|
|
26
|
+
* 4. Workspace: .vnt/agents/
|
|
27
|
+
* 5. Workspace Claude: .claude/agents/
|
|
28
|
+
* 6. Workspace Agents: .agents/agents/
|
|
29
|
+
*/
|
|
30
|
+
discover(workspaceRoot: string): Promise<AgentDefinition[]>;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* AgentFileProvider — Integrates discovered agents into the kernel.
|
|
34
|
+
*/
|
|
35
|
+
export declare class AgentFileProvider {
|
|
36
|
+
private agents;
|
|
37
|
+
/**
|
|
38
|
+
* Load agents from all conventional locations.
|
|
39
|
+
*/
|
|
40
|
+
load(workspaceRoot: string): Promise<void>;
|
|
41
|
+
/**
|
|
42
|
+
* Get all discovered agents.
|
|
43
|
+
*/
|
|
44
|
+
getAgents(): readonly AgentDefinition[];
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=agent-file-loader.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-file-loader.d.ts","sourceRoot":"","sources":["../../src/agent/agent-file-loader.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC7E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGtD;;;;;;;;GAQG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAiB;gBAE5B,MAAM,CAAC,EAAE,cAAc;IAInC;;OAEG;IACG,iBAAiB,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;IA0BrF;;;;;;;;;;OAUG;IACG,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;CAuClE;AAED;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,MAAM,CAAyB;IAEvC;;OAEG;IACG,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAKhD;;OAEG;IACH,SAAS,IAAI,SAAS,eAAe,EAAE;CAGxC"}
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
import { readdir, readFile } from "node:fs/promises";
|
|
2
|
+
import { join } from "node:path";
|
|
3
|
+
import { AgentParser } from "../agent/agent-parser.js";
|
|
4
|
+
/**
|
|
5
|
+
* AgentFileLoader — Discovers and loads agents from .vnt/agents/ directories.
|
|
6
|
+
*
|
|
7
|
+
* Supports multiple discovery locations:
|
|
8
|
+
* 1. Workspace-local: .vnt/agents/<name>.md
|
|
9
|
+
* 2. Global: ~/.vnt/agents/<name>.md
|
|
10
|
+
* 3. Claude-compatible: .claude/agents/<name>.md
|
|
11
|
+
* 4. Agents-compatible: .agents/agents/<name>.md
|
|
12
|
+
*/
|
|
13
|
+
export class AgentFileLoader {
|
|
14
|
+
parser;
|
|
15
|
+
constructor(parser) {
|
|
16
|
+
this.parser = parser ?? new AgentParser();
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Load agents from a single directory.
|
|
20
|
+
*/
|
|
21
|
+
async loadFromDirectory(dir, source) {
|
|
22
|
+
const agents = [];
|
|
23
|
+
try {
|
|
24
|
+
const entries = await readdir(dir, { withFileTypes: true });
|
|
25
|
+
for (const entry of entries) {
|
|
26
|
+
if (!entry.isFile())
|
|
27
|
+
continue;
|
|
28
|
+
if (!entry.name.endsWith(".md"))
|
|
29
|
+
continue;
|
|
30
|
+
const filePath = join(dir, entry.name);
|
|
31
|
+
try {
|
|
32
|
+
const raw = await readFile(filePath, "utf-8");
|
|
33
|
+
const agent = this.parser.parse(raw, source);
|
|
34
|
+
agents.push(agent);
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
console.error(`[AgentFileLoader] Failed to load agent from ${filePath}:`, error);
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
// Directory doesn't exist, ignore
|
|
43
|
+
}
|
|
44
|
+
return agents;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Discover agents from all conventional locations.
|
|
48
|
+
*
|
|
49
|
+
* Discovery order (workspace overrides global):
|
|
50
|
+
* 1. Global: ~/.vnt/agents/
|
|
51
|
+
* 2. Global Claude: ~/.claude/agents/
|
|
52
|
+
* 3. Global Agents: ~/.agents/agents/
|
|
53
|
+
* 4. Workspace: .vnt/agents/
|
|
54
|
+
* 5. Workspace Claude: .claude/agents/
|
|
55
|
+
* 6. Workspace Agents: .agents/agents/
|
|
56
|
+
*/
|
|
57
|
+
async discover(workspaceRoot) {
|
|
58
|
+
const home = process.env.HOME || process.env.USERPROFILE || "";
|
|
59
|
+
const allAgents = [];
|
|
60
|
+
// Global locations
|
|
61
|
+
const globalLocations = [
|
|
62
|
+
{ dir: join(home, ".vnt", "agents"), type: "global", priority: 0 },
|
|
63
|
+
{ dir: join(home, ".claude", "agents"), type: "global", priority: 0 },
|
|
64
|
+
{ dir: join(home, ".agents", "agents"), type: "global", priority: 0 },
|
|
65
|
+
];
|
|
66
|
+
// Workspace locations
|
|
67
|
+
const workspaceLocations = [
|
|
68
|
+
{ dir: join(workspaceRoot, ".vnt", "agents"), type: "project", priority: 10 },
|
|
69
|
+
{ dir: join(workspaceRoot, ".claude", "agents"), type: "project", priority: 10 },
|
|
70
|
+
{ dir: join(workspaceRoot, ".agents", "agents"), type: "project", priority: 10 },
|
|
71
|
+
];
|
|
72
|
+
// Load from all locations
|
|
73
|
+
for (const loc of [...globalLocations, ...workspaceLocations]) {
|
|
74
|
+
const agents = await this.loadFromDirectory(loc.dir, {
|
|
75
|
+
type: loc.type,
|
|
76
|
+
dir: loc.dir,
|
|
77
|
+
priority: loc.priority,
|
|
78
|
+
});
|
|
79
|
+
allAgents.push(...agents);
|
|
80
|
+
}
|
|
81
|
+
// Deduplicate by ID (workspace > global)
|
|
82
|
+
const agentMap = new Map();
|
|
83
|
+
for (const agent of allAgents) {
|
|
84
|
+
const existing = agentMap.get(agent.config.id);
|
|
85
|
+
if (!existing || (agent.source?.priority ?? 0) > (existing.source?.priority ?? 0)) {
|
|
86
|
+
agentMap.set(agent.config.id, agent);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return [...agentMap.values()];
|
|
90
|
+
}
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* AgentFileProvider — Integrates discovered agents into the kernel.
|
|
94
|
+
*/
|
|
95
|
+
export class AgentFileProvider {
|
|
96
|
+
agents = [];
|
|
97
|
+
/**
|
|
98
|
+
* Load agents from all conventional locations.
|
|
99
|
+
*/
|
|
100
|
+
async load(workspaceRoot) {
|
|
101
|
+
const loader = new AgentFileLoader();
|
|
102
|
+
this.agents = await loader.discover(workspaceRoot);
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Get all discovered agents.
|
|
106
|
+
*/
|
|
107
|
+
getAgents() {
|
|
108
|
+
return this.agents;
|
|
109
|
+
}
|
|
110
|
+
}
|
|
111
|
+
//# sourceMappingURL=agent-file-loader.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-file-loader.js","sourceRoot":"","sources":["../../src/agent/agent-file-loader.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AgentConfig, SkillSource } from "@vinhnt-sdk/schema";
|
|
2
|
+
import type { AgentDefinition, AgentDefParser } from "./agent-def.js";
|
|
3
|
+
export declare class AgentParser implements AgentDefParser {
|
|
4
|
+
parse(raw: string, source: SkillSource): AgentDefinition;
|
|
5
|
+
parseFile(filePath: string, source: SkillSource): Promise<AgentDefinition>;
|
|
6
|
+
private mapPermissions;
|
|
7
|
+
toAgentConfig(def: AgentDefinition): AgentConfig;
|
|
8
|
+
}
|
|
9
|
+
//# sourceMappingURL=agent-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-parser.d.ts","sourceRoot":"","sources":["../../src/agent/agent-parser.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAW,WAAW,EAAa,WAAW,EAAa,MAAM,oBAAoB,CAAC;AAClG,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAItE,qBAAa,WAAY,YAAW,cAAc;IAChD,KAAK,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,eAAe;IAgDlD,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC;IAKhF,OAAO,CAAC,cAAc;IAetB,aAAa,CAAC,GAAG,EAAE,eAAe,GAAG,WAAW;CAGjD"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import { validateAgentConfig } from "./agent-factory.js";
|
|
3
|
+
import { parseFrontmatter } from "../yaml-frontmatter.js";
|
|
4
|
+
export class AgentParser {
|
|
5
|
+
parse(raw, source) {
|
|
6
|
+
const { frontmatter, body } = parseFrontmatter(raw);
|
|
7
|
+
const nameRaw = frontmatter.name;
|
|
8
|
+
const id = (typeof nameRaw === "string" ? nameRaw : crypto.randomUUID());
|
|
9
|
+
const mode = (frontmatter.mode ?? "all");
|
|
10
|
+
const model = typeof frontmatter.model === "string" ? frontmatter.model : undefined;
|
|
11
|
+
const hidden = typeof frontmatter.hidden === "boolean" ? frontmatter.hidden : undefined;
|
|
12
|
+
const tools = Array.isArray(frontmatter.tools) ? frontmatter.tools : undefined;
|
|
13
|
+
const maxSteps = typeof frontmatter.maxSteps === "number" ? frontmatter.maxSteps : undefined;
|
|
14
|
+
const temperature = typeof frontmatter.temperature === "number" ? frontmatter.temperature : undefined;
|
|
15
|
+
const perm = frontmatter.permission;
|
|
16
|
+
const rules = perm
|
|
17
|
+
? this.mapPermissions(perm)
|
|
18
|
+
: undefined;
|
|
19
|
+
const config = {
|
|
20
|
+
id,
|
|
21
|
+
profile: {
|
|
22
|
+
name: typeof frontmatter.name === "string" ? frontmatter.name : "unnamed",
|
|
23
|
+
description: typeof frontmatter.description === "string" ? frontmatter.description : "",
|
|
24
|
+
...(model !== undefined ? { model } : {}),
|
|
25
|
+
...(hidden !== undefined ? { hidden } : {}),
|
|
26
|
+
},
|
|
27
|
+
capabilities: {
|
|
28
|
+
...(tools !== undefined ? { tools } : {}),
|
|
29
|
+
streaming: true,
|
|
30
|
+
thinking: false,
|
|
31
|
+
},
|
|
32
|
+
permissions: {
|
|
33
|
+
mode,
|
|
34
|
+
...(rules !== undefined || maxSteps !== undefined
|
|
35
|
+
? { ruleset: { rules: rules ?? [], ...(maxSteps !== undefined ? { maxSteps } : {}) } }
|
|
36
|
+
: {}),
|
|
37
|
+
},
|
|
38
|
+
...(body ? { systemPrompt: body } : {}),
|
|
39
|
+
...(temperature !== undefined ? { temperature } : {}),
|
|
40
|
+
};
|
|
41
|
+
const errors = validateAgentConfig(config);
|
|
42
|
+
if (errors.length > 0) {
|
|
43
|
+
throw new Error(`Invalid agent config: ${errors.join("; ")}`);
|
|
44
|
+
}
|
|
45
|
+
return { config, source, raw };
|
|
46
|
+
}
|
|
47
|
+
async parseFile(filePath, source) {
|
|
48
|
+
const content = await readFile(filePath, "utf-8");
|
|
49
|
+
return this.parse(content, source);
|
|
50
|
+
}
|
|
51
|
+
mapPermissions(perm) {
|
|
52
|
+
const rules = [];
|
|
53
|
+
for (const [key, value] of Object.entries(perm)) {
|
|
54
|
+
if (typeof value === "string") {
|
|
55
|
+
rules.push({ effect: value, target: key });
|
|
56
|
+
}
|
|
57
|
+
else if (typeof value === "object" && value !== null) {
|
|
58
|
+
const nested = value;
|
|
59
|
+
for (const [pattern, effect] of Object.entries(nested)) {
|
|
60
|
+
rules.push({ effect: effect, target: `${key}.${pattern}` });
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return rules;
|
|
65
|
+
}
|
|
66
|
+
toAgentConfig(def) {
|
|
67
|
+
return def.config;
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=agent-parser.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-parser.js","sourceRoot":"","sources":["../../src/agent/agent-parser.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { AgentConfig, AgentId, SkillSourceType } from "@vinhnt-sdk/schema";
|
|
2
|
+
export interface AgentRegistry {
|
|
3
|
+
register(config: AgentConfig, parentId?: AgentId): Promise<void>;
|
|
4
|
+
get(id: AgentId): Promise<AgentConfig | null>;
|
|
5
|
+
list(): Promise<readonly AgentConfig[]>;
|
|
6
|
+
findByCapability(key: string, value: unknown): Promise<readonly AgentConfig[]>;
|
|
7
|
+
update(id: AgentId, patch: Partial<AgentConfig>): Promise<AgentConfig | null>;
|
|
8
|
+
unregister(id: AgentId): Promise<void>;
|
|
9
|
+
getChildren(parentId: AgentId): Promise<readonly AgentConfig[]>;
|
|
10
|
+
getParent(childId: AgentId): Promise<AgentConfig | null>;
|
|
11
|
+
getAncestors(childId: AgentId): Promise<readonly AgentConfig[]>;
|
|
12
|
+
}
|
|
13
|
+
export interface SourceDir {
|
|
14
|
+
type: SkillSourceType;
|
|
15
|
+
dir: string;
|
|
16
|
+
priority: number;
|
|
17
|
+
}
|
|
18
|
+
export type AgentSource = {
|
|
19
|
+
type: "inline";
|
|
20
|
+
config: AgentConfig;
|
|
21
|
+
parentId?: AgentId;
|
|
22
|
+
} | {
|
|
23
|
+
type: "file";
|
|
24
|
+
path: string;
|
|
25
|
+
parentId?: AgentId;
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* In-memory agent store with optional file loading (load/loadMultiple/reload).
|
|
29
|
+
*/
|
|
30
|
+
export declare class InMemoryAgentRegistry implements AgentRegistry {
|
|
31
|
+
protected readonly agents: Map<string, AgentConfig>;
|
|
32
|
+
private readonly parentMap;
|
|
33
|
+
private readonly childrenMap;
|
|
34
|
+
private readonly loadedPaths;
|
|
35
|
+
private readonly pathToAgentId;
|
|
36
|
+
register(config: AgentConfig, parentId?: AgentId): Promise<void>;
|
|
37
|
+
get(id: AgentId): Promise<AgentConfig | null>;
|
|
38
|
+
list(): Promise<readonly AgentConfig[]>;
|
|
39
|
+
findByCapability(key: string, value: unknown): Promise<readonly AgentConfig[]>;
|
|
40
|
+
unregister(id: AgentId): Promise<void>;
|
|
41
|
+
update(id: AgentId, patch: Partial<AgentConfig>): Promise<AgentConfig | null>;
|
|
42
|
+
getChildren(parentId: AgentId): Promise<readonly AgentConfig[]>;
|
|
43
|
+
getParent(childId: AgentId): Promise<AgentConfig | null>;
|
|
44
|
+
getAncestors(childId: AgentId): Promise<readonly AgentConfig[]>;
|
|
45
|
+
load(source: AgentSource): Promise<AgentConfig>;
|
|
46
|
+
loadMultiple(sources: AgentSource[]): Promise<AgentConfig[]>;
|
|
47
|
+
reload(path: string): Promise<AgentConfig>;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=agent-registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agent-registry.d.ts","sourceRoot":"","sources":["../../src/agent/agent-registry.ts"],"names":[],"mappings":"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"}
|