evolcore 0.0.25 → 0.0.27

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 (304) hide show
  1. package/CHANGELOG.md +632 -565
  2. package/LICENSE +21 -21
  3. package/README.md +455 -455
  4. package/bin/codex-managed-acl.ps1 +203 -160
  5. package/bin/codex-managed-hook.mjs +208 -208
  6. package/bin/ec-safe-output.js +327 -327
  7. package/bin/ec.js +40 -29
  8. package/bin/install-codex-managed-hooks.mjs +582 -555
  9. package/dist/agents/baseagent-availability.js +68 -0
  10. package/dist/agents/baseagent.js +96 -46
  11. package/dist/agents/claude-runner.js +172 -33
  12. package/dist/agents/codex/app-server-client.js +76 -31
  13. package/dist/agents/codex/catalog.js +1 -1
  14. package/dist/agents/codex/diagnostics.js +34 -1
  15. package/dist/agents/codex-runner.js +434 -446
  16. package/dist/agents/ecagent-runner.js +174 -34
  17. package/dist/agents/gemini-runner.js +8 -7
  18. package/dist/agents/runner-types.js +75 -19
  19. package/dist/aun/aid/agentmd.js +151 -36
  20. package/dist/aun/aid/client.js +1 -1
  21. package/dist/aun/aid/control-aid.js +180 -1
  22. package/dist/aun/aid/identity.js +4 -4
  23. package/dist/aun/aid/index.js +1 -1
  24. package/dist/aun/aid/store.js +17 -13
  25. package/dist/aun/group/history.js +303 -0
  26. package/dist/aun/group/identity.js +43 -0
  27. package/dist/aun/group/index.js +5 -0
  28. package/dist/aun/{msg/group.js → group/operations.js} +162 -39
  29. package/dist/aun/{menu-client.js → menu/client.js} +85 -6
  30. package/dist/aun/menu/index.js +2 -0
  31. package/dist/aun/menu/transport.js +49 -0
  32. package/dist/aun/msg/index.js +2 -1
  33. package/dist/aun/msg/managed-operation.js +85 -19
  34. package/dist/aun/msg/mention-schema.js +51 -0
  35. package/dist/aun/msg/p2p.js +19 -9
  36. package/dist/aun/msg/upload.js +43 -80
  37. package/dist/aun/outbox.js +29 -7
  38. package/dist/aun/rpc/client.js +1 -0
  39. package/dist/aun/storage/client.js +39 -50
  40. package/dist/channels/aun.js +842 -318
  41. package/dist/channels/daemon.js +10 -6
  42. package/dist/cli/agent-command.js +212 -89
  43. package/dist/cli/agent-create.js +626 -11
  44. package/dist/cli/agent.js +125 -13
  45. package/dist/cli/aun-commands.js +487 -337
  46. package/dist/cli/bench.js +20 -20
  47. package/dist/cli/config.js +55 -33
  48. package/dist/cli/contact.js +72 -15
  49. package/dist/cli/ctl-command.js +24 -24
  50. package/dist/cli/daemon-commands.js +140 -63
  51. package/dist/cli/diag.js +31 -0
  52. package/dist/cli/fs-command.js +70 -70
  53. package/dist/cli/handoff-command.js +46 -14
  54. package/dist/cli/index.js +91 -79
  55. package/dist/cli/init.js +34 -1
  56. package/dist/cli/link-rules.js +21 -21
  57. package/dist/cli/managed-command-guard.js +5 -1
  58. package/dist/cli/menu-client.js +51 -32
  59. package/dist/cli/model.js +3 -3
  60. package/dist/cli/net-check.js +22 -22
  61. package/dist/cli/queue-command.js +31 -31
  62. package/dist/cli/response.js +32 -32
  63. package/dist/cli/restart-monitor.js +103 -42
  64. package/dist/cli/stats.js +51 -51
  65. package/dist/cli/task-command.js +59 -0
  66. package/dist/cli/task-context.js +97 -49
  67. package/dist/cli/trigger-command.js +74 -64
  68. package/dist/config/builtin-roles.js +11 -0
  69. package/dist/config/config-field-policy.js +11 -0
  70. package/dist/config/config-manager.js +32 -4
  71. package/dist/config/config-operation-service.js +160 -0
  72. package/dist/config/contact-book-store.js +1 -1
  73. package/dist/config/contact-book.js +1 -1
  74. package/dist/config/contact-operation-service.js +97 -8
  75. package/dist/config/peer-role-resolver.js +1 -1
  76. package/dist/config/resolved-config-op.js +30 -7
  77. package/dist/config-store.js +1 -1
  78. package/dist/core/agent-application-service.js +7 -1
  79. package/dist/core/audit/event-key.js +17 -2
  80. package/dist/core/audit/log-integrity.js +34 -8
  81. package/dist/core/auth/agent-delegation.js +48 -14
  82. package/dist/core/auth/auth-gateway.js +2 -0
  83. package/dist/core/auth/authorization-audit.js +53 -49
  84. package/dist/core/auth/operation-authorizer.js +90 -7
  85. package/dist/core/auth/operation-catalog.js +145 -4
  86. package/dist/core/auth/remote-access-store.js +155 -10
  87. package/dist/core/bootstrap-messages.js +66 -7
  88. package/dist/core/bootstrap-service.js +111 -20
  89. package/dist/core/command/agent-control.js +88 -7
  90. package/dist/core/command/agent-storage-menu.js +443 -0
  91. package/dist/core/command/cli-intent-parser.js +19 -0
  92. package/dist/core/command/command-handler.js +159 -65
  93. package/dist/core/command/data-root-resolver.js +273 -0
  94. package/dist/core/command/diag-service.js +118 -0
  95. package/dist/core/command/group-menu.js +7 -2
  96. package/dist/core/command/menu-catalog.js +46 -7
  97. package/dist/core/command/menu-handler.js +392 -100
  98. package/dist/core/command/menu-protocol.js +45 -6
  99. package/dist/core/command/menu-token-store.js +41 -8
  100. package/dist/core/command/role-menu.js +2 -2
  101. package/dist/core/command/slash-gate.js +34 -4
  102. package/dist/core/command/slash-handler.js +123 -43
  103. package/dist/core/event-catalog.js +4 -0
  104. package/dist/core/evolagent-registry.js +28 -2
  105. package/dist/core/group/invite-service.js +924 -0
  106. package/dist/core/handoff/runtime.js +205 -27
  107. package/dist/core/handoff/store.js +193 -4
  108. package/dist/core/interaction-router.js +22 -8
  109. package/dist/core/message/im-renderer.js +146 -34
  110. package/dist/core/message/message-bridge.js +163 -20
  111. package/dist/core/message/message-log.js +5 -3
  112. package/dist/core/message/message-queue.js +99 -41
  113. package/dist/core/message/message-utils.js +1 -0
  114. package/dist/core/message/response-engine.js +755 -144
  115. package/dist/core/model/catalog-service.js +79 -49
  116. package/dist/core/model/context-window-suffix.js +33 -0
  117. package/dist/core/model/model-catalog.js +1 -1
  118. package/dist/core/model/model-permission.js +12 -3
  119. package/dist/core/permission/approval-gateway.js +36 -3
  120. package/dist/core/permission/ec-command-parser.js +112 -41
  121. package/dist/core/permission/protected-paths.js +134 -16
  122. package/dist/core/permission/sandbox-runtime.js +108 -17
  123. package/dist/core/permission/tool-error-code.js +15 -0
  124. package/dist/core/permission/tool-policy.js +9 -8
  125. package/dist/core/relation/peer-identity.js +57 -6
  126. package/dist/core/relation/shared-data.js +106 -0
  127. package/dist/core/role/runtime-policy.js +64 -0
  128. package/dist/core/runtime-lock.js +10 -26
  129. package/dist/core/session/runner-task-history.js +170 -0
  130. package/dist/core/session/session-manager.js +34 -6
  131. package/dist/core/session/session-mapper.js +41 -0
  132. package/dist/core/session/session-turn-coordinator.js +37 -7
  133. package/dist/core/session/session-turns.js +48 -7
  134. package/dist/core/task/task-recovery-service.js +176 -0
  135. package/dist/core/task/task-resume-operation.js +32 -0
  136. package/dist/eck/group-rules-sync.js +5 -3
  137. package/dist/eck/kit-renderer.js +1 -0
  138. package/dist/index.js +588 -217
  139. package/dist/ipc.js +193 -15
  140. package/dist/paths.js +17 -4
  141. package/dist/product.js +2 -0
  142. package/dist/response-system/engines/v1/proactive-flow.js +59 -2
  143. package/dist/stats/billing.js +41 -15
  144. package/dist/stats/db.js +159 -159
  145. package/dist/stats/eck-vars.js +9 -9
  146. package/dist/stats/price-resolver.js +28 -10
  147. package/dist/stats/query.js +139 -139
  148. package/dist/stats/role-budget.js +6 -6
  149. package/dist/stats/writer.js +51 -51
  150. package/dist/trigger/event-source.js +19 -0
  151. package/dist/trigger/feedback.js +233 -40
  152. package/dist/trigger/parser.js +55 -5
  153. package/dist/trigger/patch.js +9 -0
  154. package/dist/trigger/scheduler.js +30 -4
  155. package/dist/trigger/validation.js +20 -3
  156. package/dist/utils/cross-platform.js +30 -1
  157. package/dist/utils/ecweb-utils.js +1 -0
  158. package/dist/utils/error-dict.json +160 -160
  159. package/dist/utils/error-utils.js +61 -2
  160. package/dist/utils/evolcore-version.js +129 -0
  161. package/dist/utils/logger.js +26 -14
  162. package/dist/utils/macos-autostart.js +22 -22
  163. package/dist/utils/model-prices.jsonl +23 -23
  164. package/dist/utils/npm-ops.js +176 -35
  165. package/dist/utils/tool-summary.js +59 -3
  166. package/dist/utils/welcome.js +196 -23
  167. package/ecagent/LICENSE +21 -21
  168. package/ecagent/NOTICE +11 -11
  169. package/ecagent/README.md +61 -61
  170. package/ecagent/dist/harness/agent-harness.js +3 -0
  171. package/ecagent/dist/harness/compaction/branch-summarization.js +30 -30
  172. package/ecagent/dist/harness/compaction/compaction.js +83 -83
  173. package/ecagent/dist/harness/messages.js +7 -7
  174. package/ecagent/dist/harness/session/jsonl-storage.js +21 -2
  175. package/kits/docs/GUIDE.md +20 -20
  176. package/kits/docs/INDEX.md +60 -66
  177. package/kits/docs/aun/CHEATSHEET.md +19 -19
  178. package/kits/docs/aun/SYNC_PROTOCOL.md +15 -15
  179. package/kits/docs/channels/aun.md +69 -56
  180. package/kits/docs/channels/feishu.md +56 -56
  181. package/kits/docs/context-assembly.md +379 -367
  182. package/kits/docs/eck_templates/GUIDE.template.md +22 -22
  183. package/kits/docs/eck_templates/INDEX.template.md +28 -28
  184. package/kits/docs/eck_templates/path-registry.template.md +33 -33
  185. package/kits/docs/eck_templates/runtime.template.md +19 -19
  186. package/kits/docs/evolcore/INDEX.md +76 -71
  187. package/kits/docs/evolcore/agent-create.md +202 -165
  188. package/kits/docs/evolcore/agent.md +99 -67
  189. package/kits/docs/evolcore/aid.md +68 -60
  190. package/kits/docs/evolcore/codex-windows-sandbox.md +146 -146
  191. package/kits/docs/evolcore/config.md +241 -195
  192. package/kits/docs/evolcore/contact.md +75 -68
  193. package/kits/docs/evolcore/ctl.md +46 -46
  194. package/kits/docs/evolcore/event.md +216 -216
  195. package/kits/docs/evolcore/fs-architecture.md +1215 -1215
  196. package/kits/docs/evolcore/fs.md +110 -110
  197. package/kits/docs/evolcore/group-collaboration.md +244 -244
  198. package/kits/docs/evolcore/group-fs.md +17 -17
  199. package/kits/docs/evolcore/group-rules.md +251 -251
  200. package/kits/docs/evolcore/group.md +267 -152
  201. package/kits/docs/evolcore/menu-client.md +58 -34
  202. package/kits/docs/evolcore/model.md +50 -50
  203. package/kits/docs/evolcore/msg.md +169 -165
  204. package/kits/docs/evolcore/response.md +75 -75
  205. package/kits/docs/evolcore/rpc.md +37 -37
  206. package/kits/docs/evolcore/self-summary.md +29 -29
  207. package/kits/docs/evolcore/stats.md +83 -83
  208. package/kits/docs/evolcore/storage.md +53 -50
  209. package/kits/docs/evolcore/task.md +14 -0
  210. package/kits/docs/evolcore/trigger.md +623 -575
  211. package/kits/docs/identity/AID_PROFILE_SPEC.md +26 -26
  212. package/kits/docs/identity/PATH_OPS.md +16 -16
  213. package/kits/docs/identity/ROLE_DETAIL.md +25 -25
  214. package/kits/docs/identity/identity-tools.md +26 -26
  215. package/kits/docs/path-registry.md +62 -62
  216. package/kits/docs/prompt-loading-architecture.md +269 -269
  217. package/kits/docs/venues/aun-group.md +45 -45
  218. package/kits/docs/venues/aun-private.md +10 -10
  219. package/kits/docs/venues/client-desktop.md +10 -10
  220. package/kits/docs/venues/client-mobile.md +10 -10
  221. package/kits/docs/venues/feishu-group.md +13 -13
  222. package/kits/docs/venues/feishu-private.md +9 -9
  223. package/kits/docs/venues/group.md +42 -25
  224. package/kits/docs/venues/private.md +10 -10
  225. package/kits/eck_manifest.auxiliary.json +43 -43
  226. package/kits/eck_manifest.json +217 -190
  227. package/kits/eck_message_manifest.json +74 -74
  228. package/kits/migrations/README-role-config-v4.md +32 -32
  229. package/kits/migrations/migrate-contact-book-v2.mjs +748 -748
  230. package/kits/migrations/migrate-role-config-v4.mjs +614 -614
  231. package/kits/migrations/migrate-role-config-v5.mjs +365 -365
  232. package/kits/migrations/rename-config-file.mjs +99 -99
  233. package/kits/rules/01-overview.md +166 -162
  234. package/kits/rules/02-navigation.md +96 -96
  235. package/kits/rules/03-identity.md +36 -36
  236. package/kits/rules/04-relation.md +76 -75
  237. package/kits/rules/05-venue.md +60 -60
  238. package/kits/rules/06-channel.md +65 -63
  239. package/kits/schemas/_meta.json +53 -53
  240. package/kits/schemas/agent-config.schema.1.json +177 -177
  241. package/kits/schemas/agent-config.schema.10.json +395 -395
  242. package/kits/schemas/agent-config.schema.11.json +421 -421
  243. package/kits/schemas/agent-config.schema.12.json +451 -427
  244. package/kits/schemas/agent-config.schema.2.json +239 -239
  245. package/kits/schemas/agent-config.schema.3.json +119 -119
  246. package/kits/schemas/agent-config.schema.4.json +208 -208
  247. package/kits/schemas/agent-config.schema.5.json +326 -326
  248. package/kits/schemas/agent-config.schema.6.json +322 -322
  249. package/kits/schemas/agent-config.schema.7.json +303 -303
  250. package/kits/schemas/agent-config.schema.8.json +304 -304
  251. package/kits/schemas/agent-config.schema.9.json +364 -364
  252. package/kits/schemas/contact-book.schema.1.json +36 -36
  253. package/kits/schemas/contact-book.schema.2.json +43 -43
  254. package/kits/schemas/contact-book.schema.3.json +67 -67
  255. package/kits/schemas/daemon.schema.1.json +91 -91
  256. package/kits/schemas/daemon.schema.2.json +101 -101
  257. package/kits/schemas/daemon.schema.3.json +123 -123
  258. package/kits/schemas/daemon.schema.4.json +136 -136
  259. package/kits/schemas/daemon.schema.5.json +135 -135
  260. package/kits/schemas/daemon.schema.6.json +131 -131
  261. package/kits/schemas/defaults.schema.1.json +81 -81
  262. package/kits/schemas/defaults.schema.2.json +85 -85
  263. package/kits/schemas/defaults.schema.3.json +73 -73
  264. package/kits/schemas/defaults.schema.4.json +107 -107
  265. package/kits/schemas/defaults.schema.5.json +119 -119
  266. package/kits/schemas/menu-exec-schema-commands.md +208 -208
  267. package/kits/schemas/migrations/README.md +30 -30
  268. package/kits/schemas/relation-config.schema.1.json +158 -158
  269. package/kits/schemas/relation-config.schema.2.json +73 -73
  270. package/kits/schemas/relation-config.schema.3.json +50 -50
  271. package/kits/schemas/relation-config.schema.4.json +47 -47
  272. package/kits/schemas/relation-config.schema.5.json +47 -47
  273. package/kits/schemas/relation-config.schema.6.json +46 -46
  274. package/kits/schemas/relation-config.schema.7.json +59 -59
  275. package/kits/schemas/relation-config.schema.8.json +103 -103
  276. package/kits/schemas/role-config.schema.1.json +215 -201
  277. package/kits/schemas/role-registry.schema.1.json +35 -35
  278. package/kits/schemas/single-session.schema.1.json +31 -31
  279. package/kits/schemas/single-session.schema.2.json +57 -57
  280. package/kits/schemas/single-session.schema.3.json +32 -32
  281. package/kits/templates/bootstrap-welcome.md +17 -17
  282. package/kits/templates/message-fragments/handoff-context-to-target.md +9 -9
  283. package/kits/templates/message-fragments/handoff-request-to-target.md +19 -19
  284. package/kits/templates/message-fragments/handoff-response-to-origin.md +9 -9
  285. package/kits/templates/message-fragments/inject-default.md +2 -2
  286. package/kits/templates/message-fragments/item.md +2 -2
  287. package/kits/templates/roles/admin.json +92 -92
  288. package/kits/templates/roles/member.json +101 -96
  289. package/kits/templates/roles/owner.json +9 -9
  290. package/kits/templates/roles/visitor.json +90 -85
  291. package/kits/templates/system-fragments/baseagent.md +14 -14
  292. package/kits/templates/system-fragments/bootstrap.md +53 -34
  293. package/kits/templates/system-fragments/channel.md +28 -64
  294. package/kits/templates/system-fragments/commands.md +36 -28
  295. package/kits/templates/system-fragments/group-unread-history.md +7 -0
  296. package/kits/templates/system-fragments/identity.md +13 -13
  297. package/kits/templates/system-fragments/relation.md +19 -19
  298. package/kits/templates/system-fragments/reply.md +56 -0
  299. package/kits/templates/system-fragments/session.md +59 -59
  300. package/kits/templates/system-fragments/venue.md +31 -31
  301. package/package.json +104 -98
  302. package/dist/aun/group-identity.js +0 -9
  303. /package/dist/aun/{group-fs-download.js → group/fs-download.js} +0 -0
  304. /package/dist/aun/{msg/group-index.js → group/index-rpc.js} +0 -0
