kenaz 0.3.17 → 0.3.19

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 (316) hide show
  1. package/core/.claude/commands/agent-worker.md +1 -1
  2. package/core/.claude/commands/architect.md +1 -2
  3. package/core/.claude/commands/spec.md +1 -1
  4. package/core/.claude/commands//347/224/242/345/223/201.md +1 -1
  5. package/core/.claude/hooks/__tests__/task-1977-dedupe-guard.test.js +8 -8
  6. package/core/.claude/hooks/synapse-first-investigation.js +15 -0
  7. package/core/.claude/skills/architect_agent/SKILL.md +11 -92
  8. package/core/.claude/skills/assessment_agent/SKILL.md +0 -1
  9. package/core/.claude/skills/backend_engineer/SKILL.md +3 -6
  10. package/core/.claude/skills/code_reviewer/SKILL.md +1 -1
  11. package/core/.claude/skills/code_reviewer/patterns.yaml +1 -1
  12. package/core/.claude/skills/designer/SKILL.md +3 -6
  13. package/core/.claude/skills/dev_agent/SKILL.md +30 -491
  14. package/core/.claude/skills/developer/SKILL.md +3 -6
  15. package/core/.claude/skills/feature_agent/SKILL.md +3 -17
  16. package/core/.claude/skills/product_manager/SKILL.md +29 -1064
  17. package/core/.claude/skills/qa_engineer/SKILL.md +12 -17
  18. package/core/.claude/skills/spec_optimizer/SKILL.md +25 -275
  19. package/core/.claude/skills/sre_agent/SKILL.md +3 -6
  20. package/core/.collaboration/README.md +2 -3
  21. package/core/.collaboration/core/task-api.js +5 -138
  22. package/core/.collaboration/docs/CLI.md +0 -2
  23. package/core/.failure/INDEX.yaml +6 -40
  24. package/core/.failure/agent-execution/FAIL-013-search-cwd-drift-and-case-mismatch.yaml +1 -1
  25. package/core/.failure/tools/README.md +9 -227
  26. package/core/.formation/bifrost/exec.js +29 -4
  27. package/core/.formation/bifrost/launch.js +1 -6
  28. package/core/.formation/bifrost/launch.test.js +1 -1
  29. package/core/.formation/bifrost/provider-launch.js +18 -11
  30. package/core/.formation/bifrost/provider-launch.test.js +26 -2
  31. package/core/.formation/bifrost/shared/ansuz-boot-policy.js +3 -3
  32. package/core/.formation/bifrost/shared/ansuz-boot-policy.test.js +1 -2
  33. package/core/.formation/tools/__tests__/dispatch-cwd-project.test.js +42 -0
  34. package/core/.formation/tools/__tests__/m1-hmap-convid.test.js +1 -124
  35. package/core/.formation/tools/__tests__/subagent-executor.test.js +3 -2
  36. package/core/.formation/tools/dispatch.js +15 -2
  37. package/core/.formation/tools/loader.js +17 -140
  38. package/core/.formation/tools/post-complete.js +0 -31
  39. package/core/.rule/INDEX.yaml +0 -18
  40. package/core/.rule/general/agent-workflow.yaml +14 -164
  41. package/core/.rule/general/project-self-containment.yaml +8 -19
  42. package/core/.rule/general/rust-verify-target.yaml +6 -5
  43. package/core/.rule/general/synapse-code-intelligence.yaml +3 -3
  44. package/core/.specialist/Amelia/capability.yaml +12 -12
  45. package/core/.specialist/Amelia/workflow.yaml +2 -2
  46. package/core/.specialist/Ansuz/SYSTEM_DOC.md +20 -578
  47. package/core/.specialist/Ansuz/cognitive_principles.yaml +2 -3
  48. package/core/.specialist/Ansuz/concepts/boot_rules_summary.yaml +0 -1
  49. package/core/.specialist/Ansuz/concepts/deep_knowledge_pointers.yaml +1 -2
  50. package/core/.specialist/Ansuz/core.yaml +6 -108
  51. package/core/.specialist/Ansuz/guards/lesson_guards.yaml +0 -3
  52. package/core/.specialist/Ansuz/identity_contract.yaml +0 -1
  53. package/core/.specialist/Ansuz/knowledge.yaml +0 -4
  54. package/core/.specialist/Ansuz/rule.yaml +0 -1
  55. package/core/.specialist/Ansuz/tools/handoff-session-identity.test.js +6 -150
  56. package/core/.specialist/tests/runtime-discovery/README.md +1 -1
  57. package/core/.specialist/tools/__tests__/task-2374-usage-counter.test.js +1 -12
  58. package/core/.specialist/tools/prompt-files.test.js +1 -0
  59. package/core/.specialist/tools/task-bridge.js +1 -66
  60. package/core/.system/README.md +11 -552
  61. package/core/.system/collaboration/README.md +10 -174
  62. package/core/CLAUDE.md +1 -6
  63. package/core/KENAZ_CORE_VERSION +1 -1
  64. package/core/dev/scripts/js-yaml-resolution.test.js +1 -1
  65. package/core/dev/scripts/run-rust-tests.js +30 -46
  66. package/core/dev/scripts/run-rust-tests.test.js +17 -0
  67. package/core/dev/scripts/rust-verify-worktree.js +4 -4
  68. package/core/dev/scripts/verify-target-dir.js +6 -6
  69. package/core/plugins/kenaz/INVENTORY.md +8 -8
  70. package/core/plugins/kenaz/commands/architect.md +1 -2
  71. package/core/plugins/kenaz/commands/spec.md +1 -1
  72. package/core/plugins/kenaz/commands//347/224/242/345/223/201.md +1 -1
  73. package/core/plugins/kenaz/guidance.md +1 -1
  74. package/core/plugins/kenaz/scripts/sync.js +1 -1
  75. package/core/plugins/kenaz/scripts/ygg.js +6 -0
  76. package/core/plugins/kenaz/skills/architect_agent/SKILL.md +11 -92
  77. package/core/plugins/kenaz/skills/assessment_agent/SKILL.md +0 -1
  78. package/core/plugins/kenaz/skills/backend_engineer/SKILL.md +3 -6
  79. package/core/plugins/kenaz/skills/code_reviewer/SKILL.md +1 -1
  80. package/core/plugins/kenaz/skills/code_reviewer/patterns.yaml +1 -1
  81. package/core/plugins/kenaz/skills/designer/SKILL.md +3 -6
  82. package/core/plugins/kenaz/skills/dev_agent/SKILL.md +30 -491
  83. package/core/plugins/kenaz/skills/developer/SKILL.md +3 -6
  84. package/core/plugins/kenaz/skills/feature_agent/SKILL.md +3 -17
  85. package/core/plugins/kenaz/skills/product_manager/SKILL.md +29 -1064
  86. package/core/plugins/kenaz/skills/qa_engineer/SKILL.md +12 -17
  87. package/core/plugins/kenaz/skills/spec_optimizer/SKILL.md +25 -275
  88. package/core/plugins/kenaz/skills/sre_agent/SKILL.md +3 -6
  89. package/package.json +6 -6
  90. package/core/.claude/commands/archive.md +0 -24
  91. package/core/.claude/commands/init.md +0 -112
  92. package/core/.claude/commands/legacy_dev.md +0 -18
  93. package/core/.claude/commands/product-review.md +0 -131
  94. package/core/.claude/commands/strategy.md +0 -141
  95. package/core/.claude/commands/sunny.md +0 -1
  96. package/core/.claude/commands//347/224/242/345/223/201/346/252/242/350/246/226.md +0 -129
  97. package/core/.claude/commands//351/200/262/345/272/246.md +0 -15
  98. package/core/.claude/hooks/__tests__/substrate.test.js +0 -122
  99. package/core/.claude/hooks/_substrate-paths.js +0 -95
  100. package/core/.claude/hooks/context-check.js +0 -51
  101. package/core/.claude/hooks/fatigue-check.js +0 -52
  102. package/core/.claude/hooks/handoff-snapshot-on-commit.js +0 -154
  103. package/core/.claude/hooks/handoff-snapshot-on-question.js +0 -158
  104. package/core/.claude/hooks/handoff-staleness.js +0 -197
  105. package/core/.claude/hooks/jev-thalamus-context.js +0 -17
  106. package/core/.claude/hooks/jev-thalamus-context.test.js +0 -41
  107. package/core/.claude/hooks/lease-release.js +0 -119
  108. package/core/.claude/hooks/lease-touch.js +0 -96
  109. package/core/.claude/hooks/reflex-feedback.js +0 -5
  110. package/core/.claude/hooks/session-init.ps1 +0 -49
  111. package/core/.claude/hooks/sound-event.js +0 -70
  112. package/core/.claude/hooks/sound-event.sh +0 -37
  113. package/core/.claude/hooks/stream-delta.js +0 -169
  114. package/core/.claude/no-hooks.settings.json +0 -3
  115. package/core/.claude/skills/legacy_dev/SKILL.md +0 -202
  116. package/core/.claude/skills/sunny/SKILL.md +0 -74
  117. package/core/.collaboration/cli/commands/assign.js +0 -39
  118. package/core/.collaboration/cli/commands/claim.js +0 -33
  119. package/core/.collaboration/cli/commands/complete.js +0 -44
  120. package/core/.collaboration/cli/commands/create.js +0 -110
  121. package/core/.collaboration/cli/commands/get.js +0 -83
  122. package/core/.collaboration/cli/commands/index.js +0 -52
  123. package/core/.collaboration/cli/commands/list.js +0 -51
  124. package/core/.collaboration/cli/commands/lock.js +0 -45
  125. package/core/.collaboration/cli/commands/rebuild.js +0 -39
  126. package/core/.collaboration/cli/commands/search.js +0 -61
  127. package/core/.collaboration/cli/commands/stats.js +0 -61
  128. package/core/.collaboration/cli/commands/transfer.js +0 -41
  129. package/core/.collaboration/cli/commands/unlock.js +0 -48
  130. package/core/.collaboration/cli/formatters/help-formatter.js +0 -70
  131. package/core/.collaboration/cli/formatters/index.js +0 -7
  132. package/core/.collaboration/cli/task-cli.js +0 -46
  133. package/core/.collaboration/cli/utils/arg-parser.js +0 -74
  134. package/core/.collaboration/cli/utils/git-user.js +0 -25
  135. package/core/.collaboration/cli/utils/index.js +0 -9
  136. package/core/.collaboration/cli/utils/output.js +0 -10
  137. package/core/.collaboration/config/default.yaml +0 -189
  138. package/core/.collaboration/core/conflict-resolver.js +0 -461
  139. package/core/.collaboration/core/conflict-resolver.test.js +0 -389
  140. package/core/.collaboration/core/migrate-legacy.js +0 -260
  141. package/core/.collaboration/docs/API.md +0 -787
  142. package/core/.collaboration/docs/ARCHITECTURE.md +0 -596
  143. package/core/.collaboration/docs/FAQ.md +0 -695
  144. package/core/.collaboration/docs/MIGRATION.md +0 -804
  145. package/core/.collaboration/docs/examples/README.md +0 -320
  146. package/core/.collaboration/docs/examples/advanced-queries.js +0 -261
  147. package/core/.collaboration/docs/examples/basic-usage.js +0 -184
  148. package/core/.collaboration/docs/examples/team-workflow.js +0 -352
  149. package/core/.failure/agent-execution/FAIL-001-agent-no-output.yaml +0 -391
  150. package/core/.failure/agent-execution/FAIL-007-pm-lead-wrong-team-invocation.yaml +0 -0
  151. package/core/.failure/agent-execution/FAIL-010-phase0-poem-format-skipped.yaml +0 -28
  152. package/core/.failure/agent-execution/FAIL-010-skipping-cognitive-checkpoint-after-verification.yaml +0 -59
  153. package/core/.failure/agent-execution/FAIL-012-grep-shortcut-during-investigation.yaml +0 -85
  154. package/core/.failure/architecture/FAIL-006-python-version-compatibility.yaml +0 -445
  155. package/core/.failure/pipeline/FAIL-003-queue-pollution.yaml +0 -335
  156. package/core/.failure/pipeline/README.md +0 -95
  157. package/core/.failure/retired/FAIL-009-skipping-synapse-pulse-before-code-change.yaml +0 -49
  158. package/core/.failure/tools/USAGE_GUIDE.md +0 -323
  159. package/core/.failure/tools/check_failures.ps1 +0 -387
  160. package/core/.failure/tools/log_failure.ps1 +0 -474
  161. package/core/.formation/.episode-input.json +0 -10
  162. package/core/.formation/.merge-lock +0 -1
  163. package/core/.formation/lead.yaml +0 -118
  164. package/core/.formation/legacy.bak/designer.yaml +0 -57
  165. package/core/.formation/legacy.bak/pm.yaml +0 -57
  166. package/core/.formation/legacy.bak/qa.yaml +0 -57
  167. package/core/.formation/legacy.bak/review.yaml +0 -62
  168. package/core/.formation/legacy.bak/scheduler.yaml +0 -129
  169. package/core/.formation/legacy.bak/sre.yaml +0 -57
  170. package/core/.formation/role-map.yaml +0 -274
  171. package/core/.formation/roles/_shared/modules/code_review.yaml +0 -98
  172. package/core/.formation/roles/_shared/modules/security.yaml +0 -103
  173. package/core/.formation/roles/_shared/modules/testing.yaml +0 -14
  174. package/core/.formation/roles/backend/role.yaml +0 -93
  175. package/core/.formation/roles/code_reviewer/role.yaml +0 -102
  176. package/core/.formation/roles/database_optimizer/role.yaml +0 -107
  177. package/core/.formation/roles/designer/role.yaml +0 -66
  178. package/core/.formation/roles/developer/role.yaml +0 -75
  179. package/core/.formation/roles/frontend/role.yaml +0 -134
  180. package/core/.formation/roles/incident_response/role.yaml +0 -89
  181. package/core/.formation/roles/qa/role.yaml +0 -89
  182. package/core/.formation/roles/security/role.yaml +0 -87
  183. package/core/.formation/roles/sre/role.yaml +0 -66
  184. package/core/.formation/skills/coordinator.yaml +0 -52
  185. package/core/.formation/solo/diagnosis.yaml +0 -78
  186. package/core/.formation/solo/strategy.yaml +0 -121
  187. package/core/.formation/tests/hello.txt +0 -2
  188. package/core/.formation/tools/coordinator.js +0 -350
  189. package/core/.formation/tools/jev-correction.js +0 -214
  190. package/core/.formation/tools/jev-correction.test.js +0 -178
  191. package/core/.formation/tools/log-reader.js +0 -232
  192. package/core/.formation/tools/revert-daemon-state.js +0 -162
  193. package/core/.formation/tools/test-drift.js +0 -148
  194. package/core/.formation/unit/heimdall.yaml +0 -96
  195. package/core/.formation/unit/plan.yaml +0 -67
  196. package/core/.formation/unit/think.yaml +0 -58
  197. package/core/.kenaz/MUNINN_SNAPSHOT9_EPISODE.json +0 -32
  198. package/core/.kenaz/MUNINN_SNAPSHOT9_RUNE.json +0 -23
  199. package/core/.kenaz/MUNINN_SNAPSHOT9_SUMMARY.md +0 -89
  200. package/core/.kenaz/ash_TASK_1428-20260507.json +0 -14
  201. package/core/.kenaz/muninn_episode_write.ps1 +0 -17
  202. package/core/.kenaz/muninn_snapshot11_rune_candidates.md +0 -63
  203. package/core/.kenaz/muninn_snapshot1_rune_candidates.md +0 -49
  204. package/core/.kenaz/runes_TASK_1428.json +0 -57
  205. package/core/.kenaz/tmp_heimdall_proposal_8d3e392.json +0 -13
  206. package/core/.kenaz/tmp_props.json +0 -1
  207. package/core/.kenaz/tmp_sounddrop_t1_prompt.txt +0 -371
  208. package/core/.rule/MECHANIZED.md +0 -61
  209. package/core/.rule/general/cortex-memory-recall.yaml +0 -446
  210. package/core/.rule/general/pipeline.yaml +0 -246
  211. package/core/.rule/general/sunny-access-control.yaml +0 -60
  212. package/core/.rule/general/system-invariants.yaml +0 -231
  213. package/core/.rule/pipeline/PPL-002-completed-task-archival.yaml +0 -528
  214. package/core/.rule/pipeline/auto-update.yaml +0 -282
  215. package/core/.rule/pipeline/task-execution.yaml +0 -365
  216. package/core/.specialist/Ansuz/concepts/phase_protocol.yaml +0 -65
  217. package/core/.specialist/Ansuz/experiments/boot_ablation_replay.js +0 -197
  218. package/core/.specialist/Ansuz/tools/bootstrap-anchors.js +0 -289
  219. package/core/.specialist/Ansuz/workflow.yaml +0 -1225
  220. package/core/.specialist/experiments/rg_benchmark.js +0 -523
  221. package/core/.specialist/experiments/rg_benchmark_results.json +0 -27
  222. package/core/.specialist/tools/jev-optional-context.js +0 -107
  223. package/core/.specialist/tools/jev-optional-context.test.js +0 -152
  224. package/core/.specialist/tools/memory-action-log.js +0 -839
  225. package/core/.specialist/tools/phase-gate.js +0 -3534
  226. package/core/.specialist/tools/phase-gate.test.js +0 -85
  227. package/core/.specialist/tools/precompute-runner.js +0 -444
  228. package/core/.specialist/tools/rule-engine.js +0 -621
  229. package/core/.specialist/tools/task-bridge-jev.test.js +0 -170
  230. package/core/.synapse/memory-shared.json.sync +0 -1
  231. package/core/.system/agent-skills/README.md +0 -724
  232. package/core/.system/cli-tools/README.md +0 -724
  233. package/core/.system/cortex/MODULES.md +0 -1046
  234. package/core/.system/dashboard/FRONTEND.md +0 -812
  235. package/core/.system/dashboard/README.md +0 -737
  236. package/core/.system/failure/README.md +0 -723
  237. package/core/.system/formation/LEGACY_SKILLS.md +0 -974
  238. package/core/.system/formation/POST_COMPLETE.md +0 -602
  239. package/core/.system/formation/README.md +0 -1094
  240. package/core/.system/formation/TOOLS_REFERENCE.md +0 -1145
  241. package/core/.system/kenaz/README.md +0 -787
  242. package/core/.system/memory/README.md +0 -719
  243. package/core/.system/pipeline/README.md +0 -712
  244. package/core/.system/rule/README.md +0 -794
  245. package/core/.system/sunny/README.md +0 -476
  246. package/core/.system/sunny/RULES.json +0 -89
  247. package/core/.system/sunny/knowledge/INDEX.md +0 -37
  248. package/core/.system/sunny/knowledge/agent-teams-api.md +0 -0
  249. package/core/.system/sunny/knowledge/ansuz-specialist.md +0 -500
  250. package/core/.system/sunny/knowledge/claude-cli-spawn.md +0 -177
  251. package/core/.system/sunny/knowledge/collaboration-api.md +0 -925
  252. package/core/.system/sunny/teammates/README.md +0 -107
  253. package/core/.system/sunny/teammates/how_to_use.yaml +0 -101
  254. package/core/.system/sunny/teammates/tools/headless/launcher.js +0 -318
  255. package/core/.system/sunny/teammates/tools/powershell/launcher.js +0 -241
  256. package/core/.system/sunny/teammates/tools/powershell/start.bat +0 -50
  257. package/core/.system/sunny/teammates/tools/utils/env.js +0 -96
  258. package/core/.system/sunny/teammates/tools/utils/format-output.js +0 -329
  259. package/core/.system/sunny/tools.json +0 -101
  260. package/core/dev/scripts/cleanup-queue.js +0 -184
  261. package/core/dev/scripts/cleanup_queue.js +0 -86
  262. package/core/dev/scripts/legacy/README.md +0 -39
  263. package/core/dev/scripts/legacy/dev_agent_scheduler.ps1.bak +0 -536
  264. package/core/dev/scripts/legacy/multi_agent_scheduler.ps1.bak +0 -1978
  265. package/core/dev/scripts/matrix/CLI_README.md +0 -214
  266. package/core/dev/scripts/matrix/README.md +0 -310
  267. package/core/dev/scripts/matrix/package-lock.json +0 -4266
  268. package/core/dev/scripts/matrix/package.json +0 -55
  269. package/core/dev/scripts/matrix/src/abbreviations.ts +0 -295
  270. package/core/dev/scripts/matrix/src/cli/commands/convert.ts +0 -211
  271. package/core/dev/scripts/matrix/src/cli/commands/create.ts +0 -95
  272. package/core/dev/scripts/matrix/src/cli/commands/delete.ts +0 -102
  273. package/core/dev/scripts/matrix/src/cli/commands/list-tags.ts.wip +0 -140
  274. package/core/dev/scripts/matrix/src/cli/commands/manage-tags.ts.wip +0 -173
  275. package/core/dev/scripts/matrix/src/cli/commands/query.ts +0 -261
  276. package/core/dev/scripts/matrix/src/cli/commands/read.ts +0 -77
  277. package/core/dev/scripts/matrix/src/cli/commands/stats.ts.wip +0 -168
  278. package/core/dev/scripts/matrix/src/cli/commands/tokens.ts.wip +0 -126
  279. package/core/dev/scripts/matrix/src/cli/commands/update.ts +0 -147
  280. package/core/dev/scripts/matrix/src/cli/commands/validate.ts +0 -275
  281. package/core/dev/scripts/matrix/src/cli/index.ts +0 -350
  282. package/core/dev/scripts/matrix/src/cli/utils/file-handler.ts +0 -72
  283. package/core/dev/scripts/matrix/src/cli/utils/logger.ts +0 -65
  284. package/core/dev/scripts/matrix/src/index.ts +0 -62
  285. package/core/dev/scripts/matrix/src/indexer/tag-indexer.ts +0 -165
  286. package/core/dev/scripts/matrix/src/parser.ts +0 -281
  287. package/core/dev/scripts/matrix/src/serializer.ts +0 -151
  288. package/core/dev/scripts/matrix/src/validator.ts +0 -301
  289. package/core/dev/scripts/matrix/tests/abbreviations.test.ts +0 -122
  290. package/core/dev/scripts/matrix/tests/cli.test.ts +0 -177
  291. package/core/dev/scripts/matrix/tests/convert.test.ts +0 -143
  292. package/core/dev/scripts/matrix/tests/parser.test.ts +0 -203
  293. package/core/dev/scripts/matrix/tests/query.test.ts +0 -85
  294. package/core/dev/scripts/matrix/tests/serializer.test.ts +0 -197
  295. package/core/dev/scripts/matrix/tests/validate.test.ts +0 -141
  296. package/core/dev/scripts/matrix/tests/validator.test.ts +0 -167
  297. package/core/dev/scripts/matrix/tsconfig.json +0 -20
  298. package/core/dev/scripts/matrix/types/index.d.ts +0 -111
  299. package/core/dev/scripts/matrix/types/index.d.ts.map +0 -1
  300. package/core/dev/scripts/matrix/types/index.js +0 -8
  301. package/core/dev/scripts/matrix/types/index.js.map +0 -1
  302. package/core/dev/scripts/matrix/types/index.ts +0 -124
  303. package/core/dev/scripts/memory-usage-report.js +0 -152
  304. package/core/dev/scripts/probe/ansuz-scaffold-ablation.js +0 -579
  305. package/core/dev/scripts/probe/ansuz-scaffold-ablation.test.js +0 -244
  306. package/core/dev/scripts/probe/hook-latency-probe.js +0 -315
  307. package/core/dev/scripts/probe/hook-latency-probe.test.js +0 -105
  308. package/core/dev/scripts/probe/prediction-signal-auc.js +0 -483
  309. package/core/dev/scripts/probe/prediction-signal-auc.test.js +0 -200
  310. package/core/dev/scripts/test-pty-ws-tunnel.js +0 -229
  311. package/core/dev/scripts/validate_pipeline.js +0 -197
  312. package/core/dev/spikes/task2145-evidence-20261004/backend-log-excerpt.txt +0 -56
  313. package/core/dev/spikes/task2145-evidence-20261004/graph.shadow +0 -0
  314. package/core/dev/spikes/task2145-evidence-20261004/graph.wal +0 -0
  315. package/core/dev/spikes/task2145-evidence-20261004/graph_corrupt_suspect.marker +0 -1
  316. package/core/plugins/kenaz/commands/strategy.md +0 -141
