@bolloon/bolloon-agent 0.1.0 → 0.1.2

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 (581) hide show
  1. package/bin/bolloon-cli.cjs +157 -0
  2. package/bin/bolloon-daemon.sh +207 -0
  3. package/bin/bolloon.cmd +11 -0
  4. package/dist/agents/constraint-layer.js +10 -15
  5. package/dist/agents/pi-sdk.js +433 -106
  6. package/dist/agents/protocol.js +82 -1
  7. package/dist/agents/subagent-manager.js +2 -2
  8. package/dist/agents/workflow-engine.js +15 -20
  9. package/dist/agents/workflow-pivot-loop.js +541 -0
  10. package/dist/bollharness/src/index.js +5 -0
  11. package/dist/bollharness/src/scripts/checks/check_adr_plan_numbering.js +6 -0
  12. package/dist/bollharness/src/scripts/checks/check_api_types.js +45 -0
  13. package/dist/bollharness/src/scripts/checks/check_artifact_link.js +146 -0
  14. package/dist/bollharness/src/scripts/checks/check_bridge_deps.js +6 -0
  15. package/dist/bollharness/src/scripts/checks/check_bugfix_binding.js +6 -0
  16. package/dist/bollharness/src/scripts/checks/check_bugfix_binding_ci.js +6 -0
  17. package/dist/bollharness/src/scripts/checks/check_doc_file_references.js +6 -0
  18. package/dist/bollharness/src/scripts/checks/check_doc_freshness.js +135 -0
  19. package/dist/bollharness/src/scripts/checks/check_doc_links.js +31 -0
  20. package/dist/bollharness/src/scripts/checks/check_file_existence_claims.js +6 -0
  21. package/dist/bollharness/src/scripts/checks/check_fragment_integrity.js +34 -0
  22. package/dist/bollharness/src/scripts/checks/check_hook_installed.js +63 -0
  23. package/dist/bollharness/src/scripts/checks/check_issue_closure.js +41 -0
  24. package/dist/bollharness/src/scripts/checks/check_mcp_parity.js +6 -0
  25. package/dist/bollharness/src/scripts/checks/check_security.js +48 -0
  26. package/dist/bollharness/src/scripts/checks/check_skill_parity.js +6 -0
  27. package/dist/bollharness/src/scripts/checks/check_versions.js +6 -0
  28. package/dist/bollharness/src/scripts/checks/finding.js +13 -0
  29. package/dist/bollharness/src/scripts/checks/next_decision_number.js +20 -0
  30. package/dist/bollharness/src/scripts/checks/regenerate_magic_docs.js +6 -0
  31. package/dist/bollharness/src/scripts/ci/detect_rebaseline_triggers.js +8 -0
  32. package/dist/bollharness/src/scripts/ci/scan_subprocess_cfg.js +8 -0
  33. package/dist/bollharness/src/scripts/ci/scan_verify_artifacts.js +8 -0
  34. package/dist/bollharness/src/scripts/ci/scan_yaml_schema.js +8 -0
  35. package/dist/bollharness/src/scripts/context_router.js +67 -0
  36. package/dist/bollharness/src/scripts/deploy-guard.js +157 -0
  37. package/dist/bollharness/src/scripts/guard-feedback.js +192 -0
  38. package/dist/bollharness/src/scripts/guard_router.js +158 -0
  39. package/dist/bollharness/src/scripts/hooks/_hook_output.js +6 -0
  40. package/dist/bollharness/src/scripts/hooks/auto-python3.js +6 -0
  41. package/dist/bollharness/src/scripts/hooks/deploy-progress-on-session-end.js +6 -0
  42. package/dist/bollharness/src/scripts/hooks/failure-analyzer.js +6 -0
  43. package/dist/bollharness/src/scripts/hooks/gate-judgment-inject.js +92 -0
  44. package/dist/bollharness/src/scripts/hooks/gate-transition-judgment.js +63 -0
  45. package/dist/bollharness/src/scripts/hooks/inbox-ack.js +6 -0
  46. package/dist/bollharness/src/scripts/hooks/inbox-inject-on-start.js +6 -0
  47. package/dist/bollharness/src/scripts/hooks/inbox-validate.js +6 -0
  48. package/dist/bollharness/src/scripts/hooks/inbox-write-ledger.js +6 -0
  49. package/dist/bollharness/src/scripts/hooks/initializer-agent.js +6 -0
  50. package/dist/bollharness/src/scripts/hooks/loop-detection.js +73 -0
  51. package/dist/bollharness/src/scripts/hooks/owner-guard.js +6 -0
  52. package/dist/bollharness/src/scripts/hooks/precompact.js +6 -0
  53. package/dist/bollharness/src/scripts/hooks/review-agent-gatekeeper.js +6 -0
  54. package/dist/bollharness/src/scripts/hooks/risk-tracker.js +108 -0
  55. package/dist/bollharness/src/scripts/hooks/sanitize-on-read.js +6 -0
  56. package/dist/bollharness/src/scripts/hooks/session-reflection.js +7 -0
  57. package/dist/bollharness/src/scripts/hooks/session-start-magic-docs.js +7 -0
  58. package/dist/bollharness/src/scripts/hooks/session-start-reset-risk.js +7 -0
  59. package/dist/bollharness/src/scripts/hooks/session-start-toolkit-reminder.js +7 -0
  60. package/dist/bollharness/src/scripts/hooks/stop-evaluator.js +157 -0
  61. package/dist/bollharness/src/scripts/hooks/tool-call-counter.js +6 -0
  62. package/dist/bollharness/src/scripts/hooks/trace-analyzer.js +10 -0
  63. package/dist/bollharness/src/scripts/install/install-trust-token.js +7 -0
  64. package/dist/bollharness/src/scripts/install/multi_project_registry.js +9 -0
  65. package/dist/bollharness/src/scripts/install/phase2_auto.js +21 -0
  66. package/dist/bollharness/src/scripts/install/pre_commit_installer.js +6 -0
  67. package/dist/bollharness/src/scripts/install/tier_selector.js +7 -0
  68. package/dist/bollharness/src/scripts/install/transcript_miner.js +7 -0
  69. package/dist/bollharness/src/scripts/lib/claim_patterns.js +10 -0
  70. package/dist/bollharness/src/scripts/lib/sanitize_patterns.js +12 -0
  71. package/dist/bollharness/src/scripts/sanitize.js +6 -0
  72. package/dist/bollharness-integration/channel-judgment-engine.js +530 -0
  73. package/dist/bollharness-integration/context-chain-router.js +383 -0
  74. package/dist/bollharness-integration/context-router-judgment.js +13 -21
  75. package/dist/bollharness-integration/context-router.js +22 -64
  76. package/dist/bollharness-integration/gate-state-machine.js +14 -19
  77. package/dist/bollharness-integration/gate-transition-hooks.js +16 -61
  78. package/dist/bollharness-integration/guard-checker.js +21 -68
  79. package/dist/bollharness-integration/index.js +14 -124
  80. package/dist/bollharness-integration/integration.js +13 -20
  81. package/dist/bollharness-integration/llm-judgment-engine.js +569 -0
  82. package/dist/bollharness-integration/skill-adapter.js +18 -64
  83. package/dist/cli-entry.js +261 -0
  84. package/dist/constraint-runtime/src/commands.js +17 -7
  85. package/dist/constraint-runtime/src/constraint/budget.js +1 -6
  86. package/dist/constraint-runtime/src/constraint/permission.js +1 -6
  87. package/dist/constraint-runtime/src/models.js +1 -3
  88. package/dist/constraint-runtime/src/tools.js +17 -7
  89. package/dist/constraints/index.js +1 -7
  90. package/dist/documents/reader.js +8 -49
  91. package/dist/heartbeat/DaemonManager.js +242 -0
  92. package/dist/heartbeat/HealthMonitor.js +285 -0
  93. package/dist/heartbeat/StartupVerifier.js +205 -0
  94. package/dist/heartbeat/Watchdog.js +168 -0
  95. package/dist/heartbeat/index.js +84 -0
  96. package/dist/heartbeat/types.js +5 -0
  97. package/dist/index.js +381 -28
  98. package/dist/llm/config-store.js +31 -57
  99. package/dist/llm/llm-judgment-client.js +389 -0
  100. package/dist/llm/pi-ai.js +9 -52
  101. package/dist/network/agent-network.js +46 -90
  102. package/dist/network/hybrid-messenger.js +125 -0
  103. package/dist/network/iroh-bootstrap.js +38 -0
  104. package/dist/network/iroh-discovery.js +145 -0
  105. package/dist/network/iroh-integration.js +9 -16
  106. package/dist/network/iroh-transport.js +10 -48
  107. package/dist/network/p2p.js +23 -62
  108. package/dist/network/storage/adapters/json-adapter.js +4 -42
  109. package/dist/network/storage/index.js +147 -0
  110. package/dist/network/storage/types.js +14 -0
  111. package/dist/pi-ecosystem/index.js +233 -0
  112. package/dist/pi-ecosystem-colony/index.js +29 -90
  113. package/dist/pi-ecosystem-goals/index.js +20 -74
  114. package/dist/pi-ecosystem-judgment/decision.js +29 -47
  115. package/dist/pi-ecosystem-judgment/distillation.js +16 -29
  116. package/dist/pi-ecosystem-judgment/human-value-store.js +13 -60
  117. package/dist/pi-ecosystem-judgment/index.js +21 -74
  118. package/dist/pi-ecosystem-judgment/value-injection.js +26 -72
  119. package/dist/pi-ecosystem-mcp/index.js +24 -78
  120. package/dist/pi-ecosystem-subagents/index.js +20 -69
  121. package/dist/social/ant-colony/AdaptiveHeartbeat.js +3 -8
  122. package/dist/social/ant-colony/PheromoneEngine.js +11 -49
  123. package/dist/social/ant-colony/index.js +6 -0
  124. package/dist/social/ant-colony/types.js +4 -8
  125. package/dist/social/channels/ChannelManager.js +8 -46
  126. package/dist/social/channels/DiapChannelBridge.js +9 -47
  127. package/dist/social/channels/InterestMatcher.js +2 -7
  128. package/dist/social/channels/channel-agent-session.js +309 -0
  129. package/dist/social/channels/channel-heartbeat-agent.js +494 -0
  130. package/dist/social/channels/diap-doc-parser.js +204 -0
  131. package/dist/social/channels/harness-workflow-integrator.js +446 -0
  132. package/dist/social/channels/index.js +9 -0
  133. package/dist/social/channels/types.js +3 -7
  134. package/dist/social/global-shared-context.js +6 -47
  135. package/dist/social/heartbeat.js +29 -72
  136. package/dist/social/persona/enhanced-persona.js +299 -0
  137. package/dist/web/client.js +302 -136
  138. package/dist/web/components/p2p/index.js +159 -9
  139. package/dist/web/components/p2p/p2p-connection.js +136 -0
  140. package/dist/web/components/p2p/p2p-manager.js +24 -0
  141. package/dist/web/components/p2p/p2p-store-memory.js +1 -1
  142. package/dist/web/components/p2p/types.js +7 -0
  143. package/dist/web/index.html +5 -0
  144. package/dist/web/style.css +118 -0
  145. package/package.json +12 -6
  146. package/scripts/build-cli.js +206 -0
  147. package/scripts/postinstall.js +153 -0
  148. package/src/agents/pi-sdk.ts +347 -28
  149. package/src/agents/protocol.ts +95 -1
  150. package/src/agents/workflow-pivot-loop.ts +674 -0
  151. package/src/bollharness/scripts/context-fragments/pi-agent-operations.md +34 -0
  152. package/src/cli-entry.ts +304 -0
  153. package/src/heartbeat/DaemonManager.ts +283 -0
  154. package/src/heartbeat/HealthMonitor.ts +316 -0
  155. package/src/heartbeat/StartupVerifier.ts +223 -0
  156. package/src/heartbeat/Watchdog.ts +198 -0
  157. package/src/heartbeat/index.ts +108 -0
  158. package/src/heartbeat/types.ts +82 -0
  159. package/src/llm/config-store.ts +23 -5
  160. package/src/network/iroh-transport.ts +3 -3
  161. package/src/web/client.js +302 -136
  162. package/src/web/components/p2p/P2PModal.tsx +91 -3
  163. package/src/web/components/p2p/index.ts +171 -9
  164. package/src/web/components/p2p/p2p-connection.ts +153 -1
  165. package/src/web/components/p2p/p2p-manager.ts +39 -1
  166. package/src/web/components/p2p/p2p-store-memory.ts +1 -1
  167. package/src/web/components/p2p/p2p-tools.ts +315 -0
  168. package/src/web/components/p2p/types.ts +58 -0
  169. package/src/web/index.html +5 -0
  170. package/src/web/server.ts +353 -36
  171. package/src/web/style.css +118 -0
  172. package/tsconfig.cli.json +16 -0
  173. package/tsconfig.electron.json +1 -1
  174. package/tsconfig.json +1 -2
  175. package/dist/constraint-runtime/tests/agent.test.js +0 -16
  176. package/dist/constraint-runtime/tests/constraint.test.js +0 -41
  177. package/dist/constraint-runtime/tests/skill.test.js +0 -19
  178. package/dist/constraint-runtime/tests/thinking.test.js +0 -22
  179. package/dist/electron-preload.js +0 -15
  180. package/dist/electron-preload.js.map +0 -1
  181. package/dist/electron.js +0 -206
  182. package/dist/electron.js.map +0 -1
  183. package/dist/test/constraint-layer.test.js +0 -164
  184. package/dist/test/global-shared-context.test.js +0 -315
  185. package/dist/test/pi-sdk.test.js +0 -47
  186. package/dist/test/set-persona.test.js +0 -38
  187. package/dist/test/subagent-manager.test.js +0 -276
  188. package/dist/test/workflow-engine.test.js +0 -87
  189. package/dist/web/server.js +0 -1647
  190. package/dist/web/server.js.map +0 -1
  191. package/dist/workflows/collaboration.js +0 -374
  192. package/dist/workflows/index.js +0 -54
  193. package/docs/agent-communication.md +0 -333
  194. package/docs/plans/2026-05-15-document-agent-design.md +0 -479
  195. package/docs/plans/2026-05-15-document-agent-implementation-plan.md +0 -792
  196. package/docs/plans/2026-05-16-chat-ui-design.md +0 -86
  197. package/docs/plans/2026-05-16-constraint-runtime-design.md +0 -106
  198. package/docs/plans/2026-05-16-constraint-runtime-implementation.md +0 -441
  199. package/docs//346/225/260/345/255/246/350/276/205/345/212/251/346/231/272/350/203/275/344/275/223-/346/240/270/345/277/203/346/225/210/346/236/234/345/256/232/344/271/211.md +0 -287
  200. package/src/bollharness/.boll/CLAUDE.md.template +0 -34
  201. package/src/bollharness/.boll/MANIFEST.yaml +0 -213
  202. package/src/bollharness/.boll/active-review-agents/.gitkeep +0 -0
  203. package/src/bollharness/.boll/agents/review-base.yaml +0 -108
  204. package/src/bollharness/.boll/deploy-allowlist.yaml +0 -38
  205. package/src/bollharness/.boll/inbox/schema/message-v1.json +0 -99
  206. package/src/bollharness/.boll/install-staging/.gitkeep +0 -0
  207. package/src/bollharness/.boll/issue-adapter.yaml +0 -31
  208. package/src/bollharness/.boll/plugins/boll-mode-toolkit/contracts/mode-contract.md +0 -85
  209. package/src/bollharness/.boll/plugins/boll-review-toolkit/contracts/evidence-packet-schema.json +0 -102
  210. package/src/bollharness/.boll/plugins/boll-review-toolkit/contracts/review-contract.yaml +0 -247
  211. package/src/bollharness/.boll/rules/backend-routes.md +0 -31
  212. package/src/bollharness/.boll/rules/closure-semantics.md +0 -30
  213. package/src/bollharness/.boll/rules/env-vars.md +0 -32
  214. package/src/bollharness/.boll/rules/hanis-protocol.md +0 -145
  215. package/src/bollharness/.boll/rules/repo-structure.md +0 -42
  216. package/src/bollharness/.boll/rules/review-agent-isolation.md +0 -73
  217. package/src/bollharness/.boll/rules/source-of-truth.md +0 -33
  218. package/src/bollharness/.boll/settings.json +0 -180
  219. package/src/bollharness/.boll/settings.json.template +0 -31
  220. package/src/bollharness/.boll/skills/arch/SKILL.md +0 -372
  221. package/src/bollharness/.boll/skills/bug-pipeline/SKILL.md +0 -168
  222. package/src/bollharness/.boll/skills/bug-triage/SKILL.md +0 -161
  223. package/src/bollharness/.boll/skills/context-chains/SKILL.md +0 -250
  224. package/src/bollharness/.boll/skills/context-chains/context-chain-index.md +0 -48
  225. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/code_change_extractor.ts +0 -142
  226. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/debugging_extractor.ts +0 -126
  227. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/design_extractor.ts +0 -148
  228. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/planning_extractor.ts +0 -162
  229. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/question_extractor.ts +0 -116
  230. package/src/bollharness/.boll/skills/context-chains/work-type-extractors/review_extractor.ts +0 -136
  231. package/src/bollharness/.boll/skills/crystal-learn/SKILL.md +0 -93
  232. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-0.md +0 -34
  233. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-1.md +0 -34
  234. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-2.md +0 -35
  235. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-3.md +0 -34
  236. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-4.md +0 -43
  237. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-5.md +0 -34
  238. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-6.md +0 -37
  239. package/src/bollharness/.boll/skills/crystal-learn/invariants/INV-7.md +0 -46
  240. package/src/bollharness/.boll/skills/guardian-fixer/PROMPT.md +0 -415
  241. package/src/bollharness/.boll/skills/guardian-fixer/SKILL.md +0 -320
  242. package/src/bollharness/.boll/skills/harness-dev/SKILL.md +0 -93
  243. package/src/bollharness/.boll/skills/harness-dev/examples/README.md +0 -227
  244. package/src/bollharness/.boll/skills/harness-dev-handoff/SKILL.md +0 -165
  245. package/src/bollharness/.boll/skills/harness-eng/SKILL.md +0 -110
  246. package/src/bollharness/.boll/skills/harness-eng-test/SKILL.md +0 -79
  247. package/src/bollharness/.boll/skills/harness-lab/SKILL.md +0 -170
  248. package/src/bollharness/.boll/skills/harness-ops/SKILL.md +0 -57
  249. package/src/bollharness/.boll/skills/harness-voice/SKILL.md +0 -183
  250. package/src/bollharness/.boll/skills/judgment/SKILL.md +0 -115
  251. package/src/bollharness/.boll/skills/lead/SKILL.md +0 -245
  252. package/src/bollharness/.boll/skills/lead/install-wow-harness.md +0 -77
  253. package/src/bollharness/.boll/skills/lead/ref-review-sop.md +0 -91
  254. package/src/bollharness/.boll/skills/lead/ref-stages.md +0 -129
  255. package/src/bollharness/.boll/skills/skill-discovery/SKILL.md +0 -169
  256. package/src/bollharness/.boll/skills/task-arch/SKILL.md +0 -106
  257. package/src/bollharness/.boll/skills/toolkit/SKILL.md +0 -57
  258. package/src/bollharness/.boll/tasks/.gitkeep +0 -0
  259. package/src/bollharness/.boll/toolkit-index.yaml +0 -112
  260. package/src/bollharness/.claude/agents/review-base.yaml +0 -108
  261. package/src/bollharness/.claude/plugins/boll-mode-toolkit/.claude-plugin/plugin.json +0 -44
  262. package/src/bollharness/.claude/plugins/boll-review-toolkit/.claude-plugin/plugin.json +0 -24
  263. package/src/bollharness/.claude/plugins/boll-review-toolkit/contracts/evidence-packet-schema.json +0 -102
  264. package/src/bollharness/.claude/plugins/boll-review-toolkit/contracts/review-contract.yaml +0 -247
  265. package/src/bollharness/.claude/settings.json +0 -157
  266. package/src/bollharness/.claude/skills/arch/SKILL.md +0 -64
  267. package/src/bollharness/.claude/skills/crystal-learn/SKILL.md +0 -93
  268. package/src/bollharness/.claude/skills/guardian-fixer/PROMPT.md +0 -44
  269. package/src/bollharness/.claude/skills/guardian-fixer/SKILL.md +0 -324
  270. package/src/bollharness/.claude/skills/harness-dev/SKILL.md +0 -93
  271. package/src/bollharness/.claude/skills/harness-dev/examples/README.md +0 -17
  272. package/src/bollharness/.claude/skills/harness-dev-handoff/SKILL.md +0 -165
  273. package/src/bollharness/.claude/skills/harness-eng/SKILL.md +0 -183
  274. package/src/bollharness/.claude/skills/harness-eng-test/SKILL.md +0 -57
  275. package/src/bollharness/.claude/skills/harness-ops/SKILL.md +0 -57
  276. package/src/bollharness/.claude/skills/harness-voice/SKILL.md +0 -84
  277. package/src/bollharness/.claude/skills/lead/INDEX.md +0 -28
  278. package/src/bollharness/.claude/skills/lead/SKILL.md +0 -24
  279. package/src/bollharness/.claude/skills/lead/install-wow-harness.md +0 -77
  280. package/src/bollharness/.claude/skills/lead/ref-review-sop.md +0 -48
  281. package/src/bollharness/.claude/skills/lead/ref-stages.md +0 -58
  282. package/src/bollharness/.claude/skills/plan-lock/SKILL.md +0 -74
  283. package/src/bollharness/.claude/skills/skill-discovery/SKILL.md +0 -120
  284. package/src/bollharness/.claude/skills/task-arch/SKILL.md +0 -106
  285. package/src/bollharness/.claude/skills/toolkit/SKILL.md +0 -57
  286. package/src/bollharness/.claude/skills/toolkit/list.sh +0 -92
  287. package/src/bollharness/.githooks/pre-commit +0 -21
  288. package/src/bollharness/.github/workflows/ci.yml +0 -88
  289. package/src/bollharness/docs/decisions/ADR-030-guard-signal-protocol-and-governance-reload.md +0 -1076
  290. package/src/bollharness/docs/decisions/ADR-038-harness-optimization-strategy.md +0 -2039
  291. package/src/bollharness/docs/decisions/ADR-041-codex-claude-code-division-of-labor.md +0 -128
  292. package/src/bollharness/docs/decisions/ADR-H1-crystal-learn-revival.md +0 -188
  293. package/src/bollharness/docs/decisions/ADR-H2-identity-isolation.md +0 -183
  294. package/src/bollharness/docs/decisions/ADR-H3-memory-scope.md +0 -133
  295. package/src/bollharness/docs/decisions/ADR-H4-prompt-governance.md +0 -146
  296. package/src/bollharness/docs/decisions/ADR-H5-gate-quantization.md +0 -212
  297. package/src/bollharness/docs/decisions/ADR-H6-state-file-health.md +0 -211
  298. package/src/bollharness/docs/decisions/ADR-H8-issue-and-doc-compliance.md +0 -202
  299. package/src/bollharness/docs/decisions/ADR-H9-mailbox.md +0 -231
  300. package/src/bollharness/docs/decisions/PLAN-H1-crystal-learn-revival.md +0 -270
  301. package/src/bollharness/docs/decisions/PLAN-H2-identity-isolation.md +0 -291
  302. package/src/bollharness/docs/decisions/PLAN-H3-memory-scope.md +0 -228
  303. package/src/bollharness/docs/decisions/PLAN-H4-prompt-governance.md +0 -227
  304. package/src/bollharness/docs/decisions/PLAN-H5-gate-quantization.md +0 -239
  305. package/src/bollharness/docs/decisions/PLAN-H6-state-file-health.md +0 -325
  306. package/src/bollharness/docs/decisions/PLAN-H8-issue-and-doc-compliance.md +0 -242
  307. package/src/bollharness/docs/decisions/PLAN-H9-mailbox.md +0 -378
  308. package/src/bollharness/docs/launch-article-en.md +0 -276
  309. package/src/bollharness/docs/launch-article-zh.md +0 -305
  310. package/src/bollharness/docs/practice.html +0 -356
  311. package/src/bollharness/docs/practice.md +0 -82
  312. package/src/bollharness/docs/research/round-1/README.md +0 -11
  313. package/src/bollharness/docs/research/round-2/README.md +0 -11
  314. package/src/bollharness/docs/research/round-3/README.md +0 -11
  315. package/src/bollharness/docs/research/round-4/README.md +0 -11
  316. package/src/bollharness/docs/research/round-5/README.md +0 -11
  317. package/src/bollharness/docs/research/round-6/README.md +0 -11
  318. package/src/bollharness/package-lock.json +0 -48
  319. package/src/bollharness/reference/boll-reference/.claude/rules/backend-routes.md +0 -268
  320. package/src/bollharness/reference/boll-reference/.claude/rules/bridge.md +0 -20
  321. package/src/bollharness/reference/boll-reference/.claude/rules/closure-semantics.md +0 -30
  322. package/src/bollharness/reference/boll-reference/.claude/rules/coaching.md +0 -13
  323. package/src/bollharness/reference/boll-reference/.claude/rules/env-vars.md +0 -50
  324. package/src/bollharness/reference/boll-reference/.claude/rules/hackathon.md +0 -12
  325. package/src/bollharness/reference/boll-reference/.claude/rules/repo-structure.md +0 -184
  326. package/src/bollharness/reference/boll-reference/.claude/rules/review-agent-isolation.md +0 -112
  327. package/src/bollharness/reference/boll-reference/.claude/rules/scenes.md +0 -12
  328. package/src/bollharness/reference/boll-reference/.claude/skills/arch/SKILL.md +0 -551
  329. package/src/bollharness/reference/boll-reference/.claude/skills/boll-animation/SKILL.md +0 -26
  330. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/SKILL.md +0 -227
  331. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/agents/openai.yaml +0 -4
  332. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/references/bridge-failure-taxonomy.md +0 -142
  333. package/src/bollharness/reference/boll-reference/.claude/skills/boll-bridge/references/bridge-validation-ladder.md +0 -107
  334. package/src/bollharness/reference/boll-reference/.claude/skills/boll-crystal/SKILL.md +0 -893
  335. package/src/bollharness/reference/boll-reference/.claude/skills/boll-crystal-learn/SKILL.md +0 -89
  336. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev/SKILL.md +0 -93
  337. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev/examples/README.md +0 -209
  338. package/src/bollharness/reference/boll-reference/.claude/skills/boll-dev-handoff/SKILL.md +0 -165
  339. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng/SKILL.md +0 -110
  340. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-frontend/SKILL.md +0 -203
  341. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-hdc/SKILL.md +0 -27
  342. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-orchestrator/SKILL.md +0 -28
  343. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-prompt/SKILL.md +0 -27
  344. package/src/bollharness/reference/boll-reference/.claude/skills/boll-eng-test/SKILL.md +0 -79
  345. package/src/bollharness/reference/boll-reference/.claude/skills/boll-lab/SKILL.md +0 -372
  346. package/src/bollharness/reference/boll-reference/.claude/skills/boll-run/SKILL.md +0 -437
  347. package/src/bollharness/reference/boll-reference/.claude/skills/boll-ux-appstore/SKILL.md +0 -27
  348. package/src/bollharness/reference/boll-reference/.claude/skills/boll-voice/SKILL.md +0 -442
  349. package/src/bollharness/reference/boll-reference/.claude/skills/guardian-fixer/PROMPT.md +0 -421
  350. package/src/bollharness/reference/boll-reference/.claude/skills/guardian-fixer/SKILL.md +0 -326
  351. package/src/bollharness/reference/boll-reference/.claude/skills/lead/SKILL.md +0 -155
  352. package/src/bollharness/reference/boll-reference/.claude/skills/lead/ref-review-sop.md +0 -91
  353. package/src/bollharness/reference/boll-reference/.claude/skills/lead/ref-stages.md +0 -129
  354. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-preview.png +0 -0
  355. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v2.png +0 -0
  356. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v3.png +0 -0
  357. package/src/bollharness/reference/boll-reference/.claude/skills/nature-designer/output/skill-map-v4.png +0 -0
  358. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/SKILL.md +0 -425
  359. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/ref-three-checks.md +0 -62
  360. package/src/bollharness/reference/boll-reference/.claude/skills/plan-lock/ref-wp-templates.md +0 -78
  361. package/src/bollharness/reference/boll-reference/.claude/skills/task-arch/SKILL.md +0 -76
  362. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-graph/SKILL.md +0 -57
  363. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-graph/beads-graph.sh +0 -153
  364. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-init/SKILL.md +0 -52
  365. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-init/beads-auto-link.sh +0 -76
  366. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-sync/SKILL.md +0 -50
  367. package/src/bollharness/reference/boll-reference/.claude/skills/vibedevteam-sync/beads-sync-proj.sh +0 -108
  368. package/src/bollharness/reference/boll-reference/docs/architecture/AGENT-PROFILE.md +0 -151
  369. package/src/bollharness/reference/boll-reference/docs/architecture/COST-STRUCTURE.md +0 -56
  370. package/src/bollharness/reference/boll-reference/docs/architecture/INDEX.md +0 -76
  371. package/src/bollharness/reference/boll-reference/docs/architecture/MODULE1-INTENT-FIELD.md +0 -116
  372. package/src/bollharness/reference/boll-reference/docs/architecture/MODULE2-CRYSTALLIZATION.md +0 -200
  373. package/src/bollharness/reference/boll-reference/docs/architecture/PRINCIPLES.md +0 -84
  374. package/src/bollharness/reference/boll-reference/docs/architecture/PROTOCOL-CORE.md +0 -209
  375. package/src/bollharness/reference/boll-reference/docs/architecture/VISION.md +0 -181
  376. package/src/bollharness/reference/boll-reference/docs/architecture/discussions/D-01-MARKET-SCENE-PROTOCOL.md +0 -754
  377. package/src/bollharness/templates/scaffold/.boll/guard/.gitkeep +0 -0
  378. package/src/bollharness/templates/scaffold/.boll/metrics/.gitkeep +0 -0
  379. package/src/bollharness/templates/scaffold/.boll/state/.gitkeep +0 -0
  380. package/src/bollharness/templates/scaffold/docs/INDEX.md +0 -3
  381. package/src/bollharness/templates/scaffold/docs/decisions/ADR_TEMPLATE.md +0 -38
  382. package/src/bollharness/templates/scaffold/docs/decisions/PLAN_TEMPLATE.md +0 -45
  383. package/src/bollharness/templates/scaffold/docs/decisions/tasks/.gitkeep +0 -2
  384. package/src/bollharness/templates/scaffold/docs/issues/.gitkeep +0 -0
  385. package/src/bollharness/templates/scaffold/docs/issues/GUARD_ISSUE_TEMPLATE.md +0 -35
  386. package/src/bollharness/templates/scaffold/docs/issues/ISSUE_TEMPLATE.md +0 -51
  387. package/src/bollharness/tsconfig.json +0 -26
  388. package/src/constraint-runtime/package-lock.json +0 -48
  389. package/src/constraint-runtime/package.json +0 -34
  390. package/src/constraint-runtime/src/_archive_helper.ts +0 -16
  391. package/src/constraint-runtime/src/agent/coordinator.ts +0 -71
  392. package/src/constraint-runtime/src/agent/index.ts +0 -1
  393. package/src/constraint-runtime/src/assistant/index.ts +0 -15
  394. package/src/constraint-runtime/src/bootstrap/index.ts +0 -15
  395. package/src/constraint-runtime/src/bootstrap_graph.ts +0 -17
  396. package/src/constraint-runtime/src/bridge/index.ts +0 -15
  397. package/src/constraint-runtime/src/buddy/index.ts +0 -15
  398. package/src/constraint-runtime/src/cli/index.ts +0 -15
  399. package/src/constraint-runtime/src/command_graph.ts +0 -20
  400. package/src/constraint-runtime/src/commands.ts +0 -83
  401. package/src/constraint-runtime/src/components/index.ts +0 -15
  402. package/src/constraint-runtime/src/constants/index.ts +0 -15
  403. package/src/constraint-runtime/src/constraint/budget.ts +0 -25
  404. package/src/constraint-runtime/src/constraint/index.ts +0 -3
  405. package/src/constraint-runtime/src/constraint/permission.ts +0 -28
  406. package/src/constraint-runtime/src/context.ts +0 -45
  407. package/src/constraint-runtime/src/coordinator/index.ts +0 -15
  408. package/src/constraint-runtime/src/cost_hook.ts +0 -6
  409. package/src/constraint-runtime/src/cost_tracker.ts +0 -9
  410. package/src/constraint-runtime/src/deferred_init.ts +0 -18
  411. package/src/constraint-runtime/src/direct_modes.ts +0 -13
  412. package/src/constraint-runtime/src/dynamic-tool-loader.ts +0 -115
  413. package/src/constraint-runtime/src/entrypoints/index.ts +0 -15
  414. package/src/constraint-runtime/src/execution_registry.ts +0 -41
  415. package/src/constraint-runtime/src/history.ts +0 -16
  416. package/src/constraint-runtime/src/hooks/index.ts +0 -15
  417. package/src/constraint-runtime/src/index.ts +0 -28
  418. package/src/constraint-runtime/src/ink.ts +0 -4
  419. package/src/constraint-runtime/src/keybindings/index.ts +0 -15
  420. package/src/constraint-runtime/src/memdir/index.ts +0 -15
  421. package/src/constraint-runtime/src/migrations/index.ts +0 -15
  422. package/src/constraint-runtime/src/models.ts +0 -49
  423. package/src/constraint-runtime/src/moreright/index.ts +0 -15
  424. package/src/constraint-runtime/src/native_ts/index.ts +0 -15
  425. package/src/constraint-runtime/src/output_styles/index.ts +0 -15
  426. package/src/constraint-runtime/src/parity_audit.ts +0 -23
  427. package/src/constraint-runtime/src/plugins/index.ts +0 -15
  428. package/src/constraint-runtime/src/port_manifest.ts +0 -20
  429. package/src/constraint-runtime/src/prefetch.ts +0 -17
  430. package/src/constraint-runtime/src/query.ts +0 -7
  431. package/src/constraint-runtime/src/reference_data/archive_surface_snapshot.json +0 -63
  432. package/src/constraint-runtime/src/reference_data/commands_snapshot.json +0 -1037
  433. package/src/constraint-runtime/src/reference_data/subsystems/OpenCLI.json +0 -10
  434. package/src/constraint-runtime/src/reference_data/subsystems/PolymarketSDK.json +0 -12
  435. package/src/constraint-runtime/src/reference_data/subsystems/SafeSDK.json +0 -14
  436. package/src/constraint-runtime/src/reference_data/subsystems/assistant.json +0 -8
  437. package/src/constraint-runtime/src/reference_data/subsystems/bootstrap.json +0 -8
  438. package/src/constraint-runtime/src/reference_data/subsystems/bridge.json +0 -32
  439. package/src/constraint-runtime/src/reference_data/subsystems/buddy.json +0 -13
  440. package/src/constraint-runtime/src/reference_data/subsystems/cli.json +0 -26
  441. package/src/constraint-runtime/src/reference_data/subsystems/components.json +0 -32
  442. package/src/constraint-runtime/src/reference_data/subsystems/constants.json +0 -28
  443. package/src/constraint-runtime/src/reference_data/subsystems/coordinator.json +0 -8
  444. package/src/constraint-runtime/src/reference_data/subsystems/entrypoints.json +0 -15
  445. package/src/constraint-runtime/src/reference_data/subsystems/hooks.json +0 -32
  446. package/src/constraint-runtime/src/reference_data/subsystems/keybindings.json +0 -21
  447. package/src/constraint-runtime/src/reference_data/subsystems/memdir.json +0 -15
  448. package/src/constraint-runtime/src/reference_data/subsystems/migrations.json +0 -18
  449. package/src/constraint-runtime/src/reference_data/subsystems/moreright.json +0 -8
  450. package/src/constraint-runtime/src/reference_data/subsystems/native_ts.json +0 -11
  451. package/src/constraint-runtime/src/reference_data/subsystems/outputStyles.json +0 -8
  452. package/src/constraint-runtime/src/reference_data/subsystems/plugins.json +0 -9
  453. package/src/constraint-runtime/src/reference_data/subsystems/remote.json +0 -11
  454. package/src/constraint-runtime/src/reference_data/subsystems/schemas.json +0 -8
  455. package/src/constraint-runtime/src/reference_data/subsystems/screens.json +0 -10
  456. package/src/constraint-runtime/src/reference_data/subsystems/server.json +0 -10
  457. package/src/constraint-runtime/src/reference_data/subsystems/services.json +0 -32
  458. package/src/constraint-runtime/src/reference_data/subsystems/skills.json +0 -27
  459. package/src/constraint-runtime/src/reference_data/subsystems/state.json +0 -13
  460. package/src/constraint-runtime/src/reference_data/subsystems/types.json +0 -18
  461. package/src/constraint-runtime/src/reference_data/subsystems/upstreamproxy.json +0 -9
  462. package/src/constraint-runtime/src/reference_data/subsystems/utils.json +0 -32
  463. package/src/constraint-runtime/src/reference_data/subsystems/vim.json +0 -12
  464. package/src/constraint-runtime/src/reference_data/subsystems/voice.json +0 -8
  465. package/src/constraint-runtime/src/reference_data/tools_snapshot.json +0 -1042
  466. package/src/constraint-runtime/src/remote/index.ts +0 -15
  467. package/src/constraint-runtime/src/remote_runtime.ts +0 -17
  468. package/src/constraint-runtime/src/runtime/index.ts +0 -1
  469. package/src/constraint-runtime/src/runtime/session.ts +0 -42
  470. package/src/constraint-runtime/src/schemas/index.ts +0 -15
  471. package/src/constraint-runtime/src/screens/index.ts +0 -15
  472. package/src/constraint-runtime/src/server/index.ts +0 -15
  473. package/src/constraint-runtime/src/services/index.ts +0 -15
  474. package/src/constraint-runtime/src/session_store.ts +0 -32
  475. package/src/constraint-runtime/src/setup.ts +0 -50
  476. package/src/constraint-runtime/src/skills/index.ts +0 -1
  477. package/src/constraint-runtime/src/skills/skill-registry.ts +0 -40
  478. package/src/constraint-runtime/src/state/index.ts +0 -15
  479. package/src/constraint-runtime/src/system_init.ts +0 -21
  480. package/src/constraint-runtime/src/thinking/engine.ts +0 -61
  481. package/src/constraint-runtime/src/thinking/index.ts +0 -1
  482. package/src/constraint-runtime/src/tool_pool.ts +0 -20
  483. package/src/constraint-runtime/src/tools/OpenCLI/execAdapter.ts +0 -12
  484. package/src/constraint-runtime/src/tools/OpenCLI/listAdapters.ts +0 -12
  485. package/src/constraint-runtime/src/tools/OpenCLI/runCommand.ts +0 -13
  486. package/src/constraint-runtime/src/tools/PolymarketSDK/cancelOrder.ts +0 -10
  487. package/src/constraint-runtime/src/tools/PolymarketSDK/createOrder.ts +0 -13
  488. package/src/constraint-runtime/src/tools/PolymarketSDK/getMarket.ts +0 -14
  489. package/src/constraint-runtime/src/tools/PolymarketSDK/getOrders.ts +0 -10
  490. package/src/constraint-runtime/src/tools/PolymarketSDK/listMarkets.ts +0 -24
  491. package/src/constraint-runtime/src/tools/SafeSDK/confirmTransaction.ts +0 -13
  492. package/src/constraint-runtime/src/tools/SafeSDK/createTransaction.ts +0 -23
  493. package/src/constraint-runtime/src/tools/SafeSDK/deploySafe.ts +0 -12
  494. package/src/constraint-runtime/src/tools/SafeSDK/executeTransaction.ts +0 -12
  495. package/src/constraint-runtime/src/tools/SafeSDK/getBalance.ts +0 -10
  496. package/src/constraint-runtime/src/tools/SafeSDK/getPendingTransactions.ts +0 -10
  497. package/src/constraint-runtime/src/tools/SafeSDK/proposeTransaction.ts +0 -14
  498. package/src/constraint-runtime/src/tools/WalletTools/autoPay.ts +0 -58
  499. package/src/constraint-runtime/src/tools/WalletTools/createWallet.ts +0 -19
  500. package/src/constraint-runtime/src/tools/WalletTools/getBalance.ts +0 -28
  501. package/src/constraint-runtime/src/tools/WalletTools/importWallet.ts +0 -34
  502. package/src/constraint-runtime/src/tools/WalletTools/sendTransaction.ts +0 -50
  503. package/src/constraint-runtime/src/tools/WalletTools/signMessage.ts +0 -23
  504. package/src/constraint-runtime/src/tools/WalletTools/transferToken.ts +0 -49
  505. package/src/constraint-runtime/src/tools.ts +0 -100
  506. package/src/constraint-runtime/src/transcript.ts +0 -23
  507. package/src/constraint-runtime/src/types/index.ts +0 -15
  508. package/src/constraint-runtime/src/upstream_proxy/index.ts +0 -15
  509. package/src/constraint-runtime/src/utils/index.ts +0 -15
  510. package/src/constraint-runtime/src/vim/index.ts +0 -15
  511. package/src/constraint-runtime/src/voice/index.ts +0 -15
  512. package/src/constraint-runtime/tests/agent.test.ts +0 -20
  513. package/src/constraint-runtime/tests/constraint.test.ts +0 -47
  514. package/src/constraint-runtime/tests/skill.test.ts +0 -23
  515. package/src/constraint-runtime/tests/thinking.test.ts +0 -28
  516. package/src/constraint-runtime/tsconfig.json +0 -13
  517. package/src/pi-ecosystem/index.ts +0 -453
  518. package/src/pi-ecosystem-colony/index.ts +0 -482
  519. package/src/pi-ecosystem-goals/index.ts +0 -585
  520. package/src/pi-ecosystem-judgment/decision.ts +0 -431
  521. package/src/pi-ecosystem-judgment/distillation.ts +0 -398
  522. package/src/pi-ecosystem-judgment/human-value-store.ts +0 -580
  523. package/src/pi-ecosystem-judgment/index.ts +0 -678
  524. package/src/pi-ecosystem-judgment/value-injection.ts +0 -744
  525. package/src/pi-ecosystem-mcp/index.ts +0 -427
  526. package/src/pi-ecosystem-subagents/index.ts +0 -408
  527. package/src/test/ai-judgment-test.ts +0 -92
  528. package/src/test/bollharness-integration.test.ts +0 -398
  529. package/src/test/channel-agent-multi-dialogue.ts +0 -265
  530. package/src/test/channel-heartbeat-agent-test.ts +0 -244
  531. package/src/test/constraint-layer.test.ts +0 -191
  532. package/src/test/diap-identity-test.ts +0 -222
  533. package/src/test/diap-quick-test.ts +0 -73
  534. package/src/test/global-shared-context.test.ts +0 -393
  535. package/src/test/harness-judgment-injection.test.ts +0 -353
  536. package/src/test/harness-workflow-integrator-test.ts +0 -285
  537. package/src/test/human-value-store.test.ts +0 -316
  538. package/src/test/hybrid-integration-test.ts +0 -126
  539. package/src/test/hybrid-messenger-verify.ts +0 -68
  540. package/src/test/iroh-bistream-debug.ts +0 -50
  541. package/src/test/iroh-communication.test.ts +0 -81
  542. package/src/test/iroh-debug-test.ts +0 -69
  543. package/src/test/iroh-diap-test.ts +0 -90
  544. package/src/test/iroh-direct-connect.ts +0 -65
  545. package/src/test/iroh-e2e-fixed.ts +0 -106
  546. package/src/test/iroh-e2e-same-process.ts +0 -83
  547. package/src/test/iroh-e2e.ts +0 -83
  548. package/src/test/iroh-final-e2e.ts +0 -84
  549. package/src/test/iroh-relay-test.ts +0 -46
  550. package/src/test/iroh-simple-test.ts +0 -49
  551. package/src/test/iroh-transport-verify.ts +0 -60
  552. package/src/test/iroh-transport.test.ts +0 -47
  553. package/src/test/iroh-two-nodes.ts +0 -87
  554. package/src/test/iroh-verify.ts +0 -55
  555. package/src/test/judgment-decision.test.ts +0 -373
  556. package/src/test/llm-judgment-integration.test.ts +0 -257
  557. package/src/test/p2p-agent-complex-dialogue.ts +0 -490
  558. package/src/test/p2p-agent-dialogue.ts +0 -423
  559. package/src/test/p2p-agent-full-bidirectional.ts +0 -686
  560. package/src/test/p2p-agent-harness-flow.ts +0 -562
  561. package/src/test/p2p-agent-harness-single.ts +0 -175
  562. package/src/test/p2p-ai-dialogue-test.ts +0 -374
  563. package/src/test/p2p-cid-connect-test.ts +0 -245
  564. package/src/test/p2p-connect-receiver.ts +0 -85
  565. package/src/test/p2p-iroh-test.ts +0 -214
  566. package/src/test/p2p-minimal-test.ts +0 -264
  567. package/src/test/p2p-node-1.ts +0 -172
  568. package/src/test/p2p-node-2.ts +0 -172
  569. package/src/test/p2p-server.ts +0 -335
  570. package/src/test/p2p-two-nodes-test.ts +0 -542
  571. package/src/test/pi-sdk.test.ts +0 -47
  572. package/src/test/set-persona.ts +0 -56
  573. package/src/test/simple.test.ts +0 -11
  574. package/src/test/storage-integration.test.ts +0 -191
  575. package/src/test/subagent-manager.test.ts +0 -392
  576. package/src/test/test-gate-flow.test.ts +0 -92
  577. package/src/test/workflow-engine.test.ts +0 -101
  578. package/src/workflows/collaboration.ts +0 -455
  579. package/src/workflows/index.ts +0 -64
  580. package/vitest.config.ts +0 -12
  581. package//346/203/263/346/263/225.md +0 -79
