principles-disciple 1.8.1 → 1.8.3

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 (508) hide show
  1. package/ADVANCED_CONFIG_ZH.md +97 -0
  2. package/AGENT_INSTALL.md +173 -0
  3. package/AGENT_INSTALL_EN.md +173 -0
  4. package/INSTALL.md +256 -0
  5. package/SKILL.md +63 -0
  6. package/docs/COMMAND_REFERENCE.md +76 -0
  7. package/docs/COMMAND_REFERENCE_EN.md +79 -0
  8. package/esbuild.config.js +75 -0
  9. package/openclaw.plugin.json +4 -4
  10. package/package.json +11 -13
  11. package/scripts/build-web.mjs +46 -0
  12. package/scripts/install-dependencies.cjs +47 -0
  13. package/scripts/sync-plugin.mjs +802 -0
  14. package/scripts/verify-build.mjs +109 -0
  15. package/src/agents/nocturnal-dreamer.md +152 -0
  16. package/src/agents/nocturnal-philosopher.md +138 -0
  17. package/src/agents/nocturnal-reflector.md +126 -0
  18. package/src/agents/nocturnal-scribe.md +164 -0
  19. package/src/commands/capabilities.ts +85 -0
  20. package/{dist/commands/context.js → src/commands/context.ts} +78 -38
  21. package/src/commands/evolution-status.ts +146 -0
  22. package/src/commands/export.ts +111 -0
  23. package/src/commands/focus.ts +533 -0
  24. package/src/commands/nocturnal-review.ts +311 -0
  25. package/src/commands/nocturnal-rollout.ts +763 -0
  26. package/src/commands/nocturnal-train.ts +1002 -0
  27. package/{dist/commands/pain.js → src/commands/pain.ts} +68 -49
  28. package/src/commands/principle-rollback.ts +27 -0
  29. package/{dist/commands/rollback.js → src/commands/rollback.ts} +44 -12
  30. package/src/commands/samples.ts +60 -0
  31. package/src/commands/strategy.ts +38 -0
  32. package/{dist/commands/thinking-os.js → src/commands/thinking-os.ts} +59 -36
  33. package/src/commands/workflow-debug.ts +128 -0
  34. package/{dist/config/defaults/runtime.js → src/config/defaults/runtime.ts} +12 -5
  35. package/src/config/errors.ts +163 -0
  36. package/{dist/config/index.d.ts → src/config/index.ts} +2 -1
  37. package/src/constants/diagnostician.ts +66 -0
  38. package/src/constants/tools.ts +62 -0
  39. package/src/core/adaptive-thresholds.ts +476 -0
  40. package/{dist/core/config-service.js → src/core/config-service.ts} +7 -4
  41. package/{dist/core/config.js → src/core/config.ts} +158 -46
  42. package/src/core/control-ui-db.ts +435 -0
  43. package/{dist/core/detection-funnel.js → src/core/detection-funnel.ts} +36 -21
  44. package/{dist/core/detection-service.js → src/core/detection-service.ts} +7 -4
  45. package/{dist/core/dictionary-service.js → src/core/dictionary-service.ts} +7 -4
  46. package/{dist/core/dictionary.js → src/core/dictionary.ts} +57 -34
  47. package/src/core/empathy-keyword-matcher.ts +327 -0
  48. package/src/core/empathy-types.ts +218 -0
  49. package/src/core/event-log.ts +544 -0
  50. package/src/core/evolution-engine.ts +612 -0
  51. package/src/core/evolution-logger.ts +353 -0
  52. package/src/core/evolution-migration.ts +77 -0
  53. package/src/core/evolution-reducer.ts +731 -0
  54. package/src/core/evolution-types.ts +456 -0
  55. package/src/core/external-training-contract.ts +527 -0
  56. package/src/core/focus-history.ts +1458 -0
  57. package/src/core/hygiene/tracker.ts +117 -0
  58. package/{dist/core/init.js → src/core/init.ts} +39 -26
  59. package/src/core/local-worker-routing.ts +617 -0
  60. package/{dist/core/migration.js → src/core/migration.ts} +18 -11
  61. package/src/core/model-deployment-registry.ts +722 -0
  62. package/src/core/model-training-registry.ts +813 -0
  63. package/src/core/nocturnal-arbiter.ts +706 -0
  64. package/src/core/nocturnal-candidate-scoring.ts +392 -0
  65. package/src/core/nocturnal-compliance.ts +1075 -0
  66. package/src/core/nocturnal-dataset.ts +668 -0
  67. package/src/core/nocturnal-executability.ts +428 -0
  68. package/src/core/nocturnal-export.ts +390 -0
  69. package/{dist/core/nocturnal-paths.js → src/core/nocturnal-paths.ts} +49 -23
  70. package/src/core/nocturnal-trajectory-extractor.ts +484 -0
  71. package/src/core/nocturnal-trinity.ts +1384 -0
  72. package/src/core/pain.ts +122 -0
  73. package/{dist/core/path-resolver.js → src/core/path-resolver.ts} +157 -36
  74. package/{dist/core/paths.js → src/core/paths.ts} +13 -4
  75. package/src/core/principle-training-state.ts +450 -0
  76. package/src/core/profile.ts +226 -0
  77. package/src/core/promotion-gate.ts +822 -0
  78. package/{dist/core/risk-calculator.js → src/core/risk-calculator.ts} +42 -16
  79. package/{dist/core/session-tracker.js → src/core/session-tracker.ts} +175 -62
  80. package/src/core/shadow-observation-registry.ts +534 -0
  81. package/{dist/core/system-logger.js → src/core/system-logger.ts} +9 -5
  82. package/src/core/thinking-models.ts +217 -0
  83. package/src/core/training-program.ts +630 -0
  84. package/src/core/trajectory-types.ts +243 -0
  85. package/src/core/trajectory.ts +1673 -0
  86. package/{dist/core/workspace-context.js → src/core/workspace-context.ts} +57 -32
  87. package/src/hooks/bash-risk.ts +171 -0
  88. package/src/hooks/edit-verification.ts +295 -0
  89. package/src/hooks/gate-block-helper.ts +160 -0
  90. package/src/hooks/gate.ts +210 -0
  91. package/src/hooks/gfi-gate.ts +177 -0
  92. package/src/hooks/lifecycle.ts +326 -0
  93. package/{dist/hooks/llm.js → src/hooks/llm.ts} +160 -80
  94. package/src/hooks/message-sanitize.ts +45 -0
  95. package/src/hooks/pain.ts +384 -0
  96. package/src/hooks/progressive-trust-gate.ts +174 -0
  97. package/src/hooks/prompt.ts +920 -0
  98. package/src/hooks/subagent.ts +207 -0
  99. package/src/hooks/thinking-checkpoint.ts +73 -0
  100. package/src/hooks/trajectory-collector.ts +290 -0
  101. package/src/http/principles-console-route.ts +716 -0
  102. package/src/i18n/commands.ts +117 -0
  103. package/src/index.ts +694 -0
  104. package/src/service/central-database.ts +831 -0
  105. package/src/service/control-ui-query-service.ts +888 -0
  106. package/src/service/evolution-query-service.ts +405 -0
  107. package/src/service/evolution-worker.ts +1646 -0
  108. package/src/service/health-query-service.ts +836 -0
  109. package/{dist/service/nocturnal-runtime.js → src/service/nocturnal-runtime.ts} +235 -79
  110. package/src/service/nocturnal-service.ts +1015 -0
  111. package/src/service/nocturnal-target-selector.ts +532 -0
  112. package/src/service/phase3-input-filter.ts +237 -0
  113. package/src/service/runtime-summary-service.ts +757 -0
  114. package/src/service/subagent-workflow/deep-reflect-workflow-manager.ts +513 -0
  115. package/{dist/service/subagent-workflow/empathy-observer-workflow-manager.js → src/service/subagent-workflow/empathy-observer-workflow-manager.ts} +240 -117
  116. package/src/service/subagent-workflow/index.ts +51 -0
  117. package/src/service/subagent-workflow/nocturnal-workflow-manager.ts +856 -0
  118. package/src/service/subagent-workflow/runtime-direct-driver.ts +166 -0
  119. package/{dist/service/subagent-workflow/types.d.ts → src/service/subagent-workflow/types.ts} +137 -18
  120. package/src/service/subagent-workflow/workflow-store.ts +328 -0
  121. package/src/service/trajectory-service.ts +15 -0
  122. package/{dist/tools/critique-prompt.js → src/tools/critique-prompt.ts} +25 -8
  123. package/src/tools/deep-reflect.ts +349 -0
  124. package/{dist/tools/model-index.js → src/tools/model-index.ts} +33 -17
  125. package/src/types/event-types.ts +453 -0
  126. package/src/types/hygiene-types.ts +31 -0
  127. package/src/types/principle-tree-schema.ts +244 -0
  128. package/src/types/runtime-summary.ts +49 -0
  129. package/src/types.ts +74 -0
  130. package/src/utils/file-lock.ts +391 -0
  131. package/{dist/utils/glob-match.js → src/utils/glob-match.ts} +21 -20
  132. package/{dist/utils/hashing.js → src/utils/hashing.ts} +6 -4
  133. package/src/utils/io.ts +110 -0
  134. package/{dist/utils/nlp.js → src/utils/nlp.ts} +19 -12
  135. package/{dist/utils/plugin-logger.js → src/utils/plugin-logger.ts} +33 -8
  136. package/src/utils/subagent-probe.ts +94 -0
  137. package/templates/langs/en/skills/ai-sprint-orchestration/EXAMPLES.md +63 -0
  138. package/templates/langs/en/skills/ai-sprint-orchestration/REFERENCE.md +136 -0
  139. package/templates/langs/en/skills/ai-sprint-orchestration/SKILL.md +67 -0
  140. package/templates/langs/en/skills/ai-sprint-orchestration/references/agent-registry.json +214 -0
  141. package/templates/langs/en/skills/ai-sprint-orchestration/references/specs/bugfix-complex-template.json +107 -0
  142. package/templates/langs/en/skills/ai-sprint-orchestration/references/specs/feature-complex-template.json +107 -0
  143. package/templates/langs/en/skills/ai-sprint-orchestration/references/specs/workflow-validation-minimal-verify.json +105 -0
  144. package/templates/langs/en/skills/ai-sprint-orchestration/references/specs/workflow-validation-minimal.json +108 -0
  145. package/templates/langs/en/skills/ai-sprint-orchestration/references/workflow-v1-acceptance-checklist.md +58 -0
  146. package/templates/langs/en/skills/ai-sprint-orchestration/references/workflow-v1.4-work-unit-handoff.md +190 -0
  147. package/templates/langs/en/skills/ai-sprint-orchestration/runtime/.gitignore +2 -0
  148. package/templates/langs/en/skills/ai-sprint-orchestration/scripts/lib/archive.mjs +310 -0
  149. package/templates/langs/en/skills/ai-sprint-orchestration/scripts/lib/contract-enforcement.mjs +683 -0
  150. package/templates/langs/en/skills/ai-sprint-orchestration/scripts/lib/decision.mjs +604 -0
  151. package/templates/langs/en/skills/ai-sprint-orchestration/scripts/lib/state-store.mjs +32 -0
  152. package/templates/langs/en/skills/ai-sprint-orchestration/scripts/lib/task-specs.mjs +707 -0
  153. package/templates/langs/en/skills/ai-sprint-orchestration/scripts/run.mjs +3419 -0
  154. package/templates/langs/zh/skills/ai-sprint-orchestration/EXAMPLES.md +63 -0
  155. package/templates/langs/zh/skills/ai-sprint-orchestration/REFERENCE.md +136 -0
  156. package/templates/langs/zh/skills/ai-sprint-orchestration/SKILL.md +67 -0
  157. package/templates/langs/zh/skills/ai-sprint-orchestration/references/agent-registry.json +214 -0
  158. package/templates/langs/zh/skills/ai-sprint-orchestration/references/specs/bugfix-complex-template.json +107 -0
  159. package/templates/langs/zh/skills/ai-sprint-orchestration/references/specs/feature-complex-template.json +107 -0
  160. package/templates/langs/zh/skills/ai-sprint-orchestration/references/specs/workflow-validation-minimal-verify.json +105 -0
  161. package/templates/langs/zh/skills/ai-sprint-orchestration/references/specs/workflow-validation-minimal.json +108 -0
  162. package/templates/langs/zh/skills/ai-sprint-orchestration/references/workflow-v1-acceptance-checklist.md +58 -0
  163. package/templates/langs/zh/skills/ai-sprint-orchestration/references/workflow-v1.4-work-unit-handoff.md +190 -0
  164. package/templates/langs/zh/skills/ai-sprint-orchestration/runtime/.gitignore +2 -0
  165. package/templates/langs/zh/skills/ai-sprint-orchestration/scripts/lib/archive.mjs +310 -0
  166. package/templates/langs/zh/skills/ai-sprint-orchestration/scripts/lib/contract-enforcement.mjs +683 -0
  167. package/templates/langs/zh/skills/ai-sprint-orchestration/scripts/lib/decision.mjs +604 -0
  168. package/templates/langs/zh/skills/ai-sprint-orchestration/scripts/lib/state-store.mjs +32 -0
  169. package/templates/langs/zh/skills/ai-sprint-orchestration/scripts/lib/task-specs.mjs +707 -0
  170. package/templates/langs/zh/skills/ai-sprint-orchestration/scripts/run.mjs +3419 -0
  171. package/templates/langs/zh/skills/ai-sprint-orchestration/test/archive.test.mjs +230 -0
  172. package/templates/langs/zh/skills/ai-sprint-orchestration/test/contract-enforcement.test.mjs +672 -0
  173. package/templates/langs/zh/skills/ai-sprint-orchestration/test/decision.test.mjs +1321 -0
  174. package/templates/langs/zh/skills/ai-sprint-orchestration/test/run.test.mjs +1419 -0
  175. package/templates/langs/zh/skills/pd-diagnostician/SKILL.md +70 -1
  176. package/templates/pain_settings.json +2 -1
  177. package/tests/README.md +120 -0
  178. package/tests/build-artifacts.test.ts +111 -0
  179. package/tests/commands/evolution-status.test.ts +222 -0
  180. package/tests/commands/evolver.test.ts +22 -0
  181. package/tests/commands/export.test.ts +78 -0
  182. package/tests/commands/nocturnal-review.test.ts +448 -0
  183. package/tests/commands/nocturnal-train.test.ts +97 -0
  184. package/tests/commands/pain.test.ts +108 -0
  185. package/tests/commands/samples.test.ts +65 -0
  186. package/tests/commands/strategy.test.ts +34 -0
  187. package/tests/commands/thinking-os.test.ts +88 -0
  188. package/tests/core/adaptive-thresholds.test.ts +261 -0
  189. package/tests/core/config-service.test.ts +89 -0
  190. package/tests/core/config.test.ts +90 -0
  191. package/tests/core/control-ui-db.test.ts +75 -0
  192. package/tests/core/core-template-guidance.test.ts +21 -0
  193. package/tests/core/detection-funnel.test.ts +63 -0
  194. package/tests/core/detection-service.test.ts +50 -0
  195. package/tests/core/dictionary-service.test.ts +116 -0
  196. package/tests/core/dictionary.test.ts +168 -0
  197. package/tests/core/empathy-keyword-matcher.test.ts +209 -0
  198. package/tests/core/event-log.test.ts +181 -0
  199. package/tests/core/evolution-e2e.test.ts +58 -0
  200. package/tests/core/evolution-engine-gate-integration.test.ts +543 -0
  201. package/tests/core/evolution-engine.test.ts +562 -0
  202. package/tests/core/evolution-logger.test.ts +148 -0
  203. package/tests/core/evolution-migration.test.ts +50 -0
  204. package/tests/core/evolution-paths.test.ts +21 -0
  205. package/tests/core/evolution-reducer.detector-metadata.test.ts +602 -0
  206. package/tests/core/evolution-reducer.test.ts +180 -0
  207. package/tests/core/evolution-types-loop.test.ts +48 -0
  208. package/tests/core/evolution-user-stories.e2e.test.ts +249 -0
  209. package/tests/core/external-training-contract.test.ts +463 -0
  210. package/tests/core/focus-history.test.ts +682 -0
  211. package/tests/core/init-flatten.test.ts +69 -0
  212. package/tests/core/init-refactor.test.ts +87 -0
  213. package/tests/core/init-v1.3.test.ts +46 -0
  214. package/tests/core/init.test.ts +190 -0
  215. package/tests/core/local-worker-routing.test.ts +757 -0
  216. package/tests/core/migration.test.ts +84 -0
  217. package/tests/core/model-deployment-registry.test.ts +845 -0
  218. package/tests/core/model-training-registry.test.ts +889 -0
  219. package/tests/core/nocturnal-arbiter.test.ts +494 -0
  220. package/tests/core/nocturnal-candidate-scoring.test.ts +400 -0
  221. package/tests/core/nocturnal-compliance.test.ts +646 -0
  222. package/tests/core/nocturnal-dataset.test.ts +892 -0
  223. package/tests/core/nocturnal-executability.test.ts +357 -0
  224. package/tests/core/nocturnal-export.test.ts +462 -0
  225. package/tests/core/nocturnal-reviewed-subset-comparison.test.ts +428 -0
  226. package/tests/core/nocturnal-trajectory-extractor.test.ts +634 -0
  227. package/tests/core/nocturnal-trinity.test.ts +953 -0
  228. package/tests/core/pain.test.ts +33 -0
  229. package/tests/core/path-resolver.test.ts +57 -0
  230. package/tests/core/paths-refactor.test.ts +42 -0
  231. package/tests/core/phase7-rollout-integration.test.ts +477 -0
  232. package/tests/core/principle-training-state.test.ts +712 -0
  233. package/tests/core/profile.test.ts +56 -0
  234. package/tests/core/promotion-gate.test.ts +556 -0
  235. package/tests/core/risk-calculator.test.ts +168 -0
  236. package/tests/core/session-tracker.test.ts +191 -0
  237. package/tests/core/training-program.test.ts +472 -0
  238. package/tests/core/trajectory.test.ts +265 -0
  239. package/tests/core/workspace-context-factory.test.ts +18 -0
  240. package/tests/core/workspace-context.test.ts +134 -0
  241. package/tests/fixtures/nocturnal-reviewed-subset.json +183 -0
  242. package/tests/fixtures/production-compatibility.test.ts +147 -0
  243. package/tests/fixtures/production-mock-generator.ts +282 -0
  244. package/tests/hooks/bash-risk-integration.test.ts +137 -0
  245. package/tests/hooks/bash-risk.test.ts +81 -0
  246. package/tests/hooks/edit-verification.test.ts +678 -0
  247. package/tests/hooks/gate-edit-verification-p1.test.ts +632 -0
  248. package/tests/hooks/gate-edit-verification.test.ts +435 -0
  249. package/tests/hooks/gate-pipeline-integration.test.ts +404 -0
  250. package/tests/hooks/gate.test.ts +271 -0
  251. package/tests/hooks/gfi-gate-unit.test.ts +422 -0
  252. package/tests/hooks/gfi-gate.test.ts +669 -0
  253. package/tests/hooks/lifecycle.test.ts +248 -0
  254. package/tests/hooks/llm.test.ts +308 -0
  255. package/tests/hooks/message-sanitize.test.ts +36 -0
  256. package/tests/hooks/pain.test.ts +141 -0
  257. package/tests/hooks/progressive-trust-gate.test.ts +277 -0
  258. package/tests/hooks/prompt.test.ts +1411 -0
  259. package/tests/hooks/subagent.test.ts +467 -0
  260. package/tests/hooks/thinking-gate.test.ts +313 -0
  261. package/tests/http/principles-console-route.test.ts +140 -0
  262. package/tests/hygiene-tracker.test.ts +77 -0
  263. package/tests/index.integration.test.ts +179 -0
  264. package/tests/index.shadow-routing.integration.test.ts +140 -0
  265. package/tests/index.test.ts +9 -0
  266. package/tests/integration/empathy-workflow-integration.test.ts +627 -0
  267. package/tests/service/control-ui-query-service.test.ts +121 -0
  268. package/tests/service/empathy-observer-workflow-manager.test.ts +176 -0
  269. package/tests/service/evolution-worker.test.ts +585 -0
  270. package/tests/service/nocturnal-runtime.test.ts +470 -0
  271. package/tests/service/nocturnal-service.test.ts +577 -0
  272. package/tests/service/nocturnal-target-selector.test.ts +615 -0
  273. package/tests/service/nocturnal-workflow-manager.test.ts +439 -0
  274. package/tests/service/phase3-input-filter.test.ts +289 -0
  275. package/tests/service/runtime-summary-service.test.ts +919 -0
  276. package/tests/task-compliance.test.ts +166 -0
  277. package/tests/test-utils.ts +48 -0
  278. package/tests/tools/critique-prompt.test.ts +260 -0
  279. package/tests/tools/deep-reflect.test.ts +232 -0
  280. package/tests/tools/model-index.test.ts +246 -0
  281. package/tests/ui/app.test.tsx +114 -0
  282. package/tests/utils/file-lock.test.ts +407 -0
  283. package/tests/utils/hashing.test.ts +32 -0
  284. package/tests/utils/io.test.ts +39 -0
  285. package/tests/utils/nlp.test.ts +53 -0
  286. package/tests/utils/plugin-logger.test.ts +156 -0
  287. package/tsconfig.json +16 -0
  288. package/tsconfig.tsbuildinfo +1 -0
  289. package/ui/src/App.tsx +45 -0
  290. package/ui/src/api.ts +216 -0
  291. package/ui/src/charts.tsx +586 -0
  292. package/ui/src/components/ErrorState.tsx +6 -0
  293. package/ui/src/components/Loading.tsx +13 -0
  294. package/ui/src/components/ProtectedRoute.tsx +12 -0
  295. package/ui/src/components/Shell.tsx +91 -0
  296. package/ui/src/components/WorkspaceConfig.tsx +146 -0
  297. package/ui/src/components/index.ts +5 -0
  298. package/ui/src/context/auth.tsx +80 -0
  299. package/ui/src/context/theme.tsx +66 -0
  300. package/ui/src/hooks/useAutoRefresh.ts +39 -0
  301. package/ui/src/i18n/ui.ts +363 -0
  302. package/ui/src/main.tsx +16 -0
  303. package/ui/src/pages/EvolutionPage.tsx +352 -0
  304. package/ui/src/pages/FeedbackPage.tsx +140 -0
  305. package/ui/src/pages/GateMonitorPage.tsx +136 -0
  306. package/ui/src/pages/LoginPage.tsx +88 -0
  307. package/ui/src/pages/OverviewPage.tsx +238 -0
  308. package/ui/src/pages/SamplesPage.tsx +174 -0
  309. package/ui/src/pages/ThinkingModelsPage.tsx +127 -0
  310. package/ui/src/styles.css +1661 -0
  311. package/ui/src/types.ts +368 -0
  312. package/ui/src/utils/format.ts +15 -0
  313. package/vitest.config.ts +23 -0
  314. package/dist/commands/capabilities.d.ts +0 -3
  315. package/dist/commands/capabilities.js +0 -73
  316. package/dist/commands/context.d.ts +0 -5
  317. package/dist/commands/evolution-status.d.ts +0 -4
  318. package/dist/commands/evolution-status.js +0 -117
  319. package/dist/commands/evolver.d.ts +0 -9
  320. package/dist/commands/evolver.js +0 -26
  321. package/dist/commands/export.d.ts +0 -2
  322. package/dist/commands/export.js +0 -98
  323. package/dist/commands/focus.d.ts +0 -14
  324. package/dist/commands/focus.js +0 -457
  325. package/dist/commands/nocturnal-review.d.ts +0 -24
  326. package/dist/commands/nocturnal-review.js +0 -265
  327. package/dist/commands/nocturnal-rollout.d.ts +0 -27
  328. package/dist/commands/nocturnal-rollout.js +0 -671
  329. package/dist/commands/nocturnal-train.d.ts +0 -25
  330. package/dist/commands/nocturnal-train.js +0 -919
  331. package/dist/commands/pain.d.ts +0 -5
  332. package/dist/commands/principle-rollback.d.ts +0 -4
  333. package/dist/commands/principle-rollback.js +0 -22
  334. package/dist/commands/rollback.d.ts +0 -19
  335. package/dist/commands/samples.d.ts +0 -2
  336. package/dist/commands/samples.js +0 -55
  337. package/dist/commands/strategy.d.ts +0 -3
  338. package/dist/commands/strategy.js +0 -29
  339. package/dist/commands/thinking-os.d.ts +0 -2
  340. package/dist/config/defaults/runtime.d.ts +0 -40
  341. package/dist/config/errors.d.ts +0 -84
  342. package/dist/config/errors.js +0 -94
  343. package/dist/config/index.js +0 -7
  344. package/dist/constants/diagnostician.d.ts +0 -12
  345. package/dist/constants/diagnostician.js +0 -56
  346. package/dist/constants/tools.d.ts +0 -17
  347. package/dist/constants/tools.js +0 -54
  348. package/dist/core/adaptive-thresholds.d.ts +0 -186
  349. package/dist/core/adaptive-thresholds.js +0 -300
  350. package/dist/core/config-service.d.ts +0 -15
  351. package/dist/core/config.d.ts +0 -129
  352. package/dist/core/control-ui-db.d.ts +0 -95
  353. package/dist/core/control-ui-db.js +0 -292
  354. package/dist/core/detection-funnel.d.ts +0 -33
  355. package/dist/core/detection-service.d.ts +0 -15
  356. package/dist/core/dictionary-service.d.ts +0 -15
  357. package/dist/core/dictionary.d.ts +0 -38
  358. package/dist/core/event-log.d.ts +0 -82
  359. package/dist/core/event-log.js +0 -463
  360. package/dist/core/evolution-engine.d.ts +0 -118
  361. package/dist/core/evolution-engine.js +0 -464
  362. package/dist/core/evolution-logger.d.ts +0 -137
  363. package/dist/core/evolution-logger.js +0 -256
  364. package/dist/core/evolution-migration.d.ts +0 -5
  365. package/dist/core/evolution-migration.js +0 -65
  366. package/dist/core/evolution-reducer.d.ts +0 -98
  367. package/dist/core/evolution-reducer.js +0 -465
  368. package/dist/core/evolution-types.d.ts +0 -287
  369. package/dist/core/evolution-types.js +0 -78
  370. package/dist/core/external-training-contract.d.ts +0 -276
  371. package/dist/core/external-training-contract.js +0 -269
  372. package/dist/core/focus-history.d.ts +0 -210
  373. package/dist/core/focus-history.js +0 -1185
  374. package/dist/core/hygiene/tracker.d.ts +0 -22
  375. package/dist/core/hygiene/tracker.js +0 -106
  376. package/dist/core/init.d.ts +0 -12
  377. package/dist/core/local-worker-routing.d.ts +0 -175
  378. package/dist/core/local-worker-routing.js +0 -525
  379. package/dist/core/migration.d.ts +0 -6
  380. package/dist/core/model-deployment-registry.d.ts +0 -218
  381. package/dist/core/model-deployment-registry.js +0 -503
  382. package/dist/core/model-training-registry.d.ts +0 -295
  383. package/dist/core/model-training-registry.js +0 -475
  384. package/dist/core/nocturnal-arbiter.d.ts +0 -159
  385. package/dist/core/nocturnal-arbiter.js +0 -534
  386. package/dist/core/nocturnal-candidate-scoring.d.ts +0 -137
  387. package/dist/core/nocturnal-candidate-scoring.js +0 -266
  388. package/dist/core/nocturnal-compliance.d.ts +0 -175
  389. package/dist/core/nocturnal-compliance.js +0 -824
  390. package/dist/core/nocturnal-dataset.d.ts +0 -224
  391. package/dist/core/nocturnal-dataset.js +0 -443
  392. package/dist/core/nocturnal-executability.d.ts +0 -85
  393. package/dist/core/nocturnal-executability.js +0 -331
  394. package/dist/core/nocturnal-export.d.ts +0 -124
  395. package/dist/core/nocturnal-export.js +0 -275
  396. package/dist/core/nocturnal-paths.d.ts +0 -124
  397. package/dist/core/nocturnal-trajectory-extractor.d.ts +0 -242
  398. package/dist/core/nocturnal-trajectory-extractor.js +0 -307
  399. package/dist/core/nocturnal-trinity.d.ts +0 -311
  400. package/dist/core/nocturnal-trinity.js +0 -880
  401. package/dist/core/pain.d.ts +0 -4
  402. package/dist/core/pain.js +0 -70
  403. package/dist/core/path-resolver.d.ts +0 -46
  404. package/dist/core/paths.d.ts +0 -65
  405. package/dist/core/principle-training-state.d.ts +0 -121
  406. package/dist/core/principle-training-state.js +0 -321
  407. package/dist/core/profile.d.ts +0 -62
  408. package/dist/core/profile.js +0 -210
  409. package/dist/core/promotion-gate.d.ts +0 -238
  410. package/dist/core/promotion-gate.js +0 -529
  411. package/dist/core/risk-calculator.d.ts +0 -22
  412. package/dist/core/session-tracker.d.ts +0 -101
  413. package/dist/core/shadow-observation-registry.d.ts +0 -217
  414. package/dist/core/shadow-observation-registry.js +0 -308
  415. package/dist/core/system-logger.d.ts +0 -8
  416. package/dist/core/thinking-models.d.ts +0 -38
  417. package/dist/core/thinking-models.js +0 -170
  418. package/dist/core/training-program.d.ts +0 -233
  419. package/dist/core/training-program.js +0 -433
  420. package/dist/core/trajectory.d.ts +0 -411
  421. package/dist/core/trajectory.js +0 -1307
  422. package/dist/core/workspace-context.d.ts +0 -71
  423. package/dist/hooks/bash-risk.d.ts +0 -57
  424. package/dist/hooks/bash-risk.js +0 -137
  425. package/dist/hooks/edit-verification.d.ts +0 -62
  426. package/dist/hooks/edit-verification.js +0 -256
  427. package/dist/hooks/gate-block-helper.d.ts +0 -44
  428. package/dist/hooks/gate-block-helper.js +0 -119
  429. package/dist/hooks/gate.d.ts +0 -24
  430. package/dist/hooks/gate.js +0 -173
  431. package/dist/hooks/gfi-gate.d.ts +0 -40
  432. package/dist/hooks/gfi-gate.js +0 -113
  433. package/dist/hooks/lifecycle.d.ts +0 -5
  434. package/dist/hooks/lifecycle.js +0 -284
  435. package/dist/hooks/llm.d.ts +0 -13
  436. package/dist/hooks/message-sanitize.d.ts +0 -3
  437. package/dist/hooks/message-sanitize.js +0 -37
  438. package/dist/hooks/pain.d.ts +0 -5
  439. package/dist/hooks/pain.js +0 -301
  440. package/dist/hooks/progressive-trust-gate.d.ts +0 -52
  441. package/dist/hooks/progressive-trust-gate.js +0 -134
  442. package/dist/hooks/prompt.d.ts +0 -49
  443. package/dist/hooks/prompt.js +0 -905
  444. package/dist/hooks/subagent.d.ts +0 -10
  445. package/dist/hooks/subagent.js +0 -387
  446. package/dist/hooks/thinking-checkpoint.d.ts +0 -37
  447. package/dist/hooks/thinking-checkpoint.js +0 -51
  448. package/dist/hooks/trajectory-collector.d.ts +0 -32
  449. package/dist/hooks/trajectory-collector.js +0 -256
  450. package/dist/http/principles-console-route.d.ts +0 -9
  451. package/dist/http/principles-console-route.js +0 -681
  452. package/dist/i18n/commands.d.ts +0 -26
  453. package/dist/i18n/commands.js +0 -116
  454. package/dist/index.d.ts +0 -7
  455. package/dist/index.js +0 -581
  456. package/dist/service/central-database.d.ts +0 -104
  457. package/dist/service/central-database.js +0 -649
  458. package/dist/service/control-ui-query-service.d.ts +0 -221
  459. package/dist/service/control-ui-query-service.js +0 -543
  460. package/dist/service/empathy-observer-manager.d.ts +0 -88
  461. package/dist/service/empathy-observer-manager.js +0 -414
  462. package/dist/service/evolution-query-service.d.ts +0 -155
  463. package/dist/service/evolution-query-service.js +0 -258
  464. package/dist/service/evolution-worker.d.ts +0 -101
  465. package/dist/service/evolution-worker.js +0 -975
  466. package/dist/service/health-query-service.d.ts +0 -170
  467. package/dist/service/health-query-service.js +0 -662
  468. package/dist/service/nocturnal-runtime.d.ts +0 -183
  469. package/dist/service/nocturnal-service.d.ts +0 -163
  470. package/dist/service/nocturnal-service.js +0 -787
  471. package/dist/service/nocturnal-target-selector.d.ts +0 -145
  472. package/dist/service/nocturnal-target-selector.js +0 -315
  473. package/dist/service/phase3-input-filter.d.ts +0 -73
  474. package/dist/service/phase3-input-filter.js +0 -172
  475. package/dist/service/runtime-summary-service.d.ts +0 -122
  476. package/dist/service/runtime-summary-service.js +0 -485
  477. package/dist/service/subagent-workflow/empathy-observer-workflow-manager.d.ts +0 -48
  478. package/dist/service/subagent-workflow/index.d.ts +0 -4
  479. package/dist/service/subagent-workflow/index.js +0 -3
  480. package/dist/service/subagent-workflow/runtime-direct-driver.d.ts +0 -77
  481. package/dist/service/subagent-workflow/runtime-direct-driver.js +0 -75
  482. package/dist/service/subagent-workflow/types.js +0 -11
  483. package/dist/service/subagent-workflow/workflow-store.d.ts +0 -26
  484. package/dist/service/subagent-workflow/workflow-store.js +0 -165
  485. package/dist/service/trajectory-service.d.ts +0 -2
  486. package/dist/service/trajectory-service.js +0 -15
  487. package/dist/tools/critique-prompt.d.ts +0 -14
  488. package/dist/tools/deep-reflect.d.ts +0 -39
  489. package/dist/tools/deep-reflect.js +0 -350
  490. package/dist/tools/model-index.d.ts +0 -9
  491. package/dist/types/event-types.d.ts +0 -306
  492. package/dist/types/event-types.js +0 -106
  493. package/dist/types/hygiene-types.d.ts +0 -20
  494. package/dist/types/hygiene-types.js +0 -12
  495. package/dist/types/runtime-summary.d.ts +0 -47
  496. package/dist/types/runtime-summary.js +0 -1
  497. package/dist/types.d.ts +0 -50
  498. package/dist/types.js +0 -22
  499. package/dist/utils/file-lock.d.ts +0 -71
  500. package/dist/utils/file-lock.js +0 -309
  501. package/dist/utils/glob-match.d.ts +0 -28
  502. package/dist/utils/hashing.d.ts +0 -9
  503. package/dist/utils/io.d.ts +0 -6
  504. package/dist/utils/io.js +0 -106
  505. package/dist/utils/nlp.d.ts +0 -9
  506. package/dist/utils/plugin-logger.d.ts +0 -39
  507. package/dist/utils/subagent-probe.d.ts +0 -34
  508. package/dist/utils/subagent-probe.js +0 -81