@@ -11,118 +11,7 @@ _meta:
11
11
  version: "1.0.0"
12
12
 
13
13
  rules:
14
- # =============================================================================
15
- # AGT-001: 記憶點優先載入(核心規則)
16
- # =============================================================================
17
- - id: "AGT-001"
18
- title: "記憶點優先載入"
19
- description: |
20
- 所有 Agent 開始工作前,必須先讀取 .memory/CONTEXT.md。
21
- 此文件包含專案當前狀態、已完成功能、技術棧、關鍵路徑。
22
- 只有在需要詳細任務資訊時,才讀取任務文件。
23
- severity: "must"
24
- rationale: "減少 context 消耗,快速掌握專案狀態"
25
- workflow:
26
- - step: 1
27
- action: "讀取 .memory/CONTEXT.md"
28
- purpose: "快速掌握專案全局狀態"
29
- required: true
30
- - step: 2
31
- action: "評估是否需要詳細任務資訊"
32
- purpose: "判斷是否需要讀取更多文件"
33
- criteria:
34
- - "如果任務涉及特定功能,需要確認技術細節"
35
- - "如果需要了解依賴關係"
36
- - "如果 CONTEXT.md 資訊不足以開始工作"
37
- - step: 3
38
- action: "視需要讀取 dev/pipeline/PROGRESS.md 或具體任務文件"
39
- purpose: "獲取具體任務細節和當前進度"
40
- note: "優先讀取 PROGRESS.md 而非 TASK_QUEUE.json(後者較大)"
41
-
42
- # =============================================================================
43
- # AGT-002: 記憶點更新責任
44
- # =============================================================================
45
- - id: "AGT-002"
46
- title: "記憶點更新責任"
47
- description: |
48
- 完成重要里程碑或重大變更後,Agent 應更新 .memory/CONTEXT.md。
49
- 更新時機:
50
- - 完成重要功能
51
- - 技術架構變更
52
- - 新增/移除主要模組
53
- severity: "should"
54
- rationale: "保持記憶點準確,供下次 session 使用"
55
- update_triggers:
56
- - "新功能完成"
57
- - "重大 Bug 修復"
58
- - "架構變更"
59
- - "新模組加入"
60
- - "技術棧更新"
61
-
62
- # =============================================================================
63
- # AGT-003: 避免重複讀取任務文件
64
- # =============================================================================
65
- - id: "AGT-003"
66
- title: "避免重複讀取任務文件"
67
- description: |
68
- 不要每次都讀取所有任務的詳細資訊。
69
- .memory/CONTEXT.md 已包含足夠的狀態摘要。
70
- 只在需要特定任務細節時才讀取對應的任務文件。
71
- severity: "should"
72
- rationale: "節省 token,提高效率"
73
- anti_patterns:
74
- - "每次都讀取 TASK_QUEUE.json 全部內容"
75
- - "遍歷 dev/pipeline/tasks/ 目錄讀取所有任務"
76
- - "重複讀取已知資訊"
77
-
78
- # =============================================================================
79
- # AGT-004: 任務執行前置流程(新增)
80
- # =============================================================================
81
- - id: "AGT-004"
82
- title: "任務執行前置流程"
83
- description: |
84
- 定義 Agent 執行任務前的標準流程,確保記憶點系統與任務單系統協同運作。
85
- 此流程為基本流程:先讀 CONTEXT.md → 再讀任務單 → 執行任務。
86
- severity: "must"
87
- rationale: "確保 Agent 在充分了解專案狀態後才開始執行任務"
88
- workflow:
89
- - phase: "Context 獲取"
90
- steps:
91
- - step: 1
92
- action: "讀取 .memory/CONTEXT.md"
93
- required: true
94
- purpose: "了解專案全局狀態、技術棧、關鍵路徑"
95
- - step: 2
96
- action: "讀取 dev/pipeline/PROGRESS.md"
97
- required: true
98
- purpose: "了解當前進度和待處理任務列表"
99
- - phase: "任務確認"
100
- steps:
101
- - step: 3
102
- action: "確定本次要執行的任務"
103
- required: true
104
- purpose: "從待處理佇列中選取最優先的任務"
105
- - step: 4
106
- action: "讀取具體任務文件(dev/pipeline/tasks/TASK_XXX.yaml)"
107
- required: true
108
- purpose: "獲取任務的詳細需求、驗收標準、技術備註"
109
- - phase: "執行任務"
110
- steps:
111
- - step: 5
112
- action: "按照任務需求執行開發工作"
113
- required: true
114
- purpose: "完成任務定義的所有驗收標準"
115
- - step: 6
116
- action: "更新進度文件"
117
- required: true
118
- purpose: "記錄任務完成狀態,歸檔任務文件"
119
- integration:
120
- memory_system: ".memory/CONTEXT.md"
121
- task_system: "dev/pipeline/"
122
- relationship: |
123
- 記憶點系統提供專案全局 Context,減少重複讀取。
124
- 任務單系統提供具體執行細節和驗收標準。
125
- 兩者協同運作:先從記憶點獲取全局視角,再從任務單獲取執行細節。
14
+ # AGT-001~004(.memory/CONTEXT.md 記憶點載入/更新、PROGRESS.md 任務前置)已於 2026-10 移除:記憶系統與 dev/pipeline 已退役。
126
15
 
