@bolloon/bolloon-agent 0.1.36 → 0.1.37

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 (530) hide show
  1. package/dist/web/client.js +2861 -3746
  2. package/dist/web/components/p2p/index.js +226 -264
  3. package/dist/web/ui/message-renderer.js +323 -434
  4. package/dist/web/ui/step-timeline.js +255 -351
  5. package/package.json +2 -2
  6. package/.auto-evolve-calls +0 -1
  7. package/.last-auto-evolve-baseline +0 -1
  8. package/.playwright-mcp/page-2026-06-16T07-51-45-706Z.yml +0 -130
  9. package/.playwright-mcp/page-2026-06-16T07-56-44-116Z.yml +0 -131
  10. package/Bolloon.md +0 -144
  11. package/Dive-into/CITATION.cff +0 -17
  12. package/Dive-into/LICENSE +0 -25
  13. package/Dive-into/README.md +0 -598
  14. package/Dive-into/README_zh.md +0 -599
  15. package/Dive-into/assets/context.png +0 -0
  16. package/Dive-into/assets/extensibility.png +0 -0
  17. package/Dive-into/assets/iteration.png +0 -0
  18. package/Dive-into/assets/layered_architecture.png +0 -0
  19. package/Dive-into/assets/main_structure.png +0 -0
  20. package/Dive-into/assets/permission.png +0 -0
  21. package/Dive-into/assets/session_compact.png +0 -0
  22. package/Dive-into/assets/subagent.png +0 -0
  23. package/Dive-into/paper/Dive_into_Claude_Code.pdf +0 -0
  24. package/dist/agents/constraint-layer.js.map +0 -1
  25. package/dist/agents/pi-sdk.js.map +0 -1
  26. package/dist/agents/workflow-engine.js.map +0 -1
  27. package/dist/bollharness/src/index.js +0 -5
  28. package/dist/bollharness/src/scripts/checks/check_adr_plan_numbering.js +0 -6
  29. package/dist/bollharness/src/scripts/checks/check_api_types.js +0 -45
  30. package/dist/bollharness/src/scripts/checks/check_artifact_link.js +0 -146
  31. package/dist/bollharness/src/scripts/checks/check_bridge_deps.js +0 -6
  32. package/dist/bollharness/src/scripts/checks/check_bugfix_binding.js +0 -6
  33. package/dist/bollharness/src/scripts/checks/check_bugfix_binding_ci.js +0 -6
  34. package/dist/bollharness/src/scripts/checks/check_doc_file_references.js +0 -6
  35. package/dist/bollharness/src/scripts/checks/check_doc_freshness.js +0 -135
  36. package/dist/bollharness/src/scripts/checks/check_doc_links.js +0 -31
  37. package/dist/bollharness/src/scripts/checks/check_file_existence_claims.js +0 -6
  38. package/dist/bollharness/src/scripts/checks/check_fragment_integrity.js +0 -34
  39. package/dist/bollharness/src/scripts/checks/check_hook_installed.js +0 -63
  40. package/dist/bollharness/src/scripts/checks/check_issue_closure.js +0 -41
  41. package/dist/bollharness/src/scripts/checks/check_mcp_parity.js +0 -6
  42. package/dist/bollharness/src/scripts/checks/check_security.js +0 -48
  43. package/dist/bollharness/src/scripts/checks/check_skill_parity.js +0 -6
  44. package/dist/bollharness/src/scripts/checks/check_versions.js +0 -6
  45. package/dist/bollharness/src/scripts/checks/finding.js +0 -13
  46. package/dist/bollharness/src/scripts/checks/next_decision_number.js +0 -20
  47. package/dist/bollharness/src/scripts/checks/regenerate_magic_docs.js +0 -6
  48. package/dist/bollharness/src/scripts/ci/detect_rebaseline_triggers.js +0 -8
  49. package/dist/bollharness/src/scripts/ci/scan_subprocess_cfg.js +0 -8
  50. package/dist/bollharness/src/scripts/ci/scan_verify_artifacts.js +0 -8
  51. package/dist/bollharness/src/scripts/ci/scan_yaml_schema.js +0 -8
  52. package/dist/bollharness/src/scripts/context_router.js +0 -67
  53. package/dist/bollharness/src/scripts/deploy-guard.js +0 -157
  54. package/dist/bollharness/src/scripts/guard-feedback.js +0 -192
  55. package/dist/bollharness/src/scripts/guard_router.js +0 -158
  56. package/dist/bollharness/src/scripts/hooks/_hook_output.js +0 -6
  57. package/dist/bollharness/src/scripts/hooks/auto-python3.js +0 -6
  58. package/dist/bollharness/src/scripts/hooks/deploy-progress-on-session-end.js +0 -6
  59. package/dist/bollharness/src/scripts/hooks/failure-analyzer.js +0 -6
  60. package/dist/bollharness/src/scripts/hooks/gate-judgment-inject.js +0 -92
  61. package/dist/bollharness/src/scripts/hooks/gate-transition-judgment.js +0 -63
  62. package/dist/bollharness/src/scripts/hooks/inbox-ack.js +0 -6
  63. package/dist/bollharness/src/scripts/hooks/inbox-inject-on-start.js +0 -6
  64. package/dist/bollharness/src/scripts/hooks/inbox-validate.js +0 -6
  65. package/dist/bollharness/src/scripts/hooks/inbox-write-ledger.js +0 -6
  66. package/dist/bollharness/src/scripts/hooks/initializer-agent.js +0 -6
  67. package/dist/bollharness/src/scripts/hooks/loop-detection.js +0 -73
  68. package/dist/bollharness/src/scripts/hooks/owner-guard.js +0 -6
  69. package/dist/bollharness/src/scripts/hooks/precompact.js +0 -6
  70. package/dist/bollharness/src/scripts/hooks/review-agent-gatekeeper.js +0 -6
  71. package/dist/bollharness/src/scripts/hooks/risk-tracker.js +0 -108
  72. package/dist/bollharness/src/scripts/hooks/sanitize-on-read.js +0 -6
  73. package/dist/bollharness/src/scripts/hooks/session-reflection.js +0 -7
  74. package/dist/bollharness/src/scripts/hooks/session-start-magic-docs.js +0 -7
  75. package/dist/bollharness/src/scripts/hooks/session-start-reset-risk.js +0 -7
  76. package/dist/bollharness/src/scripts/hooks/session-start-toolkit-reminder.js +0 -7
  77. package/dist/bollharness/src/scripts/hooks/stop-evaluator.js +0 -157
  78. package/dist/bollharness/src/scripts/hooks/tool-call-counter.js +0 -6
  79. package/dist/bollharness/src/scripts/hooks/trace-analyzer.js +0 -10
  80. package/dist/bollharness/src/scripts/install/install-trust-token.js +0 -7
  81. package/dist/bollharness/src/scripts/install/multi_project_registry.js +0 -9
  82. package/dist/bollharness/src/scripts/install/phase2_auto.js +0 -21
  83. package/dist/bollharness/src/scripts/install/pre_commit_installer.js +0 -6
  84. package/dist/bollharness/src/scripts/install/tier_selector.js +0 -7
  85. package/dist/bollharness/src/scripts/install/transcript_miner.js +0 -7
  86. package/dist/bollharness/src/scripts/lib/claim_patterns.js +0 -10
  87. package/dist/bollharness/src/scripts/lib/sanitize_patterns.js +0 -12
  88. package/dist/bollharness/src/scripts/sanitize.js +0 -6
  89. package/dist/bollharness-integration/context-router-judgment.js.map +0 -1
  90. package/dist/bollharness-integration/context-router.js.map +0 -1
  91. package/dist/bollharness-integration/gate-state-machine.js.map +0 -1
  92. package/dist/bollharness-integration/gate-transition-hooks.js.map +0 -1
  93. package/dist/bollharness-integration/guard-checker.js.map +0 -1
  94. package/dist/bollharness-integration/index.js.map +0 -1
  95. package/dist/bollharness-integration/integration.js.map +0 -1
  96. package/dist/bollharness-integration/llm/pi-ai.d.ts +0 -60
  97. package/dist/bollharness-integration/pi-ecosystem-colony/index.d.ts +0 -153
  98. package/dist/bollharness-integration/pi-ecosystem-goals/index.d.ts +0 -136
  99. package/dist/bollharness-integration/pi-ecosystem-judgment/decision.d.ts +0 -117
  100. package/dist/bollharness-integration/pi-ecosystem-judgment/distillation.d.ts +0 -78
  101. package/dist/bollharness-integration/pi-ecosystem-judgment/index.d.ts +0 -139
  102. package/dist/bollharness-integration/pi-ecosystem-mcp/index.d.ts +0 -127
  103. package/dist/bollharness-integration/pi-ecosystem-subagents/index.d.ts +0 -95
  104. package/dist/bollharness-integration/skill-adapter.js.map +0 -1
  105. package/dist/constraint-runtime/src/_archive_helper.js +0 -9
  106. package/dist/constraint-runtime/src/agent/coordinator.js +0 -48
  107. package/dist/constraint-runtime/src/agent/index.js +0 -1
  108. package/dist/constraint-runtime/src/assistant/index.js +0 -12
  109. package/dist/constraint-runtime/src/bootstrap/index.js +0 -12
  110. package/dist/constraint-runtime/src/bootstrap_graph.js +0 -13
  111. package/dist/constraint-runtime/src/bridge/index.js +0 -12
  112. package/dist/constraint-runtime/src/buddy/index.js +0 -12
  113. package/dist/constraint-runtime/src/cli/index.js +0 -12
  114. package/dist/constraint-runtime/src/command_graph.js +0 -10
  115. package/dist/constraint-runtime/src/commands.js +0 -60
  116. package/dist/constraint-runtime/src/components/index.js +0 -12
  117. package/dist/constraint-runtime/src/constants/index.js +0 -12
  118. package/dist/constraint-runtime/src/constraint/budget.js +0 -22
  119. package/dist/constraint-runtime/src/constraint/budget.js.map +0 -1
  120. package/dist/constraint-runtime/src/constraint/index.js +0 -2
  121. package/dist/constraint-runtime/src/constraint/permission.js +0 -20
  122. package/dist/constraint-runtime/src/constraint/permission.js.map +0 -1
  123. package/dist/constraint-runtime/src/context.js +0 -30
  124. package/dist/constraint-runtime/src/coordinator/index.js +0 -12
  125. package/dist/constraint-runtime/src/cost_hook.js +0 -4
  126. package/dist/constraint-runtime/src/cost_tracker.js +0 -8
  127. package/dist/constraint-runtime/src/deferred_init.js +0 -10
  128. package/dist/constraint-runtime/src/direct_modes.js +0 -6
  129. package/dist/constraint-runtime/src/dynamic-tool-loader.js +0 -85
  130. package/dist/constraint-runtime/src/entrypoints/index.js +0 -12
  131. package/dist/constraint-runtime/src/execution_registry.js +0 -44
  132. package/dist/constraint-runtime/src/history.js +0 -9
  133. package/dist/constraint-runtime/src/hooks/index.js +0 -12
  134. package/dist/constraint-runtime/src/index.js +0 -26
  135. package/dist/constraint-runtime/src/ink.js +0 -4
  136. package/dist/constraint-runtime/src/keybindings/index.js +0 -12
  137. package/dist/constraint-runtime/src/memdir/index.js +0 -12
  138. package/dist/constraint-runtime/src/migrations/index.js +0 -12
  139. package/dist/constraint-runtime/src/models.js +0 -1
  140. package/dist/constraint-runtime/src/models.js.map +0 -1
  141. package/dist/constraint-runtime/src/moreright/index.js +0 -12
  142. package/dist/constraint-runtime/src/native_ts/index.js +0 -12
  143. package/dist/constraint-runtime/src/output_styles/index.js +0 -12
  144. package/dist/constraint-runtime/src/parity_audit.js +0 -12
  145. package/dist/constraint-runtime/src/plugins/index.js +0 -12
  146. package/dist/constraint-runtime/src/port_manifest.js +0 -11
  147. package/dist/constraint-runtime/src/prefetch.js +0 -9
  148. package/dist/constraint-runtime/src/query.js +0 -1
  149. package/dist/constraint-runtime/src/remote/index.js +0 -12
  150. package/dist/constraint-runtime/src/remote_runtime.js +0 -9
  151. package/dist/constraint-runtime/src/runtime/index.js +0 -1
  152. package/dist/constraint-runtime/src/runtime/session.js +0 -35
  153. package/dist/constraint-runtime/src/schemas/index.js +0 -12
  154. package/dist/constraint-runtime/src/screens/index.js +0 -12
  155. package/dist/constraint-runtime/src/server/index.js +0 -12
  156. package/dist/constraint-runtime/src/services/index.js +0 -12
  157. package/dist/constraint-runtime/src/session_store.js +0 -22
  158. package/dist/constraint-runtime/src/setup.js +0 -30
  159. package/dist/constraint-runtime/src/skills/index.js +0 -1
  160. package/dist/constraint-runtime/src/skills/skill-registry.js +0 -28
  161. package/dist/constraint-runtime/src/state/index.js +0 -12
  162. package/dist/constraint-runtime/src/system_init.js +0 -20
  163. package/dist/constraint-runtime/src/thinking/engine.js +0 -42
  164. package/dist/constraint-runtime/src/thinking/index.js +0 -1
  165. package/dist/constraint-runtime/src/tool_pool.js +0 -8
  166. package/dist/constraint-runtime/src/tools/OpenCLI/execAdapter.js +0 -7
  167. package/dist/constraint-runtime/src/tools/OpenCLI/listAdapters.js +0 -7
  168. package/dist/constraint-runtime/src/tools/OpenCLI/runCommand.js +0 -7
  169. package/dist/constraint-runtime/src/tools/PolymarketSDK/cancelOrder.js +0 -6
  170. package/dist/constraint-runtime/src/tools/PolymarketSDK/createOrder.js +0 -6
  171. package/dist/constraint-runtime/src/tools/PolymarketSDK/getMarket.js +0 -5
  172. package/dist/constraint-runtime/src/tools/PolymarketSDK/getOrders.js +0 -6
  173. package/dist/constraint-runtime/src/tools/PolymarketSDK/listMarkets.js +0 -4
  174. package/dist/constraint-runtime/src/tools/SafeSDK/confirmTransaction.js +0 -6
  175. package/dist/constraint-runtime/src/tools/SafeSDK/createTransaction.js +0 -8
  176. package/dist/constraint-runtime/src/tools/SafeSDK/deploySafe.js +0 -6
  177. package/dist/constraint-runtime/src/tools/SafeSDK/executeTransaction.js +0 -6
  178. package/dist/constraint-runtime/src/tools/SafeSDK/getBalance.js +0 -6
  179. package/dist/constraint-runtime/src/tools/SafeSDK/getPendingTransactions.js +0 -6
  180. package/dist/constraint-runtime/src/tools/SafeSDK/proposeTransaction.js +0 -6
  181. package/dist/constraint-runtime/src/tools/WalletTools/autoPay.js +0 -29
  182. package/dist/constraint-runtime/src/tools/WalletTools/createWallet.js +0 -10
  183. package/dist/constraint-runtime/src/tools/WalletTools/getBalance.js +0 -13
  184. package/dist/constraint-runtime/src/tools/WalletTools/importWallet.js +0 -22
  185. package/dist/constraint-runtime/src/tools/WalletTools/sendTransaction.js +0 -25
  186. package/dist/constraint-runtime/src/tools/WalletTools/signMessage.js +0 -10
  187. package/dist/constraint-runtime/src/tools/WalletTools/transferToken.js +0 -25
  188. package/dist/constraint-runtime/src/tools.js +0 -80
  189. package/dist/constraint-runtime/src/transcript.js +0 -19
  190. package/dist/constraint-runtime/src/types/index.js +0 -12
  191. package/dist/constraint-runtime/src/upstream_proxy/index.js +0 -12
  192. package/dist/constraint-runtime/src/utils/index.js +0 -12
  193. package/dist/constraint-runtime/src/vim/index.js +0 -12
  194. package/dist/constraint-runtime/src/voice/index.js +0 -12
  195. package/dist/constraints/index.js.map +0 -1
  196. package/dist/documents/reader.js.map +0 -1
  197. package/dist/llm/config-store.js.map +0 -1
  198. package/dist/llm/pi-ai.js.map +0 -1
  199. package/dist/network/agent-network.js.map +0 -1
  200. package/dist/network/iroh-integration.js.map +0 -1
  201. package/dist/network/iroh-transport.js.map +0 -1
  202. package/dist/network/p2p.js.map +0 -1
  203. package/dist/network/storage/adapters/json-adapter.js.map +0 -1
  204. package/dist/pi-ecosystem-colony/index.js.map +0 -1
  205. package/dist/pi-ecosystem-goals/index.js.map +0 -1
  206. package/dist/pi-ecosystem-judgment/decision.js.map +0 -1
  207. package/dist/pi-ecosystem-judgment/distillation.js.map +0 -1
  208. package/dist/pi-ecosystem-judgment/human-value-store.js.map +0 -1
  209. package/dist/pi-ecosystem-judgment/index.js.map +0 -1
  210. package/dist/pi-ecosystem-judgment/value-injection.js.map +0 -1
  211. package/dist/pi-ecosystem-mcp/index.js.map +0 -1
  212. package/dist/pi-ecosystem-subagents/index.js.map +0 -1
  213. package/dist/social/ant-colony/AdaptiveHeartbeat.js.map +0 -1
  214. package/dist/social/ant-colony/PheromoneEngine.js.map +0 -1
  215. package/dist/social/ant-colony/types.js.map +0 -1
  216. package/dist/social/channels/ChannelManager.js.map +0 -1
  217. package/dist/social/channels/DiapChannelBridge.js.map +0 -1
  218. package/dist/social/channels/InterestMatcher.js.map +0 -1
  219. package/dist/social/channels/types.js.map +0 -1
  220. package/dist/social/global-shared-context.js.map +0 -1
  221. package/dist/social/heartbeat.js.map +0 -1
  222. package/dist/web/components/p2p/P2PModal.js +0 -188
  223. package/dist/web/components/p2p/p2p-modal.js +0 -657
  224. package/dist/web/components/p2p/p2p-tools.js +0 -248
  225. package/lefthook.yml +0 -33
  226. package/scripts/auto-evolve-loop.ts +0 -481
  227. package/scripts/auto-evolve-oneshot.sh +0 -155
  228. package/scripts/auto-evolve-snapshot.sh +0 -136
  229. package/scripts/build-cli.js +0 -216
  230. package/scripts/build-web.ts +0 -116
  231. package/scripts/detect-schema-changes.sh +0 -48
  232. package/scripts/diff-reviewer.ts +0 -159
  233. package/scripts/postinstall.js +0 -153
  234. package/scripts/validate-system-prompt.ts +0 -142
  235. package/scripts/weekly-report.ts +0 -364
  236. package/src/agents/agent-manifest-protocol.ts +0 -117
  237. package/src/agents/constraint-layer.ts +0 -309
  238. package/src/agents/iroh-secret.ts +0 -32
  239. package/src/agents/p2p-chat-tools.ts +0 -383
  240. package/src/agents/p2p-document-tools.ts +0 -347
  241. package/src/agents/permission-mode.ts +0 -127
  242. package/src/agents/pi-sdk.ts +0 -2895
  243. package/src/agents/pre-tool-validator.ts +0 -213
  244. package/src/agents/protocol.ts +0 -398
  245. package/src/agents/shell-guard.ts +0 -417
  246. package/src/agents/shell-tool.ts +0 -103
  247. package/src/agents/skill-loader.ts +0 -202
  248. package/src/agents/subagent-manager.ts +0 -553
  249. package/src/agents/workflow-engine.ts +0 -332
  250. package/src/agents/workflow-pivot-loop.ts +0 -766
  251. package/src/bollharness/.sanitize-report.json +0 -13
  252. package/src/bollharness/CLAUDE.md +0 -73
  253. package/src/bollharness/LICENSE +0 -21
  254. package/src/bollharness/README.md +0 -143
  255. package/src/bollharness/README.zh-CN.md +0 -131
  256. package/src/bollharness/package.json +0 -20
  257. package/src/bollharness/reference/SOURCE-COMMIT.txt +0 -3
  258. package/src/bollharness/reference/boll-reference/scripts/hooks/.sanitize-report.json +0 -12
  259. package/src/bollharness/reference/boll-reference/scripts/hooks/find-boll-root.sh +0 -27
  260. package/src/bollharness/reference/boll-reference/scripts/hooks/precompact.sh +0 -57
  261. package/src/bollharness/reference/boll-reference/scripts/hooks/stop-evaluator.md +0 -57
  262. package/src/bollharness/schemas/metrics-jsonl-allowlist.json +0 -67
  263. package/src/bollharness/scripts/checks/next_decision_number.sh +0 -48
  264. package/src/bollharness/scripts/ci/count-components.sh +0 -65
  265. package/src/bollharness/scripts/context-fragments/artifact-linkage.md +0 -14
  266. package/src/bollharness/scripts/context-fragments/auth-consumers.md +0 -17
  267. package/src/bollharness/scripts/context-fragments/bridge-constitution.md +0 -13
  268. package/src/bollharness/scripts/context-fragments/catalyst-distributed.md +0 -18
  269. package/src/bollharness/scripts/context-fragments/closure-checklist.md +0 -13
  270. package/src/bollharness/scripts/context-fragments/contract-consumers.md +0 -15
  271. package/src/bollharness/scripts/context-fragments/db-shared-structures.md +0 -15
  272. package/src/bollharness/scripts/context-fragments/fixed-three-layers.md +0 -19
  273. package/src/bollharness/scripts/context-fragments/general-dev-principles.md +0 -11
  274. package/src/bollharness/scripts/context-fragments/issue-first.md +0 -8
  275. package/src/bollharness/scripts/context-fragments/mcp-parity.md +0 -16
  276. package/src/bollharness/scripts/context-fragments/pi-agent-operations.md +0 -108
  277. package/src/bollharness/scripts/context-fragments/protocol-consumers.md +0 -15
  278. package/src/bollharness/scripts/context-fragments/run-events-consumers.md +0 -15
  279. package/src/bollharness/scripts/context-fragments/scene-fidelity.md +0 -13
  280. package/src/bollharness/scripts/context-fragments/truth-source-hierarchy.md +0 -15
  281. package/src/bollharness/scripts/context-fragments/two-language.md +0 -15
  282. package/src/bollharness/scripts/context-fragments/version-sources.md +0 -14
  283. package/src/bollharness/scripts/hooks/find-project-root.sh +0 -47
  284. package/src/bollharness/scripts/hooks/inbox-poll.sh +0 -78
  285. package/src/bollharness/scripts/hooks/precompact.sh +0 -56
  286. package/src/bollharness/scripts/hooks/stop-evaluator.md +0 -83
  287. package/src/bollharness/scripts/sync-from-upstream.sh +0 -281
  288. package/src/bollharness/src/index.ts +0 -5
  289. package/src/bollharness/src/scripts/checks/check_adr_plan_numbering.ts +0 -11
  290. package/src/bollharness/src/scripts/checks/check_api_types.ts +0 -52
  291. package/src/bollharness/src/scripts/checks/check_artifact_link.ts +0 -156
  292. package/src/bollharness/src/scripts/checks/check_bridge_deps.ts +0 -11
  293. package/src/bollharness/src/scripts/checks/check_bugfix_binding.ts +0 -11
  294. package/src/bollharness/src/scripts/checks/check_bugfix_binding_ci.ts +0 -11
  295. package/src/bollharness/src/scripts/checks/check_doc_file_references.ts +0 -11
  296. package/src/bollharness/src/scripts/checks/check_doc_freshness.ts +0 -141
  297. package/src/bollharness/src/scripts/checks/check_doc_links.ts +0 -36
  298. package/src/bollharness/src/scripts/checks/check_file_existence_claims.ts +0 -11
  299. package/src/bollharness/src/scripts/checks/check_fragment_integrity.ts +0 -40
  300. package/src/bollharness/src/scripts/checks/check_hook_installed.ts +0 -70
  301. package/src/bollharness/src/scripts/checks/check_issue_closure.ts +0 -51
  302. package/src/bollharness/src/scripts/checks/check_mcp_parity.ts +0 -11
  303. package/src/bollharness/src/scripts/checks/check_security.ts +0 -54
  304. package/src/bollharness/src/scripts/checks/check_skill_parity.ts +0 -11
  305. package/src/bollharness/src/scripts/checks/check_versions.ts +0 -11
  306. package/src/bollharness/src/scripts/checks/finding.ts +0 -35
  307. package/src/bollharness/src/scripts/checks/next_decision_number.ts +0 -24
  308. package/src/bollharness/src/scripts/checks/regenerate_magic_docs.ts +0 -11
  309. package/src/bollharness/src/scripts/ci/detect_rebaseline_triggers.ts +0 -14
  310. package/src/bollharness/src/scripts/ci/scan_subprocess_cfg.ts +0 -14
  311. package/src/bollharness/src/scripts/ci/scan_verify_artifacts.ts +0 -14
  312. package/src/bollharness/src/scripts/ci/scan_yaml_schema.ts +0 -14
  313. package/src/bollharness/src/scripts/context_router.ts +0 -76
  314. package/src/bollharness/src/scripts/deploy-guard.ts +0 -182
  315. package/src/bollharness/src/scripts/guard-feedback.ts +0 -215
  316. package/src/bollharness/src/scripts/guard_router.ts +0 -194
  317. package/src/bollharness/src/scripts/hooks/_hook_output.js +0 -3
  318. package/src/bollharness/src/scripts/hooks/_hook_output.ts +0 -11
  319. package/src/bollharness/src/scripts/hooks/auto-python3.ts +0 -10
  320. package/src/bollharness/src/scripts/hooks/deploy-progress-on-session-end.ts +0 -10
  321. package/src/bollharness/src/scripts/hooks/failure-analyzer.ts +0 -10
  322. package/src/bollharness/src/scripts/hooks/gate-judgment-inject.ts +0 -111
  323. package/src/bollharness/src/scripts/hooks/gate-transition-judgment.ts +0 -74
  324. package/src/bollharness/src/scripts/hooks/inbox-ack.ts +0 -10
  325. package/src/bollharness/src/scripts/hooks/inbox-inject-on-start.ts +0 -10
  326. package/src/bollharness/src/scripts/hooks/inbox-validate.ts +0 -10
  327. package/src/bollharness/src/scripts/hooks/inbox-write-ledger.ts +0 -10
  328. package/src/bollharness/src/scripts/hooks/initializer-agent.ts +0 -10
  329. package/src/bollharness/src/scripts/hooks/loop-detection.ts +0 -83
  330. package/src/bollharness/src/scripts/hooks/owner-guard.ts +0 -10
  331. package/src/bollharness/src/scripts/hooks/precompact.ts +0 -10
  332. package/src/bollharness/src/scripts/hooks/review-agent-gatekeeper.ts +0 -10
  333. package/src/bollharness/src/scripts/hooks/risk-tracker.ts +0 -121
  334. package/src/bollharness/src/scripts/hooks/sanitize-on-read.ts +0 -10
  335. package/src/bollharness/src/scripts/hooks/session-reflection.ts +0 -12
  336. package/src/bollharness/src/scripts/hooks/session-start-magic-docs.ts +0 -12
  337. package/src/bollharness/src/scripts/hooks/session-start-reset-risk.ts +0 -12
  338. package/src/bollharness/src/scripts/hooks/session-start-toolkit-reminder.ts +0 -12
  339. package/src/bollharness/src/scripts/hooks/stop-evaluator.ts +0 -164
  340. package/src/bollharness/src/scripts/hooks/tool-call-counter.ts +0 -10
  341. package/src/bollharness/src/scripts/hooks/trace-analyzer.ts +0 -14
  342. package/src/bollharness/src/scripts/install/install-trust-token.ts +0 -13
  343. package/src/bollharness/src/scripts/install/multi_project_registry.ts +0 -13
  344. package/src/bollharness/src/scripts/install/phase2_auto.ts +0 -28
  345. package/src/bollharness/src/scripts/install/pre_commit_installer.ts +0 -10
  346. package/src/bollharness/src/scripts/install/tier_selector.ts +0 -10
  347. package/src/bollharness/src/scripts/install/transcript_miner.ts +0 -13
  348. package/src/bollharness/src/scripts/lib/claim_patterns.ts +0 -11
  349. package/src/bollharness/src/scripts/lib/sanitize_patterns.ts +0 -13
  350. package/src/bollharness/src/scripts/sanitize.ts +0 -9
  351. package/src/bollharness/templates/persona/default.json +0 -19
  352. package/src/bollharness/templates/scaffold/.gitignore.append +0 -16
  353. package/src/bollharness/templates/scaffold/CLAUDE.md +0 -89
  354. package/src/bollharness-integration/channel-judgment-engine.ts +0 -634
  355. package/src/bollharness-integration/context-chain-router.ts +0 -474
  356. package/src/bollharness-integration/context-router-judgment.ts +0 -339
  357. package/src/bollharness-integration/context-router.ts +0 -583
  358. package/src/bollharness-integration/gate-state-machine.ts +0 -444
  359. package/src/bollharness-integration/gate-transition-hooks.ts +0 -137
  360. package/src/bollharness-integration/guard-checker.ts +0 -451
  361. package/src/bollharness-integration/index.ts +0 -195
  362. package/src/bollharness-integration/integration.ts +0 -538
  363. package/src/bollharness-integration/judgment-prompts.yaml +0 -535
  364. package/src/bollharness-integration/llm-judgment-engine.ts +0 -712
  365. package/src/bollharness-integration/skill-adapter.ts +0 -646
  366. package/src/bootstrap/bootstrap.ts +0 -135
  367. package/src/bootstrap/context-collector.ts +0 -371
  368. package/src/bootstrap/context-hierarchy.ts +0 -283
  369. package/src/bootstrap/lifecycle-hooks.ts +0 -289
  370. package/src/bootstrap/project-context.ts +0 -171
  371. package/src/cli/interface.ts +0 -211
  372. package/src/cli-entry.ts +0 -304
  373. package/src/constraints/index.ts +0 -6
  374. package/src/context-compaction/auto-compact.ts +0 -153
  375. package/src/context-compaction/budget-gate.ts +0 -32
  376. package/src/context-compaction/budget-reduce.ts +0 -37
  377. package/src/context-compaction/context-collapse.ts +0 -72
  378. package/src/context-compaction/index.ts +0 -24
  379. package/src/context-compaction/microcompact.ts +0 -54
  380. package/src/context-compaction/pipeline.ts +0 -133
  381. package/src/context-compaction/snip.ts +0 -51
  382. package/src/context-compaction/token-estimator.ts +0 -36
  383. package/src/context-compaction/types.ts +0 -99
  384. package/src/documents/reader.ts +0 -85
  385. package/src/documents/store.ts +0 -252
  386. package/src/electron-preload.ts +0 -25
  387. package/src/electron.ts +0 -200
  388. package/src/heartbeat/DaemonManager.ts +0 -283
  389. package/src/heartbeat/HealthMonitor.ts +0 -317
  390. package/src/heartbeat/StartupVerifier.ts +0 -223
  391. package/src/heartbeat/Watchdog.ts +0 -208
  392. package/src/heartbeat/index.ts +0 -109
  393. package/src/heartbeat/self-improve-bus.ts +0 -110
  394. package/src/heartbeat/types.ts +0 -82
  395. package/src/index.ts +0 -1724
  396. package/src/llm/audio-config-store.ts +0 -246
  397. package/src/llm/config-store.ts +0 -400
  398. package/src/llm/llm-judgment-client.ts +0 -471
  399. package/src/llm/pi-ai.ts +0 -653
  400. package/src/llm/system-prompt/health.ts +0 -159
  401. package/src/llm/system-prompt/layers/channel/local.md +0 -14
  402. package/src/llm/system-prompt/layers/channel/p2p-agent.md +0 -18
  403. package/src/llm/system-prompt/layers/channel/p2p-visitor.md +0 -19
  404. package/src/llm/system-prompt/layers/core/artifacts_storage.md +0 -89
  405. package/src/llm/system-prompt/layers/core/evenhandedness.md +0 -21
  406. package/src/llm/system-prompt/layers/core/hibs_reminders.md +0 -15
  407. package/src/llm/system-prompt/layers/core/identity.md +0 -37
  408. package/src/llm/system-prompt/layers/core/knowledge.md +0 -17
  409. package/src/llm/system-prompt/layers/core/memory_system.md +0 -12
  410. package/src/llm/system-prompt/layers/core/network_filesystem.md +0 -28
  411. package/src/llm/system-prompt/layers/core/refusal.md +0 -37
  412. package/src/llm/system-prompt/layers/core/tone.md +0 -31
  413. package/src/llm/system-prompt/layers/core/tools.thin.md +0 -13
  414. package/src/llm/system-prompt/layers/core/wellbeing.md +0 -41
  415. package/src/llm/system-prompt/layers/role/architect.md +0 -20
  416. package/src/llm/system-prompt/layers/role/expert.md +0 -19
  417. package/src/llm/system-prompt/layers/role/implementer.md +0 -15
  418. package/src/llm/system-prompt/layers/role/security.md +0 -15
  419. package/src/llm/system-prompt/layers/tool/artifacts.md +0 -72
  420. package/src/llm/system-prompt/layers/tool/bash.md +0 -25
  421. package/src/llm/system-prompt/layers/tool/hibs_api.md +0 -171
  422. package/src/llm/system-prompt/layers/tool/image_search.md +0 -70
  423. package/src/llm/system-prompt/layers/tool/manifest.md +0 -89
  424. package/src/llm/system-prompt/layers/tool/mcp_apps.md +0 -53
  425. package/src/llm/system-prompt/layers/tool/web_search.md +0 -83
  426. package/src/llm/system-prompt/registry.ts +0 -325
  427. package/src/llm/system-prompt/strip-hibsml.ts +0 -52
  428. package/src/llm/tool-manifest/ask_user_input.ts +0 -37
  429. package/src/llm/tool-manifest/bash.ts +0 -25
  430. package/src/llm/tool-manifest/create_file.ts +0 -26
  431. package/src/llm/tool-manifest/fetch_sports_data.ts +0 -28
  432. package/src/llm/tool-manifest/image_search.ts +0 -26
  433. package/src/llm/tool-manifest/index.ts +0 -88
  434. package/src/llm/tool-manifest/mcp.ts +0 -46
  435. package/src/llm/tool-manifest/message_compose.ts +0 -33
  436. package/src/llm/tool-manifest/places.ts +0 -86
  437. package/src/llm/tool-manifest/present_files.ts +0 -23
  438. package/src/llm/tool-manifest/recipe.ts +0 -42
  439. package/src/llm/tool-manifest/recommend_apps.ts +0 -25
  440. package/src/llm/tool-manifest/str_replace.ts +0 -29
  441. package/src/llm/tool-manifest/types.ts +0 -52
  442. package/src/llm/tool-manifest/view.ts +0 -26
  443. package/src/llm/tool-manifest/weather.ts +0 -29
  444. package/src/llm/tool-manifest/web.ts +0 -54
  445. package/src/llm/video-config-store.ts +0 -257
  446. package/src/network/agent-network.ts +0 -800
  447. package/src/network/hybrid-messenger.ts +0 -199
  448. package/src/network/iroh-bootstrap.ts +0 -57
  449. package/src/network/iroh-discovery.ts +0 -208
  450. package/src/network/iroh-integration.ts +0 -158
  451. package/src/network/iroh-transport.ts +0 -637
  452. package/src/network/known-peers.ts +0 -102
  453. package/src/network/p2p-direct.ts +0 -262
  454. package/src/network/p2p-secret.ts +0 -153
  455. package/src/network/p2p.ts +0 -964
  456. package/src/network/source-intent-broadcaster.ts +0 -242
  457. package/src/network/source-intent.ts +0 -167
  458. package/src/network/storage/adapters/json-adapter.ts +0 -454
  459. package/src/network/storage/index.ts +0 -203
  460. package/src/network/storage/types.ts +0 -166
  461. package/src/security/builtin-guards.ts +0 -162
  462. package/src/security/context-router-tool.ts +0 -122
  463. package/src/security/input-scanner.ts +0 -287
  464. package/src/security/react-harness.ts +0 -177
  465. package/src/security/tool-gate.ts +0 -294
  466. package/src/social/ant-colony/index.js +0 -19
  467. package/src/social/channels/ChannelManager.ts +0 -485
  468. package/src/social/channels/DiapChannelBridge.ts +0 -501
  469. package/src/social/channels/InterestMatcher.ts +0 -189
  470. package/src/social/channels/agent-workflow-config.json +0 -214
  471. package/src/social/channels/agent-workflow-config.yaml +0 -334
  472. package/src/social/channels/channel-agent-session.ts +0 -407
  473. package/src/social/channels/channel-heartbeat-agent.ts +0 -622
  474. package/src/social/channels/diap-doc-parser.ts +0 -282
  475. package/src/social/channels/harness-workflow-integrator.ts +0 -594
  476. package/src/social/channels/index.ts +0 -22
  477. package/src/social/channels/types.ts +0 -115
  478. package/src/social/global-shared-context.ts +0 -506
  479. package/src/social/heartbeat.ts +0 -1057
  480. package/src/social/persona/enhanced-persona.ts +0 -359
  481. package/src/types.d.ts +0 -12
  482. package/src/utils/auto-evolve-policy.ts +0 -138
  483. package/src/utils/auto-update.ts +0 -482
  484. package/src/utils/clamp.ts +0 -5
  485. package/src/web/agent-delegate-server.ts +0 -148
  486. package/src/web/api-config.html +0 -520
  487. package/src/web/client.js +0 -2352
  488. package/src/web/client.ts +0 -4326
  489. package/src/web/components/p2p/P2PModal.tsx +0 -416
  490. package/src/web/components/p2p/index.ts +0 -566
  491. package/src/web/components/p2p/index.tsx +0 -297
  492. package/src/web/components/p2p/p2p-connection.ts +0 -338
  493. package/src/web/components/p2p/p2p-identity.ts +0 -92
  494. package/src/web/components/p2p/p2p-manager.ts +0 -147
  495. package/src/web/components/p2p/p2p-messages.ts +0 -219
  496. package/src/web/components/p2p/p2p-modal.ts +0 -685
  497. package/src/web/components/p2p/p2p-store-memory.ts +0 -162
  498. package/src/web/components/p2p/p2p-tools.ts +0 -315
  499. package/src/web/components/p2p/types.ts +0 -170
  500. package/src/web/components/wallet-viem.mjs +0 -118
  501. package/src/web/design.md +0 -99
  502. package/src/web/icons/apple-touch-icon.png +0 -0
  503. package/src/web/icons/favicon-16x16.png +0 -0
  504. package/src/web/icons/favicon-192x192.png +0 -0
  505. package/src/web/icons/favicon-32x32.png +0 -0
  506. package/src/web/icons/favicon-48x48.png +0 -0
  507. package/src/web/icons/favicon-512x512.png +0 -0
  508. package/src/web/icons/favicon.icns +0 -0
  509. package/src/web/icons/favicon.ico +0 -0
  510. package/src/web/icons/icon.png +0 -0
  511. package/src/web/icons/image.png +0 -0
  512. package/src/web/index.html +0 -373
  513. package/src/web/iroh-delegate-transport.ts +0 -139
  514. package/src/web/manifest.json +0 -21
  515. package/src/web/server.ts +0 -5731
  516. package/src/web/style.css +0 -4737
  517. package/src/web/ui/message-renderer.ts +0 -540
  518. package/src/web/ui/step-timeline.ts +0 -394
  519. package/staging/auto-evolve/clean-001/.review-verdict +0 -9
  520. package/staging/auto-evolve/clean-001/clean-001.patch +0 -14
  521. package/staging/auto-evolve/e2e-001/.patch-id +0 -1
  522. package/staging/auto-evolve/e2e-001/.review-verdict +0 -12
  523. package/staging/auto-evolve/e2e-001/e2e-001.patch +0 -11
  524. package/staging/auto-evolve/test-bad/.review-verdict +0 -12
  525. package/staging/auto-evolve/test-bad/test-bad.patch +0 -11
  526. package/test-results/.last-run.json +0 -6
  527. 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
  528. package/tsconfig.cli.json +0 -16
  529. package/tsconfig.electron.json +0 -20
  530. 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
- }