@@ -1,4 +1,3 @@
1
- "use strict";
2
1
  /**
3
2
  * Bollharness Integration for Bolloon
4
3
  *
@@ -8,17 +7,14 @@
8
7
  * - Context Router (automatic context injection)
9
8
  * - Skill Adapter (bollharness skills in Bolloon)
10
9
  */
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.BollharnessHooks = exports.BollharnessIntegration = void 0;
13
- exports.createBollharnessIntegration = createBollharnessIntegration;
14
- const gate_state_machine_js_1 = require("./gate-state-machine.js");
15
- const guard_checker_js_1 = require("./guard-checker.js");
16
- const context_router_js_1 = require("./context-router.js");
17
- const skill_adapter_js_1 = require("./skill-adapter.js");
10
+ import { GateStateMachine } from './gate-state-machine.js';
11
+ import { GuardChecker, runGuards } from './guard-checker.js';
12
+ import { ContextRouter } from './context-router.js';
13
+ import { createSkillAdapter } from './skill-adapter.js';
18
14
  /**
19
15
  * Main integration class
20
16
  */
21
- class BollharnessIntegration {
17
+ export class BollharnessIntegration {
22
18
  config;
23
19
  gateMachine;
24
20
  guardChecker;
@@ -34,10 +30,10 @@ class BollharnessIntegration {
34
30
  skillsEnabled: config.skillsEnabled ?? true,
35
31
  gatesEnabled: config.gatesEnabled ?? true,
36
32
  };
37
- this.gateMachine = new gate_state_machine_js_1.GateStateMachine();
38
- this.guardChecker = new guard_checker_js_1.GuardChecker();
39
- this.contextRouter = new context_router_js_1.ContextRouter();
40
- this.skillAdapter = (0, skill_adapter_js_1.createSkillAdapter)();
33
+ this.gateMachine = new GateStateMachine();
34
+ this.guardChecker = new GuardChecker();
35
+ this.contextRouter = new ContextRouter();
36
+ this.skillAdapter = createSkillAdapter();
41
37
  }
42
38
  /**
43
39
  * Process a file edit with all enabled checks
@@ -49,7 +45,7 @@ class BollharnessIntegration {
49
45
  // Run guards if enabled
50
46
  if (this.config.guardsEnabled) {
51
47
  try {
52
- guards = await (0, guard_checker_js_1.runGuards)(filePath);
48
+ guards = await runGuards(filePath);
53
49
  if (!guards.passed) {
54
50
  errors.push(...guards.findings.map(f => f.message));
55
51
  }
@@ -82,7 +78,7 @@ class BollharnessIntegration {
82
78
  let guards;
83
79
  if (this.config.guardsEnabled) {
84
80
  try {
85
- guards = await (0, guard_checker_js_1.runGuards)(filePath);
81
+ guards = await runGuards(filePath);
86
82
  if (!guards.passed && guards.blockingCount > 0) {
87
83
  errors.push(...guards.findings
88
84
  .filter(f => f.blocking)
@@ -346,17 +342,16 @@ class BollharnessIntegration {
346
342
  this.currentSessionId = sessionId;
347
343
  }
348
344
  }
349
- exports.BollharnessIntegration = BollharnessIntegration;
350
345
  /**
351
346
  * Create a default integration instance
352
347
  */
353
- function createBollharnessIntegration(config) {
348
+ export function createBollharnessIntegration(config) {
354
349
  return new BollharnessIntegration(config);
355
350
  }
356
351
  /**
357
352
  * Integration hooks for Bolloon's execution pipeline
358
353
  */
359
- class BollharnessHooks {
354
+ export class BollharnessHooks {
360
355
  integration;
361
356
  constructor(integration) {
362
357
  this.integration = integration || new BollharnessIntegration();
@@ -423,5 +418,3 @@ class BollharnessHooks {
423
418
  console.log('[Bollharness] Session ended', JSON.stringify(metrics, null, 2));
424
419
  }
425
420
  }
426
- exports.BollharnessHooks = BollharnessHooks;
427
- //# sourceMappingURL=integration.js.map
@@ -0,0 +1,569 @@
1
+ /**
2
+ * LLM-native Judgment Engine
3
+ *
4
+ * 核心理念:
5
+ * - 不使用关键词匹配,而是让 LLM 理解用户意图
6
+ * - 价值观注入:学习人类判断价值观,注入到 Prompt 中
7
+ * - Skills 可以被动态调用
8
+ *
9
+ * 架构:
10
+ * 1. LLM-as-Judge: 使用 LLM 执行真正的理解
11
+ * 2. Value Injection: 从 human-value-store 获取价值观注入
12
+ * 3. Dynamic-Skill-Routing: 根据判断结果动态调用 Skills
13
+ */
14
+ import { createBollharnessIntegration } from './integration.js';
15
+ import { generateJudgmentPromptWithValues } from '../pi-ecosystem-judgment/value-injection.js';
16
+ import { learnFromFeedback, learnFromCorrection } from '../pi-ecosystem-judgment/human-value-store.js';
17
+ import { initPiAI, getModel, isModelAvailable } from '../llm/pi-ai.js';
18
+ import { getPiSDKConfig } from '../llm/config-store.js';
19
+ /**
20
+ * 判断用的 Prompt 模板(可以从 YAML 加载)
21
+ */
22
+ export const JUDGMENT_PROMPT_TEMPLATE = `你是一个专业的 AI 任务分析专家。你的职责是深入理解用户的问题,并给出精准的判断。
23
+
24
+ 【输入】
25
+ {user_input}
26
+
27
+ 【历史上下文】
28
+ {history_context}
29
+
30
+ 请分析以上输入,回答以下问题:
31
+
32
+ ## 1. 问题理解
33
+
34
+ **问题本质**:用户真正想要什么?这是什么类型的问题?
35
+ - how-to: 寻求操作指导
36
+ - why: 寻求解释
37
+ - what: 寻求定义
38
+ - should: 寻求建议
39
+ - feasibility: 寻求可行性评估
40
+
41
+ **核心需求**:用户最想要的结果是什么?
42
+
43
+ **隐含信息**:有什么用户没有明确说但需要考虑的因素?
44
+ - 时间压力?
45
+ - 质量要求?
46
+ - 风险限制?
47
+ - 团队协作?
48
+
49
+ ## 2. 复杂性评估
50
+
51
+ **复杂性等级**:这个问题有多复杂?
52
+ - simple: 简单任务,直接可答
53
+ - moderate: 中等复杂,需要一定思考
54
+ - complex: 复杂问题,需要深入分析
55
+ - profound: 深刻问题,需要本质性思考
56
+
57
+ **评估理由**:为什么认为这是这个复杂性等级?
58
+
59
+ **深度**:需要多深的理解?
60
+ - surface: 表面理解即可
61
+ - deeper: 需要分析
62
+ - fundamental: 需要本质性思考
63
+
64
+ ## 3. 处理决策
65
+
66
+ **推荐方式**:
67
+ - answer: 直接回答
68
+ - analyze: 深入分析
69
+ - design: 设计方案
70
+ - implement: 实现代码
71
+ - coordinate: 协调多智能体
72
+
73
+ **决策理由**:为什么推荐这个处理方式?
74
+
75
+ ## 4. 路由决策
76
+
77
+ **应该调用的 Skills**(可选多个):
78
+ - arch: 架构设计
79
+ - harness-dev: 开发实现
80
+ - guardian-fixer: 代码审查
81
+ - harness-eng: 工程协调
82
+ - harness-eng-test: 测试工程
83
+ - task-arch: 任务分解
84
+ - crystal-learn: 反思学习
85
+
86
+ **参与智能体**(可选):
87
+ - architect: 架构师
88
+ - developer: 开发者
89
+ - reviewer: 审查员
90
+ - coordinator: 协调者
91
+
92
+ **协作模式**:
93
+ - solo: 单独处理
94
+ - pair: 配对协作
95
+ - team: 团队协作
96
+
97
+ ## 5. 产出要求
98
+
99
+ **需要的产物**:
100
+ - 问题分析
101
+ - 方案设计
102
+ - 代码实现
103
+ - 测试用例
104
+ - 其他
105
+
106
+ **Gate 建议**(如果有):
107
+ - Gate 0: 问题锁定
108
+ - Gate 1: 架构设计
109
+ - Gate 2: 架构审查
110
+ - Gate 3: 计划制定
111
+ - Gate 4: 计划审查
112
+ - Gate 5: 任务分解
113
+ - Gate 6: 任务审查
114
+ - Gate 7: 代码实现
115
+ - Gate 8: 测试验证
116
+
117
+ 请用 JSON 格式输出分析结果。`;
118
+ /**
119
+ * LLM-native Judgment Engine
120
+ */
121
+ export class LLMJudgmentEngine {
122
+ harness;
123
+ promptTemplate;
124
+ useLLM;
125
+ valueInjectionConfig;
126
+ recentJudgments = [];
127
+ constructor(options) {
128
+ this.harness = createBollharnessIntegration();
129
+ this.promptTemplate = options?.promptTemplate || JUDGMENT_PROMPT_TEMPLATE;
130
+ this.useLLM = options?.useLLM ?? true;
131
+ this.valueInjectionConfig = options?.valueInjectionConfig || {};
132
+ }
133
+ /**
134
+ * 设置判断用的 Prompt 模板
135
+ */
136
+ setPromptTemplate(template) {
137
+ this.promptTemplate = template;
138
+ }
139
+ /**
140
+ * 设置价值观注入配置
141
+ */
142
+ setValueInjectionConfig(config) {
143
+ this.valueInjectionConfig = config;
144
+ }
145
+ /**
146
+ * 从配置文件加载 Prompt
147
+ */
148
+ async loadPromptFromConfig(configPath) {
149
+ // TODO: 从 YAML/JSON 加载 prompt 模板
150
+ // 这个配置可以包含更复杂的 prompt 变体
151
+ }
152
+ /**
153
+ * 执行 LLM 判断(集成价值观注入)
154
+ */
155
+ async judge(userInput, options) {
156
+ // 如果强制不使用 LLM 或未配置,使用简化判断
157
+ if (!this.useLLM && !options?.forceLLM) {
158
+ return this.quickJudge(userInput);
159
+ }
160
+ // 构建 prompt(带价值观注入)
161
+ const historyContext = options?.history
162
+ ? options.history.slice(-5).join('\n')
163
+ : '无历史上下文';
164
+ const context = options?.context || userInput;
165
+ // 生成带价值观的 prompt
166
+ let prompt;
167
+ try {
168
+ prompt = await generateJudgmentPromptWithValues(userInput, context, options?.history || [], this.valueInjectionConfig);
169
+ }
170
+ catch (error) {
171
+ // 价值观注入失败,使用基础 prompt
172
+ console.warn('[LLMJudgment] Value injection failed, using base prompt:', error);
173
+ prompt = this.promptTemplate
174
+ .replace('{user_input}', userInput)
175
+ .replace('{history_context}', historyContext);
176
+ }
177
+ try {
178
+ // 调用 LLM(这里需要集成 LLMConfigStore)
179
+ const result = await this.callLLM(prompt);
180
+ // 解析 LLM 输出
181
+ const judgmentResult = this.parseLLMOutput(result, userInput);
182
+ // 记录判断结果(用于学习)
183
+ this.recordJudgment(userInput, judgmentResult);
184
+ return judgmentResult;
185
+ }
186
+ catch (error) {
187
+ console.warn('[LLMJudgment] LLM call failed, falling back to quick judgment:', error);
188
+ return this.quickJudge(userInput);
189
+ }
190
+ }
191
+ /**
192
+ * 记录判断结果(支持后续学习)
193
+ */
194
+ recordJudgment(input, result) {
195
+ this.recentJudgments.push({
196
+ input,
197
+ result,
198
+ timestamp: Date.now()
199
+ });
200
+ // 保留最近 50 条判断
201
+ if (this.recentJudgments.length > 50) {
202
+ this.recentJudgments.shift();
203
+ }
204
+ }
205
+ /**
206
+ * 学习人类反馈(集成到判断引擎)
207
+ */
208
+ async learnFromHumanFeedback(originalInput, approved, reason) {
209
+ // 从反馈中学习
210
+ await learnFromFeedback(originalInput, approved, reason);
211
+ // 重新评估相关判断的置信度
212
+ const relatedJudgment = this.recentJudgments.find(j => j.input.includes(originalInput.substring(0, 20)));
213
+ if (relatedJudgment && !approved) {
214
+ // 如果被拒绝,降低置信度
215
+ console.log('[LLMJudgment] Learning from rejection, will adjust future judgments');
216
+ }
217
+ }
218
+ /**
219
+ * 学习修正(从错误中学习)
220
+ */
221
+ async learnFromCorrection(original, corrected, reason) {
222
+ await learnFromCorrection(original, corrected, reason);
223
+ }
224
+ /**
225
+ * 调用 LLM
226
+ */
227
+ async callLLM(prompt) {
228
+ if (!isModelAvailable()) {
229
+ const config = getPiSDKConfig();
230
+ initPiAI(config);
231
+ }
232
+ const model = getModel();
233
+ const result = await model.chat(prompt, process.cwd());
234
+ return result.reply;
235
+ }
236
+ /**
237
+ * 解析 LLM 输出
238
+ */
239
+ parseLLMOutput(output, originalInput) {
240
+ try {
241
+ // 尝试解析 JSON
242
+ const parsed = JSON.parse(output);
243
+ return {
244
+ understanding: {
245
+ essence: parsed.essence || parsed.问题本质 || 'unknown',
246
+ coreNeed: parsed.coreNeed || parsed.核心需求 || 'unknown',
247
+ implicit: parsed.implicit || parsed.隐含信息 || []
248
+ },
249
+ assessment: {
250
+ complexity: this.normalizeComplexity(parsed.complexity || parsed.复杂性等级),
251
+ complexityReason: parsed.complexityReason || parsed.评估理由 || '',
252
+ depth: this.normalizeDepth(parsed.depth || parsed.深度),
253
+ urgency: this.normalizeUrgency(parsed.urgency || 'medium')
254
+ },
255
+ decision: {
256
+ approach: this.normalizeApproach(parsed.approach || parsed.推荐方式),
257
+ reasoning: parsed.reasoning || parsed.决策理由 || ''
258
+ },
259
+ routing: {
260
+ skills: parsed.skills || parsed.应该调用的Skills || [],
261
+ agents: parsed.agents || parsed.参与智能体 || [],
262
+ collaboration: this.normalizeCollaboration(parsed.collaboration || parsed.协作模式)
263
+ },
264
+ artifacts: {
265
+ required: parsed.artifacts || parsed.需要的产物 || [],
266
+ gate: parsed.gate || parsed.Gate建议
267
+ },
268
+ raw: output
269
+ };
270
+ }
271
+ catch {
272
+ // JSON 解析失败,返回默认结果
273
+ return this.quickJudge(originalInput);
274
+ }
275
+ }
276
+ /**
277
+ * 快速判断(不调用 LLM)
278
+ */
279
+ quickJudge(userInput) {
280
+ const input = userInput.toLowerCase();
281
+ const words = userInput.length;
282
+ // 复杂性评估
283
+ let complexity = 'moderate';
284
+ let complexityReason = '';
285
+ const hasDesignKeywords = input.includes('设计') || input.includes('架构');
286
+ const hasReviewKeywords = input.includes('review') || input.includes('审查');
287
+ const hasMultiSystem = input.includes('和') || input.includes('以及');
288
+ const hasFundamental = input.includes('为什么') || input.includes('本质') || input.includes('根本');
289
+ if (hasDesignKeywords || hasMultiSystem || words > 200) {
290
+ complexity = 'complex';
291
+ complexityReason = '涉及设计或多系统';
292
+ }
293
+ if (hasFundamental || (words > 500 && hasDesignKeywords)) {
294
+ complexity = 'profound';
295
+ complexityReason = '需要本质性思考';
296
+ }
297
+ if (words < 50 && !hasDesignKeywords) {
298
+ complexity = 'simple';
299
+ complexityReason = '简短输入,意图明确';
300
+ }
301
+ // 处理方式
302
+ let approach = 'answer';
303
+ if (hasDesignKeywords)
304
+ approach = 'design';
305
+ else if (hasReviewKeywords || input.includes('分析'))
306
+ approach = 'analyze';
307
+ else if (input.includes('实现') || input.includes('写'))
308
+ approach = 'implement';
309
+ // Skills
310
+ const skills = [];
311
+ if (hasDesignKeywords)
312
+ skills.push('arch');
313
+ if (hasReviewKeywords)
314
+ skills.push('guardian-fixer');
315
+ if (approach === 'implement')
316
+ skills.push('harness-dev');
317
+ if (complexity === 'complex' || complexity === 'profound') {
318
+ skills.push('harness-eng');
319
+ }
320
+ // 协作模式
321
+ const collaboration = complexity === 'profound' ? 'team' :
322
+ complexity === 'complex' ? 'pair' : 'solo';
323
+ return {
324
+ understanding: {
325
+ essence: this.extractEssence(input),
326
+ coreNeed: this.extractCoreNeed(input),
327
+ implicit: []
328
+ },
329
+ assessment: {
330
+ complexity,
331
+ complexityReason,
332
+ depth: hasFundamental ? 'fundamental' : 'surface',
333
+ urgency: input.includes('紧急') ? 'high' : 'medium'
334
+ },
335
+ decision: {
336
+ approach,
337
+ reasoning: '基于快速模式判断'
338
+ },
339
+ routing: {
340
+ skills,
341
+ agents: [],
342
+ collaboration
343
+ },
344
+ artifacts: {
345
+ required: approach === 'design' ? ['架构文档'] : ['回答']
346
+ }
347
+ };
348
+ }
349
+ normalizeComplexity(c) {
350
+ const lower = c.toLowerCase();
351
+ if (lower.includes('simple') || lower.includes('简单'))
352
+ return 'simple';
353
+ if (lower.includes('moderate') || lower.includes('中等'))
354
+ return 'moderate';
355
+ if (lower.includes('complex') || lower.includes('复杂'))
356
+ return 'complex';
357
+ return 'profound';
358
+ }
359
+ normalizeDepth(d) {
360
+ const lower = d.toLowerCase();
361
+ if (lower.includes('surface') || lower.includes('表面'))
362
+ return 'surface';
363
+ if (lower.includes('deeper') || lower.includes('深入'))
364
+ return 'deeper';
365
+ return 'fundamental';
366
+ }
367
+ normalizeUrgency(u) {
368
+ const lower = u.toLowerCase();
369
+ if (lower.includes('low') || lower.includes('低'))
370
+ return 'low';
371
+ if (lower.includes('high') || lower.includes('高') || lower.includes('紧急'))
372
+ return 'high';
373
+ if (lower.includes('critical') || lower.includes('关键'))
374
+ return 'critical';
375
+ return 'medium';
376
+ }
377
+ normalizeApproach(a) {
378
+ const lower = a.toLowerCase();
379
+ if (lower.includes('answer') || lower.includes('回答'))
380
+ return 'answer';
381
+ if (lower.includes('analyze') || lower.includes('分析'))
382
+ return 'analyze';
383
+ if (lower.includes('design') || lower.includes('设计'))
384
+ return 'design';
385
+ if (lower.includes('implement') || lower.includes('实现'))
386
+ return 'implement';
387
+ return 'coordinate';
388
+ }
389
+ normalizeCollaboration(c) {
390
+ const lower = c.toLowerCase();
391
+ if (lower.includes('solo') || lower.includes('单独'))
392
+ return 'solo';
393
+ if (lower.includes('pair') || lower.includes('配对'))
394
+ return 'pair';
395
+ return 'team';
396
+ }
397
+ extractEssence(input) {
398
+ if (input.includes('为什么'))
399
+ return 'why: 寻求解释';
400
+ if (input.includes('怎么') || input.includes('如何'))
401
+ return 'how-to: 寻求指导';
402
+ if (input.includes('应该'))
403
+ return 'should: 寻求建议';
404
+ return 'general: 一般性讨论';
405
+ }
406
+ extractCoreNeed(input) {
407
+ const lower = input.toLowerCase();
408
+ if (lower.includes('设计') || lower.includes('架构'))
409
+ return '设计方案';
410
+ if (lower.includes('实现') || lower.includes('写'))
411
+ return '实现代码';
412
+ if (lower.includes('修复') || lower.includes('解决'))
413
+ return '修复问题';
414
+ if (lower.includes('review') || lower.includes('审查'))
415
+ return '审查代码';
416
+ return '获得帮助';
417
+ }
418
+ }
419
+ // 单例
420
+ let engineInstance = null;
421
+ export function createLLMJudgmentEngine(options) {
422
+ return new LLMJudgmentEngine(options);
423
+ }
424
+ export function getLLMJudgmentEngine() {
425
+ if (!engineInstance) {
426
+ engineInstance = new LLMJudgmentEngine();
427
+ }
428
+ return engineInstance;
429
+ }
430
+ /**
431
+ * Skills 的 Prompt 配置
432
+ */
433
+ export const SKILL_PROMPTS = {
434
+ arch: {
435
+ name: 'arch',
436
+ description: '架构设计专家',
437
+ systemPrompt: `你是一个经验丰富的系统架构师。你擅长:
438
+ - 从需求中提取本质问题
439
+ - 设计可扩展的系统架构
440
+ - 权衡技术方案
441
+ - 识别架构风险
442
+
443
+ 你相信:
444
+ - 本质和实现必须分离
445
+ - 好的架构从简单规则中生长
446
+ - 复杂性应该被控制而非消除`,
447
+ userPromptTemplate: `用户需求:{user_input}
448
+
449
+ {context}
450
+
451
+ 请进行架构分析:`,
452
+ examples: [
453
+ {
454
+ input: '设计一个电商系统',
455
+ output: '我将首先分析电商系统的核心本质:交易撮合...'
456
+ }
457
+ ],
458
+ outputFormat: 'markdown'
459
+ },
460
+ 'harness-dev': {
461
+ name: 'harness-dev',
462
+ description: '开发实现专家',
463
+ systemPrompt: `你是一个高效的代码实现专家。你擅长:
464
+ - 快速理解和实现需求
465
+ - 编写清晰、可维护的代码
466
+ - 遵循最佳实践
467
+ - 处理边界情况
468
+
469
+ 你相信:
470
+ - 代码即文档
471
+ - 测试是代码的一部分
472
+ - 简单优于复杂`,
473
+ userPromptTemplate: `任务:{user_input}
474
+
475
+ 技术栈:{tech_stack}
476
+
477
+ 请实现代码:`,
478
+ outputFormat: 'code'
479
+ },
480
+ 'guardian-fixer': {
481
+ name: 'guardian-fixer',
482
+ description: '代码审查专家',
483
+ systemPrompt: `你是一个严格的代码审查专家。你擅长:
484
+ - 发现潜在问题
485
+ - 提出改进建议
486
+ - 确保代码质量
487
+ - 平衡效率和安全性
488
+
489
+ 你相信:
490
+ - 细节决定成败
491
+ - 代码审查是质量保障的最后防线
492
+ - 建设性批评比否定更有价值`,
493
+ userPromptTemplate: `代码:\n{code}
494
+
495
+ 审查范围:{scope}
496
+
497
+ 请进行审查:`,
498
+ outputFormat: 'structured'
499
+ }
500
+ };
501
+ /**
502
+ * 动态 Skill 调用器
503
+ */
504
+ export class DynamicSkillRouter {
505
+ skillPrompts;
506
+ judgmentEngine;
507
+ constructor(options) {
508
+ this.skillPrompts = SKILL_PROMPTS;
509
+ this.judgmentEngine = createLLMJudgmentEngine({ useLLM: options?.useLLM ?? true });
510
+ }
511
+ /**
512
+ * 根据判断结果动态调用 Skills
513
+ */
514
+ async routeAndExecute(userInput, judgment, context) {
515
+ const results = {};
516
+ // 并行执行多个 Skills
517
+ const skillPromises = judgment.routing.skills.map(async (skillName) => {
518
+ const skillConfig = this.skillPrompts[skillName];
519
+ if (!skillConfig) {
520
+ console.warn(`[SkillRouter] Unknown skill: ${skillName}`);
521
+ return { skill: skillName, result: null };
522
+ }
523
+ try {
524
+ const result = await this.executeSkill(skillConfig, userInput, context);
525
+ return { skill: skillName, result };
526
+ }
527
+ catch (error) {
528
+ console.error(`[SkillRouter] Skill ${skillName} failed:`, error);
529
+ return { skill: skillName, result: null, error };
530
+ }
531
+ });
532
+ const skillResults = await Promise.all(skillPromises);
533
+ for (const { skill, result, error } of skillResults) {
534
+ results[skill] = result || { error: String(error) };
535
+ }
536
+ return results;
537
+ }
538
+ /**
539
+ * 执行单个 Skill
540
+ */
541
+ async executeSkill(skillConfig, userInput, context) {
542
+ // 构建 prompt
543
+ let prompt = skillConfig.userPromptTemplate.replace('{user_input}', userInput);
544
+ if (context) {
545
+ for (const [key, value] of Object.entries(context)) {
546
+ prompt = prompt.replace(`{${key}}`, String(value));
547
+ }
548
+ }
549
+ // TODO: 调用 LLM 执行 Skill
550
+ // 这里需要集成实际的 LLM 调用
551
+ return `Skill ${skillConfig.name} executed with prompt:\n${prompt}`;
552
+ }
553
+ /**
554
+ * 添加自定义 Skill
555
+ */
556
+ registerSkill(name, config) {
557
+ this.skillPrompts[name] = config;
558
+ }
559
+ /**
560
+ * 获取可用的 Skills
561
+ */
562
+ listSkills() {
563
+ return Object.keys(this.skillPrompts);
564
+ }
565
+ }
566
+ // 导出工厂函数
567
+ export function createDynamicSkillRouter(options) {
568
+ return new DynamicSkillRouter(options);
569
+ }