127
16
  # =============================================================================
128
17
  # AGT-005: 失敗時必須查閱失敗經驗
@@ -238,10 +127,8 @@ rules:
238
127
  - pattern: "專案根目錄及其子目錄"
239
128
  description: "當前工作目錄(project root)"
240
129
  examples:
241
- - ".memory/"
242
130
  - ".failure/"
243
131
  - ".rule/"
244
- - "dev/pipeline/"
245
132
  - "src/"
246
133
  - "dashboard/"
247
134
 
@@ -259,16 +146,16 @@ rules:
259
146
  error_messages:
260
147
  - trigger: "嘗試訪問 ~/.claude/"
261
148
  message: "❌ 違反 AGT-007:禁止訪問用戶私有配置目錄 (~/.claude/)"
262
- suggestion: "全局記憶由 Claude Code 自動管理,請在專案內 .memory/ 記錄專案相關資訊"
149
+ suggestion: "全局記憶由 Claude Code 自動管理;專案教訓用 `kenaz learn add`"
263
150
  - trigger: "嘗試訪問 C:\\Users\\*\\.claude\\"
264
151
  message: "❌ 違反 AGT-007:禁止訪問用戶私有配置目錄"
265
- suggestion: "請使用專案內的 .memory/ 系統"
152
+ suggestion: "專案教訓請用 `kenaz learn add`,不要寫入用戶目錄"
266
153
 
