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.
Files changed (206) hide show
  1. package/CHANGELOG.md +93 -778
  2. package/README.md +45 -10
  3. package/bin/ec-safe-output.js +89 -24
  4. package/dist/agents/baseagent.js +46 -0
  5. package/dist/agents/claude-runner.js +198 -48
  6. package/dist/agents/codex-app-server-client.js +68 -0
  7. package/dist/agents/codex-runner.js +203 -8
  8. package/dist/agents/runner-types.js +2 -2
  9. package/dist/aun/aid/agentmd.js +79 -0
  10. package/dist/aun/aid/encryption-seed-policy.js +29 -0
  11. package/dist/aun/aid/index.js +1 -1
  12. package/dist/aun/aid/store.js +2 -5
  13. package/dist/aun/outbox.js +8 -0
  14. package/dist/channels/aun.js +241 -116
  15. package/dist/channels/daemon.js +18 -4
  16. package/dist/channels/dingtalk.js +1005 -260
  17. package/dist/channels/feishu.js +184 -56
  18. package/dist/channels/qqbot.js +23 -1
  19. package/dist/channels/wechat.js +303 -155
  20. package/dist/channels/wecom.js +1132 -164
  21. package/dist/cli/agent-command.js +2 -1
  22. package/dist/cli/aun-commands.js +98 -43
  23. package/dist/cli/bench.js +2 -2
  24. package/dist/cli/contact.js +71 -0
  25. package/dist/cli/ctl-command.js +2 -2
  26. package/dist/cli/daemon-commands.js +77 -214
  27. package/dist/cli/handoff-command.js +4 -3
  28. package/dist/cli/help.js +9 -5
  29. package/dist/cli/index.js +132 -116
  30. package/dist/cli/init-channel.js +242 -129
  31. package/dist/cli/init.js +70 -31
  32. package/dist/cli/model.js +2 -1
  33. package/dist/cli/net-check.js +2 -2
  34. package/dist/cli/queue-command.js +30 -6
  35. package/dist/cli/raw-key-input.js +25 -0
  36. package/dist/cli/response.js +5 -6
  37. package/dist/cli/restart-monitor.js +25 -1
  38. package/dist/cli/stats.js +6 -4
  39. package/dist/cli/trigger-command.js +146 -25
  40. package/dist/cli/version.js +6 -1
  41. package/dist/config/access-policy-domain.js +38 -0
  42. package/dist/config/access-policy.js +134 -0
  43. package/dist/config/builtin-role-templates.js +42 -17
  44. package/dist/config/builtin-roles.js +31 -6
  45. package/dist/config/config-field-policy.js +17 -5
  46. package/dist/config/config-manager.js +409 -29
  47. package/dist/config/config-operation-service.js +35 -38
  48. package/dist/config/contact-alias.js +68 -0
  49. package/dist/config/contact-bind-code.js +274 -0
  50. package/dist/config/contact-book-store.js +622 -0
  51. package/dist/config/contact-book-v2-startup.js +35 -0
  52. package/dist/config/contact-book.js +185 -300
  53. package/dist/config/contact-operation-service.js +116 -0
  54. package/dist/config/contact-request-service.js +331 -0
  55. package/dist/config/peer-role-resolver.js +136 -55
  56. package/dist/config/role-ranks.js +18 -0
  57. package/dist/config/role-service.js +16 -19
  58. package/dist/config/role-store.js +16 -5
  59. package/dist/config/roles.js +10 -1
  60. package/dist/config/schema-registry.js +49 -24
  61. package/dist/config-store.js +14 -4
  62. package/dist/core/auth/agent-delegation.js +105 -11
  63. package/dist/core/auth/authorization-audit.js +16 -1
  64. package/dist/core/auth/operation-authorizer.js +10 -0
  65. package/dist/core/auth/operation-catalog.js +105 -1
  66. package/dist/core/auth/trigger-authorization.js +15 -0
  67. package/dist/core/bootstrap-service.js +2 -9
  68. package/dist/core/channel-loader.js +6 -2
  69. package/dist/core/command/command-handler.js +113 -21
  70. package/dist/core/command/connect-menu.js +599 -0
  71. package/dist/core/command/evol-menu-version-gate.js +38 -0
  72. package/dist/core/command/group-menu.js +421 -0
  73. package/dist/core/command/menu-handler.js +382 -100
  74. package/dist/core/command/menu-protocol.js +8 -2
  75. package/dist/core/command/menu-token-store.js +102 -0
  76. package/dist/core/command/role-menu.js +128 -29
  77. package/dist/core/command/slash-gate.js +1 -1
  78. package/dist/core/command/slash-handler.js +186 -49
  79. package/dist/core/daemon-file-cache.js +40 -6
  80. package/dist/core/event-catalog.js +99 -0
  81. package/dist/core/evolagent-registry.js +4 -40
  82. package/dist/core/evolagent.js +20 -9
  83. package/dist/core/handoff/runtime.js +162 -37
  84. package/dist/core/handoff/store.js +46 -2
  85. package/dist/core/handoff/types.js +1 -0
  86. package/dist/core/inference/text-inference.js +16 -74
  87. package/dist/core/message/file-markers.js +7 -0
  88. package/dist/core/message/im-renderer.js +20 -14
  89. package/dist/core/message/inbound-admission.js +124 -0
  90. package/dist/core/message/message-bridge.js +670 -57
  91. package/dist/core/message/message-log.js +1 -0
  92. package/dist/core/message/message-queue.js +195 -10
  93. package/dist/core/message/message-utils.js +8 -2
  94. package/dist/core/message/peer-mode.js +7 -8
  95. package/dist/core/message/response-engine.js +642 -96
  96. package/dist/core/message/send-receipt.js +24 -0
  97. package/dist/core/message/stream-debouncer.js +11 -2
  98. package/dist/core/permission/approval-gateway.js +17 -10
  99. package/dist/core/permission/ec-command-parser.js +101 -46
  100. package/dist/core/permission/tool-policy.js +115 -38
  101. package/dist/core/protected-paths.js +38 -11
  102. package/dist/core/session/session-fs-store.js +44 -3
  103. package/dist/core/session/session-manager.js +86 -8
  104. package/dist/core/session/session-mapper.js +2 -0
  105. package/dist/core/session/session-renew.js +125 -69
  106. package/dist/core/session/session-turn-coordinator.js +5 -1
  107. package/dist/eck/kit-renderer.js +12 -1
  108. package/dist/eck/message-renderer.js +79 -1
  109. package/dist/index.js +285 -94
  110. package/dist/ipc.js +114 -8
  111. package/dist/paths.js +3 -0
  112. package/dist/response-system/config-resolver.js +29 -0
  113. package/dist/response-system/coordinator.js +8 -32
  114. package/dist/response-system/engines/v1/proactive-flow.js +1 -1
  115. package/dist/response-system/index.js +1 -0
  116. package/dist/response-system/modes/single-session/index.js +7 -4
  117. package/dist/stats/billing.js +20 -8
  118. package/dist/trigger/manager.js +3 -0
  119. package/dist/trigger/parser.js +126 -11
  120. package/dist/trigger/patch.js +12 -2
  121. package/dist/trigger/scheduler.js +444 -40
  122. package/dist/trigger/validation.js +13 -0
  123. package/dist/utils/aid-bind.js +43 -29
  124. package/dist/utils/error-dict.json +7 -0
  125. package/dist/utils/evolcore-version.js +21 -0
  126. package/dist/utils/instance-registry.js +14 -7
  127. package/dist/utils/log-writer.js +46 -0
  128. package/dist/utils/logger.js +2 -2
  129. package/dist/utils/media-cache.js +4 -1
  130. package/dist/utils/model-prices.jsonl +6 -3
  131. package/dist/utils/restart-safety.js +31 -0
  132. package/dist/utils/stable-semver.js +21 -0
  133. package/dist/utils/stats.js +33 -9
  134. package/dist/utils/system-memory.js +62 -0
  135. package/kits/docs/INDEX.md +2 -1
  136. package/kits/docs/channels/aun.md +4 -13
  137. package/kits/docs/evolcore/INDEX.md +5 -3
  138. package/kits/docs/evolcore/agent.md +9 -1
  139. package/kits/docs/evolcore/aid.md +5 -2
  140. package/kits/docs/evolcore/config.md +47 -2
  141. package/kits/docs/evolcore/contact.md +61 -0
  142. package/kits/docs/evolcore/fs.md +9 -0
  143. package/kits/docs/evolcore/group-rules.md +46 -4
  144. package/kits/docs/evolcore/group.md +15 -6
  145. package/kits/docs/evolcore/model.md +4 -1
  146. package/kits/docs/evolcore/msg.md +12 -6
  147. package/kits/docs/evolcore/response.md +16 -21
  148. package/kits/docs/evolcore/rpc.md +2 -0
  149. package/kits/docs/evolcore/stats.md +15 -2
  150. package/kits/docs/evolcore/storage.md +1 -0
  151. package/kits/docs/evolcore/trigger.md +42 -10
  152. package/kits/docs/path-registry.md +36 -17
  153. package/kits/eck_manifest.json +12 -0
  154. package/kits/eck_message_manifest.json +12 -1
  155. package/kits/migrations/migrate-contact-book-v2.mjs +754 -0
  156. package/kits/rules/01-overview.md +17 -7
  157. package/kits/rules/02-navigation.md +38 -18
  158. package/kits/rules/03-identity.md +28 -24
  159. package/kits/rules/04-relation.md +44 -28
  160. package/kits/rules/05-venue.md +31 -15
  161. package/kits/rules/06-channel.md +11 -7
  162. package/kits/schemas/_meta.json +21 -7
  163. package/kits/schemas/agent-config.schema.6.json +322 -0
  164. package/kits/schemas/agent-config.schema.7.json +303 -0
  165. package/kits/schemas/agent-config.schema.8.json +304 -0
  166. package/kits/schemas/agent-config.schema.9.json +374 -0
  167. package/kits/schemas/contact-book.schema.2.json +43 -0
  168. package/kits/schemas/contact-book.schema.3.json +67 -0
  169. package/kits/schemas/daemon.schema.1.json +3 -2
  170. package/kits/schemas/daemon.schema.2.json +101 -0
  171. package/kits/schemas/daemon.schema.3.json +123 -0
  172. package/kits/schemas/defaults.schema.2.json +85 -0
  173. package/kits/schemas/defaults.schema.3.json +73 -0
  174. package/kits/schemas/relation-config.schema.5.json +47 -0
  175. package/kits/schemas/relation-config.schema.6.json +46 -0
  176. package/kits/schemas/relation-config.schema.7.json +59 -0
  177. package/kits/schemas/role-config.schema.1.json +1 -0
  178. package/kits/schemas/role-registry.schema.1.json +2 -2
  179. package/kits/schemas/single-session.schema.2.json +57 -0
  180. package/kits/templates/message-fragments/handoff-context-to-target.md +9 -0
  181. package/kits/templates/message-fragments/handoff-request-to-target.md +14 -8
  182. package/kits/templates/message-fragments/handoff-response-to-origin.md +5 -6
  183. package/kits/templates/roles/admin.json +47 -0
  184. package/kits/templates/roles/member.json +5 -0
  185. package/kits/templates/roles/owner.json +1 -0
  186. package/kits/templates/roles/visitor.json +5 -0
  187. package/kits/templates/system-fragments/channel.md +12 -2
  188. package/kits/templates/system-fragments/commands.md +3 -1
  189. package/kits/templates/system-fragments/identity.md +3 -1
  190. package/kits/templates/system-fragments/relation.md +1 -1
  191. package/kits/templates/system-fragments/session.md +6 -2
  192. package/package.json +7 -5
  193. package/MIGRATION-0.5.0.md +0 -378
  194. package/ROLE_ACCESS_CONTROL.md +0 -174
  195. package/assets/brand/evolcore/README.md +0 -19
  196. package/assets/brand/evolcore/evolcore-app-icon.png +0 -0
  197. package/assets/brand/evolcore/evolcore-app-icon.svg +0 -13
  198. package/assets/brand/evolcore/evolcore-brand-board.png +0 -0
  199. package/assets/brand/evolcore/evolcore-brand-board.svg +0 -126
  200. package/assets/brand/evolcore/evolcore-logo-kit.zip +0 -0
  201. package/assets/brand/evolcore/evolcore-logo-reverse.png +0 -0
  202. package/assets/brand/evolcore/evolcore-logo-reverse.svg +0 -14
  203. package/assets/brand/evolcore/evolcore-logo.png +0 -0
  204. package/assets/brand/evolcore/evolcore-logo.svg +0 -14
  205. package/assets/brand/evolcore/evolcore-mark.png +0 -0
  206. package/assets/brand/evolcore/evolcore-mark.svg +0 -10
