@bolloon/bolloon-agent 0.1.36 → 0.1.38

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 (518) hide show
  1. package/package.json +2 -2
  2. package/.auto-evolve-calls +0 -1
  3. package/.last-auto-evolve-baseline +0 -1
  4. package/.playwright-mcp/page-2026-06-16T07-51-45-706Z.yml +0 -130
  5. package/.playwright-mcp/page-2026-06-16T07-56-44-116Z.yml +0 -131
  6. package/Bolloon.md +0 -144
  7. package/Dive-into/CITATION.cff +0 -17
  8. package/Dive-into/LICENSE +0 -25
  9. package/Dive-into/README.md +0 -598
  10. package/Dive-into/README_zh.md +0 -599
  11. package/Dive-into/assets/context.png +0 -0
  12. package/Dive-into/assets/extensibility.png +0 -0
  13. package/Dive-into/assets/iteration.png +0 -0
  14. package/Dive-into/assets/layered_architecture.png +0 -0
  15. package/Dive-into/assets/main_structure.png +0 -0
  16. package/Dive-into/assets/permission.png +0 -0
  17. package/Dive-into/assets/session_compact.png +0 -0
  18. package/Dive-into/assets/subagent.png +0 -0
  19. package/Dive-into/paper/Dive_into_Claude_Code.pdf +0 -0
  20. package/dist/agents/constraint-layer.js.map +0 -1
  21. package/dist/agents/pi-sdk.js.map +0 -1
  22. package/dist/agents/workflow-engine.js.map +0 -1
  23. package/dist/bollharness/src/index.js +0 -5
  24. package/dist/bollharness/src/scripts/checks/check_adr_plan_numbering.js +0 -6
  25. package/dist/bollharness/src/scripts/checks/check_api_types.js +0 -45
  26. package/dist/bollharness/src/scripts/checks/check_artifact_link.js +0 -146
  27. package/dist/bollharness/src/scripts/checks/check_bridge_deps.js +0 -6
  28. package/dist/bollharness/src/scripts/checks/check_bugfix_binding.js +0 -6
  29. package/dist/bollharness/src/scripts/checks/check_bugfix_binding_ci.js +0 -6
  30. package/dist/bollharness/src/scripts/checks/check_doc_file_references.js +0 -6
  31. package/dist/bollharness/src/scripts/checks/check_doc_freshness.js +0 -135
  32. package/dist/bollharness/src/scripts/checks/check_doc_links.js +0 -31
  33. package/dist/bollharness/src/scripts/checks/check_file_existence_claims.js +0 -6
  34. package/dist/bollharness/src/scripts/checks/check_fragment_integrity.js +0 -34
  35. package/dist/bollharness/src/scripts/checks/check_hook_installed.js +0 -63
  36. package/dist/bollharness/src/scripts/checks/check_issue_closure.js +0 -41
  37. package/dist/bollharness/src/scripts/checks/check_mcp_parity.js +0 -6
  38. package/dist/bollharness/src/scripts/checks/check_security.js +0 -48
  39. package/dist/bollharness/src/scripts/checks/check_skill_parity.js +0 -6
  40. package/dist/bollharness/src/scripts/checks/check_versions.js +0 -6
  41. package/dist/bollharness/src/scripts/checks/finding.js +0 -13
  42. package/dist/bollharness/src/scripts/checks/next_decision_number.js +0 -20
  43. package/dist/bollharness/src/scripts/checks/regenerate_magic_docs.js +0 -6
  44. package/dist/bollharness/src/scripts/ci/detect_rebaseline_triggers.js +0 -8
  45. package/dist/bollharness/src/scripts/ci/scan_subprocess_cfg.js +0 -8
  46. package/dist/bollharness/src/scripts/ci/scan_verify_artifacts.js +0 -8
  47. package/dist/bollharness/src/scripts/ci/scan_yaml_schema.js +0 -8
  48. package/dist/bollharness/src/scripts/context_router.js +0 -67
  49. package/dist/bollharness/src/scripts/deploy-guard.js +0 -157
  50. package/dist/bollharness/src/scripts/guard-feedback.js +0 -192
  51. package/dist/bollharness/src/scripts/guard_router.js +0 -158
  52. package/dist/bollharness/src/scripts/hooks/_hook_output.js +0 -6
  53. package/dist/bollharness/src/scripts/hooks/auto-python3.js +0 -6
  54. package/dist/bollharness/src/scripts/hooks/deploy-progress-on-session-end.js +0 -6
  55. package/dist/bollharness/src/scripts/hooks/failure-analyzer.js +0 -6
  56. package/dist/bollharness/src/scripts/hooks/gate-judgment-inject.js +0 -92
  57. package/dist/bollharness/src/scripts/hooks/gate-transition-judgment.js +0 -63
  58. package/dist/bollharness/src/scripts/hooks/inbox-ack.js +0 -6
  59. package/dist/bollharness/src/scripts/hooks/inbox-inject-on-start.js +0 -6
  60. package/dist/bollharness/src/scripts/hooks/inbox-validate.js +0 -6
  61. package/dist/bollharness/src/scripts/hooks/inbox-write-ledger.js +0 -6
  62. package/dist/bollharness/src/scripts/hooks/initializer-agent.js +0 -6
  63. package/dist/bollharness/src/scripts/hooks/loop-detection.js +0 -73
  64. package/dist/bollharness/src/scripts/hooks/owner-guard.js +0 -6
  65. package/dist/bollharness/src/scripts/hooks/precompact.js +0 -6
  66. package/dist/bollharness/src/scripts/hooks/review-agent-gatekeeper.js +0 -6
  67. package/dist/bollharness/src/scripts/hooks/risk-tracker.js +0 -108
  68. package/dist/bollharness/src/scripts/hooks/sanitize-on-read.js +0 -6
  69. package/dist/bollharness/src/scripts/hooks/session-reflection.js +0 -7
  70. package/dist/bollharness/src/scripts/hooks/session-start-magic-docs.js +0 -7
  71. package/dist/bollharness/src/scripts/hooks/session-start-reset-risk.js +0 -7
  72. package/dist/bollharness/src/scripts/hooks/session-start-toolkit-reminder.js +0 -7
  73. package/dist/bollharness/src/scripts/hooks/stop-evaluator.js +0 -157
  74. package/dist/bollharness/src/scripts/hooks/tool-call-counter.js +0 -6
  75. package/dist/bollharness/src/scripts/hooks/trace-analyzer.js +0 -10
  76. package/dist/bollharness/src/scripts/install/install-trust-token.js +0 -7
  77. package/dist/bollharness/src/scripts/install/multi_project_registry.js +0 -9
  78. package/dist/bollharness/src/scripts/install/phase2_auto.js +0 -21
  79. package/dist/bollharness/src/scripts/install/pre_commit_installer.js +0 -6
  80. package/dist/bollharness/src/scripts/install/tier_selector.js +0 -7
  81. package/dist/bollharness/src/scripts/install/transcript_miner.js +0 -7
  82. package/dist/bollharness/src/scripts/lib/claim_patterns.js +0 -10
  83. package/dist/bollharness/src/scripts/lib/sanitize_patterns.js +0 -12
  84. package/dist/bollharness/src/scripts/sanitize.js +0 -6
  85. package/dist/bollharness-integration/context-router-judgment.js.map +0 -1
  86. package/dist/bollharness-integration/context-router.js.map +0 -1
  87. package/dist/bollharness-integration/gate-state-machine.js.map +0 -1
  88. package/dist/bollharness-integration/gate-transition-hooks.js.map +0 -1
  89. package/dist/bollharness-integration/guard-checker.js.map +0 -1
  90. package/dist/bollharness-integration/index.js.map +0 -1
  91. package/dist/bollharness-integration/integration.js.map +0 -1
  92. package/dist/bollharness-integration/llm/pi-ai.d.ts +0 -60
  93. package/dist/bollharness-integration/pi-ecosystem-colony/index.d.ts +0 -153
  94. package/dist/bollharness-integration/pi-ecosystem-goals/index.d.ts +0 -136
  95. package/dist/bollharness-integration/pi-ecosystem-judgment/decision.d.ts +0 -117
  96. package/dist/bollharness-integration/pi-ecosystem-judgment/distillation.d.ts +0 -78
  97. package/dist/bollharness-integration/pi-ecosystem-judgment/index.d.ts +0 -139
  98. package/dist/bollharness-integration/pi-ecosystem-mcp/index.d.ts +0 -127
  99. package/dist/bollharness-integration/pi-ecosystem-subagents/index.d.ts +0 -95
  100. package/dist/bollharness-integration/skill-adapter.js.map +0 -1
  101. package/dist/constraint-runtime/src/_archive_helper.js +0 -9
  102. package/dist/constraint-runtime/src/agent/coordinator.js +0 -48
  103. package/dist/constraint-runtime/src/agent/index.js +0 -1
  104. package/dist/constraint-runtime/src/assistant/index.js +0 -12
  105. package/dist/constraint-runtime/src/bootstrap/index.js +0 -12
  106. package/dist/constraint-runtime/src/bootstrap_graph.js +0 -13
  107. package/dist/constraint-runtime/src/bridge/index.js +0 -12
  108. package/dist/constraint-runtime/src/buddy/index.js +0 -12
  109. package/dist/constraint-runtime/src/cli/index.js +0 -12
  110. package/dist/constraint-runtime/src/command_graph.js +0 -10
  111. package/dist/constraint-runtime/src/commands.js +0 -60
  112. package/dist/constraint-runtime/src/components/index.js +0 -12
  113. package/dist/constraint-runtime/src/constants/index.js +0 -12
  114. package/dist/constraint-runtime/src/constraint/budget.js +0 -22
  115. package/dist/constraint-runtime/src/constraint/budget.js.map +0 -1
  116. package/dist/constraint-runtime/src/constraint/index.js +0 -2
  117. package/dist/constraint-runtime/src/constraint/permission.js +0 -20
  118. package/dist/constraint-runtime/src/constraint/permission.js.map +0 -1
  119. package/dist/constraint-runtime/src/context.js +0 -30
  120. package/dist/constraint-runtime/src/coordinator/index.js +0 -12
  121. package/dist/constraint-runtime/src/cost_hook.js +0 -4
  122. package/dist/constraint-runtime/src/cost_tracker.js +0 -8
  123. package/dist/constraint-runtime/src/deferred_init.js +0 -10
  124. package/dist/constraint-runtime/src/direct_modes.js +0 -6
  125. package/dist/constraint-runtime/src/dynamic-tool-loader.js +0 -85
  126. package/dist/constraint-runtime/src/entrypoints/index.js +0 -12
  127. package/dist/constraint-runtime/src/execution_registry.js +0 -44
  128. package/dist/constraint-runtime/src/history.js +0 -9
  129. package/dist/constraint-runtime/src/hooks/index.js +0 -12
  130. package/dist/constraint-runtime/src/index.js +0 -26
  131. package/dist/constraint-runtime/src/ink.js +0 -4
  132. package/dist/constraint-runtime/src/keybindings/index.js +0 -12
  133. package/dist/constraint-runtime/src/memdir/index.js +0 -12
  134. package/dist/constraint-runtime/src/migrations/index.js +0 -12
  135. package/dist/constraint-runtime/src/models.js +0 -1
  136. package/dist/constraint-runtime/src/models.js.map +0 -1
  137. package/dist/constraint-runtime/src/moreright/index.js +0 -12
  138. package/dist/constraint-runtime/src/native_ts/index.js +0 -12
  139. package/dist/constraint-runtime/src/output_styles/index.js +0 -12
  140. package/dist/constraint-runtime/src/parity_audit.js +0 -12
  141. package/dist/constraint-runtime/src/plugins/index.js +0 -12
  142. package/dist/constraint-runtime/src/port_manifest.js +0 -11
  143. package/dist/constraint-runtime/src/prefetch.js +0 -9
  144. package/dist/constraint-runtime/src/query.js +0 -1
  145. package/dist/constraint-runtime/src/remote/index.js +0 -12
  146. package/dist/constraint-runtime/src/remote_runtime.js +0 -9
  147. package/dist/constraint-runtime/src/runtime/index.js +0 -1
  148. package/dist/constraint-runtime/src/runtime/session.js +0 -35
  149. package/dist/constraint-runtime/src/schemas/index.js +0 -12
  150. package/dist/constraint-runtime/src/screens/index.js +0 -12
  151. package/dist/constraint-runtime/src/server/index.js +0 -12
  152. package/dist/constraint-runtime/src/services/index.js +0 -12
  153. package/dist/constraint-runtime/src/session_store.js +0 -22
  154. package/dist/constraint-runtime/src/setup.js +0 -30
  155. package/dist/constraint-runtime/src/skills/index.js +0 -1
  156. package/dist/constraint-runtime/src/skills/skill-registry.js +0 -28
  157. package/dist/constraint-runtime/src/state/index.js +0 -12
  158. package/dist/constraint-runtime/src/system_init.js +0 -20
  159. package/dist/constraint-runtime/src/thinking/engine.js +0 -42
  160. package/dist/constraint-runtime/src/thinking/index.js +0 -1
  161. package/dist/constraint-runtime/src/tool_pool.js +0 -8
  162. package/dist/constraint-runtime/src/tools/OpenCLI/execAdapter.js +0 -7
  163. package/dist/constraint-runtime/src/tools/OpenCLI/listAdapters.js +0 -7
  164. package/dist/constraint-runtime/src/tools/OpenCLI/runCommand.js +0 -7
  165. package/dist/constraint-runtime/src/tools/PolymarketSDK/cancelOrder.js +0 -6
  166. package/dist/constraint-runtime/src/tools/PolymarketSDK/createOrder.js +0 -6
  167. package/dist/constraint-runtime/src/tools/PolymarketSDK/getMarket.js +0 -5
  168. package/dist/constraint-runtime/src/tools/PolymarketSDK/getOrders.js +0 -6
  169. package/dist/constraint-runtime/src/tools/PolymarketSDK/listMarkets.js +0 -4
  170. package/dist/constraint-runtime/src/tools/SafeSDK/confirmTransaction.js +0 -6
  171. package/dist/constraint-runtime/src/tools/SafeSDK/createTransaction.js +0 -8
  172. package/dist/constraint-runtime/src/tools/SafeSDK/deploySafe.js +0 -6
  173. package/dist/constraint-runtime/src/tools/SafeSDK/executeTransaction.js +0 -6
  174. package/dist/constraint-runtime/src/tools/SafeSDK/getBalance.js +0 -6
  175. package/dist/constraint-runtime/src/tools/SafeSDK/getPendingTransactions.js +0 -6
  176. package/dist/constraint-runtime/src/tools/SafeSDK/proposeTransaction.js +0 -6
  177. package/dist/constraint-runtime/src/tools/WalletTools/autoPay.js +0 -29
  178. package/dist/constraint-runtime/src/tools/WalletTools/createWallet.js +0 -10
  179. package/dist/constraint-runtime/src/tools/WalletTools/getBalance.js +0 -13
  180. package/dist/constraint-runtime/src/tools/WalletTools/importWallet.js +0 -22
  181. package/dist/constraint-runtime/src/tools/WalletTools/sendTransaction.js +0 -25
  182. package/dist/constraint-runtime/src/tools/WalletTools/signMessage.js +0 -10
  183. package/dist/constraint-runtime/src/tools/WalletTools/transferToken.js +0 -25
  184. package/dist/constraint-runtime/src/tools.js +0 -80
  185. package/dist/constraint-runtime/src/transcript.js +0 -19
  186. package/dist/constraint-runtime/src/types/index.js +0 -12
  187. package/dist/constraint-runtime/src/upstream_proxy/index.js +0 -12
  188. package/dist/constraint-runtime/src/utils/index.js +0 -12
  189. package/dist/constraint-runtime/src/vim/index.js +0 -12
  190. package/dist/constraint-runtime/src/voice/index.js +0 -12
  191. package/dist/constraints/index.js.map +0 -1
  192. package/dist/documents/reader.js.map +0 -1
  193. package/dist/llm/config-store.js.map +0 -1
  194. package/dist/llm/pi-ai.js.map +0 -1
  195. package/dist/network/agent-network.js.map +0 -1
  196. package/dist/network/iroh-integration.js.map +0 -1
  197. package/dist/network/iroh-transport.js.map +0 -1
  198. package/dist/network/p2p.js.map +0 -1
  199. package/dist/network/storage/adapters/json-adapter.js.map +0 -1
  200. package/dist/pi-ecosystem-colony/index.js.map +0 -1
  201. package/dist/pi-ecosystem-goals/index.js.map +0 -1
  202. package/dist/pi-ecosystem-judgment/decision.js.map +0 -1
  203. package/dist/pi-ecosystem-judgment/distillation.js.map +0 -1
  204. package/dist/pi-ecosystem-judgment/human-value-store.js.map +0 -1
  205. package/dist/pi-ecosystem-judgment/index.js.map +0 -1
  206. package/dist/pi-ecosystem-judgment/value-injection.js.map +0 -1
  207. package/dist/pi-ecosystem-mcp/index.js.map +0 -1
  208. package/dist/pi-ecosystem-subagents/index.js.map +0 -1
  209. package/dist/social/ant-colony/AdaptiveHeartbeat.js.map +0 -1
  210. package/dist/social/ant-colony/PheromoneEngine.js.map +0 -1
  211. package/dist/social/ant-colony/types.js.map +0 -1
  212. package/dist/social/channels/ChannelManager.js.map +0 -1
  213. package/dist/social/channels/DiapChannelBridge.js.map +0 -1
  214. package/dist/social/channels/InterestMatcher.js.map +0 -1
  215. package/dist/social/channels/types.js.map +0 -1
  216. package/dist/social/global-shared-context.js.map +0 -1
  217. package/dist/social/heartbeat.js.map +0 -1
  218. package/lefthook.yml +0 -33
  219. package/scripts/auto-evolve-loop.ts +0 -481
  220. package/scripts/build-web.ts +0 -116
  221. package/scripts/diff-reviewer.ts +0 -159
  222. package/scripts/validate-system-prompt.ts +0 -142
  223. package/scripts/weekly-report.ts +0 -364
  224. package/src/agents/agent-manifest-protocol.ts +0 -117
  225. package/src/agents/constraint-layer.ts +0 -309
  226. package/src/agents/iroh-secret.ts +0 -32
  227. package/src/agents/p2p-chat-tools.ts +0 -383
  228. package/src/agents/p2p-document-tools.ts +0 -347
  229. package/src/agents/permission-mode.ts +0 -127
  230. package/src/agents/pi-sdk.ts +0 -2895
  231. package/src/agents/pre-tool-validator.ts +0 -213
  232. package/src/agents/protocol.ts +0 -398
  233. package/src/agents/shell-guard.ts +0 -417
  234. package/src/agents/shell-tool.ts +0 -103
  235. package/src/agents/skill-loader.ts +0 -202
  236. package/src/agents/subagent-manager.ts +0 -553
  237. package/src/agents/workflow-engine.ts +0 -332
  238. package/src/agents/workflow-pivot-loop.ts +0 -766
  239. package/src/bollharness/.sanitize-report.json +0 -13
  240. package/src/bollharness/CLAUDE.md +0 -73
  241. package/src/bollharness/LICENSE +0 -21
  242. package/src/bollharness/README.md +0 -143
  243. package/src/bollharness/README.zh-CN.md +0 -131
  244. package/src/bollharness/package.json +0 -20
  245. package/src/bollharness/reference/SOURCE-COMMIT.txt +0 -3
  246. package/src/bollharness/reference/boll-reference/scripts/hooks/.sanitize-report.json +0 -12
  247. package/src/bollharness/reference/boll-reference/scripts/hooks/find-boll-root.sh +0 -27
  248. package/src/bollharness/reference/boll-reference/scripts/hooks/precompact.sh +0 -57
  249. package/src/bollharness/reference/boll-reference/scripts/hooks/stop-evaluator.md +0 -57
  250. package/src/bollharness/schemas/metrics-jsonl-allowlist.json +0 -67
  251. package/src/bollharness/scripts/checks/next_decision_number.sh +0 -48
  252. package/src/bollharness/scripts/ci/count-components.sh +0 -65
  253. package/src/bollharness/scripts/context-fragments/artifact-linkage.md +0 -14
  254. package/src/bollharness/scripts/context-fragments/auth-consumers.md +0 -17
  255. package/src/bollharness/scripts/context-fragments/bridge-constitution.md +0 -13
  256. package/src/bollharness/scripts/context-fragments/catalyst-distributed.md +0 -18
  257. package/src/bollharness/scripts/context-fragments/closure-checklist.md +0 -13
  258. package/src/bollharness/scripts/context-fragments/contract-consumers.md +0 -15
  259. package/src/bollharness/scripts/context-fragments/db-shared-structures.md +0 -15
  260. package/src/bollharness/scripts/context-fragments/fixed-three-layers.md +0 -19
  261. package/src/bollharness/scripts/context-fragments/general-dev-principles.md +0 -11
  262. package/src/bollharness/scripts/context-fragments/issue-first.md +0 -8
  263. package/src/bollharness/scripts/context-fragments/mcp-parity.md +0 -16
  264. package/src/bollharness/scripts/context-fragments/pi-agent-operations.md +0 -108
  265. package/src/bollharness/scripts/context-fragments/protocol-consumers.md +0 -15
  266. package/src/bollharness/scripts/context-fragments/run-events-consumers.md +0 -15
  267. package/src/bollharness/scripts/context-fragments/scene-fidelity.md +0 -13
  268. package/src/bollharness/scripts/context-fragments/truth-source-hierarchy.md +0 -15
  269. package/src/bollharness/scripts/context-fragments/two-language.md +0 -15
  270. package/src/bollharness/scripts/context-fragments/version-sources.md +0 -14
  271. package/src/bollharness/scripts/hooks/find-project-root.sh +0 -47
  272. package/src/bollharness/scripts/hooks/inbox-poll.sh +0 -78
  273. package/src/bollharness/scripts/hooks/precompact.sh +0 -56
  274. package/src/bollharness/scripts/hooks/stop-evaluator.md +0 -83
  275. package/src/bollharness/scripts/sync-from-upstream.sh +0 -281
  276. package/src/bollharness/src/index.ts +0 -5
  277. package/src/bollharness/src/scripts/checks/check_adr_plan_numbering.ts +0 -11
  278. package/src/bollharness/src/scripts/checks/check_api_types.ts +0 -52
  279. package/src/bollharness/src/scripts/checks/check_artifact_link.ts +0 -156
  280. package/src/bollharness/src/scripts/checks/check_bridge_deps.ts +0 -11
  281. package/src/bollharness/src/scripts/checks/check_bugfix_binding.ts +0 -11
  282. package/src/bollharness/src/scripts/checks/check_bugfix_binding_ci.ts +0 -11
  283. package/src/bollharness/src/scripts/checks/check_doc_file_references.ts +0 -11
  284. package/src/bollharness/src/scripts/checks/check_doc_freshness.ts +0 -141
  285. package/src/bollharness/src/scripts/checks/check_doc_links.ts +0 -36
  286. package/src/bollharness/src/scripts/checks/check_file_existence_claims.ts +0 -11
  287. package/src/bollharness/src/scripts/checks/check_fragment_integrity.ts +0 -40
  288. package/src/bollharness/src/scripts/checks/check_hook_installed.ts +0 -70
  289. package/src/bollharness/src/scripts/checks/check_issue_closure.ts +0 -51
  290. package/src/bollharness/src/scripts/checks/check_mcp_parity.ts +0 -11
  291. package/src/bollharness/src/scripts/checks/check_security.ts +0 -54
  292. package/src/bollharness/src/scripts/checks/check_skill_parity.ts +0 -11
  293. package/src/bollharness/src/scripts/checks/check_versions.ts +0 -11
  294. package/src/bollharness/src/scripts/checks/finding.ts +0 -35
  295. package/src/bollharness/src/scripts/checks/next_decision_number.ts +0 -24
  296. package/src/bollharness/src/scripts/checks/regenerate_magic_docs.ts +0 -11
  297. package/src/bollharness/src/scripts/ci/detect_rebaseline_triggers.ts +0 -14
  298. package/src/bollharness/src/scripts/ci/scan_subprocess_cfg.ts +0 -14
  299. package/src/bollharness/src/scripts/ci/scan_verify_artifacts.ts +0 -14
  300. package/src/bollharness/src/scripts/ci/scan_yaml_schema.ts +0 -14
  301. package/src/bollharness/src/scripts/context_router.ts +0 -76
  302. package/src/bollharness/src/scripts/deploy-guard.ts +0 -182
  303. package/src/bollharness/src/scripts/guard-feedback.ts +0 -215
  304. package/src/bollharness/src/scripts/guard_router.ts +0 -194
  305. package/src/bollharness/src/scripts/hooks/_hook_output.js +0 -3
  306. package/src/bollharness/src/scripts/hooks/_hook_output.ts +0 -11
  307. package/src/bollharness/src/scripts/hooks/auto-python3.ts +0 -10
  308. package/src/bollharness/src/scripts/hooks/deploy-progress-on-session-end.ts +0 -10
  309. package/src/bollharness/src/scripts/hooks/failure-analyzer.ts +0 -10
  310. package/src/bollharness/src/scripts/hooks/gate-judgment-inject.ts +0 -111
  311. package/src/bollharness/src/scripts/hooks/gate-transition-judgment.ts +0 -74
  312. package/src/bollharness/src/scripts/hooks/inbox-ack.ts +0 -10
  313. package/src/bollharness/src/scripts/hooks/inbox-inject-on-start.ts +0 -10
  314. package/src/bollharness/src/scripts/hooks/inbox-validate.ts +0 -10
  315. package/src/bollharness/src/scripts/hooks/inbox-write-ledger.ts +0 -10
  316. package/src/bollharness/src/scripts/hooks/initializer-agent.ts +0 -10
  317. package/src/bollharness/src/scripts/hooks/loop-detection.ts +0 -83
  318. package/src/bollharness/src/scripts/hooks/owner-guard.ts +0 -10
  319. package/src/bollharness/src/scripts/hooks/precompact.ts +0 -10
  320. package/src/bollharness/src/scripts/hooks/review-agent-gatekeeper.ts +0 -10
  321. package/src/bollharness/src/scripts/hooks/risk-tracker.ts +0 -121
  322. package/src/bollharness/src/scripts/hooks/sanitize-on-read.ts +0 -10
  323. package/src/bollharness/src/scripts/hooks/session-reflection.ts +0 -12
  324. package/src/bollharness/src/scripts/hooks/session-start-magic-docs.ts +0 -12
  325. package/src/bollharness/src/scripts/hooks/session-start-reset-risk.ts +0 -12
  326. package/src/bollharness/src/scripts/hooks/session-start-toolkit-reminder.ts +0 -12
  327. package/src/bollharness/src/scripts/hooks/stop-evaluator.ts +0 -164
  328. package/src/bollharness/src/scripts/hooks/tool-call-counter.ts +0 -10
  329. package/src/bollharness/src/scripts/hooks/trace-analyzer.ts +0 -14
  330. package/src/bollharness/src/scripts/install/install-trust-token.ts +0 -13
  331. package/src/bollharness/src/scripts/install/multi_project_registry.ts +0 -13
  332. package/src/bollharness/src/scripts/install/phase2_auto.ts +0 -28
  333. package/src/bollharness/src/scripts/install/pre_commit_installer.ts +0 -10
  334. package/src/bollharness/src/scripts/install/tier_selector.ts +0 -10
  335. package/src/bollharness/src/scripts/install/transcript_miner.ts +0 -13
  336. package/src/bollharness/src/scripts/lib/claim_patterns.ts +0 -11
  337. package/src/bollharness/src/scripts/lib/sanitize_patterns.ts +0 -13
  338. package/src/bollharness/src/scripts/sanitize.ts +0 -9
  339. package/src/bollharness/templates/persona/default.json +0 -19
  340. package/src/bollharness/templates/scaffold/.gitignore.append +0 -16
  341. package/src/bollharness/templates/scaffold/CLAUDE.md +0 -89
  342. package/src/bollharness-integration/channel-judgment-engine.ts +0 -634
  343. package/src/bollharness-integration/context-chain-router.ts +0 -474
  344. package/src/bollharness-integration/context-router-judgment.ts +0 -339
  345. package/src/bollharness-integration/context-router.ts +0 -583
  346. package/src/bollharness-integration/gate-state-machine.ts +0 -444
  347. package/src/bollharness-integration/gate-transition-hooks.ts +0 -137
  348. package/src/bollharness-integration/guard-checker.ts +0 -451
  349. package/src/bollharness-integration/index.ts +0 -195
  350. package/src/bollharness-integration/integration.ts +0 -538
  351. package/src/bollharness-integration/judgment-prompts.yaml +0 -535
  352. package/src/bollharness-integration/llm-judgment-engine.ts +0 -712
  353. package/src/bollharness-integration/skill-adapter.ts +0 -646
  354. package/src/bootstrap/bootstrap.ts +0 -135
  355. package/src/bootstrap/context-collector.ts +0 -371
  356. package/src/bootstrap/context-hierarchy.ts +0 -283
  357. package/src/bootstrap/lifecycle-hooks.ts +0 -289
  358. package/src/bootstrap/project-context.ts +0 -171
  359. package/src/cli/interface.ts +0 -211
  360. package/src/cli-entry.ts +0 -304
  361. package/src/constraints/index.ts +0 -6
  362. package/src/context-compaction/auto-compact.ts +0 -153
  363. package/src/context-compaction/budget-gate.ts +0 -32
  364. package/src/context-compaction/budget-reduce.ts +0 -37
  365. package/src/context-compaction/context-collapse.ts +0 -72
  366. package/src/context-compaction/index.ts +0 -24
  367. package/src/context-compaction/microcompact.ts +0 -54
  368. package/src/context-compaction/pipeline.ts +0 -133
  369. package/src/context-compaction/snip.ts +0 -51
  370. package/src/context-compaction/token-estimator.ts +0 -36
  371. package/src/context-compaction/types.ts +0 -99
  372. package/src/documents/reader.ts +0 -85
  373. package/src/documents/store.ts +0 -252
  374. package/src/electron-preload.ts +0 -25
  375. package/src/electron.ts +0 -200
  376. package/src/heartbeat/DaemonManager.ts +0 -283
  377. package/src/heartbeat/HealthMonitor.ts +0 -317
  378. package/src/heartbeat/StartupVerifier.ts +0 -223
  379. package/src/heartbeat/Watchdog.ts +0 -208
  380. package/src/heartbeat/index.ts +0 -109
  381. package/src/heartbeat/self-improve-bus.ts +0 -110
  382. package/src/heartbeat/types.ts +0 -82
  383. package/src/index.ts +0 -1724
  384. package/src/llm/audio-config-store.ts +0 -246
  385. package/src/llm/config-store.ts +0 -400
  386. package/src/llm/llm-judgment-client.ts +0 -471
  387. package/src/llm/pi-ai.ts +0 -653
  388. package/src/llm/system-prompt/health.ts +0 -159
  389. package/src/llm/system-prompt/layers/channel/local.md +0 -14
  390. package/src/llm/system-prompt/layers/channel/p2p-agent.md +0 -18
  391. package/src/llm/system-prompt/layers/channel/p2p-visitor.md +0 -19
  392. package/src/llm/system-prompt/layers/core/artifacts_storage.md +0 -89
  393. package/src/llm/system-prompt/layers/core/evenhandedness.md +0 -21
  394. package/src/llm/system-prompt/layers/core/hibs_reminders.md +0 -15
  395. package/src/llm/system-prompt/layers/core/identity.md +0 -37
  396. package/src/llm/system-prompt/layers/core/knowledge.md +0 -17
  397. package/src/llm/system-prompt/layers/core/memory_system.md +0 -12
  398. package/src/llm/system-prompt/layers/core/network_filesystem.md +0 -28
  399. package/src/llm/system-prompt/layers/core/refusal.md +0 -37
  400. package/src/llm/system-prompt/layers/core/tone.md +0 -31
  401. package/src/llm/system-prompt/layers/core/tools.thin.md +0 -13
  402. package/src/llm/system-prompt/layers/core/wellbeing.md +0 -41
  403. package/src/llm/system-prompt/layers/role/architect.md +0 -20
  404. package/src/llm/system-prompt/layers/role/expert.md +0 -19
  405. package/src/llm/system-prompt/layers/role/implementer.md +0 -15
  406. package/src/llm/system-prompt/layers/role/security.md +0 -15
  407. package/src/llm/system-prompt/layers/tool/artifacts.md +0 -72
  408. package/src/llm/system-prompt/layers/tool/bash.md +0 -25
  409. package/src/llm/system-prompt/layers/tool/hibs_api.md +0 -171
  410. package/src/llm/system-prompt/layers/tool/image_search.md +0 -70
  411. package/src/llm/system-prompt/layers/tool/manifest.md +0 -89
  412. package/src/llm/system-prompt/layers/tool/mcp_apps.md +0 -53
  413. package/src/llm/system-prompt/layers/tool/web_search.md +0 -83
  414. package/src/llm/system-prompt/registry.ts +0 -325
  415. package/src/llm/system-prompt/strip-hibsml.ts +0 -52
  416. package/src/llm/tool-manifest/ask_user_input.ts +0 -37
  417. package/src/llm/tool-manifest/bash.ts +0 -25
  418. package/src/llm/tool-manifest/create_file.ts +0 -26
  419. package/src/llm/tool-manifest/fetch_sports_data.ts +0 -28
  420. package/src/llm/tool-manifest/image_search.ts +0 -26
  421. package/src/llm/tool-manifest/index.ts +0 -88
  422. package/src/llm/tool-manifest/mcp.ts +0 -46
  423. package/src/llm/tool-manifest/message_compose.ts +0 -33
  424. package/src/llm/tool-manifest/places.ts +0 -86
  425. package/src/llm/tool-manifest/present_files.ts +0 -23
  426. package/src/llm/tool-manifest/recipe.ts +0 -42
  427. package/src/llm/tool-manifest/recommend_apps.ts +0 -25
  428. package/src/llm/tool-manifest/str_replace.ts +0 -29
  429. package/src/llm/tool-manifest/types.ts +0 -52
  430. package/src/llm/tool-manifest/view.ts +0 -26
  431. package/src/llm/tool-manifest/weather.ts +0 -29
  432. package/src/llm/tool-manifest/web.ts +0 -54
  433. package/src/llm/video-config-store.ts +0 -257
  434. package/src/network/agent-network.ts +0 -800
  435. package/src/network/hybrid-messenger.ts +0 -199
  436. package/src/network/iroh-bootstrap.ts +0 -57
  437. package/src/network/iroh-discovery.ts +0 -208
  438. package/src/network/iroh-integration.ts +0 -158
  439. package/src/network/iroh-transport.ts +0 -637
  440. package/src/network/known-peers.ts +0 -102
  441. package/src/network/p2p-direct.ts +0 -262
  442. package/src/network/p2p-secret.ts +0 -153
  443. package/src/network/p2p.ts +0 -964
  444. package/src/network/source-intent-broadcaster.ts +0 -242
  445. package/src/network/source-intent.ts +0 -167
  446. package/src/network/storage/adapters/json-adapter.ts +0 -454
  447. package/src/network/storage/index.ts +0 -203
  448. package/src/network/storage/types.ts +0 -166
  449. package/src/security/builtin-guards.ts +0 -162
  450. package/src/security/context-router-tool.ts +0 -122
  451. package/src/security/input-scanner.ts +0 -287
  452. package/src/security/react-harness.ts +0 -177
  453. package/src/security/tool-gate.ts +0 -294
  454. package/src/social/ant-colony/index.js +0 -19
  455. package/src/social/channels/ChannelManager.ts +0 -485
  456. package/src/social/channels/DiapChannelBridge.ts +0 -501
  457. package/src/social/channels/InterestMatcher.ts +0 -189
  458. package/src/social/channels/agent-workflow-config.json +0 -214
  459. package/src/social/channels/agent-workflow-config.yaml +0 -334
  460. package/src/social/channels/channel-agent-session.ts +0 -407
  461. package/src/social/channels/channel-heartbeat-agent.ts +0 -622
  462. package/src/social/channels/diap-doc-parser.ts +0 -282
  463. package/src/social/channels/harness-workflow-integrator.ts +0 -594
  464. package/src/social/channels/index.ts +0 -22
  465. package/src/social/channels/types.ts +0 -115
  466. package/src/social/global-shared-context.ts +0 -506
  467. package/src/social/heartbeat.ts +0 -1057
  468. package/src/social/persona/enhanced-persona.ts +0 -359
  469. package/src/types.d.ts +0 -12
  470. package/src/utils/auto-evolve-policy.ts +0 -138
  471. package/src/utils/auto-update.ts +0 -482
  472. package/src/utils/clamp.ts +0 -5
  473. package/src/web/agent-delegate-server.ts +0 -148
  474. package/src/web/api-config.html +0 -520
  475. package/src/web/client.js +0 -2352
  476. package/src/web/client.ts +0 -4326
  477. package/src/web/components/p2p/P2PModal.tsx +0 -416
  478. package/src/web/components/p2p/index.ts +0 -566
  479. package/src/web/components/p2p/index.tsx +0 -297
  480. package/src/web/components/p2p/p2p-connection.ts +0 -338
  481. package/src/web/components/p2p/p2p-identity.ts +0 -92
  482. package/src/web/components/p2p/p2p-manager.ts +0 -147
  483. package/src/web/components/p2p/p2p-messages.ts +0 -219
  484. package/src/web/components/p2p/p2p-modal.ts +0 -685
  485. package/src/web/components/p2p/p2p-store-memory.ts +0 -162
  486. package/src/web/components/p2p/p2p-tools.ts +0 -315
  487. package/src/web/components/p2p/types.ts +0 -170
  488. package/src/web/components/wallet-viem.mjs +0 -118
  489. package/src/web/design.md +0 -99
  490. package/src/web/icons/apple-touch-icon.png +0 -0
  491. package/src/web/icons/favicon-16x16.png +0 -0
  492. package/src/web/icons/favicon-192x192.png +0 -0
  493. package/src/web/icons/favicon-32x32.png +0 -0
  494. package/src/web/icons/favicon-48x48.png +0 -0
  495. package/src/web/icons/favicon-512x512.png +0 -0
  496. package/src/web/icons/favicon.icns +0 -0
  497. package/src/web/icons/favicon.ico +0 -0
  498. package/src/web/icons/icon.png +0 -0
  499. package/src/web/icons/image.png +0 -0
  500. package/src/web/index.html +0 -373
  501. package/src/web/iroh-delegate-transport.ts +0 -139
  502. package/src/web/manifest.json +0 -21
  503. package/src/web/server.ts +0 -5731
  504. package/src/web/style.css +0 -4737
  505. package/src/web/ui/message-renderer.ts +0 -540
  506. package/src/web/ui/step-timeline.ts +0 -394
  507. package/staging/auto-evolve/clean-001/.review-verdict +0 -9
  508. package/staging/auto-evolve/clean-001/clean-001.patch +0 -14
  509. package/staging/auto-evolve/e2e-001/.patch-id +0 -1
  510. package/staging/auto-evolve/e2e-001/.review-verdict +0 -12
  511. package/staging/auto-evolve/e2e-001/e2e-001.patch +0 -11
  512. package/staging/auto-evolve/test-bad/.review-verdict +0 -12
  513. package/staging/auto-evolve/test-bad/test-bad.patch +0 -11
  514. package/test-results/.last-run.json +0 -6
  515. package/test-results/src-test-web-loop-status-b-5734c-atus-bar-/346/230/276/347/244/272-spinner-/344/270/215/346/230/276/347/244/272/345/276/252/347/216/257/350/256/241/346/225/260/error-context.md +0 -285
  516. package/tsconfig.cli.json +0 -16
  517. package/tsconfig.electron.json +0 -20
  518. package/tsconfig.json +0 -18