267
154
  related_systems:
268
- project_memory:
269
- path: ".memory/"
270
- purpose: "專案特定的記憶、日誌、任務記錄"
271
- management: "Agent 手動寫入"
155
+ project_lessons:
156
+ path: ".kenaz/knowledge/"
157
+ purpose: "專案教訓(kenaz learn add)"
158
+ management: "kenaz learn"
272
159
  should_access: true
273
160
  global_memory:
274
161
  path: "~/.claude/projects/.../memory/MEMORY.md"
@@ -281,11 +168,8 @@ rules:
281
168
  good:
282
169
  - description: "✅ 在專案內記錄學習經驗"
283
170
  code: |
284
- # 正確:寫入專案內的 .memory/topics/
285
- Write(
286
- file_path=".memory/topics/learning-2026-02-11.md",
287
- content="學習筆記內容..."
288
- )
171
+ # 正確:用 kenaz learn 記錄到專案內
172
+ Bash(command='kenaz learn add "..."')
289
173
  bad:
290
174
  - description: "❌ 嘗試訪問全局記憶目錄"
291
175
  code: |
@@ -343,7 +227,7 @@ rules:
343
227
  - phase: "檢查階段"
344
228
  questions:
345
229
  - "任務要求的所有輸出是否已產生?"
346
- - "文檔是否已寫入專案內?(.memory/, .failure/, dev/)"
230
+ - "文檔是否已寫入專案內?(.failure/, dev/)"
347
231
  - "代碼變更是否已完成?"