@@ -1,31 +1,31 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "single-session.schema.1.json",
4
- "title": "SingleSessionParams (responseModeParams['single-session'])",
5
- "x-logical-name": "single-session",
6
- "x-scope": "mode",
7
- "type": "object",
8
- "additionalProperties": false,
9
- "properties": {
10
- "pre_tool_1stmsgchk": {
11
- "type": "boolean",
12
- "enum": [true, false],
13
- "default": true,
14
- "description": "proactive 首个本地工具表态检查(仅 chatmode=proactive 生效):首个可被 PreToolUse 覆盖的本地工具必须是当前会话精确对应的 ec msg/group send,否则拦截;WebSearch、图像生成、浏览器和 Computer Use 等 hosted 工具不进入此硬拒绝边界。",
15
- "x-enumDescriptions": {
16
- "true": "启用:首个 hook 可覆盖的本地工具必须是精确会话 send",
17
- "false": "禁用:不执行 proactive 首个本地工具 send 检查"
18
- }
19
- },
20
- "tool_use_reminder": {
21
- "type": "boolean",
22
- "enum": [true, false],
23
- "default": true,
24
- "description": "proactive 工具汇报提醒(仅 chatmode=proactive 生效):启用队列未读提醒 + 每 10 次工具调用的汇报提醒。",
25
- "x-enumDescriptions": {
26
- "true": "启用:自动汇报工具使用情况",
27
- "false": "禁用:静默执行工具"
28
- }
29
- }
30
- }
31
- }
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "single-session.schema.1.json",
4
+ "title": "SingleSessionParams (responseModeParams['single-session'])",
5
+ "x-logical-name": "single-session",
6
+ "x-scope": "mode",
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "pre_tool_1stmsgchk": {
11
+ "type": "boolean",
12
+ "enum": [true, false],
13
+ "default": true,
14
+ "description": "proactive 首个本地工具表态检查(仅 chatmode=proactive 生效):首个可被 PreToolUse 覆盖的本地工具必须是当前会话精确对应的 ec msg/group send,否则拦截;WebSearch、图像生成、浏览器和 Computer Use 等 hosted 工具不进入此硬拒绝边界。",
15
+ "x-enumDescriptions": {
16
+ "true": "启用:首个 hook 可覆盖的本地工具必须是精确会话 send",
17
+ "false": "禁用:不执行 proactive 首个本地工具 send 检查"
18
+ }
19
+ },
20
+ "tool_use_reminder": {
21
+ "type": "boolean",
22
+ "enum": [true, false],
23
+ "default": true,
24
+ "description": "proactive 工具汇报提醒(仅 chatmode=proactive 生效):启用队列未读提醒 + 每 10 次工具调用的汇报提醒。",
25
+ "x-enumDescriptions": {
26
+ "true": "启用:自动汇报工具使用情况",
27
+ "false": "禁用:静默执行工具"
28
+ }
29
+ }
30
+ }
31
+ }
@@ -1,57 +1,57 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "single-session.schema.2.json",
4
- "title": "SingleSessionParams (responseModeParams['single-session'])",
5
- "x-logical-name": "single-session",
6
- "x-scope": "mode",
7
- "type": "object",
8
- "additionalProperties": false,
9
- "properties": {
10
- "auxiliaryModel": {
11
- "oneOf": [
12
- {
13
- "type": "string",
14
- "minLength": 1
15
- },
16
- {
17
- "type": "object",
18
- "minProperties": 1,
19
- "additionalProperties": false,
20
- "properties": {
21
- "claude": { "type": "string", "minLength": 1 },
22
- "codex": { "type": "string", "minLength": 1 }
23
- }
24
- }
25
- ],
26
- "description": "辅助判断模型;可直接配置模型 ID,或按 claude/codex 配置映射。当前 Session 的 baseagent 在映射中无对应模型时执行 fallback_action。"
27
- },
28
- "auxiliaryEffort": {
29
- "type": "string",
30
- "enum": ["low", "medium", "high", "xhigh", "max"],
31
- "description": "辅助判断推理强度;配置时同一模式桶必须同时配置 auxiliaryModel,未配置时不向模型 API 发送 effort。"
32
- },
33
- "pre_tool_1stmsgchk": {
34
- "type": "boolean",
35
- "enum": [true, false],
36
- "default": true,
37
- "description": "proactive 首个本地工具表态检查(仅 chatmode=proactive 生效):首个可被 PreToolUse 覆盖的本地工具必须是当前会话精确对应的 ec msg/group send,否则拦截;WebSearch、图像生成、浏览器和 Computer Use 等 hosted 工具不进入此硬拒绝边界。",
38
- "x-enumDescriptions": {
39
- "true": "启用:首个 hook 可覆盖的本地工具必须是精确会话 send",
40
- "false": "禁用:不执行 proactive 首个本地工具 send 检查"
41
- }
42
- },
43
- "tool_use_reminder": {
44
- "type": "boolean",
45
- "enum": [true, false],
46
- "default": true,
47
- "description": "proactive 工具汇报提醒(仅 chatmode=proactive 生效):启用队列未读提醒 + 每 10 次工具调用的汇报提醒。",
48
- "x-enumDescriptions": {
49
- "true": "启用:自动汇报工具使用情况",
50
- "false": "禁用:静默执行工具"
51
- }
52
- }
53
- },
54
- "dependencies": {
55
- "auxiliaryEffort": ["auxiliaryModel"]
56
- }
57
- }
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "single-session.schema.2.json",
4
+ "title": "SingleSessionParams (responseModeParams['single-session'])",
5
+ "x-logical-name": "single-session",
6
+ "x-scope": "mode",
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "properties": {
10
+ "auxiliaryModel": {
11
+ "oneOf": [
12
+ {
13
+ "type": "string",
14
+ "minLength": 1
15
+ },
16
+ {
17
+ "type": "object",
18
+ "minProperties": 1,
19
+ "additionalProperties": false,
20
+ "properties": {
21
+ "claude": { "type": "string", "minLength": 1 },
22
+ "codex": { "type": "string", "minLength": 1 }
23
+ }
24
+ }
25
+ ],
26
+ "description": "辅助判断模型;可直接配置模型 ID,或按 claude/codex 配置映射。当前 Session 的 baseagent 在映射中无对应模型时执行 fallback_action。"
27
+ },
28
+ "auxiliaryEffort": {
29
+ "type": "string",
30
+ "enum": ["low", "medium", "high", "xhigh", "max"],
31
+ "description": "辅助判断推理强度;配置时同一模式桶必须同时配置 auxiliaryModel,未配置时不向模型 API 发送 effort。"
32
+ },
33
+ "pre_tool_1stmsgchk": {
34
+ "type": "boolean",
35
+ "enum": [true, false],
36
+ "default": true,
37
+ "description": "proactive 首个本地工具表态检查(仅 chatmode=proactive 生效):首个可被 PreToolUse 覆盖的本地工具必须是当前会话精确对应的 ec msg/group send,否则拦截;WebSearch、图像生成、浏览器和 Computer Use 等 hosted 工具不进入此硬拒绝边界。",
38
+ "x-enumDescriptions": {
39
+ "true": "启用:首个 hook 可覆盖的本地工具必须是精确会话 send",
40
+ "false": "禁用:不执行 proactive 首个本地工具 send 检查"
41
+ }
42
+ },
43
+ "tool_use_reminder": {
44
+ "type": "boolean",
45
+ "enum": [true, false],
46
+ "default": true,
47
+ "description": "proactive 工具汇报提醒(仅 chatmode=proactive 生效):启用队列未读提醒 + 每 10 次工具调用的汇报提醒。",
48
+ "x-enumDescriptions": {
49
+ "true": "启用:自动汇报工具使用情况",
50
+ "false": "禁用:静默执行工具"
51
+ }
52
+ }
53
+ },
54
+ "dependencies": {
55
+ "auxiliaryEffort": ["auxiliaryModel"]
56
+ }
57
+ }
@@ -1,32 +1,32 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "single-session.schema.3.json",
4
- "title": "SingleSessionParams (responseModeParams['single-session'])",
5
- "description": "Single-session mode parameters. Session Renew auxiliary model settings belong to baseagents.<name>.",
6
- "x-logical-name": "single-session",
7
- "x-scope": "mode",
8
- "type": "object",
9
- "additionalProperties": false,
10
- "properties": {
11
- "pre_tool_1stmsgchk": {
12
- "type": "boolean",
13
- "enum": [true, false],
14
- "default": true,
15
- "description": "proactive 首个本地工具表态检查(仅 chatmode=proactive 生效):首个可被 PreToolUse 覆盖的本地工具必须是当前会话精确对应的 ec msg/group send,否则拦截;WebSearch、图像生成、浏览器和 Computer Use 等 hosted 工具不进入此硬拒绝边界。",
16
- "x-enumDescriptions": {
17
- "true": "启用:首个 hook 可覆盖的本地工具必须是精确会话 send",
18
- "false": "禁用:不执行 proactive 首个本地工具 send 检查"
19
- }
20
- },
21
- "tool_use_reminder": {
22
- "type": "boolean",
23
- "enum": [true, false],
24
- "default": true,
25
- "description": "proactive 工具汇报提醒(仅 chatmode=proactive 生效):启用队列未读提醒 + 每 10 次工具调用的汇报提醒。",
26
- "x-enumDescriptions": {
27
- "true": "启用:自动汇报工具使用情况",
28
- "false": "禁用:静默执行工具"
29
- }
30
- }
31
- }
32
- }
1
+ {
2
+ "$schema": "http://json-schema.org/draft-07/schema#",
3
+ "$id": "single-session.schema.3.json",
4
+ "title": "SingleSessionParams (responseModeParams['single-session'])",
5
+ "description": "Single-session mode parameters. Session Renew auxiliary model settings belong to baseagents.<name>.",
6
+ "x-logical-name": "single-session",
7
+ "x-scope": "mode",
8
+ "type": "object",
9
+ "additionalProperties": false,
10
+ "properties": {
11
+ "pre_tool_1stmsgchk": {
12
+ "type": "boolean",
13
+ "enum": [true, false],
14
+ "default": true,
15
+ "description": "proactive 首个本地工具表态检查(仅 chatmode=proactive 生效):首个可被 PreToolUse 覆盖的本地工具必须是当前会话精确对应的 ec msg/group send,否则拦截;WebSearch、图像生成、浏览器和 Computer Use 等 hosted 工具不进入此硬拒绝边界。",
16
+ "x-enumDescriptions": {
17
+ "true": "启用:首个 hook 可覆盖的本地工具必须是精确会话 send",
18
+ "false": "禁用:不执行 proactive 首个本地工具 send 检查"
19
+ }
20
+ },
21
+ "tool_use_reminder": {
22
+ "type": "boolean",
23
+ "enum": [true, false],
24
+ "default": true,
25
+ "description": "proactive 工具汇报提醒(仅 chatmode=proactive 生效):启用队列未读提醒 + 每 10 次工具调用的汇报提醒。",
26
+ "x-enumDescriptions": {
27
+ "true": "启用:自动汇报工具使用情况",
28
+ "false": "禁用:静默执行工具"
29
+ }
30
+ }
31
+ }
32
+ }
@@ -1,17 +1,17 @@
1
- 你好,我是 {{agentName}}。
2
-
3
- 我刚刚完成连接,需要先和你确认我的基础信息,然后再进入正常工作状态。
4
-
5
- 请帮我确认三项内容:
6
- 1. 显示名:你希望我叫什么?
7
- 2. 简介:我主要负责什么?一句到两句话即可。
8
- 3. 标签:给我 3 到 6 个标签,例如 `代码审查`、`客服助手`、`项目管理`。
9
-
10
- 当前信息:
11
- - AID: {{agentAid}}
12
- - 渠道: {{channel}}
13
- - Baseagent: {{baseagent}}
14
-
15
- 如果希望沿用已有 agent.md 信息,可以直接回复“沿用现有信息”;我会先读取并回显现有值,请你确认是否保持或修改,不需要重新输入。
16
-
17
- 如果希望重新设定,也可以直接按上面的三项回复。
1
+ 你好,我是 {{agentName}}。
2
+
3
+ 我刚刚完成连接,需要先和你确认我的基础信息,然后再进入正常工作状态。
4
+
5
+ 请帮我确认三项内容:
6
+ 1. 显示名:你希望我叫什么?
7
+ 2. 简介:我主要负责什么?一句到两句话即可。
8
+ 3. 标签:给我 3 到 6 个标签,例如 `代码审查`、`客服助手`、`项目管理`。
9
+
10
+ 当前信息:
11
+ - AID: {{agentAid}}
12
+ - 渠道: {{channel}}
13
+ - Baseagent: {{baseagent}}
14
+
15
+ 如果希望沿用已有 agent.md 信息,可以直接回复“沿用现有信息”;我会先读取并回显现有值,请你确认是否保持或修改,不需要重新输入。
16
+
17
+ 如果希望重新设定,也可以直接按上面的三项回复。
@@ -1,9 +1,9 @@
1
- 说明:
2
- - 以下是此前未纳入本会话上下文的本地发言,仅补充一次。
3
- - 请结合这些发言与当前对端回复继续处理。
4
-
5
- 本地发言:
6
- {{#each handoffContextEntries}}- {{previousContent}}
7
- {{/each}}
8
- 当前对端回复内容:
9
- {{content}}
1
+ 说明:
2
+ - 以下是此前未纳入本会话上下文的本地发言,仅补充一次。
3
+ - 请结合这些发言与当前对端回复继续处理。
4
+
5
+ 本地发言:
6
+ {{#each handoffContextEntries}}- {{previousContent}}
7
+ {{/each}}
8
+ 当前对端回复内容:
9
+ {{content}}
@@ -1,19 +1,19 @@
1
- 说明:
2
- - 以下是尚未完成的跨会话请求,仅本端可见。
3
- - 请结合请求列表与当前对端回复,分别判断哪些请求已经得到充分回答。
4
- - 不要在对外回复中主动提及 handoff、ID、return 命令或内部路由机制。
5
- - 当前回复足以处理某项请求时,需要使用:`ec handoff return ID "<完整回流内容>"`
6
- - 命令双引号内若含双引号、反引号或 Shell 展开形式的 `$`,需经转义符转义,Shell 传给 ec 时会做还原。
7
- - 若回复不足,不要执行 return。
8
-
9
- 待回流请求:
10
- {{#each handoffRequiredEntries}}- ID:{{handoffId}}
11
- 原请求:{{previousContent}}
12
- {{/each}}
13
- {{?handoffContextEntries}}
14
- 以下本地发言只用于补充上下文,不需要回流:
15
- {{#each handoffContextEntries}}- {{previousContent}}
16
- {{/each}}
17
- {{/}}
18
- 当前对端回复内容:
19
- {{content}}
1
+ 说明:
2
+ - 以下是尚未完成的跨会话请求,仅本端可见。
3
+ - 请结合请求列表与当前对端回复,分别判断哪些请求已经得到充分回答。
4
+ - 不要在对外回复中主动提及 handoff、ID、return 命令或内部路由机制。
5
+ - 通常请直接在当前回复中给出完整处理结果,本端会自动把回复绑定并回流到原请求会话。
6
+ - 如果请求因权限、网络或其它原因无法完成,且需要把失败/阻塞原因明确回传给原会话,可执行已有命令 `ec handoff return <handoff-id> "<失败原因>"`;required 请求允许用同一个 ID 追加多次结果。
7
+ - 不要在对外回复中主动提及 handoff、ID 或内部路由机制。
8
+
9
+ 待回流请求:
10
+ {{#each handoffRequiredEntries}}- ID:{{handoffId}}
11
+ 原请求:{{previousContent}}
12
+ {{/each}}
13
+ {{?handoffContextEntries}}
14
+ 以下本地发言只用于补充上下文,不需要回流:
15
+ {{#each handoffContextEntries}}- {{previousContent}}
16
+ {{/each}}
17
+ {{/}}
18
+ 当前对端回复内容:
19
+ {{content}}
@@ -1,9 +1,9 @@
1
- 说明:
2
- - 跨会话结果回流,仅本端可见。
3
- - 以下是此前本会话一个或多个请求的返回结果,请逐项结合当前上下文处理。
4
- - 不要提及 handoff 或内部路由机制。
5
-
6
- 待处理结果:
7
- {{#each handoffOriginEntries}}- 原请求:{{previousContent}}
8
- 返回结果:{{responseContent}}
9
- {{/each}}
1
+ 说明:
2
+ - 跨会话结果回流,仅本端可见。
3
+ - 以下是此前本会话一个或多个请求的返回结果,请逐项结合当前上下文处理。
4
+ - 不要提及 handoff 或内部路由机制。
5
+
6
+ 待处理结果:
7
+ {{#each handoffOriginEntries}}- 原请求:{{previousContent}}
8
+ 返回结果:{{responseContent}}
9
+ {{/each}}
@@ -1,2 +1,2 @@
1
- ‹owner 提示 · 已验证 · {{injectTime}}{{?ownerAid}} · from:{{ownerAid}}{{/}}›(仅你可见,对端无感;请据此决定如何回复对端)
2
- {{content}}
1
+ ‹owner 提示 · 已验证 · {{injectTime}}{{?ownerAid}} · from:{{ownerAid}}{{/}}›(仅你可见,对端无感;请据此决定如何回复对端)
2
+ {{content}}
@@ -1,2 +1,2 @@
1
- ‹{{now}} · from:{{peerId}}{{?peerName}}({{peerName}}){{/}}{{?peerRole}} · role:{{peerRole}}{{/}}{{?chatType=group}} → 群:{{groupLabel}} · self:{{selfAid}}{{/}}{{?chatType=private}} → self:{{selfAid}}{{/}}{{?encrypted=true}} · 🔒密文{{/}}{{?encrypted=false}} · ✉️明文{{/}}{{?sameDevice}} · 📍同设备{{/}}{{?sameNetwork}} · 🌐同网络{{/}}{{?sameEgressIp}} · 🔀同出口IP{{/}}{{?mentionAids}} · @:{{mentionAids}}{{/}}›
2
- {{?isHandoff!=true}}{{content}}{{/}}
1
+ ‹{{now}} · from:{{peerId}}{{?peerName}}({{peerName}}){{/}}{{?peerRole}} · role:{{peerRole}}{{/}}{{?chatType=group}} → 群:{{groupLabel}} · self:{{selfAid}}{{/}}{{?chatType=private}} → self:{{selfAid}}{{/}}{{?encrypted=true}} · 🔒密文{{/}}{{?encrypted=false}} · ✉️明文{{/}}{{?sameDevice}} · 📍同设备{{/}}{{?sameNetwork}} · 🌐同网络{{/}}{{?sameEgressIp}} · 🔀同出口IP{{/}}{{?mentionAids}} · @:{{mentionAids}}{{/}}›
2
+ {{?isHandoff!=true}}{{content}}{{/}}
@@ -1,71 +1,71 @@
1
- {
2
- "$schema_version": 1,
3
- "description": "Agent administrator with guarded management authority",
4
- "rank": 700,
5
- "allowAccess": true,
6
- "permissions": {
7
- "permissionMode": { "default": "request", "allowOverride": false }
8
- },
9
- "commandPermissions": {
10
- "contact.read": { "allow": true, "scopes": ["agent"] },
11
- "contact.add": { "allow": true, "scopes": ["relation"], "constraints": { "ownPeerOnly": true, "privateOnly": true } },
12
- "contact.block": {
13
- "allow": true,
14
- "scopes": ["agent"],
15
- "constraints": { "requireAgentAdmin": true }
16
- },
17
- "connect.write": {
18
- "allow": true,
19
- "scopes": ["agent"],
20
- "constraints": { "requireAgentAdmin": true }
21
- },
22
- "connect.access.write": {
23
- "allow": true,
24
- "scopes": ["agent"],
25
- "constraints": { "requireAgentOwner": true }
26
- },
27
- "role.assign": { "allow": true, "scopes": ["agent"] },
28
- "role.revoke": { "allow": true, "scopes": ["agent"] },
29
- "role.policy.read": { "allow": true, "scopes": ["agent"] },
30
- "role.relation.read": { "allow": true, "scopes": ["agent"] },
31
- "agent.baseagent.update": {
32
- "allow": true,
33
- "scopes": ["agent"],
34
- "constraints": { "requireAgentOwner": true, "targetCurrentAgentOnly": true }
35
- },
36
- "observable.current": {
37
- "allow": true,
38
- "scopes": ["agent"],
39
- "constraints": { "requireAgentOwner": true }
40
- },
41
- "observable.update": {
42
- "allow": true,
43
- "scopes": ["agent"],
44
- "constraints": { "requireAgentOwner": true, "targetCurrentAgentOnly": true }
45
- },
46
- "config.get": { "allow": true, "scopes": ["agent", "relation"] },
47
- "config.set": { "allow": true, "scopes": ["agent", "relation"] },
48
- "config.unset": { "allow": true, "scopes": ["agent", "relation"] },
49
- "role.policy.write": {
50
- "allow": true,
51
- "dangerous": true,
52
- "scopes": ["agent"],
53
- "constraints": { "requireAgentAdmin": true }
54
- },
55
- "ec.aid.show": {
56
- "allow": true,
57
- "dangerous": true,
58
- "scopes": ["agent"],
59
- "constraints": { "targetCurrentAgentOnly": true, "requireAgentAdmin": true }
60
- },
61
- "ec.aid.lookup": {
62
- "allow": true,
63
- "scopes": ["agent"]
64
- },
65
- "ec.aid.agentmd.get": {
66
- "allow": true,
67
- "scopes": ["agent"]
68
- },
1
+ {
2
+ "$schema_version": 1,
3
+ "description": "Agent administrator with guarded management authority",
4
+ "rank": 700,
5
+ "allowAccess": true,
6
+ "permissions": {
7
+ "permissionMode": { "default": "request", "allowOverride": false }
8
+ },
9
+ "commandPermissions": {
10
+ "contact.read": { "allow": true, "scopes": ["agent"] },
11
+ "contact.add": { "allow": true, "scopes": ["relation"], "constraints": { "ownPeerOnly": true, "privateOnly": true } },
12
+ "contact.block": {
13
+ "allow": true,
14
+ "scopes": ["agent"],
15
+ "constraints": { "requireAgentAdmin": true }
16
+ },
17
+ "connect.write": {
18
+ "allow": true,
19
+ "scopes": ["agent"],
20
+ "constraints": { "requireAgentAdmin": true }
21
+ },
22
+ "connect.access.write": {
23
+ "allow": true,
24
+ "scopes": ["agent"],
25
+ "constraints": { "requireAgentOwner": true }
26
+ },
27
+ "role.assign": { "allow": true, "scopes": ["agent"] },
28
+ "role.revoke": { "allow": true, "scopes": ["agent"] },
29
+ "role.policy.read": { "allow": true, "scopes": ["agent"] },
30
+ "role.relation.read": { "allow": true, "scopes": ["agent"] },
31
+ "agent.baseagent.update": {
32
+ "allow": true,
33
+ "scopes": ["agent"],
34
+ "constraints": { "requireAgentOwner": true, "targetCurrentAgentOnly": true }
35
+ },
36
+ "observable.current": {
37
+ "allow": true,
38
+ "scopes": ["agent"],
39
+ "constraints": { "requireAgentOwner": true }
40
+ },
41
+ "observable.update": {
42
+ "allow": true,
43
+ "scopes": ["agent"],
44
+ "constraints": { "requireAgentOwner": true, "targetCurrentAgentOnly": true }
45
+ },
46
+ "config.get": { "allow": true, "scopes": ["agent", "relation"] },
47
+ "config.set": { "allow": true, "scopes": ["agent", "relation"] },
48
+ "config.unset": { "allow": true, "scopes": ["agent", "relation"] },
49
+ "role.policy.write": {
50
+ "allow": true,
51
+ "dangerous": true,
52
+ "scopes": ["agent"],
53
+ "constraints": { "requireAgentAdmin": true }
54
+ },
55
+ "ec.aid.show": {
56
+ "allow": true,
57
+ "dangerous": true,
58
+ "scopes": ["agent"],
59
+ "constraints": { "targetCurrentAgentOnly": true, "requireAgentAdmin": true }
60
+ },
61
+ "ec.aid.lookup": {
62
+ "allow": true,
63
+ "scopes": ["agent"]
64
+ },
65
+ "ec.aid.agentmd.get": {
66
+ "allow": true,
67
+ "scopes": ["agent"]
68
+ },
69
69
  "ec.aid.agentmd.put": {
70
70
  "allow": true,
71
71
  "dangerous": true,
@@ -78,27 +78,27 @@
78
78
  "scopes": ["agent"],
79
79
  "constraints": { "targetCurrentAgentOnly": true, "requireAgentOwner": true }
80
80
  },
81
- "ec.fs.mkdir": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
82
- "ec.fs.upload": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
83
- "ec.fs.copy": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
84
- "ec.fs.move": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
85
- "ec.fs.remove": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
86
- "ec.fs.getfacl": { "allow": true, "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
87
- "ec.fs.setfacl": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
88
- "*": { "allow": true },
89
- "agent.reload": {
90
- "allow": true,
91
- "dangerous": true,
92
- "scopes": ["agent", "control"],
93
- "constraints": {
94
- "targetCurrentAgentOnly": true,
95
- "requireAgentAdmin": true
96
- }
97
- },
98
- "dangerous:*": {
99
- "allow": true,
100
- "dangerous": true,
101
- "constraints": { "requireDaemonOwner": true }
102
- }
103
- }
104
- }
81
+ "ec.fs.mkdir": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
82
+ "ec.fs.upload": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
83
+ "ec.fs.copy": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
84
+ "ec.fs.move": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
85
+ "ec.fs.remove": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
86
+ "ec.fs.getfacl": { "allow": true, "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
87
+ "ec.fs.setfacl": { "allow": true, "permissionMode": "auto", "scopes": ["relation"], "constraints": { "groupOnly": true, "currentRelationOnly": true, "targetCurrentAgentOnly": true } },
88
+ "*": { "allow": true },
89
+ "agent.reload": {
90
+ "allow": true,
91
+ "dangerous": true,
92
+ "scopes": ["agent", "control"],
93
+ "constraints": {
94
+ "targetCurrentAgentOnly": true,
95
+ "requireAgentAdmin": true
96
+ }
97
+ },
98
+ "dangerous:*": {
99
+ "allow": true,
100
+ "dangerous": true,
101
+ "constraints": { "requireDaemonOwner": true }
102
+ }
103
+ }
104
+ }