@@ -1,634 +0,0 @@
1
- /**
2
- * Channel Judgment Engine - 基于 Prompt 注入的判断力引擎
3
- *
4
- * 改进:
5
- * - 不使用硬编码关键词匹配
6
- * - 使用微量 Prompt 注入实现精细化判断
7
- * - 集成 LLM 判断和快速判断两种模式
8
- *
9
- * Prompt 注入机制:
10
- * 1. 基础 Context - 提供判断框架
11
- * 2. 动态 Prompt - 根据场景注入不同上下文
12
- * 3. 约束 Prompt - 限制输出格式
13
- */
14
-
15
- import type { Gate } from './gate-state-machine.js';
16
-
17
- export interface JudgmentContext {
18
- conversationHistory: string[];
19
- currentMessage: string;
20
- senderName?: string;
21
- senderDid?: string;
22
- channelId?: string;
23
- topic?: string;
24
- }
25
-
26
- export interface JudgmentResult {
27
- shouldCall: boolean;
28
- gate: Gate;
29
- skills: string[];
30
- reason: string;
31
- result: string;
32
- confidence: number; // 置信度 0-1
33
- approach?: 'answer' | 'analyze' | 'design' | 'implement' | 'coordinate';
34
- }
35
-
36
- // ============================================================
37
- // Prompt 模板 - 可配置化
38
- // ============================================================
39
-
40
- export const JUDGMENT_PROMPTS = {
41
- // 判断系统 Prompt
42
- system: `你是一个专业的 AI 任务分析专家。你的职责是基于用户输入和对话上下文,
43
- 判断是否需要调用 Harness(多智能体协作框架)。
44
-
45
- 你需要分析:
46
- 1. 用户问题的本质
47
- 2. 需要的处理深度
48
- 3. 是否需要 Harness 介入
49
-
50
- 判断原则:
51
- - 优先理解意图,而非匹配关键词
52
- - 考虑对话上下文的连续性
53
- - 评估问题的真实复杂性
54
- - 选择最合适的处理方式`,
55
-
56
- // 判断 User Prompt 模板
57
- userTemplate: `【当前输入】
58
- {current_message}
59
-
60
- 【对话历史】
61
- {history}
62
-
63
- 【发送者】
64
- {sender_name}
65
-
66
- 请判断:
67
- 1. 这个输入是否需要 Harness 介入?
68
- 2. 如果需要,应该调用哪个 Gate?
69
- 3. 应该使用哪些 Skills?
70
- 4. 判断的理由是什么?
71
-
72
- 请用 JSON 格式输出:
73
- {
74
- "shouldCall": true/false,
75
- "gate": 0-8,
76
- "skills": ["skill1", "skill2"],
77
- "reason": "判断理由",
78
- "confidence": 0.0-1.0,
79
- "approach": "answer/analyze/design/implement/coordinate"
80
- }`,
81
-
82
- // 快速判断 Prompt(不依赖 LLM)
83
- quickTemplate: `分析输入: {message}
84
- 判断是否需要 Harness。`
85
- };
86
-
87
- // ============================================================
88
- // Skill Prompt 模板
89
- // ============================================================
90
-
91
- export const SKILL_PROMPTS = {
92
- arch: {
93
- name: '架构师',
94
- prompt: `你是一个资深架构师。请分析:{question}
95
-
96
- 关注:
97
- - 本质问题是什么
98
- - 涉及哪些架构维度
99
- - 推荐什么架构模式
100
- - 有什么风险`
101
- },
102
-
103
- 'guardian-fixer': {
104
- name: '审查专家',
105
- prompt: `你是一个严格的代码审查专家。请分析:{question}
106
-
107
- 关注:
108
- - 潜在问题
109
- - 改进建议
110
- - 质量风险
111
- - 最佳实践`
112
- },
113
-
114
- 'harness-eng': {
115
- name: '工程协调',
116
- prompt: `你是一个高效的工程协调专家。请分析:{question}
117
-
118
- 关注:
119
- - 任务分解
120
- - 协作方式
121
- - 进度管理
122
- - 风险管理`
123
- },
124
-
125
- 'harness-dev': {
126
- name: '开发专家',
127
- prompt: `你是一个高效的代码实现专家。请分析:{question}
128
-
129
- 关注:
130
- - 实现方案
131
- - 代码质量
132
- - 测试策略
133
- - 边界情况`
134
- },
135
-
136
- 'harness-eng-test': {
137
- name: '测试专家',
138
- prompt: `你是一个全面的测试工程专家。请分析:{question}
139
-
140
- 关注:
141
- - 测试策略
142
- - 测试覆盖
143
- - 自动化方案
144
- - 质量指标`
145
- },
146
-
147
- 'task-arch': {
148
- name: '任务架构',
149
- prompt: `你是一个专业的任务架构师。请分析:{question}
150
-
151
- 关注:
152
- - 任务分解
153
- - 依赖关系
154
- - 执行顺序
155
- - 验收标准`
156
- },
157
-
158
- lead: {
159
- name: '流程统领',
160
- prompt: `你是一个严格的流程管理专家。请分析:{question}
161
-
162
- 关注:
163
- - 当前处于哪个 Gate
164
- - 是否满足入口条件
165
- - 需要什么产物
166
- - 如何推进流程`
167
- },
168
-
169
- 'crystal-learn': {
170
- name: '反思学习',
171
- prompt: `你是一个深度反思专家。请分析:{question}
172
-
173
- 关注:
174
- - 经验总结
175
- - 不变量提取
176
- - 跨场景泛化
177
- - 改进建议`
178
- }
179
- };
180
-
181
- // ============================================================
182
- // Gate 映射 Prompt(替代硬编码关键词)
183
- // ============================================================
184
-
185
- export const GATE_PROMPTS = {
186
- 1: {
187
- name: '架构设计',
188
- trigger: '涉及系统设计、架构选择、技术方案',
189
- skills: ['arch', 'lead']
190
- },
191
- 2: {
192
- name: '代码审查',
193
- trigger: '涉及代码检查、review、审核、质量评估',
194
- skills: ['guardian-fixer', 'arch']
195
- },
196
- 4: {
197
- name: '安全检查',
198
- trigger: '涉及安全、权限、认证、加密',
199
- skills: ['guardian-fixer', 'arch']
200
- },
201
- 5: {
202
- name: '任务分解',
203
- trigger: '涉及任务规划、分解、分配',
204
- skills: ['task-arch', 'crystal-learn']
205
- },
206
- 7: {
207
- name: '代码实现',
208
- trigger: '涉及代码编写、实现、开发',
209
- skills: ['harness-eng', 'harness-dev']
210
- },
211
- 8: {
212
- name: '测试验证',
213
- trigger: '涉及测试、验证、部署',
214
- skills: ['harness-eng', 'harness-eng-test']
215
- }
216
- };
217
-
218
- // ============================================================
219
- // 判断引擎实现
220
- // ============================================================
221
-
222
- export class ChannelJudgmentEngine {
223
- private contextHistory: string[] = [];
224
- private gateHistory: Gate[] = [];
225
- private lastDecision: JudgmentResult | null = null;
226
- private useLLM: boolean;
227
-
228
- constructor(options?: { useLLM?: boolean }) {
229
- this.useLLM = options?.useLLM ?? false;
230
- }
231
-
232
- /**
233
- * 启用 LLM 判断模式
234
- */
235
- enableLLM(): void {
236
- this.useLLM = true;
237
- }
238
-
239
- /**
240
- * 禁用 LLM 判断模式
241
- */
242
- disableLLM(): void {
243
- this.useLLM = false;
244
- }
245
-
246
- /**
247
- * 重置引擎状态
248
- */
249
- reset(): void {
250
- this.contextHistory = [];
251
- this.gateHistory = [];
252
- this.lastDecision = null;
253
- }
254
-
255
- /**
256
- * 主判断方法
257
- */
258
- async decide(context: JudgmentContext): Promise<JudgmentResult> {
259
- const { conversationHistory, currentMessage } = context;
260
-
261
- // 添加到历史
262
- this.contextHistory.push(currentMessage);
263
- if (this.contextHistory.length > 20) {
264
- this.contextHistory.shift();
265
- }
266
-
267
- // 使用 LLM 判断(如果有配置)
268
- if (this.useLLM) {
269
- try {
270
- return await this.llmDecide(context);
271
- } catch (e) {
272
- console.warn('[JudgmentEngine] LLM decision failed, falling back to quick:', e);
273
- }
274
- }
275
-
276
- // 快速判断(不依赖 LLM)
277
- return this.quickDecide(context);
278
- }
279
-
280
- /**
281
- * LLM 判断(需要集成 LLM)
282
- */
283
- private async llmDecide(context: JudgmentContext): Promise<JudgmentResult> {
284
- // 构建 prompt
285
- const historyStr = context.conversationHistory
286
- .slice(-5)
287
- .map((m, i) => `[${i}]: ${m}`)
288
- .join('\n');
289
-
290
- const prompt = JUDGMENT_PROMPTS.userTemplate
291
- .replace('{current_message}', context.currentMessage)
292
- .replace('{history}', historyStr || '无')
293
- .replace('{sender_name}', context.senderName || 'Unknown');
294
-
295
- // TODO: 调用 LLM
296
- // 这里需要集成 llmConfigStore
297
- // const result = await llmConfigStore.chat([...])
298
-
299
- throw new Error('LLM integration not implemented');
300
- }
301
-
302
- /**
303
- * 快速判断(基于 Prompt 注入的轻量级判断)
304
- * 不使用硬编码关键词,而是基于语义理解
305
- */
306
- private quickDecide(context: JudgmentContext): JudgmentResult {
307
- const { conversationHistory, currentMessage } = context;
308
- const lower = currentMessage.toLowerCase();
309
- const fullContext = conversationHistory.join(' ').toLowerCase();
310
-
311
- // ========================================
312
- // Prompt 注入式判断
313
- // ========================================
314
-
315
- // 1. 检查是否需要调用 Harness
316
- const needsHarness = this.evaluateNeedsHarness(context);
317
- if (!needsHarness.shouldCall) {
318
- return {
319
- shouldCall: false,
320
- gate: 0,
321
- skills: [],
322
- reason: needsHarness.reason,
323
- result: '',
324
- confidence: needsHarness.confidence
325
- };
326
- }
327
-
328
- // 2. 确定 Gate
329
- const gateDecision = this.determineGate(context);
330
- this.gateHistory.push(gateDecision.gate);
331
-
332
- // 3. 确定 Skills
333
- const skills = this.determineSkills(gateDecision.gate, context);
334
-
335
- // 4. 生成结果
336
- return {
337
- shouldCall: true,
338
- gate: gateDecision.gate,
339
- skills,
340
- reason: gateDecision.reason,
341
- result: this.generateResult(gateDecision.gate, skills),
342
- confidence: gateDecision.confidence,
343
- approach: gateDecision.approach
344
- };
345
- }
346
-
347
- /**
348
- * 评估是否需要调用 Harness
349
- * 使用 Prompt 注入而非硬编码关键词
350
- */
351
- private evaluateNeedsHarness(context: JudgmentContext): {
352
- shouldCall: boolean;
353
- reason: string;
354
- confidence: number;
355
- } {
356
- const { currentMessage, conversationHistory } = context;
357
- const lower = currentMessage.toLowerCase();
358
-
359
- // 上下文敏感性检测
360
- const hasContextHistory = conversationHistory.length > 0;
361
- const lastMessage = hasContextHistory
362
- ? conversationHistory[conversationHistory.length - 1].toLowerCase()
363
- : '';
364
-
365
- // ========================================
366
- // Prompt 注入的判断逻辑
367
- // ========================================
368
-
369
- // 检测模式1:询问"为什么" - 需要深度分析
370
- if (lower.includes('为什么') || lower.includes('原因')) {
371
- return {
372
- shouldCall: true,
373
- reason: '探索性问题,需要深度分析',
374
- confidence: 0.8
375
- };
376
- }
377
-
378
- // 检测模式2:涉及设计/架构 - 需要架构分析
379
- if (this.matchesPattern(lower, ['设计', '架构', '方案', '架构设计', '系统架构'])) {
380
- return {
381
- shouldCall: true,
382
- reason: '架构相关问题,需要 Harness 介入',
383
- confidence: 0.9
384
- };
385
- }
386
-
387
- // 检测模式3:代码审查
388
- if (this.matchesPattern(lower, ['review', '审查', '检查', '代码审查', '审核'])) {
389
- return {
390
- shouldCall: true,
391
- reason: '代码审查,需要 Guardian-Fixer',
392
- confidence: 0.85
393
- };
394
- }
395
-
396
- // 检测模式4:任务分解
397
- if (this.matchesPattern(lower, ['任务', '分解', '分配', '计划', '规划'])) {
398
- return {
399
- shouldCall: true,
400
- reason: '任务规划,需要 Task-Arch',
401
- confidence: 0.8
402
- };
403
- }
404
-
405
- // 检测模式5:实现/编码
406
- if (this.matchesPattern(lower, ['实现', '写代码', '开发', '编码', '编写'])) {
407
- return {
408
- shouldCall: true,
409
- reason: '代码实现,需要 Harness-Dev',
410
- confidence: 0.75
411
- };
412
- }
413
-
414
- // 检测模式6:测试/验证
415
- if (this.matchesPattern(lower, ['测试', '验证', '检查', '自动化'])) {
416
- return {
417
- shouldCall: true,
418
- reason: '测试验证,需要 Harness-Test',
419
- confidence: 0.8
420
- };
421
- }
422
-
423
- // 检测模式7:安全问题
424
- if (this.matchesPattern(lower, ['安全', '权限', '认证', '加密', 'JWT', 'OAuth'])) {
425
- return {
426
- shouldCall: true,
427
- reason: '安全问题,需要 Guardian-Fixer',
428
- confidence: 0.9
429
- };
430
- }
431
-
432
- // 检测模式8:上下文连续性 - 如果上轮调用了 Harness
433
- if (hasContextHistory && this.lastDecision?.shouldCall) {
434
- const lastGate = this.lastDecision.gate;
435
-
436
- // 检测继续信号
437
- if (this.matchesPattern(lower, ['继续', '完成', '下一步', '然后', '接着'])) {
438
- // 继续推进 Gate
439
- return {
440
- shouldCall: true,
441
- reason: `继续上一阶段 Gate ${lastGate}`,
442
- confidence: 0.7
443
- };
444
- }
445
- }
446
-
447
- // 默认:不需要 Harness
448
- return {
449
- shouldCall: false,
450
- reason: '普通对话,无需 Harness',
451
- confidence: 0.6
452
- };
453
- }
454
-
455
- /**
456
- * 确定 Gate(基于 Prompt 注入)
457
- */
458
- private determineGate(context: JudgmentContext): {
459
- gate: Gate;
460
- reason: string;
461
- confidence: number;
462
- approach: JudgmentResult['approach'];
463
- } {
464
- const { conversationHistory, currentMessage } = context;
465
- const lower = currentMessage.toLowerCase();
466
- const fullContext = conversationHistory.join(' ').toLowerCase();
467
-
468
- // Gate 优先级判断(从高到低)
469
-
470
- // Gate 4: 安全问题
471
- if (this.matchesPattern(lower, ['安全', '权限', '认证', '加密'])) {
472
- return { gate: 4, reason: '安全问题', confidence: 0.85, approach: 'analyze' };
473
- }
474
-
475
- // Gate 1: 架构设计
476
- if (this.matchesPattern(lower, ['架构', '设计', '方案']) && !this.matchesPattern(lower, ['review', '审查'])) {
477
- return { gate: 1, reason: '架构设计', confidence: 0.85, approach: 'design' };
478
- }
479
-
480
- // Gate 2: 代码审查
481
- if (this.matchesPattern(lower, ['review', '审查', '检查', '审核'])) {
482
- return { gate: 2, reason: '代码审查', confidence: 0.8, approach: 'analyze' };
483
- }
484
-
485
- // Gate 5: 任务分解
486
- if (this.matchesPattern(lower, ['任务', '分解', '分配', '计划'])) {
487
- return { gate: 5, reason: '任务分解', confidence: 0.8, approach: 'coordinate' };
488
- }
489
-
490
- // Gate 7: 代码实现
491
- if (this.matchesPattern(lower, ['实现', '写代码', '开发', '编码'])) {
492
- return { gate: 7, reason: '代码实现', confidence: 0.75, approach: 'implement' };
493
- }
494
-
495
- // Gate 8: 测试验证
496
- if (this.matchesPattern(lower, ['测试', '验证', '部署'])) {
497
- return { gate: 8, reason: '测试验证', confidence: 0.8, approach: 'analyze' };
498
- }
499
-
500
- // 默认:基于上下文的合理推断
501
- return { gate: 1, reason: '默认架构设计', confidence: 0.5, approach: 'design' };
502
- }
503
-
504
- /**
505
- * 确定 Skills(基于 Gate 和上下文)
506
- */
507
- private determineSkills(gate: Gate, context: JudgmentContext): string[] {
508
- const baseSkills = (GATE_PROMPTS as Record<number, { skills: string[] }>)[gate]?.skills || ['arch'];
509
-
510
- // 根据上下文调整 Skills
511
- const { currentMessage } = context;
512
- const lower = currentMessage.toLowerCase();
513
-
514
- const skills = [...baseSkills];
515
-
516
- // 如果涉及安全问题,添加 guardian-fixer
517
- if (lower.includes('安全') || lower.includes('权限')) {
518
- if (!skills.includes('guardian-fixer')) {
519
- skills.push('guardian-fixer');
520
- }
521
- }
522
-
523
- // 如果是复杂任务,添加 harness-eng
524
- if (context.conversationHistory.length > 3) {
525
- if (!skills.includes('harness-eng')) {
526
- skills.push('harness-eng');
527
- }
528
- }
529
-
530
- return skills;
531
- }
532
-
533
- /**
534
- * 模式匹配(支持语义相似)
535
- */
536
- private matchesPattern(text: string, patterns: string[]): boolean {
537
- return patterns.some(p => text.includes(p));
538
- }
539
-
540
- /**
541
- * 生成 Harness 结果
542
- */
543
- private generateResult(gate: Gate, skills: string[]): string {
544
- const results: Record<Gate, string> = {
545
- 0: '',
546
- 1: '建议采用分层架构:表现层、业务层、数据层分离',
547
- 2: '建议添加输入验证和错误处理',
548
- 3: '',
549
- 4: '建议实现 JWT token 过期和刷新机制',
550
- 5: '已分解为可执行的子任务',
551
- 6: '',
552
- 7: '建议使用策略模式重构业务逻辑',
553
- 8: '测试覆盖率目标 80%,优先测试核心业务'
554
- };
555
-
556
- return `[Gate ${gate}] ${results[gate] || 'Harness 分析完成'}`;
557
- }
558
-
559
- // ========================================
560
- // 辅助方法
561
- // ========================================
562
-
563
- getGateHistory(): Gate[] {
564
- return [...this.gateHistory];
565
- }
566
-
567
- getLastGate(): Gate {
568
- return this.gateHistory.length > 0
569
- ? this.gateHistory[this.gateHistory.length - 1]
570
- : 0;
571
- }
572
-
573
- getLastDecision(): JudgmentResult | null {
574
- return this.lastDecision;
575
- }
576
-
577
- generateNaturalResponse(): string[] {
578
- return [
579
- '好的,明白。',
580
- '我理解了,继续。',
581
- '没问题,我们继续。',
582
- '明白,让我看看...',
583
- '收到,我会处理的。',
584
- '好的,这个信息很有用。'
585
- ];
586
- }
587
-
588
- getGateResponses(gate: Gate): string[] {
589
- const responses: Record<Gate, string[]> = {
590
- 1: [
591
- '关于架构设计,Harness 分析建议采用分层架构。',
592
- 'Harness Gate 1 分析完成,建议使用依赖注入降低耦合。',
593
- ],
594
- 2: [
595
- '代码审查完成,Harness 建议添加输入验证。',
596
- 'Gate 2 审查结果:建议添加 JSDoc 注释。',
597
- ],
598
- 4: [
599
- '安全检查完成,建议实现 JWT token 过期机制。',
600
- 'Harness Gate 4 建议使用 HTTPS 加密传输。',
601
- ],
602
- 5: [
603
- '任务已分解为 4 个子任务。',
604
- 'Harness Gate 5 分解完成。',
605
- ],
606
- 7: [
607
- 'Harness 建议使用策略模式重构。',
608
- 'Gate 7 分析:建议添加缓存机制。',
609
- ],
610
- 8: [
611
- '测试策略制定完成,目标覆盖率 80%。',
612
- 'Harness Gate 8:建议先写单元测试。',
613
- ],
614
- 0: [],
615
- 3: [],
616
- 6: []
617
- };
618
- return responses[gate] || [];
619
- }
620
- }
621
-
622
- // 单例
623
- let instance: ChannelJudgmentEngine | null = null;
624
-
625
- export function createChannelJudgmentEngine(options?: { useLLM?: boolean }): ChannelJudgmentEngine {
626
- return new ChannelJudgmentEngine(options);
627
- }
628
-
629
- export function getChannelJudgmentEngine(): ChannelJudgmentEngine {
630
- if (!instance) {
631
- instance = new ChannelJudgmentEngine();
632
- }
633
- return instance;
634
- }