@zhin.js/agent 0.2.1 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -12
- package/lib/agent-prompt/resolver.d.ts +2 -1
- package/lib/agent-prompt/resolver.d.ts.map +1 -1
- package/lib/agent-prompt/resolver.js +8 -3
- package/lib/agent-prompt/resolver.js.map +1 -1
- package/lib/assistant/home-mcp-bridge.d.ts +1 -1
- package/lib/assistant/home-mcp-bridge.d.ts.map +1 -1
- package/lib/assistant/home-policy.js +20 -21
- package/lib/assistant/home-policy.js.map +1 -1
- package/lib/assistant/home-tools.d.ts.map +1 -1
- package/lib/assistant/home-tools.js +5 -2
- package/lib/assistant/home-tools.js.map +1 -1
- package/lib/bootstrap.d.ts +12 -0
- package/lib/bootstrap.d.ts.map +1 -1
- package/lib/bootstrap.js +14 -0
- package/lib/bootstrap.js.map +1 -1
- package/lib/builtin/analyze-media-tool.d.ts.map +1 -1
- package/lib/builtin/analyze-media-tool.js +11 -5
- package/lib/builtin/analyze-media-tool.js.map +1 -1
- package/lib/builtin/bash-tool.d.ts +4 -2
- package/lib/builtin/bash-tool.d.ts.map +1 -1
- package/lib/builtin/bash-tool.js +17 -14
- package/lib/builtin/bash-tool.js.map +1 -1
- package/lib/builtin/generate-image-tool.d.ts +1 -1
- package/lib/builtin/generate-image-tool.d.ts.map +1 -1
- package/lib/builtin/generate-image-tool.js +3 -3
- package/lib/builtin/generate-image-tool.js.map +1 -1
- package/lib/builtin/grep-tool.d.ts.map +1 -1
- package/lib/builtin/grep-tool.js +4 -1
- package/lib/builtin/grep-tool.js.map +1 -1
- package/lib/builtin/knowledge-search-tool.d.ts +6 -0
- package/lib/builtin/knowledge-search-tool.d.ts.map +1 -0
- package/lib/builtin/knowledge-search-tool.js +184 -0
- package/lib/builtin/knowledge-search-tool.js.map +1 -0
- package/lib/builtin/orchestration-tools.d.ts +2 -1
- package/lib/builtin/orchestration-tools.d.ts.map +1 -1
- package/lib/builtin/orchestration-tools.js.map +1 -1
- package/lib/builtin/read-file-tool.d.ts.map +1 -1
- package/lib/builtin/read-file-tool.js +4 -4
- package/lib/builtin/read-file-tool.js.map +1 -1
- package/lib/builtin/run-spec-dry-run-tool.d.ts +1 -4
- package/lib/builtin/run-spec-dry-run-tool.d.ts.map +1 -1
- package/lib/builtin/run-spec-dry-run-tool.js.map +1 -1
- package/lib/builtin/run-validation-spec-tool.d.ts +1 -4
- package/lib/builtin/run-validation-spec-tool.d.ts.map +1 -1
- package/lib/builtin/run-validation-spec-tool.js.map +1 -1
- package/lib/builtin/spawn-task-tool.d.ts +2 -1
- package/lib/builtin/spawn-task-tool.d.ts.map +1 -1
- package/lib/builtin/spawn-task-tool.js.map +1 -1
- package/lib/builtin/web-fetch-tool.d.ts +2 -0
- package/lib/builtin/web-fetch-tool.d.ts.map +1 -1
- package/lib/builtin/web-fetch-tool.js +38 -16
- package/lib/builtin/web-fetch-tool.js.map +1 -1
- package/lib/builtin-tools.d.ts +2 -0
- package/lib/builtin-tools.d.ts.map +1 -1
- package/lib/builtin-tools.js +5 -1
- package/lib/builtin-tools.js.map +1 -1
- package/lib/config/fix-ai-config.d.ts +1 -1
- package/lib/config/fix-ai-config.d.ts.map +1 -1
- package/lib/config/fix-ai-config.js +1 -1
- package/lib/config/normalize-ai-config.d.ts +5 -2
- package/lib/config/normalize-ai-config.d.ts.map +1 -1
- package/lib/config/normalize-ai-config.js +50 -7
- package/lib/config/normalize-ai-config.js.map +1 -1
- package/lib/config/provider-instance.d.ts +1 -1
- package/lib/config/provider-instance.d.ts.map +1 -1
- package/lib/config/provider-instance.js +2 -51
- package/lib/config/provider-instance.js.map +1 -1
- package/lib/config/types.d.ts +9 -5
- package/lib/config/types.d.ts.map +1 -1
- package/lib/config/types.js.map +1 -1
- package/lib/config/validate-ai-config.d.ts.map +1 -1
- package/lib/config/validate-ai-config.js +12 -2
- package/lib/config/validate-ai-config.js.map +1 -1
- package/lib/create-agent-session.d.ts +1 -1
- package/lib/create-agent-session.d.ts.map +1 -1
- package/lib/deferred-worker-runner.d.ts +1 -1
- package/lib/deferred-worker-runner.d.ts.map +1 -1
- package/lib/deferred-worker-runner.js +39 -12
- package/lib/deferred-worker-runner.js.map +1 -1
- package/lib/index.d.ts +5 -19
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -10
- package/lib/index.js.map +1 -1
- package/lib/init/activate-ai-database-storage.d.ts +1 -1
- package/lib/init/activate-ai-database-storage.d.ts.map +1 -1
- package/lib/init/activate-ai-database-storage.js +12 -8
- package/lib/init/activate-ai-database-storage.js.map +1 -1
- package/lib/init/create-zhin-agent.d.ts.map +1 -1
- package/lib/init/create-zhin-agent.js +18 -6
- package/lib/init/create-zhin-agent.js.map +1 -1
- package/lib/init/introspection-collectors.d.ts +1 -1
- package/lib/init/introspection-collectors.d.ts.map +1 -1
- package/lib/init/introspection-collectors.js.map +1 -1
- package/lib/init/introspection-commands-format.d.ts +1 -1
- package/lib/init/introspection-commands-format.d.ts.map +1 -1
- package/lib/init/introspection-commands-format.js.map +1 -1
- package/lib/init/message-media.d.ts +2 -1
- package/lib/init/message-media.d.ts.map +1 -1
- package/lib/init/message-media.js.map +1 -1
- package/lib/init/register-agent-mesh-mcp.d.ts.map +1 -1
- package/lib/init/register-agent-mesh-mcp.js +18 -2
- package/lib/init/register-agent-mesh-mcp.js.map +1 -1
- package/lib/init/register-ai-service.d.ts.map +1 -1
- package/lib/init/register-ai-service.js +2 -1
- package/lib/init/register-ai-service.js.map +1 -1
- package/lib/init/register-builtin-tools.d.ts.map +1 -1
- package/lib/init/register-builtin-tools.js +12 -7
- package/lib/init/register-builtin-tools.js.map +1 -1
- package/lib/init/register-db-upgrade.js.map +1 -1
- package/lib/init/register-introspection-commands.d.ts.map +1 -1
- package/lib/init/register-introspection-commands.js +8 -9
- package/lib/init/register-introspection-commands.js.map +1 -1
- package/lib/init/register-owner-approve-commands.d.ts.map +1 -1
- package/lib/init/register-owner-approve-commands.js +16 -22
- package/lib/init/register-owner-approve-commands.js.map +1 -1
- package/lib/mcp-client/bridge.d.ts +4 -4
- package/lib/mcp-client/bridge.d.ts.map +1 -1
- package/lib/mcp-client/bridge.js.map +1 -1
- package/lib/mcp-client/connection.d.ts.map +1 -1
- package/lib/mcp-client/connection.js +37 -1
- package/lib/mcp-client/connection.js.map +1 -1
- package/lib/mcp-server/agent-mesh-tools.js +1 -1
- package/lib/mcp-server/agent-mesh-tools.js.map +1 -1
- package/lib/media/media-capabilities.d.ts.map +1 -1
- package/lib/media/media-capabilities.js +5 -7
- package/lib/media/media-capabilities.js.map +1 -1
- package/lib/media/resolve-config.d.ts.map +1 -1
- package/lib/media/resolve-config.js +5 -7
- package/lib/media/resolve-config.js.map +1 -1
- package/lib/memory-layers.d.ts.map +1 -1
- package/lib/memory-layers.js +10 -15
- package/lib/memory-layers.js.map +1 -1
- package/lib/orchestrator/agent-dispatcher.d.ts +1 -1
- package/lib/orchestrator/agent-dispatcher.d.ts.map +1 -1
- package/lib/orchestrator/owner-confirm-orchestration.d.ts +1 -1
- package/lib/orchestrator/owner-confirm-orchestration.d.ts.map +1 -1
- package/lib/orchestrator/owner-confirm-orchestration.js +3 -9
- package/lib/orchestrator/owner-confirm-orchestration.js.map +1 -1
- package/lib/orchestrator/remote-agent-registry.d.ts +1 -1
- package/lib/orchestrator/remote-agent-registry.d.ts.map +1 -1
- package/lib/plugin-ai-hook-bus.d.ts.map +1 -1
- package/lib/plugin-ai-hook-bus.js +2 -7
- package/lib/plugin-ai-hook-bus.js.map +1 -1
- package/lib/routing/runtime-binding.d.ts +1 -1
- package/lib/routing/runtime-binding.d.ts.map +1 -1
- package/lib/security/audit-logger.d.ts +1 -0
- package/lib/security/audit-logger.d.ts.map +1 -1
- package/lib/security/audit-logger.js +17 -7
- package/lib/security/audit-logger.js.map +1 -1
- package/lib/security/dangerous-tool-policy.d.ts +4 -0
- package/lib/security/dangerous-tool-policy.d.ts.map +1 -1
- package/lib/security/dangerous-tool-policy.js +46 -42
- package/lib/security/dangerous-tool-policy.js.map +1 -1
- package/lib/security/exec-policy.d.ts +1 -1
- package/lib/security/exec-policy.d.ts.map +1 -1
- package/lib/security/exec-policy.js +15 -3
- package/lib/security/exec-policy.js.map +1 -1
- package/lib/security/file-policy.d.ts +8 -0
- package/lib/security/file-policy.d.ts.map +1 -1
- package/lib/security/file-policy.js +48 -12
- package/lib/security/file-policy.js.map +1 -1
- package/lib/security/file-role-policy.d.ts +6 -3
- package/lib/security/file-role-policy.d.ts.map +1 -1
- package/lib/security/file-role-policy.js +29 -6
- package/lib/security/file-role-policy.js.map +1 -1
- package/lib/security/index.d.ts +3 -45
- package/lib/security/index.d.ts.map +1 -1
- package/lib/security/index.js +3 -66
- package/lib/security/index.js.map +1 -1
- package/lib/security/network-policy.d.ts +30 -87
- package/lib/security/network-policy.d.ts.map +1 -1
- package/lib/security/network-policy.js +133 -280
- package/lib/security/network-policy.js.map +1 -1
- package/lib/security/owner-approve-always-store.js +0 -1
- package/lib/security/owner-approve-always-store.js.map +1 -1
- package/lib/security/sandbox-docker.d.ts +28 -0
- package/lib/security/sandbox-docker.d.ts.map +1 -0
- package/lib/security/sandbox-docker.js +177 -0
- package/lib/security/sandbox-docker.js.map +1 -0
- package/lib/security/sandbox.d.ts +10 -0
- package/lib/security/sandbox.d.ts.map +1 -1
- package/lib/security/sandbox.js +152 -14
- package/lib/security/sandbox.js.map +1 -1
- package/lib/service.d.ts +4 -5
- package/lib/service.d.ts.map +1 -1
- package/lib/service.js +4 -12
- package/lib/service.js.map +1 -1
- package/lib/subagent.d.ts +7 -3
- package/lib/subagent.d.ts.map +1 -1
- package/lib/subagent.js +2 -2
- package/lib/subagent.js.map +1 -1
- package/lib/types/disposable.d.ts +5 -0
- package/lib/types/disposable.d.ts.map +1 -0
- package/lib/types/disposable.js +2 -0
- package/lib/types/disposable.js.map +1 -0
- package/lib/zhin-agent/agent-loop-standalone.d.ts +11 -0
- package/lib/zhin-agent/agent-loop-standalone.d.ts.map +1 -1
- package/lib/zhin-agent/agent-loop-standalone.js +26 -7
- package/lib/zhin-agent/agent-loop-standalone.js.map +1 -1
- package/lib/zhin-agent/agent-loop-turn.d.ts.map +1 -1
- package/lib/zhin-agent/agent-loop-turn.js +76 -9
- package/lib/zhin-agent/agent-loop-turn.js.map +1 -1
- package/lib/zhin-agent/agents-instruction.d.ts +15 -0
- package/lib/zhin-agent/agents-instruction.d.ts.map +1 -0
- package/lib/zhin-agent/agents-instruction.js +98 -0
- package/lib/zhin-agent/agents-instruction.js.map +1 -0
- package/lib/zhin-agent/builtin-tools.d.ts +1 -1
- package/lib/zhin-agent/builtin-tools.d.ts.map +1 -1
- package/lib/zhin-agent/compaction-runtime.d.ts.map +1 -1
- package/lib/zhin-agent/compaction-runtime.js +7 -1
- package/lib/zhin-agent/compaction-runtime.js.map +1 -1
- package/lib/zhin-agent/config.d.ts +53 -3
- package/lib/zhin-agent/config.d.ts.map +1 -1
- package/lib/zhin-agent/config.js +53 -2
- package/lib/zhin-agent/config.js.map +1 -1
- package/lib/zhin-agent/index.d.ts +20 -16
- package/lib/zhin-agent/index.d.ts.map +1 -1
- package/lib/zhin-agent/index.js +108 -99
- package/lib/zhin-agent/index.js.map +1 -1
- package/lib/zhin-agent/interfaces.d.ts +63 -0
- package/lib/zhin-agent/interfaces.d.ts.map +1 -0
- package/lib/zhin-agent/interfaces.js +8 -0
- package/lib/zhin-agent/interfaces.js.map +1 -0
- package/lib/zhin-agent/model-harness.js +1 -1
- package/lib/zhin-agent/phase-trace.d.ts +12 -1
- package/lib/zhin-agent/phase-trace.d.ts.map +1 -1
- package/lib/zhin-agent/phase-trace.js +25 -0
- package/lib/zhin-agent/phase-trace.js.map +1 -1
- package/lib/zhin-agent/prompt-assembly.d.ts +13 -4
- package/lib/zhin-agent/prompt-assembly.d.ts.map +1 -1
- package/lib/zhin-agent/prompt-assembly.js +34 -8
- package/lib/zhin-agent/prompt-assembly.js.map +1 -1
- package/lib/zhin-agent/prompt-trace.d.ts +20 -0
- package/lib/zhin-agent/prompt-trace.d.ts.map +1 -0
- package/lib/zhin-agent/prompt-trace.js +72 -0
- package/lib/zhin-agent/prompt-trace.js.map +1 -0
- package/lib/zhin-agent/prompt.d.ts +25 -3
- package/lib/zhin-agent/prompt.d.ts.map +1 -1
- package/lib/zhin-agent/prompt.js +109 -46
- package/lib/zhin-agent/prompt.js.map +1 -1
- package/lib/zhin-agent/session-io.d.ts +2 -2
- package/lib/zhin-agent/session-io.d.ts.map +1 -1
- package/lib/zhin-agent/session-io.js +2 -3
- package/lib/zhin-agent/session-io.js.map +1 -1
- package/lib/zhin-agent/task-continuation.d.ts +4 -4
- package/lib/zhin-agent/task-continuation.d.ts.map +1 -1
- package/lib/zhin-agent/task-continuation.js.map +1 -1
- package/lib/zhin-agent/tool-catalog.d.ts.map +1 -1
- package/lib/zhin-agent/tool-catalog.js +9 -1
- package/lib/zhin-agent/tool-catalog.js.map +1 -1
- package/lib/zhin-agent/turn-pipeline.d.ts.map +1 -1
- package/lib/zhin-agent/turn-pipeline.js +44 -11
- package/lib/zhin-agent/turn-pipeline.js.map +1 -1
- package/lib/zhin-agent/turn-user-message.d.ts +4 -1
- package/lib/zhin-agent/turn-user-message.d.ts.map +1 -1
- package/lib/zhin-agent/turn-user-message.js +39 -0
- package/lib/zhin-agent/turn-user-message.js.map +1 -1
- package/lib/zhin-agent/workspace-prompt.d.ts +10 -0
- package/lib/zhin-agent/workspace-prompt.d.ts.map +1 -0
- package/lib/zhin-agent/workspace-prompt.js +55 -0
- package/lib/zhin-agent/workspace-prompt.js.map +1 -0
- package/lib/zhin-agent/zhin-agent-private.d.ts +2 -0
- package/lib/zhin-agent/zhin-agent-private.d.ts.map +1 -1
- package/lib/zhin-agent/zhin-agent-private.js.map +1 -1
- package/package.json +16 -6
- package/lib/monitoring/index.d.ts +0 -79
- package/lib/monitoring/index.d.ts.map +0 -1
- package/lib/monitoring/index.js +0 -197
- package/lib/monitoring/index.js.map +0 -1
- package/lib/monitoring/metrics.d.ts +0 -260
- package/lib/monitoring/metrics.d.ts.map +0 -1
- package/lib/monitoring/metrics.js +0 -550
- package/lib/monitoring/metrics.js.map +0 -1
- package/lib/security/budget-limiter.d.ts +0 -161
- package/lib/security/budget-limiter.d.ts.map +0 -1
- package/lib/security/budget-limiter.js +0 -392
- package/lib/security/budget-limiter.js.map +0 -1
- package/lib/security/security-config.example.d.ts +0 -33
- package/lib/security/security-config.example.d.ts.map +0 -1
- package/lib/security/security-config.example.js +0 -166
- package/lib/security/security-config.example.js.map +0 -1
package/README.md
CHANGED
|
@@ -24,32 +24,31 @@ Zhin AI Agent 组合层:在 `@zhin.js/core` 的类型与 Provider 之上,提
|
|
|
24
24
|
|
|
25
25
|
## 依赖关系
|
|
26
26
|
|
|
27
|
-
- 依赖 **@zhin.js/core
|
|
28
|
-
-
|
|
27
|
+
- 依赖 **@zhin.js/core**(IM 类型与消息链)与 **@zhin.js/ai**(`agentLoop`、Provider 抽象)
|
|
28
|
+
- **zhin.js 4.x** 主包为 optional peer;运行时通过 `zhin.js/agent` 子路径或本包 import;`bootstrapNode` 在检测到本包时调用 `initAgentModule()`
|
|
29
29
|
|
|
30
30
|
## 安装
|
|
31
31
|
|
|
32
32
|
```bash
|
|
33
|
-
|
|
34
|
-
#
|
|
35
|
-
npm install zhin.js
|
|
33
|
+
pnpm add @zhin.js/agent zod ai
|
|
34
|
+
pnpm add @ai-sdk/openai # 示例:按厂商安装 provider SDK
|
|
36
35
|
```
|
|
37
36
|
|
|
37
|
+
仅 IM、不需要 Agent 时可只装 `zhin.js`(见 [ADR 0019](../../docs/adr/0019-install-size-layering.md))。
|
|
38
|
+
|
|
38
39
|
## 使用
|
|
39
40
|
|
|
40
|
-
###
|
|
41
|
+
### 在 Zhin 项目中(推荐)
|
|
41
42
|
|
|
42
|
-
|
|
43
|
+
安装本包后,从 **`zhin.js/agent`** 或 **`@zhin.js/agent`** 引入:
|
|
43
44
|
|
|
44
45
|
```typescript
|
|
45
46
|
import {
|
|
46
|
-
initAgentModule,
|
|
47
47
|
ZhinAgent,
|
|
48
48
|
AIService,
|
|
49
49
|
SessionManager,
|
|
50
50
|
registerAIHook,
|
|
51
|
-
|
|
52
|
-
} from 'zhin.js'
|
|
51
|
+
} from 'zhin.js/agent'
|
|
53
52
|
|
|
54
53
|
// 使用 ctx.ai (AIService)
|
|
55
54
|
useContext('ai', async (ai) => {
|
|
@@ -58,9 +57,9 @@ useContext('ai', async (ai) => {
|
|
|
58
57
|
})
|
|
59
58
|
```
|
|
60
59
|
|
|
61
|
-
|
|
60
|
+
`initAgentModule()` 由 `zhin.js/node` 的 `bootstrapNode` 在启动时调用,插件一般无需手动 init。
|
|
62
61
|
|
|
63
|
-
|
|
62
|
+
### 非 Zhin 宿主 / 单独集成
|
|
64
63
|
|
|
65
64
|
```javascript
|
|
66
65
|
import { initAgentModule, AIService } from '@zhin.js/agent'
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import type { AgentPromptBuildContext, AgentPromptSection } from '@zhin.js/core';
|
|
2
|
+
import type { AgentTool } from '@zhin.js/ai';
|
|
2
3
|
import type { ZhinAgentConfig } from '../zhin-agent/config.js';
|
|
3
4
|
export interface ResolveAgentPromptOptions {
|
|
4
5
|
ctx: AgentPromptBuildContext;
|
|
@@ -7,6 +8,6 @@ export interface ResolveAgentPromptOptions {
|
|
|
7
8
|
}
|
|
8
9
|
export declare function resolveAgentPromptSections(options: ResolveAgentPromptOptions): Promise<AgentPromptSection[]>;
|
|
9
10
|
export declare function resolveAgentPromptMarkdown(options: ResolveAgentPromptOptions): Promise<string>;
|
|
10
|
-
export declare function resolveDeferredToolsForPlatform(ctx: AgentPromptBuildContext, query: string, goal: string, catalog:
|
|
11
|
+
export declare function resolveDeferredToolsForPlatform(ctx: AgentPromptBuildContext, query: string, goal: string, catalog: AgentTool[], maxTools: number, defaultSelect: (query: string, goal: string, catalog: AgentTool[], maxTools: number) => AgentTool[]): AgentTool[];
|
|
11
12
|
export declare function platformMatchesDeferredTask(ctx: AgentPromptBuildContext, query: string, goal: string): boolean;
|
|
12
13
|
//# sourceMappingURL=resolver.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/agent-prompt/resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../src/agent-prompt/resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAC7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAY/D,MAAM,WAAW,yBAAyB;IACxC,GAAG,EAAE,uBAAuB,CAAC;IAC7B,MAAM,CAAC,EAAE,IAAI,CACX,QAAQ,CAAC,eAAe,CAAC,EACzB,+BAA+B,GAAG,wBAAwB,CAC3D,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAyC/B;AAED,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,MAAM,CAAC,CAGjB;AAED,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,uBAAuB,EAC5B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,EAAE,EACpB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,CACb,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,EAAE,EACpB,QAAQ,EAAE,MAAM,KACb,SAAS,EAAE,GACf,SAAS,EAAE,CAab;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,uBAAuB,EAC5B,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,MAAM,GACX,OAAO,CAUT"}
|
|
@@ -49,9 +49,14 @@ export async function resolveAgentPromptMarkdown(options) {
|
|
|
49
49
|
export function resolveDeferredToolsForPlatform(ctx, query, goal, catalog, maxTools, defaultSelect) {
|
|
50
50
|
const contributor = getAgentPromptContributor(String(ctx.commMessage.$adapter));
|
|
51
51
|
if (contributor?.matchesDeferredTask?.(ctx)) {
|
|
52
|
-
const
|
|
53
|
-
|
|
54
|
-
|
|
52
|
+
const catalogLite = catalog.map((t) => ({ name: t.name, description: t.description }));
|
|
53
|
+
const selected = contributor.selectDeferredTools?.(query, goal, catalogLite, maxTools);
|
|
54
|
+
if (selected) {
|
|
55
|
+
const byName = new Map(catalog.map((t) => [t.name, t]));
|
|
56
|
+
return selected
|
|
57
|
+
.map((item) => byName.get(item.name))
|
|
58
|
+
.filter((tool) => tool != null);
|
|
59
|
+
}
|
|
55
60
|
}
|
|
56
61
|
return defaultSelect(query, goal, catalog, maxTools);
|
|
57
62
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/agent-prompt/resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"resolver.js","sourceRoot":"","sources":["../../src/agent-prompt/resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*
|
|
4
4
|
* REST 为主路径;配置 mcpServer 时与 ai.mcpServers 对齐,供 Agent binding 挂载 MCP 工具。
|
|
5
5
|
*/
|
|
6
|
-
import type { AIConfig } from '@zhin.js/
|
|
6
|
+
import type { AIConfig } from '@zhin.js/ai';
|
|
7
7
|
import type { AssistantHomeConfig } from './home-config.js';
|
|
8
8
|
export declare function listConfiguredMcpServerNames(ai?: AIConfig): string[];
|
|
9
9
|
/** 校验 mcpServer 已在 ai.mcpServers 注册;返回警告文案(无则 null) */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"home-mcp-bridge.d.ts","sourceRoot":"","sources":["../../src/assistant/home-mcp-bridge.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"home-mcp-bridge.d.ts","sourceRoot":"","sources":["../../src/assistant/home-mcp-bridge.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAG5D,wBAAgB,4BAA4B,CAAC,EAAE,CAAC,EAAE,QAAQ,GAAG,MAAM,EAAE,CAOpE;AAED,uDAAuD;AACvD,wBAAgB,qBAAqB,CACnC,IAAI,CAAC,EAAE,mBAAmB,EAC1B,EAAE,CAAC,EAAE,QAAQ,GACZ,MAAM,GAAG,IAAI,CAOf;AAED,wBAAgB,aAAa,CAAC,IAAI,CAAC,EAAE,mBAAmB,GAAG,OAAO,CAGjE"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Home Domain 工具权限(M4)
|
|
3
3
|
*/
|
|
4
|
-
import {
|
|
4
|
+
import { getHostRootPlugin, hasSenderRole, mergeAITriggerConfig, resolveSenderRoles, senderRolesFromMessage, } from '@zhin.js/core';
|
|
5
5
|
import { resolveToolRequesterRole, } from '../security/owner-approve-always-store.js';
|
|
6
6
|
import { parseEntityDomain } from './domains/home-assistant.js';
|
|
7
7
|
function resolveRole(commMessage) {
|
|
@@ -10,29 +10,28 @@ function resolveRole(commMessage) {
|
|
|
10
10
|
}
|
|
11
11
|
if (commMessage.$adapter === 'process')
|
|
12
12
|
return 'master';
|
|
13
|
+
const host = getHostRootPlugin();
|
|
14
|
+
if (host) {
|
|
15
|
+
return resolveToolRequesterRole(host, commMessage);
|
|
16
|
+
}
|
|
17
|
+
if (commMessage.$sender.isMaster !== undefined || commMessage.$sender.isTrusted !== undefined) {
|
|
18
|
+
const roles = senderRolesFromMessage(commMessage);
|
|
19
|
+
if (hasSenderRole(roles, 'master'))
|
|
20
|
+
return 'master';
|
|
21
|
+
if (hasSenderRole(roles, 'trusted'))
|
|
22
|
+
return 'trusted';
|
|
23
|
+
return 'other';
|
|
24
|
+
}
|
|
13
25
|
try {
|
|
14
|
-
|
|
26
|
+
const { roles } = resolveSenderRoles(commMessage, mergeAITriggerConfig({}), undefined);
|
|
27
|
+
if (hasSenderRole(roles, 'master'))
|
|
28
|
+
return 'master';
|
|
29
|
+
if (hasSenderRole(roles, 'trusted'))
|
|
30
|
+
return 'trusted';
|
|
31
|
+
return 'other';
|
|
15
32
|
}
|
|
16
33
|
catch {
|
|
17
|
-
|
|
18
|
-
const roles = senderRolesFromMessage(commMessage);
|
|
19
|
-
if (hasSenderRole(roles, 'master'))
|
|
20
|
-
return 'master';
|
|
21
|
-
if (hasSenderRole(roles, 'trusted'))
|
|
22
|
-
return 'trusted';
|
|
23
|
-
return 'other';
|
|
24
|
-
}
|
|
25
|
-
try {
|
|
26
|
-
const { roles } = resolveSenderRoles(commMessage, mergeAITriggerConfig({}), undefined);
|
|
27
|
-
if (hasSenderRole(roles, 'master'))
|
|
28
|
-
return 'master';
|
|
29
|
-
if (hasSenderRole(roles, 'trusted'))
|
|
30
|
-
return 'trusted';
|
|
31
|
-
return 'other';
|
|
32
|
-
}
|
|
33
|
-
catch {
|
|
34
|
-
return 'other';
|
|
35
|
-
}
|
|
34
|
+
return 'other';
|
|
36
35
|
}
|
|
37
36
|
}
|
|
38
37
|
export function checkHomeToolAccess(operation, entityId, commMessage, policy) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"home-policy.js","sourceRoot":"","sources":["../../src/assistant/home-policy.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,
|
|
1
|
+
{"version":3,"file":"home-policy.js","sourceRoot":"","sources":["../../src/assistant/home-policy.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,oBAAoB,EACpB,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,wBAAwB,GAEzB,MAAM,2CAA2C,CAAC;AAEnD,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAShE,SAAS,WAAW,CAAC,WAAqB;IACxC,IAAI,CAAC,WAAW,EAAE,QAAQ,IAAI,CAAC,WAAW,EAAE,SAAS,IAAI,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC;QACnF,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,WAAW,CAAC,QAAQ,KAAK,SAAS;QAAE,OAAO,QAAQ,CAAC;IACxD,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC;IACjC,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,wBAAwB,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,WAAW,CAAC,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,WAAW,CAAC,OAAO,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAC9F,MAAM,KAAK,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;QAClD,IAAI,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC;YAAE,OAAO,QAAQ,CAAC;QACpD,IAAI,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QACtD,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,IAAI,CAAC;QACH,MAAM,EAAE,KAAK,EAAE,GAAG,kBAAkB,CAClC,WAAW,EACX,oBAAoB,CAAC,EAAE,CAAC,EACxB,SAAS,CACV,CAAC;QACF,IAAI,aAAa,CAAC,KAAK,EAAE,QAAQ,CAAC;YAAE,OAAO,QAAQ,CAAC;QACpD,IAAI,aAAa,CAAC,KAAK,EAAE,SAAS,CAAC;YAAE,OAAO,SAAS,CAAC;QACtD,OAAO,OAAO,CAAC;IACjB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,OAAO,CAAC;IACjB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,mBAAmB,CACjC,SAA2B,EAC3B,QAAgB,EAChB,WAAgC,EAChC,MAAgF;IAEhF,MAAM,IAAI,GAAG,WAAW,CAAC,WAAW,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAE3C,IAAI,MAAM,CAAC,aAAa,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC9C,OAAO;YACL,OAAO,EAAE,KAAK;YACd,IAAI;YACJ,MAAM,EAAE,qCAAqC;SAC9C,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,KAAK,OAAO,IAAI,MAAM,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;QACrE,OAAO;YACL,OAAO,EAAE,KAAK;YACd,kBAAkB,EAAE,IAAI;YACxB,IAAI;YACJ,MAAM,EAAE,IAAI,MAAM,iCAAiC,QAAQ,IAAI;SAChE,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,QAA0B;IAC1D,OAAO,sBAAsB,QAAQ,CAAC,MAAM,IAAI,sBAAsB,EAAE,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,QAA0B;IACxD,OAAO,UAAU,QAAQ,CAAC,MAAM,IAAI,YAAY,EAAE,CAAC;AACrD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"home-tools.d.ts","sourceRoot":"","sources":["../../src/assistant/home-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAUzD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,oBAAoB,CAAC;IAC9B,MAAM,EAAE,gBAAgB,GAAG;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAClF;
|
|
1
|
+
{"version":3,"file":"home-tools.d.ts","sourceRoot":"","sources":["../../src/assistant/home-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AACxE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAUzD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,oBAAoB,CAAC;IAC9B,MAAM,EAAE,gBAAgB,GAAG;QAAE,aAAa,EAAE,OAAO,CAAC;QAAC,eAAe,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;CAClF;AAwCD,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB,GAAG,QAAQ,EAAE,CA8FrE"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { ZhinTool } from '@zhin.js/core';
|
|
5
5
|
import { checkHomeToolAccess, toHomeDenyError, toHomeOwnerSignal, } from './home-policy.js';
|
|
6
|
-
import {
|
|
6
|
+
import { getHostRootPlugin } from '@zhin.js/core';
|
|
7
7
|
import { resolveToolRequesterRole } from '../security/owner-approve-always-store.js';
|
|
8
8
|
function guard(operation, entityId, commMessage, policy) {
|
|
9
9
|
const decision = checkHomeToolAccess(operation, entityId, commMessage, policy);
|
|
@@ -14,7 +14,10 @@ function guardMasterOnly(commMessage, policy) {
|
|
|
14
14
|
return null;
|
|
15
15
|
}
|
|
16
16
|
try {
|
|
17
|
-
const
|
|
17
|
+
const host = getHostRootPlugin();
|
|
18
|
+
if (!host)
|
|
19
|
+
return null;
|
|
20
|
+
const role = resolveToolRequesterRole(host, commMessage);
|
|
18
21
|
if (role === 'master')
|
|
19
22
|
return null;
|
|
20
23
|
return toHomeDenyError({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"home-tools.js","sourceRoot":"","sources":["../../src/assistant/home-tools.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAIzC,OAAO,EACL,mBAAmB,EACnB,eAAe,EACf,iBAAiB,GAElB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"home-tools.js","sourceRoot":"","sources":["../../src/assistant/home-tools.ts"],"names":[],"mappings":"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"}
|
package/lib/bootstrap.d.ts
CHANGED
|
@@ -15,6 +15,8 @@
|
|
|
15
15
|
*/
|
|
16
16
|
/** 支持的引导文件名(顺序:SOUL → AGENTS → TOOLS) */
|
|
17
17
|
export declare const BOOTSTRAP_FILENAMES: readonly ["SOUL.md", "AGENTS.md", "TOOLS.md"];
|
|
18
|
+
/** 可缓存 system §11:仅 SOUL + TOOLS(AGENTS 进 Turn envelope) */
|
|
19
|
+
export declare const STABLE_BOOTSTRAP_FILENAMES: readonly ["SOUL.md", "TOOLS.md"];
|
|
18
20
|
export type BootstrapFileName = typeof BOOTSTRAP_FILENAMES[number];
|
|
19
21
|
/** 引导文件信息 */
|
|
20
22
|
export interface BootstrapFile {
|
|
@@ -52,6 +54,16 @@ export declare function buildContextFiles(bootstrapFiles: BootstrapFile[], optio
|
|
|
52
54
|
maxChars?: number;
|
|
53
55
|
totalMaxChars?: number;
|
|
54
56
|
}): ContextFile[];
|
|
57
|
+
/** 仅 SOUL.md + TOOLS.md,供可缓存 system §11 */
|
|
58
|
+
export declare function buildStableContextFiles(bootstrapFiles: BootstrapFile[], options?: {
|
|
59
|
+
maxChars?: number;
|
|
60
|
+
totalMaxChars?: number;
|
|
61
|
+
}): ContextFile[];
|
|
62
|
+
/** 构建可缓存 bootstrap 段(不含 AGENTS.md) */
|
|
63
|
+
export declare function buildStableBootstrapSection(bootstrapFiles: BootstrapFile[], options?: {
|
|
64
|
+
maxChars?: number;
|
|
65
|
+
totalMaxChars?: number;
|
|
66
|
+
}): string;
|
|
55
67
|
/**
|
|
56
68
|
* 加载 SOUL.md 人格定义
|
|
57
69
|
*/
|
package/lib/bootstrap.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,yCAAyC;AACzC,eAAO,MAAM,mBAAmB,+CAItB,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAYnE,aAAa;AACb,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,iCAAiC;AACjC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AA8BD;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAcD;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAM1D;AAED,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,EAAE,CAAC,CA6B1B;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,aAAa,EAAE,EAC/B,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GACA,WAAW,EAAE,CA8Bf;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAInF;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIlF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIpF;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,4BAA4B,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,CAuBhF"}
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAYH,yCAAyC;AACzC,eAAO,MAAM,mBAAmB,+CAItB,CAAC;AAEX,4DAA4D;AAC5D,eAAO,MAAM,0BAA0B,kCAG7B,CAAC;AAEX,MAAM,MAAM,iBAAiB,GAAG,OAAO,mBAAmB,CAAC,MAAM,CAAC,CAAC;AAYnE,aAAa;AACb,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,OAAO,CAAC;CAClB;AAED,iCAAiC;AACjC,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AA8BD;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,IAAI,CAE1C;AAcD;;GAEG;AACH,wBAAgB,YAAY,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,MAAM,CAM1D;AAED,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,aAAa,EAAE,CAAC,CA6B1B;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,cAAc,EAAE,aAAa,EAAE,EAC/B,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GACA,WAAW,EAAE,CA8Bf;AAED,2CAA2C;AAC3C,wBAAgB,uBAAuB,CACrC,cAAc,EAAE,aAAa,EAAE,EAC/B,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GACA,WAAW,EAAE,CAKf;AAED,sCAAsC;AACtC,wBAAgB,2BAA2B,CACzC,cAAc,EAAE,aAAa,EAAE,EAC/B,OAAO,CAAC,EAAE;IACR,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB,GACA,MAAM,CAER;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAInF;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIlF;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAIpF;AAMD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,4BAA4B,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,MAAM,CAuBhF"}
|
package/lib/bootstrap.js
CHANGED
|
@@ -26,6 +26,11 @@ export const BOOTSTRAP_FILENAMES = [
|
|
|
26
26
|
'AGENTS.md',
|
|
27
27
|
'TOOLS.md',
|
|
28
28
|
];
|
|
29
|
+
/** 可缓存 system §11:仅 SOUL + TOOLS(AGENTS 进 Turn envelope) */
|
|
30
|
+
export const STABLE_BOOTSTRAP_FILENAMES = [
|
|
31
|
+
'SOUL.md',
|
|
32
|
+
'TOOLS.md',
|
|
33
|
+
];
|
|
29
34
|
/** 单文件最大字符数(默认 16KB) */
|
|
30
35
|
const DEFAULT_MAX_CHARS = 16 * 1024;
|
|
31
36
|
/** 所有引导文件总最大字符数(默认 48KB) */
|
|
@@ -143,6 +148,15 @@ export function buildContextFiles(bootstrapFiles, options) {
|
|
|
143
148
|
}
|
|
144
149
|
return contextFiles;
|
|
145
150
|
}
|
|
151
|
+
/** 仅 SOUL.md + TOOLS.md,供可缓存 system §11 */
|
|
152
|
+
export function buildStableContextFiles(bootstrapFiles, options) {
|
|
153
|
+
const stable = bootstrapFiles.filter(f => STABLE_BOOTSTRAP_FILENAMES.includes(f.name));
|
|
154
|
+
return buildContextFiles(stable, options);
|
|
155
|
+
}
|
|
156
|
+
/** 构建可缓存 bootstrap 段(不含 AGENTS.md) */
|
|
157
|
+
export function buildStableBootstrapSection(bootstrapFiles, options) {
|
|
158
|
+
return buildBootstrapContextSection(buildStableContextFiles(bootstrapFiles, options));
|
|
159
|
+
}
|
|
146
160
|
/**
|
|
147
161
|
* 加载 SOUL.md 人格定义
|
|
148
162
|
*/
|
package/lib/bootstrap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-media-tool.d.ts","sourceRoot":"","sources":["../../src/builtin/analyze-media-tool.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIrF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAgBzD,eAAO,MAAM,wBAAwB,EAAE,oBAMtC,CAAC;AAEF,qBAAa,uBAAwB,SAAQ,eAAe;IAC1D,QAAQ,CAAC,IAAI,mBAAmB;IAChC,QAAQ,CAAC,WAAW,kQACqC;IACzD,QAAQ,CAAC,UAAU,4CAA4B;IAC/C,QAAQ,CAAC,IAAI,UAAU;;IAQjB,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze-media-tool.d.ts","sourceRoot":"","sources":["../../src/builtin/analyze-media-tool.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAIrF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAgBzD,eAAO,MAAM,wBAAwB,EAAE,oBAMtC,CAAC;AAEF,qBAAa,uBAAwB,SAAQ,eAAe;IAC1D,QAAQ,CAAC,IAAI,mBAAmB;IAChC,QAAQ,CAAC,WAAW,kQACqC;IACzD,QAAQ,CAAC,UAAU,4CAA4B;IAC/C,QAAQ,CAAC,IAAI,UAAU;;IAQjB,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;CA+DrF;AAED,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C"}
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import * as fs from 'node:fs/promises';
|
|
5
5
|
import * as path from 'node:path';
|
|
6
|
-
import { checkFileToolAccess, toDenyError, toOwnerSignal } from '../security/dangerous-tool-policy.js';
|
|
7
|
-
import { checkFilePermission,
|
|
6
|
+
import { checkFileToolAccess, checkSensitiveFilePathAccess, toDenyError, toOwnerSignal } from '../security/dangerous-tool-policy.js';
|
|
7
|
+
import { checkFilePermission, resolveFilePermissionGate, toolRequesterRoleToFileRole } from '../security/file-role-policy.js';
|
|
8
8
|
import { expandHome, nodeErrToFileMessage } from '../discovery/utils.js';
|
|
9
9
|
import { BuiltinBaseTool } from './builtin-base-tool.js';
|
|
10
10
|
import { normalizeContentPartsToPayloads } from '../media/media-normalize.js';
|
|
@@ -48,11 +48,17 @@ export class AnalyzeMediaBuiltinTool extends BuiltinBaseTool {
|
|
|
48
48
|
}
|
|
49
49
|
const fileRole = toolRequesterRoleToFileRole(roleDecision.role);
|
|
50
50
|
const permResult = checkFilePermission(fileRole, 'read', filePathArg);
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
const permGate = resolveFilePermissionGate(permResult, 'analyze_media');
|
|
52
|
+
if (permGate)
|
|
53
|
+
return permGate;
|
|
54
54
|
try {
|
|
55
55
|
const fp = expandHome(filePathArg);
|
|
56
|
+
const sensitiveDecision = checkSensitiveFilePathAccess('read_file', fp, commMessage);
|
|
57
|
+
if (!sensitiveDecision.allowed) {
|
|
58
|
+
if (sensitiveDecision.needsOwnerApproval)
|
|
59
|
+
return toOwnerSignal(sensitiveDecision);
|
|
60
|
+
return toDenyError(sensitiveDecision);
|
|
61
|
+
}
|
|
56
62
|
if (!isMediaPath(fp)) {
|
|
57
63
|
return 'Error: analyze_media 仅支持图片/音频/视频扩展名;文本请用 read_file。';
|
|
58
64
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze-media-tool.js","sourceRoot":"","sources":["../../src/builtin/analyze-media-tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,MAAM,kBAAkB,CAAC;AACvC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAElC,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze-media-tool.js","sourceRoot":"","sources":["../../src/builtin/analyze-media-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
* bash — Shell 执行(安全检查 + 命令读写分类 + 沙箱保护 + 文件角色权限)
|
|
3
3
|
*/
|
|
4
4
|
import { type ExecOptions } from 'node:child_process';
|
|
5
|
-
import { type Tool, type Message, type ToolParametersSchema, type ToolResult } from '@zhin.js/core';
|
|
5
|
+
import { type Plugin, type Tool, type Message, type ToolParametersSchema, type ToolResult } from '@zhin.js/core';
|
|
6
6
|
import { BuiltinBaseTool } from './builtin-base-tool.js';
|
|
7
7
|
/** 可注入以便单测(默认 `promisify(exec)`) */
|
|
8
8
|
export type BashExecAsync = (command: string, options?: ExecOptions) => Promise<{
|
|
@@ -18,10 +18,12 @@ export declare class BashBuiltinTool extends BuiltinBaseTool {
|
|
|
18
18
|
readonly kind = "shell";
|
|
19
19
|
/** 是否使用沙箱(默认 true,测试时可设为 false) */
|
|
20
20
|
private useSandbox;
|
|
21
|
+
private readonly hostPlugin?;
|
|
21
22
|
constructor(execAsync?: BashExecAsync, options?: {
|
|
22
23
|
useSandbox?: boolean;
|
|
24
|
+
plugin?: Plugin;
|
|
23
25
|
});
|
|
24
26
|
run(args: Record<string, unknown>, commMessage?: Message): Promise<ToolResult>;
|
|
25
27
|
}
|
|
26
|
-
export declare function createBashTool(): Tool;
|
|
28
|
+
export declare function createBashTool(plugin?: Plugin): Tool;
|
|
27
29
|
//# sourceMappingURL=bash-tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bash-tool.d.ts","sourceRoot":"","sources":["../../src/builtin/bash-tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAQ,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,
|
|
1
|
+
{"version":3,"file":"bash-tool.d.ts","sourceRoot":"","sources":["../../src/builtin/bash-tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAQ,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,EAAE,KAAK,MAAM,EAAE,KAAK,IAAI,EAAE,KAAK,OAAO,EAAE,KAAK,oBAAoB,EAAE,KAAK,UAAU,EAAE,MAAM,eAAe,CAAC;AAUjH,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,oCAAoC;AACpC,MAAM,MAAM,aAAa,GAAG,CAC1B,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,WAAW,KAClB,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAAC;AAEjD,eAAO,MAAM,eAAe,EAAE,oBAQ7B,CAAC;AAEF,qBAAa,eAAgB,SAAQ,eAAe;IAYhD,OAAO,CAAC,QAAQ,CAAC,SAAS;IAX5B,QAAQ,CAAC,IAAI,UAAU;IACvB,QAAQ,CAAC,WAAW,mPACgC;IACpD,QAAQ,CAAC,UAAU,4CAAmB;IACtC,QAAQ,CAAC,IAAI,WAAW;IAExB,mCAAmC;IACnC,OAAO,CAAC,UAAU,CAAU;IAC5B,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAS;gBAGlB,SAAS,GAAE,aAAgC,EAC5D,OAAO,CAAC,EAAE;QAAE,UAAU,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE;IAS/C,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC;CAwErF;AAED,wBAAgB,cAAc,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAEpD"}
|
package/lib/builtin/bash-tool.js
CHANGED
|
@@ -3,10 +3,10 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { exec } from 'node:child_process';
|
|
5
5
|
import { promisify } from 'node:util';
|
|
6
|
-
import { getPlugin } from '@zhin.js/core';
|
|
7
6
|
import { resolveToolRequesterRole } from '../security/owner-approve-always-store.js';
|
|
8
|
-
import { checkBashFilePermission,
|
|
7
|
+
import { checkBashFilePermission, resolveFilePermissionGate, toolRequesterRoleToFileRole } from '../security/file-role-policy.js';
|
|
9
8
|
import { checkBashCommandSafety, classifyBashCommand, } from '../security/file-policy.js';
|
|
9
|
+
import { checkBashSensitiveReadAccess, toDenyError, toOwnerSignal } from '../security/dangerous-tool-policy.js';
|
|
10
10
|
import { getSandbox } from '../security/sandbox.js';
|
|
11
11
|
import { errMsg } from '../discovery/utils.js';
|
|
12
12
|
import { BuiltinBaseTool } from './builtin-base-tool.js';
|
|
@@ -28,12 +28,14 @@ export class BashBuiltinTool extends BuiltinBaseTool {
|
|
|
28
28
|
kind = 'shell';
|
|
29
29
|
/** 是否使用沙箱(默认 true,测试时可设为 false) */
|
|
30
30
|
useSandbox;
|
|
31
|
+
hostPlugin;
|
|
31
32
|
constructor(execAsync = defaultExecAsync, options) {
|
|
32
33
|
super();
|
|
33
34
|
this.execAsync = execAsync;
|
|
34
35
|
this.tags.push('shell', 'exec');
|
|
35
36
|
this.keywords.push('执行', '运行', '命令', '终端', 'shell', 'bash');
|
|
36
37
|
this.useSandbox = options?.useSandbox ?? true;
|
|
38
|
+
this.hostPlugin = options?.plugin?.root ?? options?.plugin;
|
|
37
39
|
}
|
|
38
40
|
async run(args, commMessage) {
|
|
39
41
|
try {
|
|
@@ -43,19 +45,20 @@ export class BashBuiltinTool extends BuiltinBaseTool {
|
|
|
43
45
|
const safety = checkBashCommandSafety(cmd);
|
|
44
46
|
if (!safety.safe)
|
|
45
47
|
return `Error: ${safety.reason}`;
|
|
46
|
-
const
|
|
47
|
-
|
|
48
|
+
const sensitiveRead = checkBashSensitiveReadAccess(cmd, commMessage);
|
|
49
|
+
if (!sensitiveRead.allowed) {
|
|
50
|
+
if (sensitiveRead.needsOwnerApproval)
|
|
51
|
+
return toOwnerSignal(sensitiveRead);
|
|
52
|
+
return toDenyError(sensitiveRead);
|
|
53
|
+
}
|
|
54
|
+
const requesterRole = commMessage && this.hostPlugin
|
|
55
|
+
? resolveToolRequesterRole(this.hostPlugin, commMessage)
|
|
48
56
|
: 'unknown';
|
|
49
57
|
const role = toolRequesterRoleToFileRole(requesterRole);
|
|
50
58
|
const filePermResult = checkBashFilePermission(role, cmd);
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
if (filePermResult.needsOwnerConfirmation || filePermResult.needsConfirmation) {
|
|
55
|
-
const msg = formatFilePermissionMessage(filePermResult, 'bash', `Shell 命令: ${cmd.slice(0, 200)}`);
|
|
56
|
-
if (msg)
|
|
57
|
-
return msg;
|
|
58
|
-
}
|
|
59
|
+
const filePermGate = resolveFilePermissionGate(filePermResult, 'bash');
|
|
60
|
+
if (filePermGate)
|
|
61
|
+
return filePermGate;
|
|
59
62
|
const timeout = args.timeout ?? 30000;
|
|
60
63
|
const classification = classifyBashCommand(cmd);
|
|
61
64
|
const cwd = args.cwd || process.cwd();
|
|
@@ -105,7 +108,7 @@ export class BashBuiltinTool extends BuiltinBaseTool {
|
|
|
105
108
|
}
|
|
106
109
|
}
|
|
107
110
|
}
|
|
108
|
-
export function createBashTool() {
|
|
109
|
-
return new BashBuiltinTool().toTool();
|
|
111
|
+
export function createBashTool(plugin) {
|
|
112
|
+
return new BashBuiltinTool(undefined, { plugin }).toTool();
|
|
110
113
|
}
|
|
111
114
|
//# sourceMappingURL=bash-tool.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bash-tool.js","sourceRoot":"","sources":["../../src/builtin/bash-tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,IAAI,EAAoB,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"bash-tool.js","sourceRoot":"","sources":["../../src/builtin/bash-tool.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ export declare class GenerateImageBuiltinTool extends BuiltinBaseTool {
|
|
|
11
11
|
private readonly getProvider;
|
|
12
12
|
private readonly resolveDefaults;
|
|
13
13
|
readonly name = "generate_image";
|
|
14
|
-
readonly description = "Text-to-image (\u6587\u751F\u56FE/\u753B\u56FE).
|
|
14
|
+
readonly description = "Text-to-image (\u6587\u751F\u56FE/\u753B\u56FE). SDKs: openai-compatible + \u667A\u8C31 (cogview-3-flash), Cloudflare (flux, accountId), openai (gpt-image-2), google (gemini-2.5-flash-image). Unless user wants anime, use \u5199\u5B9E\u6444\u5F71/photorealistic in prompt.";
|
|
15
15
|
readonly parameters: ToolParametersSchema<Record<string, any>>;
|
|
16
16
|
readonly kind = "media";
|
|
17
17
|
constructor(getProvider: GetProviderFn, resolveDefaults?: ResolveImageGenerationDefaultsFn);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate-image-tool.d.ts","sourceRoot":"","sources":["../../src/builtin/generate-image-tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAoB,KAAK,UAAU,EAAE,KAAK,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,eAAO,MAAM,yBAAyB,EAAE,oBAyCvC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,UAAU,CAAC;AAC1D,MAAM,MAAM,gCAAgC,GAAG,CAAC,aAAa,EAAE,MAAM,KAAK,uBAAuB,CAAC;AAWlG,qBAAa,wBAAyB,SAAQ,eAAe;IAQzD,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IARlC,QAAQ,CAAC,IAAI,oBAAoB;IACjC,QAAQ,CAAC,WAAW,
|
|
1
|
+
{"version":3,"file":"generate-image-tool.d.ts","sourceRoot":"","sources":["../../src/builtin/generate-image-tool.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EAAE,IAAI,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC5E,OAAO,EAAoB,KAAK,UAAU,EAAE,KAAK,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAC9F,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,eAAO,MAAM,yBAAyB,EAAE,oBAyCvC,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,MAAM,KAAK,UAAU,CAAC;AAC1D,MAAM,MAAM,gCAAgC,GAAG,CAAC,aAAa,EAAE,MAAM,KAAK,uBAAuB,CAAC;AAWlG,qBAAa,wBAAyB,SAAQ,eAAe;IAQzD,OAAO,CAAC,QAAQ,CAAC,WAAW;IAC5B,OAAO,CAAC,QAAQ,CAAC,eAAe;IARlC,QAAQ,CAAC,IAAI,oBAAoB;IACjC,QAAQ,CAAC,WAAW,qRACyM;IAC7N,QAAQ,CAAC,UAAU,4CAA6B;IAChD,QAAQ,CAAC,IAAI,WAAW;gBAGL,WAAW,EAAE,aAAa,EAC1B,eAAe,GAAE,gCAA6C;IAU3E,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;CA0E9D;AAED,wBAAgB,uBAAuB,CACrC,WAAW,EAAE,aAAa,EAC1B,eAAe,CAAC,EAAE,gCAAgC,GACjD,IAAI,CAEN"}
|
|
@@ -5,7 +5,7 @@ export const GENERATE_IMAGE_PARAMETERS = {
|
|
|
5
5
|
properties: {
|
|
6
6
|
provider_alias: {
|
|
7
7
|
type: 'string',
|
|
8
|
-
description: 'ai.providers 中的实例名;
|
|
8
|
+
description: 'ai.providers 中的实例名;sdk 须支持 generateImage:openai、google、openai-compatible(智谱等)、Cloudflare(accountId)',
|
|
9
9
|
},
|
|
10
10
|
prompt: {
|
|
11
11
|
type: 'string',
|
|
@@ -49,7 +49,7 @@ export class GenerateImageBuiltinTool extends BuiltinBaseTool {
|
|
|
49
49
|
getProvider;
|
|
50
50
|
resolveDefaults;
|
|
51
51
|
name = 'generate_image';
|
|
52
|
-
description = 'Text-to-image (文生图/画图).
|
|
52
|
+
description = 'Text-to-image (文生图/画图). SDKs: openai-compatible + 智谱 (cogview-3-flash), Cloudflare (flux, accountId), openai (gpt-image-2), google (gemini-2.5-flash-image). Unless user wants anime, use 写实摄影/photorealistic in prompt.';
|
|
53
53
|
parameters = GENERATE_IMAGE_PARAMETERS;
|
|
54
54
|
kind = 'media';
|
|
55
55
|
constructor(getProvider, resolveDefaults = () => ({})) {
|
|
@@ -77,7 +77,7 @@ export class GenerateImageBuiltinTool extends BuiltinBaseTool {
|
|
|
77
77
|
return `Error: unknown provider alias "${alias}": ${msg}`;
|
|
78
78
|
}
|
|
79
79
|
if (!hasGenerateImage(provider)) {
|
|
80
|
-
return `Error: provider "${alias}" does not support image generation (
|
|
80
|
+
return `Error: provider "${alias}" does not support image generation (sdk: openai, google, openai-compatible, or Cloudflare with accountId)`;
|
|
81
81
|
}
|
|
82
82
|
const defaults = this.resolveDefaults(alias.trim());
|
|
83
83
|
const model = typeof args.model === 'string' && args.model.trim()
|