348
232
  - "Git commit 是否已建立?"
349
233
  - "任務狀態是否已更新?"
@@ -385,7 +269,7 @@ rules:
385
269
  - phase: "Output Verification(驗證輸出)"
386
270
  steps:
387
271
  - "檢查所有要求的輸出是否已產生"
388
- - "驗證文檔在專案內(.memory/, .failure/)"
272
+ - "驗證文檔在專案內(.failure/)"
389
273
  - "確認 Git commit 已建立"
390
274
  - phase: "Completion Check(完成檢查)"
391
275
  question: "所有輸出都完整嗎?"
@@ -429,7 +313,7 @@ rules:
429
313
  scenario: "完成並行處理失敗學習文檔"
430
314
  steps:
431
315
  - "1. 建立 .failure/architecture/FAIL-004_*.md ✅"
432
- - "2. 建立 .memory/topics/parallel-processing-*.md ✅"
316
+ - "2. 建立專案內的 parallel-processing 筆記 ✅"
433
317
  - "3. Git commit ✅"
434
318
  - "4. 檢查:所有輸出都完整? → 是 ✅"
435
319
  - "5. 停止工作,等待用戶指示 ✅"
@@ -439,7 +323,7 @@ rules:
439
323
  scenario: "完成並行處理失敗學習文檔後"