@@ -0,0 +1,97 @@
1
+ # 🛠️ Principles Disciple 高阶参数调优指南 (Geek Mode)
2
+
3
+ > 💡 **给 99% 用户的建议**:您完全不需要阅读本文档。插件在默认配置下已经能在“保护代码安全”和“高效执行”之间取得最佳平衡。请直接享受 AI 编程吧!
4
+
5
+ ---
6
+
7
+ 如果您是那 1% 想要精细控制 AI 行为的极客,或者您发现 AI 最近太“怂”了总是拒绝干活,又或者觉得 AI 胆子太大经常改坏代码,那么欢迎来到**引擎核心区**。
8
+
9
+ 当您在一个目录下初始化了本插件后,系统会在该项目下生成一个隐藏配置文件:
10
+ 📂 `.state/pain_settings.json`
11
+
12
+ 修改这个文件,您可以直接改写 AI 的“性格”和“忍耐度”。
13
+
14
+ ## 📖 核心参数字典(说人话版)
15
+
16
+ ### 1. 痛点阈值 (`thresholds`)
17
+ 决定了 AI 遇到多大的挫折才会开始“反思”和“求助”。
18
+
19
+ * `pain_trigger` (默认: 30): **疼痛忍耐度**。当 AI 连续报错积攒的分数超过这个值,就会触发强制反思。调高它(比如 50),AI 就会变得更头铁,拼命尝试修复;调低它(比如 20),AI 一遇到困难就会停下来思考。
20
+ * `stuck_loops_trigger` (默认: 3): **死循环探测器**。如果 AI 连续修改同一个文件 3 次依然报错,系统判定它“卡死了”,会强制干预。
21
+
22
+ ### 2. 挫折评分 (`scores`)
23
+ 这些参数决定了 AI 犯错时“挨打”的力度。分数扣得越狠,AI 越容易进入“只读/保护模式”。
24
+
25
+ * `exit_code_penalty` (默认: 70): **报错惩罚**。只要跑代码报错了,瞬间增加这么多疼痛值。
26
+ * `tool_failure_friction` (默认: 30): **工具使用失败惩罚**。比如试图读取一个不存在的文件。
27
+ * `subagent_error_penalty` (默认: 80): **子系统崩溃惩罚**。这是非常严重的事故,分数很高。
28
+
29
+ ### 3. 时间与频率 (`intervals`)
30
+ * `worker_poll_ms` (默认: 900000 即 15分钟): **后台进化巡检间隔**。系统多久在后台扫描一次报错记录并总结出新规则。一般不需要改。
31
+ * `task_timeout_ms` (默认: 1800000 即 30分钟): **任务超时极限**。
32
+
33
+ ### 4. 信任与权限体系 (`trust`)
34
+ 这是系统的绝对核心。AI 初始有个“信任分”,干得好加分,瞎搞破坏减分。分数对应 4 个阶级(Observer -> Editor -> Developer -> Architect)。阶级越低,AI 受到的限制越多(比如不准写超过 10 行的代码)。
35
+
36
+ * **`stages` (阶级门槛)**:
37
+ * `stage_1_observer` (默认: 30): 低于 30 分,AI 沦为纯“只读”模式,只能帮你查 Bug,不能改代码。
38
+ * `stage_2_editor` (默认: 60): 能改小段代码,不能碰核心区。
39
+ * `stage_3_developer` (默认: 80): 可以修改核心代码,但必须先写 `PLAN.md` 计划书。
40
+ * **`penalties` (扣分项)**:
41
+ * `tool_failure_base` (默认: -8): 报错一次扣 8 分。
42
+ * `risky_failure_base` (默认: -15): 在核心保护区报错,罪加一等,扣 15 分。
43
+ * **`rewards` (加分项)**:
44
+ * `success_base` (默认: 1): 成功干完一个小任务,加 1 分。
45
+ * `streak_bonus` (默认: 5): 连续 5 次成功(连杀奖励),额外加 5 分。
46
+
47
+ ### 5. 元认知深度反思 (`deep_reflection`)
48
+ * `enabled`: 是否允许 AI 停下来深思熟虑。
49
+ * `auto_trigger_conditions.error_rate_threshold` (默认: 0.3): 当近期操作的错误率超过 30% 时,强制让 AI 停下手头的活,调用 `deep_reflect` 工具分析自己是不是大方向搞错了。
50
+
51
+ ---
52
+
53
+ ### ⚠️ 高风险操作警告!
54
+
55
+ 如果您把 `penalties` 里的扣分调得极低(比如改成 -1),或者把初始信任分调得极高(100分),**防爆拦截系统实际上就失效了**。AI 将变成一个彻头彻尾的“莽夫”,这在操作大型复杂项目时极易引发灾难性的代码破坏。
56
+
57
+ **修改建议**:推荐通过界面的 `auditLevel`(防爆拦截级别)来宏观调节,而不是直接魔改这些微观数值。
58
+
59
+ ---
60
+
61
+ ## ⚙️ 工作区目录配置
62
+
63
+ 系统通过以下方式确定工作区目录:
64
+
65
+ ### 配置文件(推荐)
66
+
67
+ 创建 `~/.openclaw/principles-disciple.json`:
68
+
69
+ ```json
70
+ {
71
+ "workspace": "/home/user/my-workspace",
72
+ "state": "/home/user/my-workspace/.state",
73
+ "debug": false
74
+ }
75
+ ```
76
+
77
+ ### 环境变量
78
+
79
+ | 变量名 | 描述 | 示例 |
80
+ |--------|------|------|
81
+ | `PD_WORKSPACE_DIR` | 自定义工作区目录 | `/home/user/workspace` |
82
+ | `PD_STATE_DIR` | 自定义状态目录 | `/home/user/workspace/.state` |
83
+ | `DEBUG` | 启用调试日志 | `true` |
84
+
85
+ ### 优先级
86
+
87
+ 1. 环境变量 > 配置文件 > 默认值
88
+
89
+ ### 调试日志
90
+
91
+ 开启 `DEBUG=true` 后,日志会显示:
92
+
93
+ ```
94
+ [PD:PathResolver] Using workspace from config file: /home/user/workspace
95
+ [PD:WorkspaceContext] Normalized workspaceDir: /home/user/clawd/memory -> /home/user/clawd
96
+ [PD:TrustEngine] Scorecard not found, creating initial scorecard
97
+ ```
@@ -0,0 +1,173 @@
1
+ # Principles Disciple - Agent Installation Guide
2
+
3
+ > **给智能体的安装指引** - 请仔细阅读并按步骤执行
4
+
5
+ ---
6
+
7
+ ## 🚨 高危文件警告
8
+
9
+ **以下文件包含用户积累的重要数据,绝不可删除或覆盖:**
10
+
11
+ ### 用户积累文件(最高优先级)
12
+
13
+ | 文件 | 内容 | 风险 |
14
+ |------|------|------|
15
+ | `.principles/PRINCIPLES.md` | 用户积累的原则和教训 | 🔴 **删除 = 丢失所有经验** |
16
+ | `.principles/PROFILE.json` | 用户配置和偏好 | 🔴 删除 = 重置所有设置 |
17
+ | `AGENTS.md` | Agent 身份和记忆 | 🔴 删除 = 丢失身份认知 |
18
+ | `SOUL.md` | Agent 核心人格 | 🔴 删除 = 丢失人格设定 |
19
+ | `USER.md` | 用户偏好和上下文 | 🟡 删除 = 丢失用户偏好 |
20
+ | `PLAN.md` | 当前工作计划 | 🟡 删除 = 丢失工作上下文 |
21
+ | `MEMORY.md` | 长期记忆 | 🔴 删除 = 丢失长期记忆 |
22
+
23
+ ### 状态文件(不可删除)
24
+
25
+ | 目录 | 内容 | 风险 |
26
+ |------|------|------|
27
+ | `.state/` | 运行状态、信任分、进化积分 | 🔴 删除 = 重置所有进度 |
28
+ | `.state/evolution_points.json` | 进化积分记录 | 🔴 删除 = 积分归零 |
29
+ | `.state/AGENT_SCORECARD.json` | 信任分数记录 | 🔴 删除 = 信任分重置 |
30
+
31
+ ### 可以安全更新/覆盖的文件
32
+
33
+ | 文件 | 说明 |
34
+ |------|------|
35
+ | `BOOT.md` | 启动模板,可以更新 |
36
+ | `HEARTBEAT.md` | 心跳模板,可以更新 |
37
+ | `IDENTITY.md` | 身份模板,可以更新 |
38
+ | `.principles/THINKING_OS.md` | 思维模型,更新后合并新模型 |
39
+ | `.principles/models/*.md` | 思维模型库,可以添加新模型 |
40
+
41
+ ### 安全操作原则
42
+
43
+ ```
44
+ 1. 更新时:始终使用 smart 模式(默认),生成 .update 文件
45
+ 2. 删除前:确认文件不是用户积累文件
46
+ 3. 覆盖前:先备份原文件
47
+ 4. 合并时:保留用户的所有自定义内容
48
+ ```
49
+
50
+ ---
51
+
52
+ ## 快速判断:首次安装 vs 更新
53
+
54
+ ```
55
+ 检查 ~/clawd/.principles/PRINCIPLES.md 是否存在:
56
+ ├── 不存在 → 首次安装(跳到 [首次安装] 章节)
57
+ └── 存在 → 更新(跳到 [更新] 章节)
58
+ ```
59
+
60
+ ---
61
+
62
+ ## 首次安装
63
+
64
+ ### 步骤 1:运行安装命令
65
+
66
+ ```bash
67
+ npx create-principles-disciple --non-interactive --lang zh --workspace ~/clawd
68
+ ```
69
+
70
+ ### 步骤 2:重启 OpenClaw Gateway
71
+
72
+ ```bash
73
+ openclaw gateway --force
74
+ ```
75
+
76
+ ### 步骤 3:验证安装
77
+
78
+ ```bash
79
+ openclaw plugins list | grep -A 2 "Principles"
80
+ ```
81
+
82
+ 应该看到 `Principles` 显示为 `loaded`。
83
+
84
+ ### 步骤 4:初始化项目
85
+
86
+ 在项目目录下运行:
87
+
88
+ ```
89
+ /init-strategy
90
+ ```
91
+
92
+ ---
93
+
94
+ ## 更新
95
+
96
+ ### ⚠️ 重要提醒
97
+
98
+ **更新会生成 .update 文件,不会直接覆盖你的文件!**
99
+
100
+ ### 步骤 1:运行更新命令
101
+
102
+ ```bash
103
+ npx create-principles-disciple --non-interactive --lang zh --workspace ~/clawd
104
+ ```
105
+
106
+ ### 步骤 2:查看更新内容
107
+
108
+ ```bash
109
+ # 查看变更日志
110
+ cat ~/clawd/docs/CHANGELOG.md | head -100
111
+
112
+ # 列出所有 .update 文件
113
+ find ~/clawd -name "*.update" -type f
114
+ ```
115
+
116
+ ### 步骤 3:合并更新
117
+
118
+ **必须手动合并 .update 文件到原文件!**
119
+
120
+ ```
121
+ 对于每个 .update 文件:
122
+ 1. 读取原文件内容
123
+ 2. 读取 .update 文件内容
124
+ 3. 对比差异,将有价值的更新合并到原文件
125
+ 4. 删除 .update 文件
126
+ ```
127
+
128
+ 示例流程:
129
+ ```
130
+ 1. 发现 AGENTS.md.update
131
+ 2. diff AGENTS.md AGENTS.md.update
132
+ 3. 识别新增的章节或修改
133
+ 4. 将需要的更新合并到 AGENTS.md
134
+ 5. rm AGENTS.md.update
135
+ ```
136
+
137
+ ### 步骤 4:重启 OpenClaw Gateway
138
+
139
+ ```bash
140
+ openclaw gateway --force
141
+ ```
142
+
143
+ ---
144
+
145
+ ## 常见问题
146
+
147
+ ### Q: 报错 "Cannot find module 'micromatch'"
148
+
149
+ 手动安装依赖:
150
+ ```bash
151
+ cd ~/.openclaw/extensions/principles-disciple
152
+ npm install micromatch@^4.0.8 @sinclair/typebox@^0.34.48
153
+ ```
154
+
155
+ ### Q: 如何查看当前版本?
156
+
157
+ ```bash
158
+ cat ~/.openclaw/extensions/principles-disciple/package.json | grep version
159
+ ```
160
+
161
+ ### Q: 如何查看所有更新?
162
+
163
+ ```bash
164
+ cat ~/clawd/docs/CHANGELOG.md
165
+ ```
166
+
167
+ ---
168
+
169
+ ## 版本信息
170
+
171
+ 当前文档版本:1.6.0
172
+
173
+ 更新此文档时,请同步更新版本号。
@@ -0,0 +1,173 @@
1
+ # Principles Disciple - Agent Installation Guide
2
+
3
+ > **Installation Guide for AI Agents** - Read carefully and follow the steps
4
+
5
+ ---
6
+
7
+ ## 🚨 High-Risk Files Warning
8
+
9
+ **The following files contain user-accumulated data and must NEVER be deleted or overwritten:**
10
+
11
+ ### User Accumulated Files (Highest Priority)
12
+
13
+ | File | Content | Risk |
14
+ |------|---------|------|
15
+ | `.principles/PRINCIPLES.md` | User's accumulated principles and lessons | 🔴 **Delete = Lose all experience** |
16
+ | `.principles/PROFILE.json` | User configuration and preferences | 🔴 Delete = Reset all settings |
17
+ | `AGENTS.md` | Agent identity and memory | 🔴 Delete = Lose identity cognition |
18
+ | `SOUL.md` | Agent core personality | 🔴 Delete = Lose personality |
19
+ | `USER.md` | User preferences and context | 🟡 Delete = Lose user preferences |
20
+ | `PLAN.md` | Current work plan | 🟡 Delete = Lose work context |
21
+ | `MEMORY.md` | Long-term memory | 🔴 Delete = Lose long-term memory |
22
+
23
+ ### State Files (Do Not Delete)
24
+
25
+ | Directory | Content | Risk |
26
+ |-----------|---------|------|
27
+ | `.state/` | Runtime state, trust score, evolution points | 🔴 Delete = Reset all progress |
28
+ | `.state/evolution_points.json` | Evolution points record | 🔴 Delete = Points reset to zero |
29
+ | `.state/AGENT_SCORECARD.json` | Trust score record | 🔴 Delete = Trust score reset |
30
+
31
+ ### Files Safe to Update/Overwrite
32
+
33
+ | File | Description |
34
+ |------|-------------|
35
+ | `BOOT.md` | Boot template, can be updated |
36
+ | `HEARTBEAT.md` | Heartbeat template, can be updated |
37
+ | `IDENTITY.md` | Identity template, can be updated |
38
+ | `.principles/THINKING_OS.md` | Thinking models, merge new models after update |
39
+ | `.principles/models/*.md` | Thinking model library, can add new models |
40
+
41
+ ### Safe Operation Principles
42
+
43
+ ```
44
+ 1. When updating: Always use smart mode (default), generates .update files
45
+ 2. Before deleting: Confirm file is not a user accumulated file
46
+ 3. Before overwriting: Backup original file first
47
+ 4. When merging: Preserve all user customizations
48
+ ```
49
+
50
+ ---
51
+
52
+ ## Quick Check: First Install vs Update
53
+
54
+ ```
55
+ Check if ~/clawd/.principles/PRINCIPLES.md exists:
56
+ ├── Does not exist → First Install (skip to [First Install] section)
57
+ └── Exists → Update (skip to [Update] section)
58
+ ```
59
+
60
+ ---
61
+
62
+ ## First Install
63
+
64
+ ### Step 1: Run Installation Command
65
+
66
+ ```bash
67
+ npx create-principles-disciple --non-interactive --lang en --workspace ~/clawd
68
+ ```
69
+
70
+ ### Step 2: Restart OpenClaw Gateway
71
+
72
+ ```bash
73
+ openclaw gateway --force
74
+ ```
75
+
76
+ ### Step 3: Verify Installation
77
+
78
+ ```bash
79
+ openclaw plugins list | grep -A 2 "Principles"
80
+ ```
81
+
82
+ You should see `Principles` showing as `loaded`.
83
+
84
+ ### Step 4: Initialize Project
85
+
86
+ Run in your project directory:
87
+
88
+ ```
89
+ /init-strategy
90
+ ```
91
+
92
+ ---
93
+
94
+ ## Update
95
+
96
+ ### ⚠️ Important Notice
97
+
98
+ **Updates generate .update files, they will NOT directly overwrite your files!**
99
+
100
+ ### Step 1: Run Update Command
101
+
102
+ ```bash
103
+ npx create-principles-disciple --non-interactive --lang en --workspace ~/clawd
104
+ ```
105
+
106
+ ### Step 2: Check Update Content
107
+
108
+ ```bash
109
+ # View changelog
110
+ cat ~/clawd/docs/CHANGELOG.md | head -100
111
+
112
+ # List all .update files
113
+ find ~/clawd -name "*.update" -type f
114
+ ```
115
+
116
+ ### Step 3: Merge Updates
117
+
118
+ **You must manually merge .update files into original files!**
119
+
120
+ ```
121
+ For each .update file:
122
+ 1. Read original file content
123
+ 2. Read .update file content
124
+ 3. Compare differences, merge valuable updates into original file
125
+ 4. Delete .update file
126
+ ```
127
+
128
+ Example workflow:
129
+ ```
130
+ 1. Found AGENTS.md.update
131
+ 2. diff AGENTS.md AGENTS.md.update
132
+ 3. Identify new sections or modifications
133
+ 4. Merge needed updates into AGENTS.md
134
+ 5. rm AGENTS.md.update
135
+ ```
136
+
137
+ ### Step 4: Restart OpenClaw Gateway
138
+
139
+ ```bash
140
+ openclaw gateway --force
141
+ ```
142
+
143
+ ---
144
+
145
+ ## FAQ
146
+
147
+ ### Q: Error "Cannot find module 'micromatch'"
148
+
149
+ Install dependencies manually:
150
+ ```bash
151
+ cd ~/.openclaw/extensions/principles-disciple
152
+ npm install micromatch@^4.0.8 @sinclair/typebox@^0.34.48
153
+ ```
154
+
155
+ ### Q: How to check current version?
156
+
157
+ ```bash
158
+ cat ~/.openclaw/extensions/principles-disciple/package.json | grep version
159
+ ```
160
+
161
+ ### Q: How to view all updates?
162
+
163
+ ```bash
164
+ cat ~/clawd/docs/CHANGELOG.md
165
+ ```
166
+
167
+ ---
168
+
169
+ ## Version Info
170
+
171
+ Current document version: 1.6.0
172
+
173
+ Update this version number when updating this document.
package/INSTALL.md ADDED
@@ -0,0 +1,256 @@
1
+ # Installation Guide
2
+
3
+ ## ⚠️ Known Issue: Plugin Dependencies
4
+
5
+ ### Problem
6
+
7
+ When installing the plugin from source, you may encounter errors like:
8
+
9
+ ```bash
10
+ Error: Cannot find module 'micromatch'
11
+ Error: Cannot find module '@sinclair/typebox'
12
+ ```
13
+
14
+ **Root Cause**: The plugin depends on external npm packages that are not automatically installed when using `openclaw plugins install` with a local path.
15
+
16
+ ---
17
+
18
+ ## ✅ Solution
19
+
20
+ ### Option 1: Automated Installation Script (Recommended)
21
+
22
+ Run the provided installation script:
23
+
24
+ ```bash
25
+ cd /path/to/principles
26
+ ./packages/openclaw-plugin/scripts/install.sh
27
+ ```
28
+
29
+ This script will:
30
+ 1. ✅ Build the plugin
31
+ 2. ✅ Install all dependencies
32
+ 3. ✅ Copy files to the correct location
33
+ 4. ✅ Verify installation
34
+
35
+ ---
36
+
37
+ ### Option 2: Manual Installation
38
+
39
+ If the script doesn't work, follow these steps:
40
+
41
+ #### Step 1: Build the plugin
42
+
43
+ ```bash
44
+ cd /path/to/principles/packages/openclaw-plugin
45
+ npm install
46
+ npm run build
47
+ ```
48
+
49
+ #### Step 2: Install plugin dependencies
50
+
51
+ ```bash
52
+ # Create the plugin directory
53
+ mkdir -p ~/.openclaw/extensions/principles-disciple
54
+
55
+ # Install dependencies in the plugin directory
56
+ cd ~/.openclaw/extensions/principles-disciple
57
+ npm install micromatch@^4.0.8 @sinclair/typebox@^0.34.48
58
+ ```
59
+
60
+ #### Step 3: Copy plugin files
61
+
62
+ ```bash
63
+ # Copy built files
64
+ cp -r /path/to/principles/packages/openclaw-plugin/dist/* \
65
+ ~/.openclaw/extensions/principles-disciple/
66
+
67
+ # Copy plugin metadata
68
+ cp /path/to/principles/packages/openclaw-plugin/openclaw.plugin.json \
69
+ ~/.openclaw/extensions/principles-disciple/
70
+ ```
71
+
72
+ #### Step 4: Verify installation
73
+
74
+ ```bash
75
+ openclaw plugins list | grep -A 2 "Principles"
76
+ ```
77
+
78
+ You should see:
79
+ ```
80
+ │ Principles │ principl │ loaded │ ...
81
+ ```
82
+
83
+ ---
84
+
85
+ ### Option 3: Install from npm (Future)
86
+
87
+ In future releases, the plugin will be published to npm:
88
+
89
+ ```bash
90
+ npm install -g @openclaw/principles-disciple
91
+ openclaw plugins install principles-disciple
92
+ ```
93
+
94
+ This will automatically handle all dependencies.
95
+
96
+ ---
97
+
98
+ ## 📁 Workspace Configuration
99
+
100
+ Principles Disciple needs to know where your agent's workspace directory is located. This is configured during installation.
101
+
102
+ ### Automatic Configuration
103
+
104
+ The installer will automatically detect your OpenClaw workspace directory. You can also specify a custom directory:
105
+
106
+ ```bash
107
+ # Run installer with custom workspace
108
+ ./install-openclaw.sh
109
+ # Select "Custom directory" when prompted
110
+ ```
111
+
112
+ ### Manual Configuration
113
+
114
+ If you skipped configuration during installation, you can set it up manually:
115
+
116
+ #### Option 1: Configuration File (Recommended)
117
+
118
+ Create `~/.openclaw/principles-disciple.json`:
119
+
120
+ ```json
121
+ {
122
+ "workspace": "/path/to/your/workspace",
123
+ "state": "/path/to/your/workspace/.state",
124
+ "debug": false
125
+ }
126
+ ```
127
+
128
+ #### Option 2: Environment Variables
129
+
130
+ ```bash
131
+ # Add to your shell profile (~/.bashrc, ~/.zshrc)
132
+ export PD_WORKSPACE_DIR=/path/to/your/workspace
133
+ export PD_STATE_DIR=/path/to/your/workspace/.state
134
+
135
+ # Or set when starting OpenClaw
136
+ PD_WORKSPACE_DIR=/path/to/your/workspace openclaw-gateway start
137
+ ```
138
+
139
+ #### Option 3: Debug Mode
140
+
141
+ To enable debug logging for path resolution:
142
+
143
+ ```bash
144
+ export DEBUG=true
145
+ ```
146
+
147
+ This will show detailed logs like:
148
+
149
+ ```
150
+ [PD:PathResolver] Using workspace from config file: /home/user/workspace
151
+ [PD:WorkspaceContext] Normalized workspaceDir: /home/user/clawd/memory -> /home/user/clawd
152
+ ```
153
+
154
+ ### Configuration Priority
155
+
156
+ Configuration is resolved in this order (highest to lowest):
157
+
158
+ 1. Environment variables (`PD_WORKSPACE_DIR`, `PD_STATE_DIR`)
159
+ 2. Configuration file (`~/.openclaw/principles-disciple.json`)
160
+ 3. OpenClaw environment (`OPENCLAW_WORKSPACE`)
161
+ 4. Default (`~/.openclaw/workspace`)
162
+
163
+ ---
164
+
165
+ ## 🔍 Troubleshooting
166
+
167
+ ### Plugin fails to load
168
+
169
+ **Error**: `Cannot find module 'micromatch'`
170
+
171
+ **Solution**:
172
+ ```bash
173
+ cd ~/.openclaw/extensions/principles-disciple
174
+ npm install micromatch@^4.0.8
175
+ ```
176
+
177
+ ### Plugin version mismatch
178
+
179
+ **Error**: Plugin shows old version
180
+
181
+ **Solution**:
182
+ ```bash
183
+ # Remove old version
184
+ rm -rf ~/.openclaw/extensions/principles-disciple
185
+
186
+ # Reinstall
187
+ cd /path/to/principles
188
+ ./packages/openclaw-plugin/scripts/install.sh
189
+ ```
190
+
191
+ ### Configuration errors
192
+
193
+ **Error**: `Invalid config: plugin not found: principles-disciple`
194
+
195
+ **Solution**:
196
+ ```bash
197
+ # Reset OpenClaw config
198
+ openclaw doctor --fix
199
+
200
+ # Reinstall plugin
201
+ ./packages/openclaw-plugin/scripts/install.sh
202
+ ```
203
+
204
+ ---
205
+
206
+ ## 📦 Dependencies
207
+
208
+ The plugin requires the following npm packages:
209
+
210
+ | Package | Version | Purpose |
211
+ |---------|---------|---------|
212
+ | `micromatch` | ^4.0.8 | Glob pattern matching for PLAN whitelist |
213
+ | `@sinclair/typebox` | ^0.34.48 | Type definitions and validation |
214
+
215
+ These are **not** included in the plugin bundle to keep the distribution size small. They must be installed separately in the plugin directory.
216
+
217
+ ---
218
+
219
+ ## 🚀 Quick Start
220
+
221
+ After installation, enable the PLAN whitelist feature:
222
+
223
+ 1. Edit your workspace's `docs/PROFILE.json`:
224
+
225
+ ```json
226
+ {
227
+ "progressive_gate": {
228
+ "enabled": true,
229
+ "plan_approvals": {
230
+ "enabled": true,
231
+ "max_lines_override": -1,
232
+ "allowed_patterns": ["docs/**", "skills/**"],
233
+ "allowed_operations": ["write", "edit"]
234
+ }
235
+ }
236
+ }
237
+ ```
238
+
239
+ 2. Ensure `docs/PLAN.md` has `STATUS: READY`
240
+
241
+ 3. Restart your agent session
242
+
243
+ Now even Stage 1 agents can edit files when a READY plan exists!
244
+
245
+ ---
246
+
247
+ ## 📞 Support
248
+
249
+ If you encounter issues not covered here:
250
+
251
+ 1. Check the [GitHub Issues](https://github.com/csuzngjh/principles/issues)
252
+ 2. Create a new issue with:
253
+ - Error message
254
+ - OpenClaw version (`openclaw --version`)
255
+ - Plugin version (check in `openclaw plugins list`)
256
+ - Installation method used