@undefineds.co/xpod 0.2.45 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agents/AgentExecutorFactory.js +12 -13
- package/dist/agents/AgentExecutorFactory.js.map +1 -1
- package/dist/agents/config/agent-meta-schema.d.ts +31 -3
- package/dist/agents/config/agent-meta-schema.js +37 -3
- package/dist/agents/config/agent-meta-schema.js.map +1 -1
- package/dist/agents/config/index.d.ts +5 -5
- package/dist/agents/config/index.js +7 -6
- package/dist/agents/config/index.js.map +1 -1
- package/dist/agents/config/parse-agent-instructions.d.ts +12 -0
- package/dist/agents/config/parse-agent-instructions.js +23 -0
- package/dist/agents/config/parse-agent-instructions.js.map +1 -0
- package/dist/agents/config/resolve.d.ts +7 -12
- package/dist/agents/config/resolve.js +272 -156
- package/dist/agents/config/resolve.js.map +1 -1
- package/dist/agents/config/types.d.ts +33 -36
- package/dist/agents/config/types.js +4 -4
- package/dist/agents/config/types.js.map +1 -1
- package/dist/agents/index.d.ts +2 -7
- package/dist/agents/index.js +4 -14
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/types.d.ts +2 -2
- package/dist/agents/types.js.map +1 -1
- package/dist/ai/service/CredentialReaderImpl.js +9 -14
- package/dist/ai/service/CredentialReaderImpl.js.map +1 -1
- package/dist/api/ApiServer.d.ts +7 -0
- package/dist/api/ApiServer.js +5 -1
- package/dist/api/ApiServer.js.map +1 -1
- package/dist/api/chatkit/default-agent.js +1 -1
- package/dist/api/chatkit/default-agent.js.map +1 -1
- package/dist/api/chatkit/index.d.ts +8 -0
- package/dist/api/chatkit/index.js +15 -1
- package/dist/api/chatkit/index.js.map +1 -1
- package/dist/api/chatkit/pod-store.d.ts +80 -17
- package/dist/api/chatkit/pod-store.js +816 -162
- package/dist/api/chatkit/pod-store.js.map +1 -1
- package/dist/api/chatkit/runtime/AcpAgentRuntime.d.ts +41 -0
- package/dist/api/chatkit/runtime/AcpAgentRuntime.js +573 -0
- package/dist/api/chatkit/runtime/AcpAgentRuntime.js.map +1 -0
- package/dist/api/chatkit/runtime/CodexRuntimeProjector.d.ts +27 -0
- package/dist/api/chatkit/runtime/CodexRuntimeProjector.js +157 -0
- package/dist/api/chatkit/runtime/CodexRuntimeProjector.js.map +1 -0
- package/dist/api/chatkit/schema.d.ts +53 -133
- package/dist/api/chatkit/schema.js +11 -175
- package/dist/api/chatkit/schema.js.map +1 -1
- package/dist/api/chatkit/service.d.ts +15 -9
- package/dist/api/chatkit/service.js +82 -234
- package/dist/api/chatkit/service.js.map +1 -1
- package/dist/api/chatkit/store.d.ts +35 -3
- package/dist/api/chatkit/store.js +157 -3
- package/dist/api/chatkit/store.js.map +1 -1
- package/dist/api/chatkit/types.d.ts +16 -2
- package/dist/api/chatkit/types.js +24 -5
- package/dist/api/chatkit/types.js.map +1 -1
- package/dist/api/container/common.js +59 -2
- package/dist/api/container/common.js.map +1 -1
- package/dist/api/container/index.js +15 -0
- package/dist/api/container/index.js.map +1 -1
- package/dist/api/container/routes.js +11 -0
- package/dist/api/container/routes.js.map +1 -1
- package/dist/api/container/types.d.ts +26 -0
- package/dist/api/container/types.js.map +1 -1
- package/dist/api/handlers/InngestHandler.d.ts +11 -0
- package/dist/api/handlers/InngestHandler.js +19 -0
- package/dist/api/handlers/InngestHandler.js.map +1 -0
- package/dist/api/handlers/RunHandler.d.ts +7 -0
- package/dist/api/handlers/RunHandler.js +169 -0
- package/dist/api/handlers/RunHandler.js.map +1 -0
- package/dist/api/handlers/index.d.ts +1 -0
- package/dist/api/handlers/index.js +1 -0
- package/dist/api/handlers/index.js.map +1 -1
- package/dist/api/models/namespaces.d.ts +2 -2
- package/dist/api/models/namespaces.js +1 -4
- package/dist/api/models/namespaces.js.map +1 -1
- package/dist/api/runs/AgentRuntimeTypes.d.ts +83 -0
- package/dist/api/runs/AgentRuntimeTypes.js +3 -0
- package/dist/api/runs/AgentRuntimeTypes.js.map +1 -0
- package/dist/api/runs/EmbeddedInngestService.d.ts +47 -0
- package/dist/api/runs/EmbeddedInngestService.js +203 -0
- package/dist/api/runs/EmbeddedInngestService.js.map +1 -0
- package/dist/api/runs/InngestRunExecutionBackend.d.ts +416 -0
- package/dist/api/runs/InngestRunExecutionBackend.js +225 -0
- package/dist/api/runs/InngestRunExecutionBackend.js.map +1 -0
- package/dist/api/runs/ManagedRunWorker.d.ts +52 -0
- package/dist/api/runs/ManagedRunWorker.js +452 -0
- package/dist/api/runs/ManagedRunWorker.js.map +1 -0
- package/dist/api/runs/PiAgentRuntimeDriver.d.ts +66 -0
- package/dist/api/runs/PiAgentRuntimeDriver.js +614 -0
- package/dist/api/runs/PiAgentRuntimeDriver.js.map +1 -0
- package/dist/api/runs/PiAgentRuntimeWorker.d.ts +1 -0
- package/dist/api/runs/PiAgentRuntimeWorker.js +33 -0
- package/dist/api/runs/PiAgentRuntimeWorker.js.map +1 -0
- package/dist/api/runs/RunAuthContextRegistry.d.ts +19 -0
- package/dist/api/runs/RunAuthContextRegistry.js +59 -0
- package/dist/api/runs/RunAuthContextRegistry.js.map +1 -0
- package/dist/api/runs/RunExecutionBackend.d.ts +57 -0
- package/dist/api/runs/RunExecutionBackend.js +3 -0
- package/dist/api/runs/RunExecutionBackend.js.map +1 -0
- package/dist/api/runs/RunStateCenter.d.ts +82 -0
- package/dist/api/runs/RunStateCenter.js +665 -0
- package/dist/api/runs/RunStateCenter.js.map +1 -0
- package/dist/api/runs/schema.d.ts +55 -0
- package/dist/api/runs/schema.js +14 -0
- package/dist/api/runs/schema.js.map +1 -0
- package/dist/api/runs/store.d.ts +105 -0
- package/dist/api/runs/store.js +116 -0
- package/dist/api/runs/store.js.map +1 -0
- package/dist/api/runtime.d.ts +2 -0
- package/dist/api/runtime.js +40 -1
- package/dist/api/runtime.js.map +1 -1
- package/dist/api/service/VectorStoreService.d.ts +1 -0
- package/dist/api/service/VectorStoreService.js +27 -34
- package/dist/api/service/VectorStoreService.js.map +1 -1
- package/dist/api/service/provider-registry.d.ts +1 -1
- package/dist/api/service/provider-registry.js +1 -1
- package/dist/api/service/provider-registry.js.map +1 -1
- package/dist/api/tasks/InngestTaskScheduler.d.ts +751 -0
- package/dist/api/tasks/InngestTaskScheduler.js +209 -0
- package/dist/api/tasks/InngestTaskScheduler.js.map +1 -0
- package/dist/api/tasks/TaskAuthBinding.d.ts +68 -0
- package/dist/api/tasks/TaskAuthBinding.js +162 -0
- package/dist/api/tasks/TaskAuthBinding.js.map +1 -0
- package/dist/api/tasks/TaskMaterializer.d.ts +55 -0
- package/dist/api/tasks/TaskMaterializer.js +452 -0
- package/dist/api/tasks/TaskMaterializer.js.map +1 -0
- package/dist/api/tasks/TaskService.d.ts +57 -0
- package/dist/api/tasks/TaskService.js +235 -0
- package/dist/api/tasks/TaskService.js.map +1 -0
- package/dist/api/tasks/index.d.ts +6 -0
- package/dist/api/tasks/index.js +25 -0
- package/dist/api/tasks/index.js.map +1 -0
- package/dist/api/tasks/schema.d.ts +23 -0
- package/dist/api/tasks/schema.js +8 -0
- package/dist/api/tasks/schema.js.map +1 -0
- package/dist/api/tasks/store.d.ts +40 -0
- package/dist/api/tasks/store.js +34 -0
- package/dist/api/tasks/store.js.map +1 -0
- package/dist/api/workspace/types.d.ts +3 -0
- package/dist/api/workspace/types.js +23 -0
- package/dist/api/workspace/types.js.map +1 -0
- package/dist/cli/commands/config.d.ts +8 -7
- package/dist/cli/commands/config.js +72 -48
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/login.d.ts +10 -8
- package/dist/cli/commands/login.js +84 -84
- package/dist/cli/commands/login.js.map +1 -1
- package/dist/cli/index.js +3 -124
- package/dist/cli/index.js.map +1 -1
- package/dist/http/search/SearchHttpHandler.js +13 -18
- package/dist/http/search/SearchHttpHandler.js.map +1 -1
- package/dist/storage/vector/VectorIndexingListener.js +13 -18
- package/dist/storage/vector/VectorIndexingListener.js.map +1 -1
- package/dist/vocab/index.d.ts +2 -6
- package/dist/vocab/index.js +2 -6
- package/dist/vocab/index.js.map +1 -1
- package/dist/vocab/udfs.d.ts +12 -0
- package/dist/vocab/udfs.js +12 -0
- package/dist/vocab/udfs.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/README.md +52 -24
- package/node_modules/@undefineds.co/drizzle-solid/README.zh-CN.md +30 -24
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/discovery/types.d.ts +6 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/discovery/types.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.d.ts +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.js +43 -10
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-executor.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-strategy.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-strategy.js +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/ldp-strategy.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/pod-executor.d.ts +5 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/pod-executor.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/pod-executor.js +44 -13
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/pod-executor.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/sparql-strategy.d.ts +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/sparql-strategy.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/sparql-strategy.js +21 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/sparql-strategy.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/types.d.ts +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/execution/types.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/expressions.d.ts +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/expressions.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-database.d.ts +76 -41
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-database.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-database.js +443 -114
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-database.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-dialect.d.ts +28 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-dialect.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-dialect.js +142 -31
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-dialect.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-session.d.ts +3 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-session.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-session.js +84 -6
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/pod-session.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/insert-query-builder.d.ts +3 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/insert-query-builder.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/insert-query-builder.js +29 -9
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/insert-query-builder.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.d.ts +2 -8
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.js +19 -51
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/select-query-builder.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/types.d.ts +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-builders/types.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-conditions.d.ts +2 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-conditions.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-where-policy.js +6 -6
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/query-where-policy.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-reference.d.ts +4 -4
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-reference.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-reference.js +56 -23
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-reference.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/base-resolver.d.ts +14 -10
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/base-resolver.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/base-resolver.js +55 -23
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/base-resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/document-resolver.d.ts +3 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/document-resolver.js +6 -6
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/document-resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/fragment-resolver.d.ts +3 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/fragment-resolver.js +4 -4
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/resource-resolver/fragment-resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/runtime/pod-runtime.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/runtime/pod-runtime.js +33 -8
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/runtime/pod-runtime.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/defs.d.ts +11 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/defs.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/factories.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/factories.js +3 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/factories.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/pod-table.d.ts +13 -8
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/pod-table.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/pod-table.js +24 -22
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/pod-table.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/solid-schema.d.ts +3 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/solid-schema.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/schema/solid-schema.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/subject/resolver.d.ts +3 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/subject/resolver.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/subject/resolver.js +28 -14
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/subject/resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/handlers/inline.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/handlers/inline.js +3 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/triple/handlers/inline.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/uri/resolver.d.ts +9 -9
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/uri/resolver.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/uri/resolver.js +56 -22
- package/node_modules/@undefineds.co/drizzle-solid/dist/core/uri/resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/driver.d.ts +9 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/driver.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/driver.js +2 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/driver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/types.d.ts +6 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/discovery/types.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.d.ts +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.js +43 -10
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-executor.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-strategy.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-strategy.js +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/ldp-strategy.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/pod-executor.d.ts +5 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/pod-executor.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/pod-executor.js +44 -13
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/pod-executor.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.d.ts +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.js +21 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/sparql-strategy.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/types.d.ts +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/execution/types.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/expressions.d.ts +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/expressions.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.d.ts +76 -41
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.js +443 -114
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-database.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-dialect.d.ts +28 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-dialect.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-dialect.js +142 -31
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-dialect.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-session.d.ts +3 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-session.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-session.js +84 -6
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/pod-session.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/insert-query-builder.d.ts +3 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/insert-query-builder.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/insert-query-builder.js +29 -9
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/insert-query-builder.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.d.ts +2 -8
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.js +19 -51
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/select-query-builder.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/types.d.ts +1 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-builders/types.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-conditions.d.ts +2 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-conditions.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-where-policy.js +6 -6
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/query-where-policy.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-reference.d.ts +4 -4
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-reference.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-reference.js +56 -23
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-reference.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/base-resolver.d.ts +14 -10
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/base-resolver.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/base-resolver.js +55 -23
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/base-resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/document-resolver.d.ts +3 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/document-resolver.js +6 -6
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/document-resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/fragment-resolver.d.ts +3 -3
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/fragment-resolver.js +4 -4
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/resource-resolver/fragment-resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/runtime/pod-runtime.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/runtime/pod-runtime.js +33 -8
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/runtime/pod-runtime.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/defs.d.ts +11 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/defs.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/factories.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/factories.js +3 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/factories.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/pod-table.d.ts +13 -8
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/pod-table.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/pod-table.js +24 -22
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/pod-table.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/solid-schema.d.ts +3 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/solid-schema.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/schema/solid-schema.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/resolver.d.ts +3 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/resolver.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/resolver.js +28 -14
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/subject/resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/inline.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/inline.js +3 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/triple/handlers/inline.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/resolver.d.ts +9 -9
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/resolver.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/resolver.js +56 -22
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/core/uri/resolver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/driver.d.ts +9 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/driver.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/driver.js +2 -0
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/driver.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/pod.d.ts +16 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/pod.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/find-by-iri.js +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/esm/utils/find-by-iri.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/pod.d.ts +16 -2
- package/node_modules/@undefineds.co/drizzle-solid/dist/pod.d.ts.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/utils/find-by-iri.js +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/dist/utils/find-by-iri.js.map +1 -1
- package/node_modules/@undefineds.co/drizzle-solid/package.json +1 -1
- package/package.json +5 -3
- package/dist/agents/AgentManager.d.ts +0 -116
- package/dist/agents/AgentManager.js +0 -290
- package/dist/agents/AgentManager.js.map +0 -1
- package/dist/agents/IndexAgent.d.ts +0 -70
- package/dist/agents/IndexAgent.js +0 -417
- package/dist/agents/IndexAgent.js.map +0 -1
- package/dist/agents/config/parse-agent-md.d.ts +0 -33
- package/dist/agents/config/parse-agent-md.js +0 -75
- package/dist/agents/config/parse-agent-md.js.map +0 -1
- package/dist/agents/schema/agent-config.d.ts +0 -2
- package/dist/agents/schema/agent-config.js +0 -32
- package/dist/agents/schema/agent-config.js.map +0 -1
- package/dist/agents/schema/create-agent-schema.d.ts +0 -25
- package/dist/agents/schema/create-agent-schema.js +0 -35
- package/dist/agents/schema/create-agent-schema.js.map +0 -1
- package/dist/api/chatkit/runtime/PtyThreadRuntime.d.ts +0 -127
- package/dist/api/chatkit/runtime/PtyThreadRuntime.js +0 -791
- package/dist/api/chatkit/runtime/PtyThreadRuntime.js.map +0 -1
- package/dist/cli/lib/agent-session.d.ts +0 -37
- package/dist/cli/lib/agent-session.js +0 -211
- package/dist/cli/lib/agent-session.js.map +0 -1
- package/dist/cli/lib/ensure-ai-credentials.d.ts +0 -13
- package/dist/cli/lib/ensure-ai-credentials.js +0 -40
- package/dist/cli/lib/ensure-ai-credentials.js.map +0 -1
- package/dist/cli/lib/model-manager.d.ts +0 -37
- package/dist/cli/lib/model-manager.js +0 -251
- package/dist/cli/lib/model-manager.js.map +0 -1
- package/dist/cli/lib/oauth-credential-manager.d.ts +0 -37
- package/dist/cli/lib/oauth-credential-manager.js +0 -129
- package/dist/cli/lib/oauth-credential-manager.js.map +0 -1
- package/dist/cli/lib/oauth-providers/codebuddy.d.ts +0 -25
- package/dist/cli/lib/oauth-providers/codebuddy.js +0 -69
- package/dist/cli/lib/oauth-providers/codebuddy.js.map +0 -1
- package/dist/cli/lib/oauth-providers/index.d.ts +0 -12
- package/dist/cli/lib/oauth-providers/index.js +0 -23
- package/dist/cli/lib/oauth-providers/index.js.map +0 -1
- package/dist/cli/lib/pi-optional.d.ts +0 -84
- package/dist/cli/lib/pi-optional.js +0 -35
- package/dist/cli/lib/pi-optional.js.map +0 -1
- package/dist/cli/lib/pod-ai-config.d.ts +0 -26
- package/dist/cli/lib/pod-ai-config.js +0 -99
- package/dist/cli/lib/pod-ai-config.js.map +0 -1
- package/dist/cli/lib/pod-thread-store.d.ts +0 -57
- package/dist/cli/lib/pod-thread-store.js +0 -312
- package/dist/cli/lib/pod-thread-store.js.map +0 -1
- package/dist/cli/lib/secretary-prompt.d.ts +0 -6
- package/dist/cli/lib/secretary-prompt.js +0 -85
- package/dist/cli/lib/secretary-prompt.js.map +0 -1
- package/dist/task/DrizzleTaskQueue.d.ts +0 -56
- package/dist/task/DrizzleTaskQueue.js +0 -171
- package/dist/task/DrizzleTaskQueue.js.map +0 -1
- package/dist/task/TaskExecutor.d.ts +0 -82
- package/dist/task/TaskExecutor.js +0 -198
- package/dist/task/TaskExecutor.js.map +0 -1
- package/dist/task/index.d.ts +0 -10
- package/dist/task/index.js +0 -20
- package/dist/task/index.js.map +0 -1
- package/dist/task/schema.d.ts +0 -53
- package/dist/task/schema.js +0 -71
- package/dist/task/schema.js.map +0 -1
- package/dist/task/types.d.ts +0 -186
- package/dist/task/types.js +0 -12
- package/dist/task/types.js.map +0 -1
|
@@ -17,6 +17,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
17
17
|
exports.agentExecutorFactory = exports.AgentExecutorFactory = exports.SUPPORTED_EXECUTOR_TYPES = void 0;
|
|
18
18
|
const global_logger_factory_1 = require("global-logger-factory");
|
|
19
19
|
const drizzle_solid_1 = require("@undefineds.co/drizzle-solid");
|
|
20
|
+
const models_1 = require("@undefineds.co/models");
|
|
20
21
|
const provider_1 = require("../ai/schema/provider");
|
|
21
22
|
const model_1 = require("../ai/schema/model");
|
|
22
23
|
const tables_1 = require("../credential/schema/tables");
|
|
@@ -72,7 +73,7 @@ class AgentExecutorFactory {
|
|
|
72
73
|
};
|
|
73
74
|
const db = (0, drizzle_solid_1.drizzle)(session, { schema });
|
|
74
75
|
// 1. 读取供应商配置
|
|
75
|
-
const provider = await db.
|
|
76
|
+
const provider = await db.findById(provider_1.Provider, providerId);
|
|
76
77
|
if (!provider) {
|
|
77
78
|
this.logger.debug(`Provider not found: ${providerId}`);
|
|
78
79
|
return null;
|
|
@@ -85,25 +86,23 @@ class AgentExecutorFactory {
|
|
|
85
86
|
this.logger.warn(`Unsupported runtime kind: ${runtimeKind}. Only 'codebuddy' and 'claude' are supported.`);
|
|
86
87
|
return null;
|
|
87
88
|
}
|
|
88
|
-
// 2. 读取凭证
|
|
89
|
-
const providerUri = `${podBaseUrl}settings/ai/providers.ttl#${providerId}`;
|
|
90
89
|
const credentials = await db.query.credential.findMany({
|
|
91
|
-
where: (0, drizzle_solid_1.and)((0, drizzle_solid_1.eq)(tables_1.Credential.service, types_1.ServiceType.AI), (0, drizzle_solid_1.eq)(tables_1.Credential.status, types_1.CredentialStatus.ACTIVE)
|
|
90
|
+
where: (0, drizzle_solid_1.and)((0, drizzle_solid_1.eq)(tables_1.Credential.service, types_1.ServiceType.AI), (0, drizzle_solid_1.eq)(tables_1.Credential.status, types_1.CredentialStatus.ACTIVE)),
|
|
92
91
|
});
|
|
93
|
-
|
|
92
|
+
const providers = await db.query.provider.findMany();
|
|
93
|
+
const selection = (0, models_1.selectAIConfigCredential)(providerId, credentials, providers);
|
|
94
|
+
if (!selection) {
|
|
94
95
|
this.logger.debug(`No active credential found for provider: ${providerId}`);
|
|
95
96
|
return null;
|
|
96
97
|
}
|
|
97
|
-
// 随机选择一个凭证(负载均衡)
|
|
98
|
-
const credential = credentials[Math.floor(Math.random() * credentials.length)];
|
|
99
98
|
// 3. 构建凭证对象
|
|
100
99
|
const aiCredential = {
|
|
101
|
-
providerId,
|
|
102
|
-
apiKey:
|
|
103
|
-
baseUrl:
|
|
104
|
-
proxyUrl:
|
|
105
|
-
projectId: credential.projectId ?? undefined,
|
|
106
|
-
organizationId: credential.organizationId ?? undefined,
|
|
100
|
+
providerId: selection.providerId,
|
|
101
|
+
apiKey: selection.apiKey,
|
|
102
|
+
baseUrl: selection.baseUrl,
|
|
103
|
+
proxyUrl: selection.proxyUrl,
|
|
104
|
+
projectId: selection.credential.projectId ?? undefined,
|
|
105
|
+
organizationId: selection.credential.organizationId ?? undefined,
|
|
107
106
|
};
|
|
108
107
|
// 4. 构建供应商配置
|
|
109
108
|
const defaultModel = await this.resolveModelId(db, provider.defaultModel ?? provider.hasModel);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentExecutorFactory.js","sourceRoot":"","sources":["../../src/agents/AgentExecutorFactory.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Agent Executor Factory\n *\n * 从 Pod 读取凭证和 Provider 配置,创建对应的 Agent 执行器。\n *\n * 支持的执行器类型:\n * - codebuddy: CodeBuddy Agent SDK\n * - claude: Claude Agent SDK\n *\n * 使用流程:\n * 1. 从 Pod 读取 Provider 配置\n * 2. 从 Pod 读取对应的 Credential\n * 3. 根据 runtimeKind 创建对应的执行器实例\n */\n\nimport { getLoggerFor } from 'global-logger-factory';\nimport { drizzle, eq, and } from '@undefineds.co/drizzle-solid';\nimport type { IAgentExecutor, ExecutorType, AiCredential, ProviderConfig, BaseExecutorOptions } from './types';\nimport { Provider } from '../ai/schema/provider';\nimport { Model } from '../ai/schema/model';\nimport { Credential } from '../credential/schema/tables';\nimport { ServiceType, CredentialStatus } from '../credential/schema/types';\n\n// 执行器实现(仅支持有完整 Agent SDK 的供应商)\nimport { ClaudeExecutor } from './ClaudeExecutor';\nimport { CodeBuddyExecutor } from './CodeBuddyExecutor';\n\nconst schema = {\n provider: Provider,\n credential: Credential,\n model: Model,\n};\n\n/**\n * 支持的执行器类型\n */\nexport const SUPPORTED_EXECUTOR_TYPES: ExecutorType[] = ['codebuddy', 'claude'];\n\n/**\n * Agent Executor Factory\n *\n * 负责从 Pod 读取配置并创建执行器实例。\n */\nexport class AgentExecutorFactory {\n private readonly logger = getLoggerFor(this);\n\n private async resolveModelId(db: any, modelRef: string | null | undefined): Promise<string | undefined> {\n if (!modelRef) {\n return undefined;\n }\n\n const model = await db.findByIri(Model, modelRef);\n return model?.id ?? undefined;\n }\n\n /**\n * 检查执行器类型是否支持\n */\n public isSupported(executorType: string): executorType is ExecutorType {\n return SUPPORTED_EXECUTOR_TYPES.includes(executorType as ExecutorType);\n }\n\n /**\n * 从 Pod 创建执行器\n *\n * @param podBaseUrl Pod 根 URL\n * @param providerId 供应商 ID\n * @param authenticatedFetch 带认证的 fetch 函数\n * @param webId 用户 WebID(可选)\n * @returns 执行器实例,如果未找到配置则返回 null\n */\n public async create(\n podBaseUrl: string,\n providerId: string,\n runtimeKind: ExecutorType,\n authenticatedFetch: typeof fetch,\n webId?: string,\n ): Promise<IAgentExecutor | null> {\n try {\n const session = {\n info: { isLoggedIn: true, webId },\n fetch: authenticatedFetch,\n };\n const db: any = drizzle(session, { schema });\n\n // 1. 读取供应商配置\n const provider = await db.findByLocator(Provider, { id: providerId });\n\n if (!provider) {\n this.logger.debug(`Provider not found: ${providerId}`);\n return null;\n }\n\n if (provider.enabled !== 'true') {\n this.logger.debug(`Provider is disabled: ${providerId}`);\n return null;\n }\n\n if (!this.isSupported(runtimeKind)) {\n this.logger.warn(`Unsupported runtime kind: ${runtimeKind}. Only 'codebuddy' and 'claude' are supported.`);\n return null;\n }\n\n // 2. 读取凭证\n const providerUri = `${podBaseUrl}settings/ai/providers.ttl#${providerId}`;\n const credentials = await db.query.credential.findMany({\n where: and(\n eq(Credential.service, ServiceType.AI),\n eq(Credential.status, CredentialStatus.ACTIVE),\n eq(Credential.provider, providerUri),\n ),\n });\n\n if (credentials.length === 0) {\n this.logger.debug(`No active credential found for provider: ${providerId}`);\n return null;\n }\n\n // 随机选择一个凭证(负载均衡)\n const credential = credentials[Math.floor(Math.random() * credentials.length)] as any;\n\n // 3. 构建凭证对象\n const aiCredential: AiCredential = {\n providerId,\n apiKey: credential.apiKey ?? '',\n baseUrl: credential.baseUrl ?? provider.baseUrl ?? undefined,\n proxyUrl: credential.proxyUrl ?? undefined,\n projectId: credential.projectId ?? undefined,\n organizationId: credential.organizationId ?? undefined,\n };\n\n // 4. 构建供应商配置\n const defaultModel = await this.resolveModelId(db, provider.defaultModel ?? provider.hasModel);\n const providerConfig: ProviderConfig = {\n id: provider.id,\n displayName: provider.displayName ?? provider.id,\n executorType: runtimeKind,\n baseUrl: provider.baseUrl ?? undefined,\n defaultModel,\n enabled: provider.enabled === 'true',\n };\n\n // 5. 创建执行器\n return this.createExecutor(runtimeKind, {\n providerId,\n credential: aiCredential,\n providerConfig,\n });\n } catch (error) {\n this.logger.error(`Failed to create executor for provider ${providerId}:`, error);\n return null;\n }\n }\n\n /**\n * 列出所有可用的供应商\n */\n public async listProviders(\n podBaseUrl: string,\n authenticatedFetch: typeof fetch,\n runtimeKind: ExecutorType,\n webId?: string,\n ): Promise<ProviderConfig[]> {\n try {\n const session = {\n info: { isLoggedIn: true, webId },\n fetch: authenticatedFetch,\n };\n const db: any = drizzle(session, { schema });\n\n const providers = await db.query.provider.findMany();\n\n return Promise.all(providers.map(async (p: typeof providers[number]) => ({\n id: p.id,\n displayName: p.displayName ?? p.id,\n executorType: runtimeKind,\n baseUrl: p.baseUrl ?? undefined,\n defaultModel: await this.resolveModelId(db, p.defaultModel ?? p.hasModel),\n enabled: p.enabled === 'true',\n })));\n } catch (error) {\n this.logger.error('Failed to list providers:', error);\n return [];\n }\n }\n\n /**\n * 列出所有启用的供应商\n */\n public async listEnabledProviders(\n podBaseUrl: string,\n authenticatedFetch: typeof fetch,\n runtimeKind: ExecutorType,\n webId?: string,\n ): Promise<ProviderConfig[]> {\n const providers = await this.listProviders(podBaseUrl, authenticatedFetch, runtimeKind, webId);\n return providers.filter((p) => p.enabled);\n }\n\n /**\n * 列出所有支持的供应商(runtimeKind 受支持且已启用)\n */\n public async listSupportedProviders(\n podBaseUrl: string,\n authenticatedFetch: typeof fetch,\n runtimeKind: ExecutorType,\n webId?: string,\n ): Promise<ProviderConfig[]> {\n if (!this.isSupported(runtimeKind)) {\n return [];\n }\n\n return this.listEnabledProviders(podBaseUrl, authenticatedFetch, runtimeKind, webId);\n }\n\n /**\n * 根据 executorType 创建执行器\n */\n public createExecutor(executorType: ExecutorType, options: BaseExecutorOptions): IAgentExecutor {\n switch (executorType) {\n case 'claude':\n return new ClaudeExecutor(options);\n\n case 'codebuddy':\n return new CodeBuddyExecutor(options);\n\n default:\n throw new Error(\n `Unsupported executor type: ${executorType}. ` +\n `Only 'codebuddy' and 'claude' are supported because they have complete Agent SDKs.`\n );\n }\n }\n\n /**\n * 创建指定类型的执行器(直接使用凭证,不从 Pod 读取)\n *\n * 用于测试或已知凭证的场景。\n */\n public createDirect(\n executorType: ExecutorType,\n providerId: string,\n credential: AiCredential,\n ): IAgentExecutor {\n return this.createExecutor(executorType, {\n providerId,\n credential,\n });\n }\n}\n\n/**\n * 默认工厂实例\n */\nexport const agentExecutorFactory = new AgentExecutorFactory();\n"]}
|
|
1
|
+
{"version":3,"file":"AgentExecutorFactory.js","sourceRoot":"","sources":["../../src/agents/AgentExecutorFactory.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Agent Executor Factory\n *\n * 从 Pod 读取凭证和 Provider 配置,创建对应的 Agent 执行器。\n *\n * 支持的执行器类型:\n * - codebuddy: CodeBuddy Agent SDK\n * - claude: Claude Agent SDK\n *\n * 使用流程:\n * 1. 从 Pod 读取 Provider 配置\n * 2. 从 Pod 读取对应的 Credential\n * 3. 根据 runtimeKind 创建对应的执行器实例\n */\n\nimport { getLoggerFor } from 'global-logger-factory';\nimport { drizzle, eq, and } from '@undefineds.co/drizzle-solid';\nimport { selectAIConfigCredential } from '@undefineds.co/models';\nimport type { IAgentExecutor, ExecutorType, AiCredential, ProviderConfig, BaseExecutorOptions } from './types';\nimport { Provider } from '../ai/schema/provider';\nimport { Model } from '../ai/schema/model';\nimport { Credential } from '../credential/schema/tables';\nimport { ServiceType, CredentialStatus } from '../credential/schema/types';\n\n// 执行器实现(仅支持有完整 Agent SDK 的供应商)\nimport { ClaudeExecutor } from './ClaudeExecutor';\nimport { CodeBuddyExecutor } from './CodeBuddyExecutor';\n\nconst schema = {\n provider: Provider,\n credential: Credential,\n model: Model,\n};\n\n/**\n * 支持的执行器类型\n */\nexport const SUPPORTED_EXECUTOR_TYPES: ExecutorType[] = ['codebuddy', 'claude'];\n\n/**\n * Agent Executor Factory\n *\n * 负责从 Pod 读取配置并创建执行器实例。\n */\nexport class AgentExecutorFactory {\n private readonly logger = getLoggerFor(this);\n\n private async resolveModelId(db: any, modelRef: string | null | undefined): Promise<string | undefined> {\n if (!modelRef) {\n return undefined;\n }\n\n const model = await db.findByIri(Model, modelRef);\n return model?.id ?? undefined;\n }\n\n /**\n * 检查执行器类型是否支持\n */\n public isSupported(executorType: string): executorType is ExecutorType {\n return SUPPORTED_EXECUTOR_TYPES.includes(executorType as ExecutorType);\n }\n\n /**\n * 从 Pod 创建执行器\n *\n * @param podBaseUrl Pod 根 URL\n * @param providerId 供应商 ID\n * @param authenticatedFetch 带认证的 fetch 函数\n * @param webId 用户 WebID(可选)\n * @returns 执行器实例,如果未找到配置则返回 null\n */\n public async create(\n podBaseUrl: string,\n providerId: string,\n runtimeKind: ExecutorType,\n authenticatedFetch: typeof fetch,\n webId?: string,\n ): Promise<IAgentExecutor | null> {\n try {\n const session = {\n info: { isLoggedIn: true, webId },\n fetch: authenticatedFetch,\n };\n const db: any = drizzle(session, { schema });\n\n // 1. 读取供应商配置\n const provider = await db.findById(Provider, providerId);\n\n if (!provider) {\n this.logger.debug(`Provider not found: ${providerId}`);\n return null;\n }\n\n if (provider.enabled !== 'true') {\n this.logger.debug(`Provider is disabled: ${providerId}`);\n return null;\n }\n\n if (!this.isSupported(runtimeKind)) {\n this.logger.warn(`Unsupported runtime kind: ${runtimeKind}. Only 'codebuddy' and 'claude' are supported.`);\n return null;\n }\n\n const credentials = await db.query.credential.findMany({\n where: and(\n eq(Credential.service, ServiceType.AI),\n eq(Credential.status, CredentialStatus.ACTIVE),\n ),\n });\n const providers = await db.query.provider.findMany();\n const selection = selectAIConfigCredential(providerId, credentials, providers);\n\n if (!selection) {\n this.logger.debug(`No active credential found for provider: ${providerId}`);\n return null;\n }\n\n // 3. 构建凭证对象\n const aiCredential: AiCredential = {\n providerId: selection.providerId,\n apiKey: selection.apiKey,\n baseUrl: selection.baseUrl,\n proxyUrl: selection.proxyUrl,\n projectId: (selection.credential as any).projectId ?? undefined,\n organizationId: (selection.credential as any).organizationId ?? undefined,\n };\n\n // 4. 构建供应商配置\n const defaultModel = await this.resolveModelId(db, provider.defaultModel ?? provider.hasModel);\n const providerConfig: ProviderConfig = {\n id: provider.id,\n displayName: provider.displayName ?? provider.id,\n executorType: runtimeKind,\n baseUrl: provider.baseUrl ?? undefined,\n defaultModel,\n enabled: provider.enabled === 'true',\n };\n\n // 5. 创建执行器\n return this.createExecutor(runtimeKind, {\n providerId,\n credential: aiCredential,\n providerConfig,\n });\n } catch (error) {\n this.logger.error(`Failed to create executor for provider ${providerId}:`, error);\n return null;\n }\n }\n\n /**\n * 列出所有可用的供应商\n */\n public async listProviders(\n podBaseUrl: string,\n authenticatedFetch: typeof fetch,\n runtimeKind: ExecutorType,\n webId?: string,\n ): Promise<ProviderConfig[]> {\n try {\n const session = {\n info: { isLoggedIn: true, webId },\n fetch: authenticatedFetch,\n };\n const db: any = drizzle(session, { schema });\n\n const providers = await db.query.provider.findMany();\n\n return Promise.all(providers.map(async (p: typeof providers[number]) => ({\n id: p.id,\n displayName: p.displayName ?? p.id,\n executorType: runtimeKind,\n baseUrl: p.baseUrl ?? undefined,\n defaultModel: await this.resolveModelId(db, p.defaultModel ?? p.hasModel),\n enabled: p.enabled === 'true',\n })));\n } catch (error) {\n this.logger.error('Failed to list providers:', error);\n return [];\n }\n }\n\n /**\n * 列出所有启用的供应商\n */\n public async listEnabledProviders(\n podBaseUrl: string,\n authenticatedFetch: typeof fetch,\n runtimeKind: ExecutorType,\n webId?: string,\n ): Promise<ProviderConfig[]> {\n const providers = await this.listProviders(podBaseUrl, authenticatedFetch, runtimeKind, webId);\n return providers.filter((p) => p.enabled);\n }\n\n /**\n * 列出所有支持的供应商(runtimeKind 受支持且已启用)\n */\n public async listSupportedProviders(\n podBaseUrl: string,\n authenticatedFetch: typeof fetch,\n runtimeKind: ExecutorType,\n webId?: string,\n ): Promise<ProviderConfig[]> {\n if (!this.isSupported(runtimeKind)) {\n return [];\n }\n\n return this.listEnabledProviders(podBaseUrl, authenticatedFetch, runtimeKind, webId);\n }\n\n /**\n * 根据 executorType 创建执行器\n */\n public createExecutor(executorType: ExecutorType, options: BaseExecutorOptions): IAgentExecutor {\n switch (executorType) {\n case 'claude':\n return new ClaudeExecutor(options);\n\n case 'codebuddy':\n return new CodeBuddyExecutor(options);\n\n default:\n throw new Error(\n `Unsupported executor type: ${executorType}. ` +\n `Only 'codebuddy' and 'claude' are supported because they have complete Agent SDKs.`\n );\n }\n }\n\n /**\n * 创建指定类型的执行器(直接使用凭证,不从 Pod 读取)\n *\n * 用于测试或已知凭证的场景。\n */\n public createDirect(\n executorType: ExecutorType,\n providerId: string,\n credential: AiCredential,\n ): IAgentExecutor {\n return this.createExecutor(executorType, {\n providerId,\n credential,\n });\n }\n}\n\n/**\n * 默认工厂实例\n */\nexport const agentExecutorFactory = new AgentExecutorFactory();\n"]}
|
|
@@ -4,7 +4,35 @@
|
|
|
4
4
|
* Each agent folder has a .meta auxiliary resource:
|
|
5
5
|
* /agents/{agentId}/.meta
|
|
6
6
|
*
|
|
7
|
-
*
|
|
7
|
+
* This is an adapter for the existing AGENTS.md + .meta runtime config layout,
|
|
8
|
+
* not a durable shared model. Durable Agent resources belong in
|
|
9
|
+
* @undefineds.co/models; the extra runtime fields here are local runtime
|
|
10
|
+
* adapter inputs until the shared model owns that contract.
|
|
8
11
|
*/
|
|
9
|
-
|
|
10
|
-
|
|
12
|
+
export declare const AgentMetaSchema: import("@undefineds.co/drizzle-solid").SolidSchema<import("@undefineds.co/drizzle-solid/dist/core/schema").ResolvedColumns<{
|
|
13
|
+
id: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, true, false>;
|
|
14
|
+
name: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
15
|
+
description: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
16
|
+
avatarUrl: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
17
|
+
instructions: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
18
|
+
provider: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
19
|
+
runtimeKind: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
20
|
+
credential: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
21
|
+
model: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
22
|
+
enabled: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, true>;
|
|
23
|
+
permissionMode: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"string", null, false, false>;
|
|
24
|
+
allowedTools: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"array", "string", false, false>;
|
|
25
|
+
disallowedTools: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"array", "string", false, false>;
|
|
26
|
+
skills: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"array", "uri", false, false>;
|
|
27
|
+
mcpServers: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"array", "string", false, false>;
|
|
28
|
+
temperature: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, true>;
|
|
29
|
+
tools: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"array", "string", false, false>;
|
|
30
|
+
contextRound: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, true>;
|
|
31
|
+
maxTurns: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, false>;
|
|
32
|
+
timeout: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"integer", null, false, false>;
|
|
33
|
+
ttsModel: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
34
|
+
videoModel: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"uri", null, false, false>;
|
|
35
|
+
createdAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
|
|
36
|
+
updatedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, true, true>;
|
|
37
|
+
deletedAt: import("@undefineds.co/drizzle-solid/dist/core/schema").ColumnBuilder<"datetime", null, false, false>;
|
|
38
|
+
}>>;
|
|
@@ -5,10 +5,44 @@
|
|
|
5
5
|
* Each agent folder has a .meta auxiliary resource:
|
|
6
6
|
* /agents/{agentId}/.meta
|
|
7
7
|
*
|
|
8
|
-
*
|
|
8
|
+
* This is an adapter for the existing AGENTS.md + .meta runtime config layout,
|
|
9
|
+
* not a durable shared model. Durable Agent resources belong in
|
|
10
|
+
* @undefineds.co/models; the extra runtime fields here are local runtime
|
|
11
|
+
* adapter inputs until the shared model owns that contract.
|
|
9
12
|
*/
|
|
10
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
14
|
exports.AgentMetaSchema = void 0;
|
|
12
|
-
const
|
|
13
|
-
|
|
15
|
+
const models_1 = require("@undefineds.co/models");
|
|
16
|
+
const drizzle_solid_1 = require("@undefineds.co/drizzle-solid");
|
|
17
|
+
const udfs_1 = require("../../vocab/udfs");
|
|
18
|
+
exports.AgentMetaSchema = (0, drizzle_solid_1.solidSchema)({
|
|
19
|
+
id: (0, drizzle_solid_1.string)('id').primaryKey(),
|
|
20
|
+
name: (0, drizzle_solid_1.string)('name').predicate(models_1.FOAF.name),
|
|
21
|
+
description: (0, drizzle_solid_1.text)('description').predicate(models_1.DCTerms.description),
|
|
22
|
+
avatarUrl: (0, drizzle_solid_1.uri)('avatarUrl').predicate(models_1.VCARD.hasPhoto),
|
|
23
|
+
instructions: (0, drizzle_solid_1.text)('instructions').predicate((0, udfs_1.UDFS)('systemPrompt')),
|
|
24
|
+
provider: (0, drizzle_solid_1.uri)('provider').predicate((0, udfs_1.UDFS)('provider')),
|
|
25
|
+
runtimeKind: (0, drizzle_solid_1.string)('runtimeKind').predicate((0, udfs_1.UDFS)('runtimeKind')),
|
|
26
|
+
credential: (0, drizzle_solid_1.uri)('credential').predicate((0, udfs_1.UDFS)('credential')).link(models_1.credentialResource),
|
|
27
|
+
model: (0, drizzle_solid_1.uri)('model').predicate((0, udfs_1.UDFS)('model')).link(models_1.aiModelResource),
|
|
28
|
+
enabled: (0, drizzle_solid_1.string)('enabled').predicate((0, udfs_1.UDFS)('enabled')).default('true'),
|
|
29
|
+
permissionMode: (0, drizzle_solid_1.string)('permissionMode').predicate((0, udfs_1.UDFS)('permissionMode')),
|
|
30
|
+
allowedTools: (0, drizzle_solid_1.text)('allowedTools').array().predicate((0, udfs_1.UDFS)('allowedTool')),
|
|
31
|
+
disallowedTools: (0, drizzle_solid_1.text)('disallowedTools').array().predicate((0, udfs_1.UDFS)('disallowedTool')),
|
|
32
|
+
skills: (0, drizzle_solid_1.uri)('skills').array().predicate((0, udfs_1.UDFS)('skill')),
|
|
33
|
+
mcpServers: (0, drizzle_solid_1.text)('mcpServers').array().predicate((0, udfs_1.UDFS)('mcpServer')),
|
|
34
|
+
temperature: (0, drizzle_solid_1.real)('temperature').predicate((0, udfs_1.UDFS)('temperature')).default(0.7),
|
|
35
|
+
tools: (0, drizzle_solid_1.text)('tools').array().predicate((0, udfs_1.UDFS)('tools')),
|
|
36
|
+
contextRound: (0, drizzle_solid_1.integer)('contextRound').predicate((0, udfs_1.UDFS)('contextRound')).default(4),
|
|
37
|
+
maxTurns: (0, drizzle_solid_1.integer)('maxTurns').predicate((0, udfs_1.UDFS)('maxTurns')),
|
|
38
|
+
timeout: (0, drizzle_solid_1.integer)('timeout').predicate((0, udfs_1.UDFS)('timeout')),
|
|
39
|
+
ttsModel: (0, drizzle_solid_1.uri)('ttsModel').predicate((0, udfs_1.UDFS)('ttsModel')).link(models_1.aiModelResource),
|
|
40
|
+
videoModel: (0, drizzle_solid_1.uri)('videoModel').predicate((0, udfs_1.UDFS)('videoModel')).link(models_1.aiModelResource),
|
|
41
|
+
createdAt: (0, drizzle_solid_1.timestamp)('createdAt').predicate(models_1.DCTerms.created).notNull().defaultNow(),
|
|
42
|
+
updatedAt: (0, drizzle_solid_1.timestamp)('updatedAt').predicate(models_1.DCTerms.modified).notNull().defaultNow(),
|
|
43
|
+
deletedAt: (0, drizzle_solid_1.timestamp)('deletedAt').predicate((0, udfs_1.UDFS)('deletedAt')),
|
|
44
|
+
}, {
|
|
45
|
+
type: udfs_1.UDFS.AgentConfig,
|
|
46
|
+
namespace: udfs_1.UDFS,
|
|
47
|
+
});
|
|
14
48
|
//# sourceMappingURL=agent-meta-schema.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-meta-schema.js","sourceRoot":"","sources":["../../../src/agents/config/agent-meta-schema.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"agent-meta-schema.js","sourceRoot":"","sources":["../../../src/agents/config/agent-meta-schema.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * Agent Meta Schema - Per-agent .meta TTL document\n *\n * Each agent folder has a .meta auxiliary resource:\n * /agents/{agentId}/.meta\n *\n * This is an adapter for the existing AGENTS.md + .meta runtime config layout,\n * not a durable shared model. Durable Agent resources belong in\n * @undefineds.co/models; the extra runtime fields here are local runtime\n * adapter inputs until the shared model owns that contract.\n */\n\nimport {\n DCTerms,\n FOAF,\n VCARD,\n aiModelResource,\n credentialResource,\n} from '@undefineds.co/models';\nimport {\n integer,\n real,\n solidSchema,\n string,\n text,\n timestamp,\n uri,\n} from '@undefineds.co/drizzle-solid';\nimport { UDFS } from '../../vocab/udfs';\n\nexport const AgentMetaSchema = solidSchema({\n id: string('id').primaryKey(),\n name: string('name').predicate(FOAF.name),\n description: text('description').predicate(DCTerms.description),\n avatarUrl: uri('avatarUrl').predicate(VCARD.hasPhoto),\n instructions: text('instructions').predicate(UDFS('systemPrompt')),\n provider: uri('provider').predicate(UDFS('provider')),\n runtimeKind: string('runtimeKind').predicate(UDFS('runtimeKind')),\n credential: uri('credential').predicate(UDFS('credential')).link(credentialResource),\n model: uri('model').predicate(UDFS('model')).link(aiModelResource),\n enabled: string('enabled').predicate(UDFS('enabled')).default('true'),\n permissionMode: string('permissionMode').predicate(UDFS('permissionMode')),\n allowedTools: text('allowedTools').array().predicate(UDFS('allowedTool')),\n disallowedTools: text('disallowedTools').array().predicate(UDFS('disallowedTool')),\n skills: uri('skills').array().predicate(UDFS('skill')),\n mcpServers: text('mcpServers').array().predicate(UDFS('mcpServer')),\n temperature: real('temperature').predicate(UDFS('temperature')).default(0.7),\n tools: text('tools').array().predicate(UDFS('tools')),\n contextRound: integer('contextRound').predicate(UDFS('contextRound')).default(4),\n maxTurns: integer('maxTurns').predicate(UDFS('maxTurns')),\n timeout: integer('timeout').predicate(UDFS('timeout')),\n ttsModel: uri('ttsModel').predicate(UDFS('ttsModel')).link(aiModelResource),\n videoModel: uri('videoModel').predicate(UDFS('videoModel')).link(aiModelResource),\n createdAt: timestamp('createdAt').predicate(DCTerms.created).notNull().defaultNow(),\n updatedAt: timestamp('updatedAt').predicate(DCTerms.modified).notNull().defaultNow(),\n deletedAt: timestamp('deletedAt').predicate(UDFS('deletedAt')),\n}, {\n type: UDFS.AgentConfig,\n namespace: UDFS,\n});\n"]}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Agent Config Module
|
|
3
3
|
*
|
|
4
|
-
* Per-agent configuration system based on:
|
|
5
|
-
* -
|
|
6
|
-
* - .meta:
|
|
4
|
+
* Per-agent configuration system based on a Pod-hosted Agent Profile:
|
|
5
|
+
* - AGENTS.md: user-editable plain Markdown guidance
|
|
6
|
+
* - .meta: RDF runtime config and refs to shared skill documents
|
|
7
7
|
*/
|
|
8
|
-
export type {
|
|
9
|
-
export {
|
|
8
|
+
export type { AgentMcpServerDef, AgentRuntimeKind, AgentMetaRecord, ResolvedAgentSkill, ResolvedAgentConfig, } from './types';
|
|
9
|
+
export { parseAgentInstructions, extractMarkdownBody } from './parse-agent-instructions';
|
|
10
10
|
export { AgentMetaSchema } from './agent-meta-schema';
|
|
11
11
|
export { resolveAgentConfig } from './resolve';
|
|
@@ -2,15 +2,16 @@
|
|
|
2
2
|
/**
|
|
3
3
|
* Agent Config Module
|
|
4
4
|
*
|
|
5
|
-
* Per-agent configuration system based on:
|
|
6
|
-
* -
|
|
7
|
-
* - .meta:
|
|
5
|
+
* Per-agent configuration system based on a Pod-hosted Agent Profile:
|
|
6
|
+
* - AGENTS.md: user-editable plain Markdown guidance
|
|
7
|
+
* - .meta: RDF runtime config and refs to shared skill documents
|
|
8
8
|
*/
|
|
9
9
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
|
-
exports.resolveAgentConfig = exports.AgentMetaSchema = exports.
|
|
10
|
+
exports.resolveAgentConfig = exports.AgentMetaSchema = exports.extractMarkdownBody = exports.parseAgentInstructions = void 0;
|
|
11
11
|
// Parser
|
|
12
|
-
var
|
|
13
|
-
Object.defineProperty(exports, "
|
|
12
|
+
var parse_agent_instructions_1 = require("./parse-agent-instructions");
|
|
13
|
+
Object.defineProperty(exports, "parseAgentInstructions", { enumerable: true, get: function () { return parse_agent_instructions_1.parseAgentInstructions; } });
|
|
14
|
+
Object.defineProperty(exports, "extractMarkdownBody", { enumerable: true, get: function () { return parse_agent_instructions_1.extractMarkdownBody; } });
|
|
14
15
|
// Schema
|
|
15
16
|
var agent_meta_schema_1 = require("./agent-meta-schema");
|
|
16
17
|
Object.defineProperty(exports, "AgentMetaSchema", { enumerable: true, get: function () { return agent_meta_schema_1.AgentMetaSchema; } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/config/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAWH,SAAS;AACT,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/config/index.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;AAWH,SAAS;AACT,uEAAyF;AAAhF,kIAAA,sBAAsB,OAAA;AAAE,+HAAA,mBAAmB,OAAA;AAEpD,SAAS;AACT,yDAAsD;AAA7C,oHAAA,eAAe,OAAA;AAExB,WAAW;AACX,qCAA+C;AAAtC,6GAAA,kBAAkB,OAAA","sourcesContent":["/**\n * Agent Config Module\n *\n * Per-agent configuration system based on a Pod-hosted Agent Profile:\n * - AGENTS.md: user-editable plain Markdown guidance\n * - .meta: RDF runtime config and refs to shared skill documents\n */\n\n// Types\nexport type {\n AgentMcpServerDef,\n AgentRuntimeKind,\n AgentMetaRecord,\n ResolvedAgentSkill,\n ResolvedAgentConfig,\n} from './types';\n\n// Parser\nexport { parseAgentInstructions, extractMarkdownBody } from './parse-agent-instructions';\n\n// Schema\nexport { AgentMetaSchema } from './agent-meta-schema';\n\n// Resolver\nexport { resolveAgentConfig } from './resolve';\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Agent instruction parser.
|
|
3
|
+
*
|
|
4
|
+
* AGENTS.md follows the Codex-style convention: it is plain Markdown guidance,
|
|
5
|
+
* not a structured configuration carrier. Runtime settings live in .meta.
|
|
6
|
+
*/
|
|
7
|
+
export declare function parseAgentInstructions(content: string): string;
|
|
8
|
+
/**
|
|
9
|
+
* Skill files may use Markdown frontmatter for skill metadata. Runtime prompt
|
|
10
|
+
* composition only needs the instruction body.
|
|
11
|
+
*/
|
|
12
|
+
export declare function extractMarkdownBody(content: string): string;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseAgentInstructions = parseAgentInstructions;
|
|
4
|
+
exports.extractMarkdownBody = extractMarkdownBody;
|
|
5
|
+
/**
|
|
6
|
+
* Agent instruction parser.
|
|
7
|
+
*
|
|
8
|
+
* AGENTS.md follows the Codex-style convention: it is plain Markdown guidance,
|
|
9
|
+
* not a structured configuration carrier. Runtime settings live in .meta.
|
|
10
|
+
*/
|
|
11
|
+
function parseAgentInstructions(content) {
|
|
12
|
+
return content.trim();
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Skill files may use Markdown frontmatter for skill metadata. Runtime prompt
|
|
16
|
+
* composition only needs the instruction body.
|
|
17
|
+
*/
|
|
18
|
+
function extractMarkdownBody(content) {
|
|
19
|
+
const trimmed = content.trim();
|
|
20
|
+
const match = /^---\r?\n[\s\S]*?\r?\n---\r?\n?([\s\S]*)$/.exec(trimmed);
|
|
21
|
+
return (match?.[1] ?? trimmed).trim();
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=parse-agent-instructions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parse-agent-instructions.js","sourceRoot":"","sources":["../../../src/agents/config/parse-agent-instructions.ts"],"names":[],"mappings":";;AAMA,wDAEC;AAMD,kDAIC;AAlBD;;;;;GAKG;AACH,SAAgB,sBAAsB,CAAC,OAAe;IACpD,OAAO,OAAO,CAAC,IAAI,EAAE,CAAC;AACxB,CAAC;AAED;;;GAGG;AACH,SAAgB,mBAAmB,CAAC,OAAe;IACjD,MAAM,OAAO,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,2CAA2C,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IACxE,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;AACxC,CAAC","sourcesContent":["/**\n * Agent instruction parser.\n *\n * AGENTS.md follows the Codex-style convention: it is plain Markdown guidance,\n * not a structured configuration carrier. Runtime settings live in .meta.\n */\nexport function parseAgentInstructions(content: string): string {\n return content.trim();\n}\n\n/**\n * Skill files may use Markdown frontmatter for skill metadata. Runtime prompt\n * composition only needs the instruction body.\n */\nexport function extractMarkdownBody(content: string): string {\n const trimmed = content.trim();\n const match = /^---\\r?\\n[\\s\\S]*?\\r?\\n---\\r?\\n?([\\s\\S]*)$/.exec(trimmed);\n return (match?.[1] ?? trimmed).trim();\n}\n"]}
|
|
@@ -1,16 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Agent Config Resolver
|
|
3
3
|
*
|
|
4
|
-
* Reads
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* 2. Query .meta TTL → get provider/credential/model URIs
|
|
10
|
-
* 3. Resolve URIs → Provider, Credential, Model records
|
|
11
|
-
* 4. Fetch skills (if any) → concatenate prompt content
|
|
12
|
-
* 5. Convert MCP server defs → McpServerConfig map
|
|
13
|
-
* 6. Return ResolvedAgentConfig
|
|
4
|
+
* Reads a Pod-hosted Agent Profile:
|
|
5
|
+
* - /agents/{agentId}/AGENTS.md is plain Markdown guidance.
|
|
6
|
+
* - /agents/{agentId}/.meta#config is RDF runtime config.
|
|
7
|
+
* - Skill refs point at shared SKILL.md documents in Pod storage.
|
|
8
|
+
* - MCP servers are structured config entries, not mcp/*.json files.
|
|
14
9
|
*/
|
|
15
10
|
import type { ResolvedAgentConfig } from './types';
|
|
16
11
|
interface ResolveContext {
|
|
@@ -21,9 +16,9 @@ interface ResolveContext {
|
|
|
21
16
|
/**
|
|
22
17
|
* Resolve a complete agent config from Pod storage.
|
|
23
18
|
*
|
|
24
|
-
* @param agentId - Agent folder name
|
|
19
|
+
* @param agentId - Agent folder name, for example "secretary"
|
|
25
20
|
* @param ctx - Pod access context
|
|
26
|
-
* @returns Fully resolved config, or null if agent
|
|
21
|
+
* @returns Fully resolved config, or null if agent is missing / disabled / invalid
|
|
27
22
|
*/
|
|
28
23
|
export declare function resolveAgentConfig(agentId: string, ctx: ResolveContext): Promise<ResolvedAgentConfig | null>;
|
|
29
24
|
export {};
|