440
324
  steps:
441
325
  - "1. 建立 .failure/architecture/FAIL-004_*.md ✅"
442
- - "2. 建立 .memory/topics/parallel-processing-*.md ✅"
326
+ - "2. 建立專案內的 parallel-processing 筆記 ✅"
443
327
  - "3. Git commit ✅"
444
328
  - "4. 想:'應該更新 MEMORY.md 索引' ❌"
445
329
  - "5. 嘗試訪問 ~/.claude/.../memory/ ❌(違反 AGT-007)"
@@ -461,7 +345,7 @@ rules:
461
345
  checklist:
462
346
  - item: "✅ 所有任務要求的輸出都已產生"
463
347
  importance: "critical"
464
- - item: "✅ 文檔都在專案內(.memory/, .failure/)"
348
+ - item: "✅ 文檔都在專案內(.failure/)"
465
349
  importance: "critical"
466
350
  - item: "✅ Git commit 已建立"
467
351
  importance: "high"
@@ -536,37 +420,3 @@ rules:
536
420
  importance: "critical"
537
421
  - item: "✅ 恢復的 scope_paths 與當前任務一致"
538
422
  importance: "high"
539
-
540
- # =============================================================================
541
- # AGT-010: Formation Dispatch 後必須切回 User Branch
542
- # =============================================================================
543
- - id: "AGT-010"
544
- title: "Dispatch 後切回 User Branch"
545
- description: |
546
- (已退役)Formation headless dispatch 曾在獨立進程中建立 task branch(task/task_XXX),
547
- 完成後 post-complete.js 會 merge 回 user branch。但呼叫者(Ansuz/Agent)的
548
- working tree 仍停留在 task branch 上。
549
-
550
- 如果 dispatch 後繼續在同一 session 做其他改動,會意外 commit 到 task branch,
551
- 而不是 user branch。用戶在桌面端會看到 branch 不一致。
552
- severity: "must"
553
- rationale: "headless dispatch 是獨立進程(已退役,僅供歷史參照),不會切換呼叫者的 git working tree"
554
- trigger: "legacy Formation dispatch 完成後,Ansuz 或 Agent 要做下一個改動之前"
555
- workflow:
556
- - step: 1
557
- action: "確認 dispatch 完成(task status = completed)"
558
- - step: 2
559
- action: "git checkout <user-branch>(通常是 xyz951610 或 main)"
560
- command: "git checkout $(git config --get init.defaultBranch || echo main)"
561
- note: "如果有 uncommitted changes,先 stash 再 checkout"
562
- - step: 3
563
- action: "確認 task branch 的改動已 merge(git log 可見 merge commit)"
564
- - step: 4
565
- action: "繼續下一個改動"
566
- anti_pattern: |
567
- ❌ Dispatch 完成後直接繼續編輯(仍在 task/task_XXX branch)
568
- ❌ 多個 task 共用同一個 task branch(每個 task 應有自己的 branch)
569
- applies_to:
570
- - "Ansuz(PM dispatch 後繼續做其他工作)"
571
- - "任何仍經 legacy Formation dispatch 的 Agent"
572
- - "用戶手動 dispatch 後"
@@ -45,7 +45,7 @@ rules:
45
45
  - path: "dev/"
46
46
  purpose: "開發工具和任務管理"
47
47
  must_contain:
48
- - "pipeline/ - 任務追蹤系統"
48
+ - "pipeline/ - 凍結的舊任務佇列(僅歷史參照;現行任務在 .kenaz/tasks/)"
49
49
  - "scripts/ - 自動化腳本"