package/dist/cli/index.js CHANGED
@@ -3,18 +3,82 @@
3
3
  process.env.AUN_LOG_INI_DISABLE = '1';
4
4
  import fs from 'fs';
5
5
  import path from 'path';
6
- import { resolvePaths, getPackageRoot } from '../paths.js';
6
+ import { getPackageRoot } from '../paths.js';
7
7
  import { cmdInit } from './init.js';
8
8
  import { cmdInitWechat, cmdInitFeishu, cmdInitDingtalk, cmdInitQQBot, cmdInitWecom, cmdInitAun } from './init-channel.js';
9
- import { isHelpFlag, getArgValue } from './help.js';
9
+ import { isHelpFlag, wantsHelp, getArgValue } from './help.js';
10
10
  import * as platform from '../utils/cross-platform.js';
11
11
  import { cmdRestartMonitor } from './restart-monitor.js';
12
12
  import { cmdAid, cmdRpc, cmdStorage, cmdMsg, cmdGroup } from './aun-commands.js';
13
13
  import { cmdAgent } from './agent-command.js';
14
14
  import { cmdCtl } from './ctl-command.js';
15
15
  import { cmdQueue } from './queue-command.js';
16
- import { cmdStart, cmdStop, cmdRestart, cmdStatus, cmdLogs, cmdWatchCommand, cmdDev, cmdMv, cmdDiagnose } from './daemon-commands.js';
16
+ import { cmdStart, cmdStop, cmdRestart, cmdStatus, cmdLogs, cmdWatchCommand, cmdMv, cmdDiagnose } from './daemon-commands.js';
17
17
  import { logCliCommand } from './command-log.js';
