evolcore 0.0.2 → 0.0.4
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/CHANGELOG.md +93 -778
- package/README.md +45 -10
- package/bin/ec-safe-output.js +89 -24
- package/dist/agents/baseagent.js +46 -0
- package/dist/agents/claude-runner.js +198 -48
- package/dist/agents/codex-app-server-client.js +68 -0
- package/dist/agents/codex-runner.js +203 -8
- package/dist/agents/runner-types.js +2 -2
- package/dist/aun/aid/agentmd.js +79 -0
- package/dist/aun/aid/encryption-seed-policy.js +29 -0
- package/dist/aun/aid/index.js +1 -1
- package/dist/aun/aid/store.js +2 -5
- package/dist/aun/outbox.js +8 -0
- package/dist/channels/aun.js +241 -116
- package/dist/channels/daemon.js +18 -4
- package/dist/channels/dingtalk.js +1005 -260
- package/dist/channels/feishu.js +184 -56
- package/dist/channels/qqbot.js +23 -1
- package/dist/channels/wechat.js +303 -155
- package/dist/channels/wecom.js +1132 -164
- package/dist/cli/agent-command.js +2 -1
- package/dist/cli/aun-commands.js +98 -43
- package/dist/cli/bench.js +2 -2
- package/dist/cli/contact.js +71 -0
- package/dist/cli/ctl-command.js +2 -2
- package/dist/cli/daemon-commands.js +77 -214
- package/dist/cli/handoff-command.js +4 -3
- package/dist/cli/help.js +9 -5
- package/dist/cli/index.js +132 -116
- package/dist/cli/init-channel.js +242 -129
- package/dist/cli/init.js +70 -31
- package/dist/cli/model.js +2 -1
- package/dist/cli/net-check.js +2 -2
- package/dist/cli/queue-command.js +30 -6
- package/dist/cli/raw-key-input.js +25 -0
- package/dist/cli/response.js +5 -6
- package/dist/cli/restart-monitor.js +25 -1
- package/dist/cli/stats.js +6 -4
- package/dist/cli/trigger-command.js +146 -25
- package/dist/cli/version.js +6 -1
- package/dist/config/access-policy-domain.js +38 -0
- package/dist/config/access-policy.js +134 -0
- package/dist/config/builtin-role-templates.js +42 -17
- package/dist/config/builtin-roles.js +31 -6
- package/dist/config/config-field-policy.js +17 -5
- package/dist/config/config-manager.js +409 -29
- package/dist/config/config-operation-service.js +35 -38
- package/dist/config/contact-alias.js +68 -0
- package/dist/config/contact-bind-code.js +274 -0
- package/dist/config/contact-book-store.js +622 -0
- package/dist/config/contact-book-v2-startup.js +35 -0
- package/dist/config/contact-book.js +185 -300
- package/dist/config/contact-operation-service.js +116 -0
- package/dist/config/contact-request-service.js +331 -0
- package/dist/config/peer-role-resolver.js +136 -55
- package/dist/config/role-ranks.js +18 -0
- package/dist/config/role-service.js +16 -19
- package/dist/config/role-store.js +16 -5
- package/dist/config/roles.js +10 -1
- package/dist/config/schema-registry.js +49 -24
- package/dist/config-store.js +14 -4
- package/dist/core/auth/agent-delegation.js +105 -11
- package/dist/core/auth/authorization-audit.js +16 -1
- package/dist/core/auth/operation-authorizer.js +10 -0
- package/dist/core/auth/operation-catalog.js +105 -1
- package/dist/core/auth/trigger-authorization.js +15 -0
- package/dist/core/bootstrap-service.js +2 -9
- package/dist/core/channel-loader.js +6 -2
- package/dist/core/command/command-handler.js +113 -21
- package/dist/core/command/connect-menu.js +599 -0
- package/dist/core/command/evol-menu-version-gate.js +38 -0
- package/dist/core/command/group-menu.js +421 -0
- package/dist/core/command/menu-handler.js +382 -100
- package/dist/core/command/menu-protocol.js +8 -2
- package/dist/core/command/menu-token-store.js +102 -0
- package/dist/core/command/role-menu.js +128 -29
- package/dist/core/command/slash-gate.js +1 -1
- package/dist/core/command/slash-handler.js +186 -49
- package/dist/core/daemon-file-cache.js +40 -6
- package/dist/core/event-catalog.js +99 -0
- package/dist/core/evolagent-registry.js +4 -40
- package/dist/core/evolagent.js +20 -9
- package/dist/core/handoff/runtime.js +162 -37
- package/dist/core/handoff/store.js +46 -2
- package/dist/core/handoff/types.js +1 -0
- package/dist/core/inference/text-inference.js +16 -74
- package/dist/core/message/file-markers.js +7 -0
- package/dist/core/message/im-renderer.js +20 -14
- package/dist/core/message/inbound-admission.js +124 -0
- package/dist/core/message/message-bridge.js +670 -57
- package/dist/core/message/message-log.js +1 -0
- package/dist/core/message/message-queue.js +195 -10
- package/dist/core/message/message-utils.js +8 -2
- package/dist/core/message/peer-mode.js +7 -8
- package/dist/core/message/response-engine.js +642 -96
- package/dist/core/message/send-receipt.js +24 -0
- package/dist/core/message/stream-debouncer.js +11 -2
- package/dist/core/permission/approval-gateway.js +17 -10
- package/dist/core/permission/ec-command-parser.js +101 -46
- package/dist/core/permission/tool-policy.js +115 -38
- package/dist/core/protected-paths.js +38 -11
- package/dist/core/session/session-fs-store.js +44 -3
- package/dist/core/session/session-manager.js +86 -8
- package/dist/core/session/session-mapper.js +2 -0
- package/dist/core/session/session-renew.js +125 -69
- package/dist/core/session/session-turn-coordinator.js +5 -1
- package/dist/eck/kit-renderer.js +12 -1
- package/dist/eck/message-renderer.js +79 -1
- package/dist/index.js +285 -94
- package/dist/ipc.js +114 -8
- package/dist/paths.js +3 -0
- package/dist/response-system/config-resolver.js +29 -0
- package/dist/response-system/coordinator.js +8 -32
- package/dist/response-system/engines/v1/proactive-flow.js +1 -1
- package/dist/response-system/index.js +1 -0
- package/dist/response-system/modes/single-session/index.js +7 -4
- package/dist/stats/billing.js +20 -8
- package/dist/trigger/manager.js +3 -0
- package/dist/trigger/parser.js +126 -11
- package/dist/trigger/patch.js +12 -2
- package/dist/trigger/scheduler.js +444 -40
- package/dist/trigger/validation.js +13 -0
- package/dist/utils/aid-bind.js +43 -29
- package/dist/utils/error-dict.json +7 -0
- package/dist/utils/evolcore-version.js +21 -0
- package/dist/utils/instance-registry.js +14 -7
- package/dist/utils/log-writer.js +46 -0
- package/dist/utils/logger.js +2 -2
- package/dist/utils/media-cache.js +4 -1
- package/dist/utils/model-prices.jsonl +6 -3
- package/dist/utils/restart-safety.js +31 -0
- package/dist/utils/stable-semver.js +21 -0
- package/dist/utils/stats.js +33 -9
- package/dist/utils/system-memory.js +62 -0
- package/kits/docs/INDEX.md +2 -1
- package/kits/docs/channels/aun.md +4 -13
- package/kits/docs/evolcore/INDEX.md +5 -3
- package/kits/docs/evolcore/agent.md +9 -1
- package/kits/docs/evolcore/aid.md +5 -2
- package/kits/docs/evolcore/config.md +47 -2
- package/kits/docs/evolcore/contact.md +61 -0
- package/kits/docs/evolcore/fs.md +9 -0
- package/kits/docs/evolcore/group-rules.md +46 -4
- package/kits/docs/evolcore/group.md +15 -6
- package/kits/docs/evolcore/model.md +4 -1
- package/kits/docs/evolcore/msg.md +12 -6
- package/kits/docs/evolcore/response.md +16 -21
- package/kits/docs/evolcore/rpc.md +2 -0
- package/kits/docs/evolcore/stats.md +15 -2
- package/kits/docs/evolcore/storage.md +1 -0
- package/kits/docs/evolcore/trigger.md +42 -10
- package/kits/docs/path-registry.md +36 -17
- package/kits/eck_manifest.json +12 -0
- package/kits/eck_message_manifest.json +12 -1
- package/kits/migrations/migrate-contact-book-v2.mjs +754 -0
- package/kits/rules/01-overview.md +17 -7
- package/kits/rules/02-navigation.md +38 -18
- package/kits/rules/03-identity.md +28 -24
- package/kits/rules/04-relation.md +44 -28
- package/kits/rules/05-venue.md +31 -15
- package/kits/rules/06-channel.md +11 -7
- package/kits/schemas/_meta.json +21 -7
- package/kits/schemas/agent-config.schema.6.json +322 -0
- package/kits/schemas/agent-config.schema.7.json +303 -0
- package/kits/schemas/agent-config.schema.8.json +304 -0
- package/kits/schemas/agent-config.schema.9.json +374 -0
- package/kits/schemas/contact-book.schema.2.json +43 -0
- package/kits/schemas/contact-book.schema.3.json +67 -0
- package/kits/schemas/daemon.schema.1.json +3 -2
- package/kits/schemas/daemon.schema.2.json +101 -0
- package/kits/schemas/daemon.schema.3.json +123 -0
- package/kits/schemas/defaults.schema.2.json +85 -0
- package/kits/schemas/defaults.schema.3.json +73 -0
- package/kits/schemas/relation-config.schema.5.json +47 -0
- package/kits/schemas/relation-config.schema.6.json +46 -0
- package/kits/schemas/relation-config.schema.7.json +59 -0
- package/kits/schemas/role-config.schema.1.json +1 -0
- package/kits/schemas/role-registry.schema.1.json +2 -2
- package/kits/schemas/single-session.schema.2.json +57 -0
- package/kits/templates/message-fragments/handoff-context-to-target.md +9 -0
- package/kits/templates/message-fragments/handoff-request-to-target.md +14 -8
- package/kits/templates/message-fragments/handoff-response-to-origin.md +5 -6
- package/kits/templates/roles/admin.json +47 -0
- package/kits/templates/roles/member.json +5 -0
- package/kits/templates/roles/owner.json +1 -0
- package/kits/templates/roles/visitor.json +5 -0
- package/kits/templates/system-fragments/channel.md +12 -2
- package/kits/templates/system-fragments/commands.md +3 -1
- package/kits/templates/system-fragments/identity.md +3 -1
- package/kits/templates/system-fragments/relation.md +1 -1
- package/kits/templates/system-fragments/session.md +6 -2
- package/package.json +7 -5
- package/MIGRATION-0.5.0.md +0 -378
- package/ROLE_ACCESS_CONTROL.md +0 -174
- package/assets/brand/evolcore/README.md +0 -19
- package/assets/brand/evolcore/evolcore-app-icon.png +0 -0
- package/assets/brand/evolcore/evolcore-app-icon.svg +0 -13
- package/assets/brand/evolcore/evolcore-brand-board.png +0 -0
- package/assets/brand/evolcore/evolcore-brand-board.svg +0 -126
- package/assets/brand/evolcore/evolcore-logo-kit.zip +0 -0
- package/assets/brand/evolcore/evolcore-logo-reverse.png +0 -0
- package/assets/brand/evolcore/evolcore-logo-reverse.svg +0 -14
- package/assets/brand/evolcore/evolcore-logo.png +0 -0
- package/assets/brand/evolcore/evolcore-logo.svg +0 -14
- package/assets/brand/evolcore/evolcore-mark.png +0 -0
- package/assets/brand/evolcore/evolcore-mark.svg +0 -10
|
@@ -34,6 +34,16 @@ ec trigger history [triggerId] --limit 500 --json
|
|
|
34
34
|
|
|
35
35
|
## 创建
|
|
36
36
|
|
|
37
|
+
创建操作统一使用 `create`:
|
|
38
|
+
|
|
39
|
+
| 入口 | 正式命令 | 兼容别名 |
|
|
40
|
+
| --- | --- | --- |
|
|
41
|
+
| CLI | `ec trigger create ...` | `ec trigger set ...` |
|
|
42
|
+
| Slash | `/trigger create ...` | `/trigger set ...` |
|
|
43
|
+
| Menu Protocol | `menu.action name=trigger action=create` | `action=set` |
|
|
44
|
+
|
|
45
|
+
新调用只使用 `create`;`set` 仅用于兼容旧脚本和旧客户端。三种入口最终都映射到内部操作 `trigger.create`。
|
|
46
|
+
|
|
37
47
|
Flag 模式适合 agent 现场创建常规 trigger:
|
|
38
48
|
|
|
39
49
|
```bash
|
|
@@ -48,7 +58,23 @@ ec trigger create \
|
|
|
48
58
|
--enable
|
|
49
59
|
```
|
|
50
60
|
|
|
51
|
-
CLI flag 模式必须显式指定 `--target-channel` 和 `--target-channel-id`,并生成 `feedback.strategy=target`。需要 `origin` 或 `silent` feedback 时,用 `/trigger` 或 `--file
|
|
61
|
+
CLI flag 模式必须显式指定 `--exec`、`--target-channel` 和 `--target-channel-id`,并生成 `feedback.strategy=target`。需要 `origin` 或 `silent` feedback 时,用 `/trigger` 或 `--exec <type> --file <trigger.json|trigger-dir>` 导入 Trigger V3 第二阶段 JSON;CLI 会校验 `--exec` 与 JSON 的 `execution.type` 一致。
|
|
62
|
+
|
|
63
|
+
多行或复杂 prompt 使用 `--prompt-file <path>`,文件内容会原样作为 prompt(UTF-8 BOM 会移除)。内联 `--prompt` 最多 4096 个字符;超限时 CLI 会提示改用 `--prompt-file <path>`:
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
ec trigger create --cron '0 9 * * *' \
|
|
67
|
+
--exec target-session \
|
|
68
|
+
--prompt-file ./prompts/daily-summary.md \
|
|
69
|
+
--target-channel <channelKey> --target-channel-id <channelId> \
|
|
70
|
+
--name daily-summary --enable
|
|
71
|
+
|
|
72
|
+
ec trigger update <triggerId> --prompt-file ./prompts/daily-summary-v2.md
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
`--file` 始终表示导入完整的 `trigger.json` 或 trigger 目录;`--prompt-file` 只表示 prompt 正文。所有 `create` 形式都必须显式指定 `--exec`;`--prompt-file` 与 `--prompt` 互斥,且不能和 `--file` 同时使用。
|
|
76
|
+
|
|
77
|
+
模型通过 Bash 调用 CLI 且用双引号传递 `--prompt` 时,正文中的双引号、反引号和 Shell 变量形式的 `$` 需要分别写成 `\"`、反斜杠+反引号、`\$`。Shell 会在启动 `ec` 时去掉保护反斜杠,Trigger 中保存的仍是原始正文。
|
|
52
78
|
|
|
53
79
|
支持的触发来源:
|
|
54
80
|
|
|
@@ -75,9 +101,9 @@ Trigger V3 第二阶段使用 `execution.type` 区分执行位置:
|
|
|
75
101
|
--exec target-session
|
|
76
102
|
```
|
|
77
103
|
|
|
78
|
-
`target-session`
|
|
104
|
+
`target-session` 把 `--prompt` 或 `--prompt-file` 的内容当作一条 trigger 来源消息投递进目标会话队列,并等待该会话处理完成。创建时必须显式指定 `--exec target-session`,不会再隐式选择该类型。
|
|
79
105
|
|
|
80
|
-
`trigger-session` 在 daemon 内部 trigger 会话执行 prompt,再把最终结果按 feedback
|
|
106
|
+
`trigger-session` 在 daemon 内部 trigger 会话执行 prompt,再把最终结果按 feedback 投递;prompt 可来自 `--prompt` 或 `--prompt-file`:
|
|
81
107
|
|
|
82
108
|
```bash
|
|
83
109
|
--exec trigger-session \
|
|
@@ -97,7 +123,7 @@ Trigger V3 第二阶段使用 `execution.type` 区分执行位置:
|
|
|
97
123
|
--script-args '{"scope":"daily"}'
|
|
98
124
|
```
|
|
99
125
|
|
|
100
|
-
`script` 不使用 `--prompt`。脚本路径必须在 trigger 目录内;通过 `--file` 导入目录时,脚本文件会随 definition
|
|
126
|
+
`script` 不使用 `--prompt` 或 `--prompt-file`;它必须使用 `--script-path` 和 `--script-runtime`。脚本路径必须在 trigger 目录内;通过 `--file` 导入目录时,脚本文件会随 definition 一起上传。已有 script trigger 的 `update --prompt-file` 也会被拒绝。
|
|
101
127
|
|
|
102
128
|
## 目标与反馈
|
|
103
129
|
|
|
@@ -147,9 +173,12 @@ script trigger 返回 `[[NOOP]]` 或 `outcome: "noop"` 时走 noop 分支;默
|
|
|
147
173
|
```bash
|
|
148
174
|
--model <模型>
|
|
149
175
|
--effort <low|medium|high|xhigh|max>
|
|
176
|
+
--baseagent <claude|codex|gemini>
|
|
150
177
|
```
|
|
151
178
|
|
|
152
|
-
`--model` / `--effort` 只覆盖本 trigger 执行时传给 base agent 的模型与推理强度。
|
|
179
|
+
`--model` / `--effort` 只覆盖本 trigger 执行时传给 base agent 的模型与推理强度。
|
|
180
|
+
`--baseagent` 仅支持 `--exec trigger-session`,用于给该 trigger 会话单独选择 base agent;
|
|
181
|
+
`script` 和 `target-session` 不接受该参数。未设置时沿用 trigger 所属 agent 当前 active baseagent。
|
|
153
182
|
|
|
154
183
|
无人值守 trigger 不适合 `request`。需要写文件、git、安装升级、重启服务、管理 trigger 时应显式使用:
|
|
155
184
|
|
|
@@ -157,7 +186,7 @@ script trigger 返回 `[[NOOP]]` 或 `outcome: "noop"` 时走 noop 分支;默
|
|
|
157
186
|
--permission bypass
|
|
158
187
|
```
|
|
159
188
|
|
|
160
|
-
owner/admin 通过 `/trigger
|
|
189
|
+
owner/admin 通过 `/trigger create` 创建时默认使用 `bypass`;非 admin 默认 `readonly`,不能提权到 `bypass`,也不能跨渠道或跨会话指定 target。历史 `/trigger set` 仍是兼容别名。
|
|
161
190
|
|
|
162
191
|
## 执行边界
|
|
163
192
|
|
|
@@ -177,6 +206,8 @@ ec trigger enable <triggerId>
|
|
|
177
206
|
ec trigger disable <triggerId>
|
|
178
207
|
ec trigger cancel <triggerId> # disable 的兼容别名
|
|
179
208
|
ec trigger delete <triggerId>
|
|
209
|
+
ec trigger remove <triggerId> # delete 的兼容别名
|
|
210
|
+
ec trigger rm <triggerId> # delete 的兼容别名
|
|
180
211
|
```
|
|
181
212
|
|
|
182
213
|
语义区别:
|
|
@@ -190,18 +221,19 @@ ec trigger delete <triggerId>
|
|
|
190
221
|
|
|
191
222
|
## 局部更新
|
|
192
223
|
|
|
193
|
-
`update` 是 patch 语义,只提交需要修改的字段;未指定字段(包括长 prompt
|
|
224
|
+
`update` 是 patch 语义,只提交需要修改的字段;未指定字段(包括长 prompt)保持不变。`--prompt-file <path>` 只更新非 script trigger 的 prompt,不接受完整 definition:
|
|
194
225
|
|
|
195
226
|
```bash
|
|
196
227
|
ec trigger update <triggerId> --cron '0 10 * * *'
|
|
197
228
|
ec trigger update <triggerId> --prompt '新的任务内容' --name new-name
|
|
229
|
+
ec trigger update <triggerId> --prompt-file ./prompts/new-task.md
|
|
198
230
|
ec trigger update <triggerId> --cron '0 10 * * *' --if-revision 'sha256:...'
|
|
199
231
|
```
|
|
200
232
|
|
|
201
233
|
可更新参数只保留三组常用字段:
|
|
202
234
|
|
|
203
235
|
- 调度:`--once`、`--delay`、`--at`、`--cron`、`--every`、`--event`、`--tz`
|
|
204
|
-
- 内容:`--prompt
|
|
236
|
+
- 内容:`--prompt` 或 `--prompt-file <path>`、`--name`
|
|
205
237
|
- 执行配置:`--model`、`--effort`、`--permission`
|
|
206
238
|
- 运行边界:`--max-runs`、`--max-duration`、`--concurrency`、`--missed-policy`
|
|
207
239
|
|
|
@@ -242,8 +274,8 @@ logs/trigger-runs.log
|
|
|
242
274
|
复杂 trigger 使用 Trigger V3 第二阶段 JSON:
|
|
243
275
|
|
|
244
276
|
```bash
|
|
245
|
-
ec trigger create --file ./trigger.json --enable
|
|
246
|
-
ec trigger create --file ./trigger-dir --enable
|
|
277
|
+
ec trigger create --exec target-session --file ./trigger.json --enable
|
|
278
|
+
ec trigger create --exec script --file ./trigger-dir --enable
|
|
247
279
|
```
|
|
248
280
|
|
|
249
281
|
当前产品版本是 Trigger V3 第二阶段;其持久化定义版本为 `$schema_version: 3.1`。旧 `$schema_version: 4` 文件加载时会自动规范化为 `3.1`。
|
|
@@ -1,16 +1,21 @@
|
|
|
1
1
|
# 路径定义
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
本文件定义所有预定义路径的含义和派生规则。真相源是 `src/paths.ts`(基础/派生路径)
|
|
4
|
+
和 `src/eck/manifest-engine.ts` 的 `buildPathMappings`(ECK 认识哪些别名)。
|
|
4
5
|
|
|
5
6
|
## 基础路径(三个锚点)
|
|
6
7
|
|
|
7
8
|
| 名称 | 含义 | 来源 |
|
|
8
9
|
|------|------|------|
|
|
9
|
-
| `$EVOLCORE_HOME` | evolcore 用户数据根 |
|
|
10
|
-
| `$PACKAGE_ROOT` | evolcore 包根目录 | `
|
|
11
|
-
| `$CURRENT_PROJECT` | 当前工作目录 |
|
|
10
|
+
| `$EVOLCORE_HOME` | evolcore 用户数据根 | `resolveRoot()`:环境变量 `EVOLCORE_HOME` → cwd 下有 `agents/defaults.json` 则取 cwd → `~/.evolcore` |
|
|
11
|
+
| `$PACKAGE_ROOT` | evolcore 包根目录 | `getPackageRoot()`,由 `import.meta` 推出(不是 `require.resolve`) |
|
|
12
|
+
| `$CURRENT_PROJECT` | 当前工作目录 | 会话的 projectPath |
|
|
12
13
|
|
|
13
|
-
|
|
14
|
+
> dev 模式下 `$EVOLCORE_HOME` 和 `$PACKAGE_ROOT` 可能是**同一个目录**(本机就是 `/home/evolcore`)。
|
|
15
|
+
|
|
16
|
+
## ECK 能解析的别名
|
|
17
|
+
|
|
18
|
+
只有下面这些能出现在 manifest 的 `path` 字段里;其它写法会被判为未解析变量、整段静默丢弃。
|
|
14
19
|
|
|
15
20
|
| 名称 | 派生规则 | 说明 |
|
|
16
21
|
|------|----------|------|
|
|
@@ -18,26 +23,40 @@
|
|
|
18
23
|
| `$KITS_RULES` | `$KITS/rules` | 自动加载的规则文件 |
|
|
19
24
|
| `$KITS_DOCS` | `$KITS/docs` | 按需加载的文档 |
|
|
20
25
|
| `$KITS_TEMPLATES` | `$KITS/templates` | 运行时 prompt 组装模板 |
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
|
26
|
+
| `$KITS_FRAGMENTS` | `$KITS_TEMPLATES/system-fragments` | system prompt fragment 模板 |
|
|
27
|
+
| `$KITS_MESSAGE_FRAGMENTS` | `$KITS_TEMPLATES/message-fragments` | 逐条消息渲染的 fragment 模板 |
|
|
28
|
+
| `$AGENT_DIR` | `$EVOLCORE_HOME/agents/<selfAid>` | 当前 agent 数据目录 |
|
|
29
|
+
| `$PERSONAL_DIR` | `$AGENT_DIR/personal` | 身份层个人数据(旧名 `$SELF_DIR` 已废弃) |
|
|
30
|
+
| `$RELATIONS_DIR` | `$AGENT_DIR/relations` | 对端关系数据(含具体群/私聊实例数据) |
|
|
31
|
+
| `$VENUES_DIR` | `$AGENT_DIR/venues` | 环境层;**当前是死目录**,`agentVenuesDir()` 零调用点 |
|
|
32
|
+
| `$CURRENT_PROJECT` | 会话 projectPath | — |
|
|
33
|
+
| `$EVOLCORE_HOME` | 见上 | — |
|
|
34
|
+
| `$PACKAGE_ROOT` | 见上 | — |
|
|
35
|
+
|
|
36
|
+
`selfAid` 为空时(本地 coding 会话),`$AGENT_DIR` / `$PERSONAL_DIR` / `$RELATIONS_DIR` /
|
|
37
|
+
`$VENUES_DIR` 这四个别名**不会注册**。
|
|
38
|
+
|
|
39
|
+
## 仅文档书写约定(ECK 不解析)
|
|
40
|
+
|
|
41
|
+
| 名称 | 实际位置 | 说明 |
|
|
25
42
|
|------|----------|------|
|
|
26
|
-
| `$ECK` | `$EVOLCORE_HOME/eck` | ECK
|
|
43
|
+
| `$ECK` | `$EVOLCORE_HOME/eck` | ECK 实例数据,见下节告警 |
|
|
27
44
|
| `$AGENTS_DIR` | `$EVOLCORE_HOME/agents` | 所有 agent 数据根 |
|
|
28
|
-
| `$AGENT_DIR` | `$AGENTS_DIR/<self-aid>` | 当前 agent 数据目录 |
|
|
29
|
-
| `$SELF_DIR` | `$AGENT_DIR/personal` | 自己的身份档案 |
|
|
30
|
-
| `$RELATIONS_DIR` | `$AGENT_DIR/relations` | 对端关系档案(含具体群/私聊实例数据) |
|
|
31
|
-
| `$VENUES_DIR` | `$AGENT_DIR/venues` | 环境层(预留,更高抽象,非实例) |
|
|
32
45
|
| `$AGENT_INDEX` | `$AGENT_DIR/index` | agent 级索引 |
|
|
46
|
+
| `$PEER_DIR` | `$RELATIONS_DIR/<peerKey>` | 当前对端的关系目录 |
|
|
33
47
|
|
|
34
48
|
## 外部依赖路径(需寻找)
|
|
35
49
|
|
|
36
50
|
| 名称 | 寻找规则 | 说明 |
|
|
37
51
|
|------|----------|------|
|
|
38
|
-
| `$
|
|
39
|
-
| `$
|
|
52
|
+
| `$AUN_SDK` | `node -e "console.log(require.resolve('@agentunion/fastaun/package.json'))"` | 本机是本地依赖 `$PACKAGE_ROOT/node_modules/@agentunion/fastaun`,`npm ls -g` 查不到 |
|
|
53
|
+
| `$AUN_PROTOCOL_DOCS` | `$AUN_SDK/_packed_docs/protocol` | 注意是 `_packed_docs/`,该包**没有** `docs/` 目录 |
|
|
54
|
+
|
|
55
|
+
`$KITE` / `$AUN_SDK_CORE`(Kite 框架时代的 SDK 源码路径)已废弃,不再有对应实现。
|
|
40
56
|
|
|
41
57
|
## 路径实例文件
|
|
42
58
|
|
|
43
|
-
|
|
59
|
+
`$ECK/path-registry.md` 和 `$ECK/runtime.md` 由 `src/eck/init.ts` **写一次就不再更新**
|
|
60
|
+
(`if (fs.existsSync(file)) return`),且只渲染 `EVOLCORE_HOME` / `PACKAGE_ROOT` 两个变量——
|
|
61
|
+
其余 `{{...}}` 占位符原样留在文件里;源码也**没有任何地方读回它们**。
|
|
62
|
+
不要把它们当作真实路径的依据,按本文件的派生规则自己算,或直接读 `src/paths.ts`。
|
package/kits/eck_manifest.json
CHANGED
|
@@ -55,6 +55,18 @@
|
|
|
55
55
|
] },
|
|
56
56
|
"description": "当前关注(working memory)"
|
|
57
57
|
},
|
|
58
|
+
{
|
|
59
|
+
"id": "preferences",
|
|
60
|
+
"type": "file",
|
|
61
|
+
"file": "$PERSONAL_DIR/preferences/active-preferences.md",
|
|
62
|
+
"order": 23,
|
|
63
|
+
"needsInjection": false,
|
|
64
|
+
"when": { "and": [
|
|
65
|
+
{ "var": "chatType", "eq": "private" },
|
|
66
|
+
{ "var": "lifecycle", "neq": "bootstrapping" }
|
|
67
|
+
] },
|
|
68
|
+
"description": "用户偏好(自动记忆,仅私聊注入)"
|
|
69
|
+
},
|
|
58
70
|
{
|
|
59
71
|
"id": "relation-layer",
|
|
60
72
|
"type": "file",
|
|
@@ -21,9 +21,20 @@
|
|
|
21
21
|
"needsInjection": true,
|
|
22
22
|
"modeType": "handoff",
|
|
23
23
|
"modeName": "request_to_target",
|
|
24
|
-
"when": { "and": [ { "var": "isHandoff", "eq": true }, { "var": "handoffKind", "eq": "request_to_target" } ] },
|
|
24
|
+
"when": { "and": [ { "var": "isHandoff", "eq": true }, { "var": "handoffKind", "eq": "request_to_target" }, { "var": "handoffReturnPolicy", "eq": "required" } ] },
|
|
25
25
|
"description": "msg send 跨会话请求回复上下文渲染"
|
|
26
26
|
},
|
|
27
|
+
{
|
|
28
|
+
"id": "msg-handoff-context-to-target",
|
|
29
|
+
"type": "file",
|
|
30
|
+
"file": "$KITS_MESSAGE_FRAGMENTS/handoff-context-to-target.md",
|
|
31
|
+
"order": 6,
|
|
32
|
+
"needsInjection": true,
|
|
33
|
+
"modeType": "handoff",
|
|
34
|
+
"modeName": "request_to_target",
|
|
35
|
+
"when": { "and": [ { "var": "isHandoff", "eq": true }, { "var": "handoffKind", "eq": "request_to_target" }, { "var": "handoffReturnPolicy", "eq": "none" } ] },
|
|
36
|
+
"description": "msg send 跨会话单次本地上下文渲染"
|
|
37
|
+
},
|
|
27
38
|
{
|
|
28
39
|
"id": "msg-handoff-response-to-origin",
|
|
29
40
|
"type": "file",
|