50
50
  - "PRODUCT_SPEC.md - 產品規格"
51
51
 
@@ -95,21 +95,16 @@ rules:
95
95
  task_tracking:
96
96
  - title: "任務追蹤必須在專案內"
97
97
  description: |
98
- 所有任務追蹤文件必須在 dev/pipeline/ 下。
99
- 背景 agent 的任務狀態必須更新到 TASK_QUEUE.json。
98
+ 所有任務追蹤文件必須在專案內的 .kenaz/tasks/ 下(YAML 任務卡,目錄即狀態)。
99
+ 背景 agent 的任務狀態必須透過 task-api.js 更新。
100
100
 
101
101
  required_files:
102
- - "dev/pipeline/TASK_QUEUE.json - 任務佇列"
103
- - "dev/pipeline/PROGRESS.md - 進度追蹤"
104
- - "dev/pipeline/tasks/ - 待處理任務"
105
- - "dev/pipeline/completed/ - 已完成任務"
102
+ - ".kenaz/tasks/{backlog,active,done,blocked,cancel}/ - 任務卡"
106
103
 
107
104
  update_rule: |
108
105
  Agent 完成任務後必須:
109
- 1. 更新 TASK_QUEUE.json 中的任務狀態
110
- 2. 移動任務文件到 completed/
111
- 3. 更新 PROGRESS.md
112
- 4. 建立 Git commit(包含 Task ID)
106
+ 1. node .collaboration/core/task-api.js complete TASK_XXX
107
+ 2. 建立 commit(包含 Task ID)
113
108
 
114
109
  background_agents:
115
110
  - title: "背景 Agent 必須使用專案配置"
@@ -122,7 +117,7 @@ rules:
122
117
  - "Task(run_in_background=True) 創建新 session"
123
118
  - "新 session 讀取 .claude/settings.local.json"
124
119
  - "背景 agent 使用專案配置的權限執行"
125
- - "輸出文件寫入專案的 temp 目錄或 dev/pipeline/"
120
+ - "輸出文件寫入專案的 temp 目錄"
126
121
 
127
122
  anti_pattern: |
128
123
  ❌ 假設背景 agent 會繼承主 session 的權限
@@ -167,13 +162,7 @@ rules:
167
162
  - description: "背景 Agent 更新專案內任務狀態"
168
163
  code: |
169
164
  # 在 Agent 執行完成後
170
- node -e "
171
- const fs = require('fs');
172
- const queue = JSON.parse(fs.readFileSync('dev/pipeline/TASK_QUEUE.json', 'utf8'));
173
- const task = queue.tasks.find(t => t.id === 'TASK_XXX');
174
- task.status = 'completed';
175
- fs.writeFileSync('dev/pipeline/TASK_QUEUE.json', JSON.stringify(queue, null, 2));
176
- "
165
+ node .collaboration/core/task-api.js complete TASK_XXX
177
166
 
178
167
  bad:
179
168
  - description: "❌ 依賴全局配置"
@@ -37,14 +37,15 @@ rules:
37
37
  shell_usage: "CARGO_TARGET_DIR=$(node dev/scripts/verify-target-dir.js) cargo check --lib -p kenaz-dashboard"
38
38
 
39
39
  rationale: |
40
- - Windows MAX_PATH: vendor/kuzu CMake object paths exceed 260 chars when
41
- the target dir sits under the repo or a worktree; a short root fixes it.
40
+ - Windows MAX_PATH: deep C/C++ dependency object paths (bundled sqlite etc.)
41
+ can approach 260 chars when the target dir sits under the repo or a
42
+ worktree; a short root keeps them safe.
42
43
  - Bounded growth: one shared dir caps disk usage structurally instead of
43
44
  relying on agent cleanup discipline (proven not to happen).
44
45
  - Warm cache: repeat verification from the same source root is much faster.