18
+ const MAIN_HELP = `用法: ec <command> [选项]
19
+
20
+ 服务:
21
+ init 初始化默认配置、owner、控制 AID 与 EC Web
22
+ start 启动服务
23
+ stop 停止服务
24
+ restart 重启服务并检查更新
25
+ status 查看运行状态
26
+ logs 持续查看 daemon 日志
27
+ watch 打开日志、AID、消息或 EC Web 监控
28
+
29
+ Agent 与会话:
30
+ agent 管理 EvolAgent
31
+ ctl 当前托管会话的控制命令
32
+ queue 查询或操作 agent 消息队列
33
+ trigger 管理定时与事件触发器
34
+ handoff 查询和完成跨会话回流
35
+ model 查看或设置模型与推理强度
36
+ response 查看或设置响应模式
37
+
38
+ AUN:
39
+ aid 管理 AID 身份与 agent.md
40
+ msg 私聊消息收发、撤回、在线状态与历史
41
+ group 群消息与群管理
42
+ fs AUN 文件系统
43
+ storage 底层对象存储命令
44
+ rpc 调用底层 AUN RPC
45
+ contact 联系人黑名单管理
46
+ net AUN 网络链路诊断
47
+
48
+ 配置与诊断:
49
+ config 读取、修改和检查分层配置
50
+ stats Token 用量与费用统计
51
+ diagnose 检查启动环境
52
+ version 显示组件版本
53
+ mv 迁移项目目录和会话路径
54
+
55
+ 维护命令:
56
+ mode 切换开发源码与 npm 包运行模式
57
+ restart-monitor 运行 daemon 重启监控器
58
+ bench AUN 消息性能基准测试
59
+ link-rules 连接 ECK rules 到项目目录
60
+
61
+ 运行 ec <command> --help 查看该命令的完整参数。
62
+
63
+ 环境变量:
64
+ EVOLCORE_HOME 数据目录(默认: ~/.evolcore)
65
+ LOG_LEVEL 日志级别(默认: INFO)
66
+ MESSAGE_LOG 消息日志(默认: true)
67
+ EVENT_LOG 事件日志(默认: true)`;
68
+ function printLifecycleHelp(command) {
69
+ const help = {
70
+ start: `用法: ec start [--foreground] [--diagnose|-d]\n\n --foreground 前台运行,适合 systemd 或容器直接管理\n --diagnose, -d 以诊断模式启动 daemon`,
71
+ stop: '用法: ec stop\n\n停止当前 EVOLCORE_HOME 下运行的 EvolCore 服务。',
72
+ restart: `用法: ec restart [--clear] [--diagnose|-d]\n\n --clear 同时清理跨 HOME 残留的 EvolCore 主进程\n --diagnose, -d 以诊断模式启动新 daemon`,
73
+ status: '用法: ec status\n\n查看 daemon、agent、渠道与会话运行状态。',
74
+ logs: `用法: ec logs [选项]\n\n --level <error|warn|info|debug> 最低日志级别\n --module <name> 只显示指定模块\n --raw 原始输出\n --no-color 禁用颜色`,
75
+ watch: `用法: ec watch [logs|log|aid|msg|web|session]\n\n ec watch 打开监控选择菜单\n ec watch logs 选择日志类型后监控\n ec watch log <类型...> 直接监控指定日志类型\n ec watch aid 监控 AID 连接\n ec watch msg 打开消息 TUI\n ec watch web 安装/升级并启动 EC Web\n ec watch session ec watch web 的兼容别名`,
76
+ 'restart-monitor': '用法: ec restart-monitor\n\n运行内 daemon 重启与升级监控器。',
77
+ diagnose: '用法: ec diagnose\n\n检查配置、数据库、进程和编译产物。',
78
+ mv: '用法: ec mv <old-directory> <new-directory>\n\n迁移项目目录以及 Claude、Codex 和 EvolCore 会话路径。',
79
+ };
80
+ console.log(help[command]);
81
+ }
18
82
  // Suppress Node.js ExperimentalWarning (e.g. SQLite) from cluttering CLI output
19
83
  process.removeAllListeners('warning');
20
84
  process.on('warning', (w) => { if (w.name === 'ExperimentalWarning')
@@ -27,9 +91,13 @@ export async function main(args) {
27
91
  console.log(pkg.version);
28
92
  return;
29
93
  }
94
+ if (isHelpFlag(cmd)) {
95
+ console.log(MAIN_HELP);
96
+ return;
97
+ }
30
98
  switch (cmd) {
31
99
  case 'init':
32
- if (isHelpFlag(args[1])) {
100
+ if (wantsHelp(args.slice(1))) {
33
101
  console.log(`用法: ec init [渠道] [选项]
34
102
 
35
103
  仅初始化 defaults.json:
@@ -43,7 +111,7 @@ export async function main(args) {
43
111
  --owner <aid> 必填。唯一 daemon owner AID
44
112
  --baseagent <claude|codex|gemini> 可选。默认从 PATH 检测
45
113
  --projectpath <abs-path> 可选。默认项目目录(必须绝对路径,自动创建)
46
- --ecweb 可选。启用 ECWeb 自启动
114
+ --ecweb 可选。安装 EC Web 并启用自启动
47
115
  --format json 可选但推荐。stdout 输出 init.result JSON
48
116
  --force 已有不同 owner 时强制覆盖
49
117
 
@@ -53,7 +121,7 @@ export async function main(args) {
53
121
  ec init wechat 微信扫码登录
54
122
  ec init dingtalk 钉钉扫码登录
55
123
  ec init qqbot QQ 机器人扫码绑定
56
- ec init wecom 企业微信 AI Bot 配置(手动输入)`);
124
+ ec init wecom 企业微信 AI Bot 扫码创建/手工配置`);
57
125
  }
58
126
  else if (args[1] === 'aun') {
59
127
  const { suppressSdkLogs } = await import('../aun/aid/index.js');
@@ -105,36 +173,84 @@ export async function main(args) {
105
173
  }
106
174
  break;
107
175
  case 'start':
176
+ if (wantsHelp(args.slice(1))) {
177
+ printLifecycleHelp('start');
178
+ break;
179
+ }
108
180
  await cmdStart({
109
181
  diagnose: args.includes('--diagnose') || args.includes('-d'),
110
182
  foreground: args.includes('--foreground'),
111
183
  });
112
184
  break;
113
185
  case 'stop':
186
+ if (wantsHelp(args.slice(1))) {
187
+ printLifecycleHelp('stop');
188
+ break;
189
+ }
114
190
  await cmdStop();
115
191
  break;
116
192
  case 'restart':
193
+ if (wantsHelp(args.slice(1))) {
194
+ printLifecycleHelp('restart');
195
+ break;
196
+ }
117
197
  await cmdRestart({ clear: args.includes('--clear'), diagnose: args.includes('--diagnose') || args.includes('-d') });
118
198
  break;
119
199
  case 'status':
200
+ if (wantsHelp(args.slice(1))) {
201
+ printLifecycleHelp('status');
202
+ break;
203
+ }
120
204
  await cmdStatus();
121
205
  break;
122
206
  case 'logs':
207
+ if (wantsHelp(args.slice(1))) {
208
+ printLifecycleHelp('logs');
209
+ break;
210
+ }
123
211
  cmdLogs(args.slice(1));
124
212
  break;
125
213
  case 'watch':
214
+ if (wantsHelp(args.slice(1))) {
215
+ printLifecycleHelp('watch');
216
+ break;
217
+ }
126
218
  await cmdWatchCommand(args.slice(1));
127
219
  break;
128
220
  case 'restart-monitor':
221
+ if (wantsHelp(args.slice(1))) {
222
+ printLifecycleHelp('restart-monitor');
223
+ break;
224
+ }
129
225
  await cmdRestartMonitor();
130
226
  break;
131
- case 'dev':
132
- await cmdDev(args.slice(1));
227
+ case 'mode':
228
+ try {
229
+ // 开发源码仓可提供 mode.js;正式 npm 包可以不携带该内部命令。
230
+ const { cmdMode } = await import('./mode.js');
231
+ await cmdMode(args.slice(1));
232
+ }
233
+ catch (error) {
234
+ if (error?.code === 'ERR_MODULE_NOT_FOUND' && /(?:^|[\\/])mode\.js(?:$|')/.test(String(error?.message ?? ''))) {
235
+ console.error('❌ 无效指令: mode');
236
+ process.exitCode = 1;
237
+ break;
238
+ }
239
+ throw error;
240
+ }
133
241
  break;
134
242
  case 'mv':
243
+ if (wantsHelp(args.slice(1))) {
244
+ printLifecycleHelp('mv');
245
+ break;
246
+ }
135
247
  await cmdMv(args[1], args[2]);
136
248
  break;
137
249
  case 'diagnose':
250
+ if (wantsHelp(args.slice(1))) {
251
+ printLifecycleHelp('diagnose');
252
+ break;
253
+ }
138
254
  await cmdDiagnose();
139
255
  break;
140
256
  case 'net': {
@@ -217,6 +333,11 @@ export async function main(args) {
217
333
  await cmdConfig(args.slice(1));
218
334
  break;
219
335
  }
336
+ case 'contact': {
337
+ const { cmdContact } = await import('./contact.js');
338
+ await cmdContact(args.slice(1));
339
+ break;
340
+ }
220
341
  case 'stats': {
221
342
  const { handleStats } = await import('./stats.js');
222
343
  await handleStats(args.slice(1));
@@ -242,114 +363,9 @@ export async function main(args) {
242
363
  break;
243
364
  }
244
365
  default:
245
- console.log(`Usage: ec {init|start|stop|restart|status|logs|watch|ctl|queue|trigger|handoff|diagnose|net|mv}
246
-
247
- Commands:
248
- init 初始化 evolcore home (${resolvePaths().defaultsConfig})
249
- init feishu 飞书扫码登录并写入配置
250
- init wechat 微信扫码登录并写入配置
251
- init dingtalk 钉钉扫码登录并写入配置
252
- init qqbot QQ 机器人扫码绑定并写入配置
253
- init wecom 企业微信 AI Bot 配置(手动输入 Bot ID + Secret)
254
- start 启动服务 (默认)
255
- --foreground 前台运行,适合 systemd/Docker 直接管理进程
256
- stop 停止服务
257
- restart 重启服务
258
- --clear 顺带 SIGKILL 跨 HOME 残留的 evolcore 主进程
259
- status 查看状态
260
- logs 查看日志 (tail -f, 着色渲染)
261
- --level error|warn 只显示指定级别及以上
262
- --module <name> 只显示指定模块(如 feishu、AgentRunner)
263
- --raw 原始输出,不着色
264
- watch 监控面板选择菜单(↑↓ 选择 log/aid/msg)
265
- watch logs 勾选日志类型后实时监控(记忆上次选择,存入 daemon.json)
266
- watch log <类型...> 直接监控指定类型(如 evolcore aun),不读写偏好
267
- watch aid AID 连接状态实时监控(显示各 AID 在线/离线/重连状态)
268
- watch msg 消息监控(三面板交互式 TUI:AID 列表 / 对端统计 / 消息流)
269
- ctl 当前会话工具(发送消息/文件、名称、队列、路径、状态)
270
- ec ctl help 查看完整命令列表
271
- trigger daemon 级触发器管理(list/show/history/create/update/run)
272
- handoff 跨会话任务回流
273
- handoff return [id] [content] 确认当前 handoff;required 策略需提供内容
274
- handoff list/trace 查询实例和审计事件
275
- queue 消息队列查询与操作
276
- queue --agent <aid> 查看 agent 的所有队列
277
- queue --agent <aid> --clear 清空待处理消息
278
- queue --agent <aid> --interrupt --sessionkey <key> 打断处理中任务
279
- agent 管理 EvolAgent
280
- agent 列出所有 agent
281
- agent <name> 查看指定 agent 详情
282
- agent new <name> 创建新 agent(交互式)
283
- agent new <name> --non-interactive ... 非交互创建(自动化)
284
- 必填: --project <absolute path>
285
- 可选: --baseagent <claude|codex|gemini> (默认: PATH 中第一个可用)
286
- --owner <aid>
287
- --name <display-name>
288
- --description <text>
289
- --force (覆盖已有 config.json)
290
- agent reload 全量 resync(扫磁盘,新增上线、删除下线、修改热更新)
291
- agent reload <n> 热重载指定 agent 配置
292
- model 模型管理(agent/关系可写,支持角色策略预览)
293
- model list 列出可用模型并显示当前生效模型
294
- model current 显示实际生效的模型、强度和来源
295
- model info <id> 查看模型详情
296
- model use <id> 设置模型(写操作需要 --self)
297
- model effort <lv> 设置推理强度
298
- model reset 清除当前作用域的模型和强度设置
299
- model check 诊断网关与模型可用性
300
- response 响应模式管理(查看/切换/配置,作用域:全局/agent/关系)
301
- response list 列出所有响应模式
302
- response current 显示当前作用域生效的默认模式
303
- response info <id> 查看单个模式详情(场景/配置参数)
304
- response set <id> 设置默认模式(--scene private/group)
305
- response config 查看/修改模式配置参数
306
- response reset 清除指定作用域设置
307
- response help 查看完整用法
308
- aid AID 身份管理
309
- aid list 列出本地所有 AID
310
- aid show <aid> 查看本地 AID 详情(证书有效期、私钥状态)
311
- aid new <aid> 创建新 AID 身份
312
- aid lookup <aid> 远程探测 AID(是否存在 + 网关 + agent.md)
313
- aid agentmd put <aid> 签名并上传 agent.md
314
- aid agentmd get <aid> 下载并验签 agent.md
315
- aid delete <aid> 删除指定 AID
316
- aid delete --orphan 清理无私钥的外部 AID 缓存
317
- aid delete --unrecoverable 清理云端公钥已变更、不可恢复的 AID
318
- 默认 dry-run,加 --yes 执行
319
- fs AUN 文件系统统一入口
320
- fs ls|stat|cat|find <AID>:/path
321
- fs cp <src> <dst> 上传/下载/远程复制
322
- fs mv <src> <dst> 移动/改名(同后端)
323
- fs rm [-r] <AID>:/path
324
- fs mkdir [-p] <AID>:/path
325
- fs ln -s <target> <AID>:/path
326
- fs chmod +r|o-r <AID>:/path
327
- fs setfacl|getfacl <AID>:/path
328
- fs token issue|revoke|ls <AID>:/path
329
- fs df <AID>:
330
- fs mount <target> --volume <id>|--source <src>
331
- net 网络链路诊断
332
- net check [<aid>] 10 步链路检测(DNS→Discovery→TCP→TLS→WSS→Auth→Ping→Echo)
333
- net help 查看详细帮助
334
- rpc AUN RPC 调用
335
- rpc --as <aid> --params <json|jsonl|file>
336
- storage 文件存储
337
- storage upload <aid> <file> <path> [--public]
338
- storage download <aid> <url> [local-path]
339
- storage ls <aid> [prefix]
340
- storage rm <aid> <path>
341
- storage quota <aid>
342
- diagnose 诊断启动环境(配置、数据库、进程)
343
- mv <old> <new> 迁移项目目录(保留 Claude/Codex/EvolCore 会话)
344
- bench AUN 消息性能基准测试
345
- bench --aids 5 --rounds 10 --concurrency 5
346
-
347
- Environment:
348
- EVOLCORE_HOME 数据目录 (默认: ~/.evolcore)
349
- LOG_LEVEL 日志级别 (默认: INFO)
350
- MESSAGE_LOG 消息日志 (默认: true)
351
- EVENT_LOG 事件日志 (默认: true)`);
352
- process.exit(1);
366
+ console.error(`未知命令: ${cmd}`);
367
+ console.log(MAIN_HELP);
368
+ process.exitCode = 1;
353
369
  }
354
370
  }
355
371
  // 直接运行时自动执行(node dist/cli/index.js ...)