45
- Caveat: kuzu is a [patch] path dep — its artifacts are keyed per source
46
- root, so a verify from a NEW worktree path recompiles kuzu (but coexists
47
- without invalidating other roots' artifacts).
46
+ Caveat: workspace crates are keyed per source root, so a verify from a
47
+ NEW worktree path recompiles them (but coexists without invalidating
48
+ other roots' artifacts).
48
49
  - The repo's own dashboard/src-tauri/target must NOT be shared for
49
50
  verification: live tauri dev holds onnxruntime.dll there (os error 32).
50
51
 
@@ -217,7 +217,7 @@ rules:
217
217
  寫代碼前的分析(修改既有 symbol 時):
218
218
  1. kenaz_lsp_references(symbol) → 爆炸半徑
219
219
  2. kenaz_lsp_callers(symbol, depth=2) → 跨模組呼叫者
220
- 禁止盲寫 — 修改非 trivial symbol 前不看影響範圍是被禁止的行為(FAIL-009)。
220
+ 禁止盲寫 — 修改非 trivial symbol 前不看影響範圍是被禁止的行為。
221
221
 
222
222
  red_flags: |
223
223
  如果你發現自己在想以下任何一句話 — 立刻停下,這是跳過影響分析的前兆:
@@ -226,12 +226,12 @@ rules:
226
226
  - 「我已經很熟這段代碼了」
227
227
  - 「只是改個文字 / 樣式 / 常數」
228
228
  - 「趕時間,先改了再說」
229
- 來源:FAIL-009(LoadingScreen.tsx 事件)。
229
+ 來源:LoadingScreen.tsx 事件。
230
230
  原則:覺得太簡單不需要查的時刻,正是最需要它的時刻。
231
231
 
232
232
  anti_rationalization:
233
233
  - excuse: "這只是 UI 改動,不影響邏輯"
234
- reality: "LoadingScreen.tsx 就是這樣出事的(FAIL-009)。UI 組件有 props、state、context 依賴。"
234
+ reality: "LoadingScreen.tsx 就是這樣出事的。UI 組件有 props、state、context 依賴。"
235
235
  - excuse: "我剛才已經查過相關的 symbol 了"
236
236
  reality: "每個被修改的 symbol 都需要獨立查影響範圍。相關不等於相同。"
237
237
  - excuse: "這次改動範圍很小,不會有爆炸半徑"
@@ -61,7 +61,7 @@ capabilities:
61
61
  task_audit:
62
62
  description: "審計 Ansuz 拆出的任務品質 — 從 agent 執行角度找問題"
63
63
  goal: "在 role 分配前,先確保任務本身的定義是可執行、無歧義的"
64
- when: "Ansuz Phase 3 完成任務拆解後、role 分配前"
64
+ when: "Ansuz 完成任務拆解後、role 分配前"
65
65
  audit_dimensions:
66
66
  scope_clarity:
67
67
  check: "scope_paths 是否明確?agent 能不能從 scope 判斷要改哪些檔案?"
@@ -167,7 +167,7 @@ capabilities:
167
167
  step_2: "Update task YAML with cancellation metadata: { reason, detail, cancelled_by: huginn_gate, timestamp }"
168
168
  step_3: "Notify loop controller via cancellation signal if loop is active"
169
169
  rules:
170
- - "✅ Audit runs synchronously before Ansuz Phase 0 for wish tasks"
170
+ - "✅ Audit runs synchronously before Ansuz starts a wish task"
171
171
  - "✅ Feasibility check uses file system (Glob/Bash), not task description"
172
172
  - "✅ Conflict check reads live active task list — not cached"
173
173
  - "✅ Duplicate check is case-insensitive, strips punctuation"
@@ -188,7 +188,7 @@ capabilities:
188
188
  rule: "如有匹配的 .failure/ 條目,必須在 technical_notes 中引用"
189
189
  repeat_pattern:
190
190
  check: "同 feature_id / source 是否已有過 fix 任務?"
191
- rule: "如果是重複 fix → 標記 ⚠️,建議 Ansuz 在 Phase 9 做完整三級預防分析"
191
+ rule: "如果是重複 fix → 標記 ⚠️,建議 Ansuz 在驗證階段做完整三級預防分析"
192
192
 
193
193
  # ─── Role 分配(唯一權威) ───
194
194
  role_assignment:
@@ -207,12 +207,12 @@ capabilities:
207
207
  anti_pattern: "work-scope — ❌ 不要用「誰來做」或「一個人全包」來判斷"
208
208
 
209
209
  # ─── 可用角色清單(Formation Legacy Skills) ───
210
- # 路徑:.formation/legacy/{role}.yaml
210
+ # 路徑:.claude/skills/{skill}/SKILL.md
211
211
  # 對應:scheduler.yaml → role_skill_map
212
212
  available_roles:
213
213
 
214
214
  developer:
215
- skill_path: ".formation/roles/developer/role.yaml"
215
+ skill_path: ".claude/skills/dev_agent/SKILL.md"
216
216
  identity: "全端通才開發者"
217
217
  strengths:
218
218
  - "靈活處理任何程式碼區域(前端、後端、腳本、配置)"
@@ -221,7 +221,7 @@ capabilities:
221
221
  not_for: "有明確前端/後端分界的任務 — 用專門角色效果更好"
222
222
 
223
223
  frontend:
224
- skill_path: ".formation/roles/frontend/role.yaml"
224
+ skill_path: ".claude/skills/developer/SKILL.md"
225
225
  identity: "React/TypeScript UI 專家"
226
226
  strengths:
227
227
  - "React 組件設計、RWD、Accessibility"
@@ -231,7 +231,7 @@ capabilities:
231
231
  not_for: "server-side 程式碼(即使在 Next.js 專案中)"
232
232
 
233
233
  backend:
234
- skill_path: ".formation/roles/backend/role.yaml"
234
+ skill_path: ".claude/skills/backend_engineer/SKILL.md"
235
235
  identity: "API/資料庫工程師(Security-first)"
236
236
  strengths:
237
237
  - "API 設計、資料庫建模、SQL"
@@ -241,7 +241,7 @@ capabilities:
241
241
  not_for: "純 UI 組件(沒有 server-side 邏輯)"
242
242
 
243
243
  designer:
244
- skill_path: ".formation/roles/designer/role.yaml"
244
+ skill_path: ".claude/skills/designer/SKILL.md"
245
245
  identity: "UI/UX 設計規範專家"
246
246
  strengths:
247
247
  - "產出可執行的設計規範(DESIGN_SPEC.md)"
@@ -250,7 +250,7 @@ capabilities:
250
250
  not_for: "寫程式碼 — designer 產出規範,由 frontend/backend 實作"
251
251
 
252
252
  qa:
253
- skill_path: ".formation/roles/qa/role.yaml"
253
+ skill_path: ".claude/skills/qa_engineer/SKILL.md"
254
254
  identity: "測試與品質專家"
255
255
  strengths:
256
256
  - "測試用例設計、Edge case 覆蓋"
@@ -260,7 +260,7 @@ capabilities:
260
260
  not_for: "功能開發(除非是修復已知 Bug)"
261
261
 
262
262
  sre:
263
- skill_path: ".formation/roles/sre/role.yaml"
263
+ skill_path: ".claude/skills/sre_agent/SKILL.md"
264
264
  identity: "基礎設施守護者(Safety-first)"
265
265
  strengths:
266
266
  - "Supabase 管理、SQL 遷移、RLS 策略"
@@ -347,8 +347,8 @@ capabilities:
347
347
  影響範圍: {affected_files}
348
348
  修復方案: {fix_plan}
349
349
 
350
- 請從 Phase 3(任務設計)開始執行 — Phase 1(需求理解)已由 Amelia 完成。
351
- 直接拆解任務 → 請求用戶批准 → dispatch 修復。
350
+ 需求理解已由 Amelia 完成,請直接從任務設計開始。
351
+ 直接拆解任務 → dispatch 修復。
352
352
  `
353
353
  })
354
354
  step_3: "Ansuz 接手後,Amelia 監控進度並向用戶回報"
@@ -21,9 +21,9 @@ session_init:
21
21
  description: "Session 開始時帶著歷史認知開口,不裸奔"
22
22
  layers:
23
23
  layer_1_injected:
24
- source: "phase-gate enter(若有)或 session.js 注入的 episodic_memory 欄位"
24
+ source: "session.js 注入的 episodic_memory 欄位(若有)"
25
25
  content: "summary + lesson only(摘要版)"
26
- rule: "若已有注入內容 → 直接使用,不需再呼叫 hippocampus"
26
+ rule: "若已有注入內容 → 直接使用"
27
27
  layer_2_history:
28
28
  source: "kenaz_task_get / .kenaz/tasks/ / git log — 歷史任務與決策過程"
29
29
  when_to_use: