kenaz 0.3.18 → 0.3.20
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.
- package/core/.claude/commands/agent-worker.md +1 -1
- package/core/.claude/commands/architect.md +1 -2
- package/core/.claude/commands/spec.md +1 -1
- package/core/.claude/commands//347/224/242/345/223/201.md +1 -1
- package/core/.claude/hooks/__tests__/task-1977-dedupe-guard.test.js +8 -8
- package/core/.claude/skills/architect_agent/SKILL.md +11 -92
- package/core/.claude/skills/assessment_agent/SKILL.md +0 -1
- package/core/.claude/skills/backend_engineer/SKILL.md +3 -6
- package/core/.claude/skills/code_reviewer/SKILL.md +1 -1
- package/core/.claude/skills/code_reviewer/patterns.yaml +1 -1
- package/core/.claude/skills/designer/SKILL.md +3 -6
- package/core/.claude/skills/dev_agent/SKILL.md +30 -491
- package/core/.claude/skills/developer/SKILL.md +3 -6
- package/core/.claude/skills/feature_agent/SKILL.md +3 -17
- package/core/.claude/skills/product_manager/SKILL.md +29 -1064
- package/core/.claude/skills/qa_engineer/SKILL.md +12 -17
- package/core/.claude/skills/spec_optimizer/SKILL.md +25 -275
- package/core/.claude/skills/sre_agent/SKILL.md +3 -6
- package/core/.collaboration/README.md +2 -3
- package/core/.collaboration/core/task-api.js +5 -138
- package/core/.collaboration/docs/CLI.md +0 -2
- package/core/.failure/INDEX.yaml +6 -40
- package/core/.failure/agent-execution/FAIL-013-search-cwd-drift-and-case-mismatch.yaml +1 -1
- package/core/.failure/tools/README.md +9 -227
- package/core/.formation/bifrost/launch.js +1 -6
- package/core/.formation/bifrost/launch.test.js +1 -1
- package/core/.formation/bifrost/shared/ansuz-boot-policy.js +3 -3
- package/core/.formation/bifrost/shared/ansuz-boot-policy.test.js +1 -2
- package/core/.formation/tools/__tests__/arms.test.js +41 -0
- package/core/.formation/tools/__tests__/diagnose-bug.test.js +10 -0
- package/core/.formation/tools/__tests__/m1-hmap-convid.test.js +1 -124
- package/core/.formation/tools/arms.js +48 -0
- package/core/.formation/tools/dispatch.js +24 -15
- package/core/.formation/tools/kenaz-stats.js +32 -8
- package/core/.formation/tools/kenaz-stats.test.js +15 -2
- package/core/.formation/tools/loader.js +17 -140
- package/core/.formation/tools/post-complete.js +0 -31
- package/core/.formation/tools/prompt.js +16 -1
- package/core/.formation/tools/prompt.test.js +20 -0
- package/core/.rule/INDEX.yaml +0 -18
- package/core/.rule/general/agent-workflow.yaml +14 -164
- package/core/.rule/general/project-self-containment.yaml +8 -19
- package/core/.rule/general/rust-verify-target.yaml +6 -5
- package/core/.rule/general/synapse-code-intelligence.yaml +3 -3
- package/core/.specialist/Amelia/capability.yaml +12 -12
- package/core/.specialist/Amelia/workflow.yaml +2 -2
- package/core/.specialist/Ansuz/SYSTEM_DOC.md +20 -578
- package/core/.specialist/Ansuz/cognitive_principles.yaml +2 -3
- package/core/.specialist/Ansuz/concepts/boot_rules_summary.yaml +0 -1
- package/core/.specialist/Ansuz/concepts/deep_knowledge_pointers.yaml +1 -2
- package/core/.specialist/Ansuz/core.yaml +6 -108
- package/core/.specialist/Ansuz/guards/lesson_guards.yaml +0 -3
- package/core/.specialist/Ansuz/identity_contract.yaml +0 -1
- package/core/.specialist/Ansuz/knowledge.yaml +0 -4
- package/core/.specialist/Ansuz/rule.yaml +0 -1
- package/core/.specialist/Ansuz/tools/handoff-session-identity.test.js +6 -150
- package/core/.specialist/tests/runtime-discovery/README.md +1 -1
- package/core/.specialist/tools/__tests__/task-2374-usage-counter.test.js +1 -12
- package/core/.specialist/tools/ansuz-boot-fast.js +7 -4
- package/core/.specialist/tools/ansuz-boot-fast.test.js +10 -3
- package/core/.specialist/tools/prompt-files.test.js +1 -0
- package/core/.specialist/tools/task-bridge.js +1 -66
- package/core/.system/README.md +11 -552
- package/core/.system/collaboration/README.md +10 -174
- package/core/CLAUDE.md +1 -6
- package/core/KENAZ_CORE_VERSION +1 -1
- package/core/dev/scripts/js-yaml-resolution.test.js +1 -1
- package/core/dev/scripts/peer-identity-e2e.js +402 -0
- package/core/dev/scripts/peer-identity-e2e.md +47 -0
- package/core/dev/scripts/relay-admin.js +94 -0
- package/core/dev/scripts/relay-admin.test.js +131 -0
- package/core/dev/scripts/run-rust-tests.js +9 -45
- package/core/dev/scripts/rust-verify-worktree.js +4 -4
- package/core/dev/scripts/verify-target-dir.js +6 -6
- package/core/plugins/kenaz/INVENTORY.md +8 -8
- package/core/plugins/kenaz/README.md +10 -0
- package/core/plugins/kenaz/commands/architect.md +1 -2
- package/core/plugins/kenaz/commands/spec.md +1 -1
- package/core/plugins/kenaz/commands//347/224/242/345/223/201.md +1 -1
- package/core/plugins/kenaz/guidance.md +1 -1
- package/core/plugins/kenaz/hooks/kenaz-hook.js +2 -1
- package/core/plugins/kenaz/hooks/sdk-gate.js +9 -0
- package/core/plugins/kenaz/scripts/kenaz.test.js +15 -3
- package/core/plugins/kenaz/scripts/sync.js +1 -1
- package/core/plugins/kenaz/scripts/ygg.js +8 -0
- package/core/plugins/kenaz/scripts/ygg.test.js +72 -0
- package/core/plugins/kenaz/skills/architect_agent/SKILL.md +11 -92
- package/core/plugins/kenaz/skills/assessment_agent/SKILL.md +0 -1
- package/core/plugins/kenaz/skills/backend_engineer/SKILL.md +3 -6
- package/core/plugins/kenaz/skills/code_reviewer/SKILL.md +1 -1
- package/core/plugins/kenaz/skills/code_reviewer/patterns.yaml +1 -1
- package/core/plugins/kenaz/skills/designer/SKILL.md +3 -6
- package/core/plugins/kenaz/skills/dev_agent/SKILL.md +30 -491
- package/core/plugins/kenaz/skills/developer/SKILL.md +3 -6
- package/core/plugins/kenaz/skills/feature_agent/SKILL.md +3 -17
- package/core/plugins/kenaz/skills/product_manager/SKILL.md +29 -1064
- package/core/plugins/kenaz/skills/qa_engineer/SKILL.md +12 -17
- package/core/plugins/kenaz/skills/spec_optimizer/SKILL.md +25 -275
- package/core/plugins/kenaz/skills/sre_agent/SKILL.md +3 -6
- package/core/plugins/kenaz-peer/hooks/register.test.ts +32 -0
- package/core/plugins/kenaz-peer/hooks/register.ts +9 -0
- package/package.json +6 -6
- package/core/.claude/commands/archive.md +0 -24
- package/core/.claude/commands/init.md +0 -112
- package/core/.claude/commands/legacy_dev.md +0 -18
- package/core/.claude/commands/product-review.md +0 -131
- package/core/.claude/commands/strategy.md +0 -141
- package/core/.claude/commands/sunny.md +0 -1
- package/core/.claude/commands//347/224/242/345/223/201/346/252/242/350/246/226.md +0 -129
- package/core/.claude/commands//351/200/262/345/272/246.md +0 -15
- package/core/.claude/hooks/__tests__/substrate.test.js +0 -122
- package/core/.claude/hooks/_substrate-paths.js +0 -95
- package/core/.claude/hooks/context-check.js +0 -51
- package/core/.claude/hooks/fatigue-check.js +0 -52
- package/core/.claude/hooks/handoff-snapshot-on-commit.js +0 -154
- package/core/.claude/hooks/handoff-snapshot-on-question.js +0 -158
- package/core/.claude/hooks/handoff-staleness.js +0 -197
- package/core/.claude/hooks/jev-thalamus-context.js +0 -17
- package/core/.claude/hooks/jev-thalamus-context.test.js +0 -41
- package/core/.claude/hooks/lease-release.js +0 -119
- package/core/.claude/hooks/lease-touch.js +0 -96
- package/core/.claude/hooks/reflex-feedback.js +0 -5
- package/core/.claude/hooks/session-init.ps1 +0 -49
- package/core/.claude/hooks/sound-event.js +0 -70
- package/core/.claude/hooks/sound-event.sh +0 -37
- package/core/.claude/hooks/stream-delta.js +0 -169
- package/core/.claude/no-hooks.settings.json +0 -3
- package/core/.claude/skills/legacy_dev/SKILL.md +0 -202
- package/core/.claude/skills/sunny/SKILL.md +0 -74
- package/core/.collaboration/cli/commands/assign.js +0 -39
- package/core/.collaboration/cli/commands/claim.js +0 -33
- package/core/.collaboration/cli/commands/complete.js +0 -44
- package/core/.collaboration/cli/commands/create.js +0 -110
- package/core/.collaboration/cli/commands/get.js +0 -83
- package/core/.collaboration/cli/commands/index.js +0 -52
- package/core/.collaboration/cli/commands/list.js +0 -51
- package/core/.collaboration/cli/commands/lock.js +0 -45
- package/core/.collaboration/cli/commands/rebuild.js +0 -39
- package/core/.collaboration/cli/commands/search.js +0 -61
- package/core/.collaboration/cli/commands/stats.js +0 -61
- package/core/.collaboration/cli/commands/transfer.js +0 -41
- package/core/.collaboration/cli/commands/unlock.js +0 -48
- package/core/.collaboration/cli/formatters/help-formatter.js +0 -70
- package/core/.collaboration/cli/formatters/index.js +0 -7
- package/core/.collaboration/cli/task-cli.js +0 -46
- package/core/.collaboration/cli/utils/arg-parser.js +0 -74
- package/core/.collaboration/cli/utils/git-user.js +0 -25
- package/core/.collaboration/cli/utils/index.js +0 -9
- package/core/.collaboration/cli/utils/output.js +0 -10
- package/core/.collaboration/config/default.yaml +0 -189
- package/core/.collaboration/core/conflict-resolver.js +0 -461
- package/core/.collaboration/core/conflict-resolver.test.js +0 -389
- package/core/.collaboration/core/migrate-legacy.js +0 -260
- package/core/.collaboration/docs/API.md +0 -787
- package/core/.collaboration/docs/ARCHITECTURE.md +0 -596
- package/core/.collaboration/docs/FAQ.md +0 -695
- package/core/.collaboration/docs/MIGRATION.md +0 -804
- package/core/.collaboration/docs/examples/README.md +0 -320
- package/core/.collaboration/docs/examples/advanced-queries.js +0 -261
- package/core/.collaboration/docs/examples/basic-usage.js +0 -184
- package/core/.collaboration/docs/examples/team-workflow.js +0 -352
- package/core/.failure/agent-execution/FAIL-001-agent-no-output.yaml +0 -391
- package/core/.failure/agent-execution/FAIL-007-pm-lead-wrong-team-invocation.yaml +0 -0
- package/core/.failure/agent-execution/FAIL-010-phase0-poem-format-skipped.yaml +0 -28
- package/core/.failure/agent-execution/FAIL-010-skipping-cognitive-checkpoint-after-verification.yaml +0 -59
- package/core/.failure/agent-execution/FAIL-012-grep-shortcut-during-investigation.yaml +0 -85
- package/core/.failure/architecture/FAIL-006-python-version-compatibility.yaml +0 -445
- package/core/.failure/pipeline/FAIL-003-queue-pollution.yaml +0 -335
- package/core/.failure/pipeline/README.md +0 -95
- package/core/.failure/retired/FAIL-009-skipping-synapse-pulse-before-code-change.yaml +0 -49
- package/core/.failure/tools/USAGE_GUIDE.md +0 -323
- package/core/.failure/tools/check_failures.ps1 +0 -387
- package/core/.failure/tools/log_failure.ps1 +0 -474
- package/core/.formation/.episode-input.json +0 -10
- package/core/.formation/.merge-lock +0 -1
- package/core/.formation/lead.yaml +0 -118
- package/core/.formation/legacy.bak/designer.yaml +0 -57
- package/core/.formation/legacy.bak/pm.yaml +0 -57
- package/core/.formation/legacy.bak/qa.yaml +0 -57
- package/core/.formation/legacy.bak/review.yaml +0 -62
- package/core/.formation/legacy.bak/scheduler.yaml +0 -129
- package/core/.formation/legacy.bak/sre.yaml +0 -57
- package/core/.formation/role-map.yaml +0 -274
- package/core/.formation/roles/_shared/modules/code_review.yaml +0 -98
- package/core/.formation/roles/_shared/modules/security.yaml +0 -103
- package/core/.formation/roles/_shared/modules/testing.yaml +0 -14
- package/core/.formation/roles/backend/role.yaml +0 -93
- package/core/.formation/roles/code_reviewer/role.yaml +0 -102
- package/core/.formation/roles/database_optimizer/role.yaml +0 -107
- package/core/.formation/roles/designer/role.yaml +0 -66
- package/core/.formation/roles/developer/role.yaml +0 -75
- package/core/.formation/roles/frontend/role.yaml +0 -134
- package/core/.formation/roles/incident_response/role.yaml +0 -89
- package/core/.formation/roles/qa/role.yaml +0 -89
- package/core/.formation/roles/security/role.yaml +0 -87
- package/core/.formation/roles/sre/role.yaml +0 -66
- package/core/.formation/skills/coordinator.yaml +0 -52
- package/core/.formation/solo/diagnosis.yaml +0 -78
- package/core/.formation/solo/strategy.yaml +0 -121
- package/core/.formation/tests/hello.txt +0 -2
- package/core/.formation/tools/coordinator.js +0 -350
- package/core/.formation/tools/jev-correction.js +0 -214
- package/core/.formation/tools/jev-correction.test.js +0 -178
- package/core/.formation/tools/log-reader.js +0 -232
- package/core/.formation/tools/revert-daemon-state.js +0 -162
- package/core/.formation/tools/test-drift.js +0 -148
- package/core/.formation/unit/heimdall.yaml +0 -96
- package/core/.formation/unit/plan.yaml +0 -67
- package/core/.formation/unit/think.yaml +0 -58
- package/core/.kenaz/MUNINN_SNAPSHOT9_EPISODE.json +0 -32
- package/core/.kenaz/MUNINN_SNAPSHOT9_RUNE.json +0 -23
- package/core/.kenaz/MUNINN_SNAPSHOT9_SUMMARY.md +0 -89
- package/core/.kenaz/ash_TASK_1428-20260507.json +0 -14
- package/core/.kenaz/muninn_episode_write.ps1 +0 -17
- package/core/.kenaz/muninn_snapshot11_rune_candidates.md +0 -63
- package/core/.kenaz/muninn_snapshot1_rune_candidates.md +0 -49
- package/core/.kenaz/runes_TASK_1428.json +0 -57
- package/core/.kenaz/tmp_heimdall_proposal_8d3e392.json +0 -13
- package/core/.kenaz/tmp_props.json +0 -1
- package/core/.kenaz/tmp_sounddrop_t1_prompt.txt +0 -371
- package/core/.rule/MECHANIZED.md +0 -61
- package/core/.rule/general/cortex-memory-recall.yaml +0 -446
- package/core/.rule/general/pipeline.yaml +0 -246
- package/core/.rule/general/sunny-access-control.yaml +0 -60
- package/core/.rule/general/system-invariants.yaml +0 -231
- package/core/.rule/pipeline/PPL-002-completed-task-archival.yaml +0 -528
- package/core/.rule/pipeline/auto-update.yaml +0 -282
- package/core/.rule/pipeline/task-execution.yaml +0 -365
- package/core/.specialist/Ansuz/concepts/phase_protocol.yaml +0 -65
- package/core/.specialist/Ansuz/experiments/boot_ablation_replay.js +0 -197
- package/core/.specialist/Ansuz/tools/bootstrap-anchors.js +0 -289
- package/core/.specialist/Ansuz/workflow.yaml +0 -1225
- package/core/.specialist/experiments/rg_benchmark.js +0 -523
- package/core/.specialist/experiments/rg_benchmark_results.json +0 -27
- package/core/.specialist/tools/jev-optional-context.js +0 -107
- package/core/.specialist/tools/jev-optional-context.test.js +0 -152
- package/core/.specialist/tools/memory-action-log.js +0 -839
- package/core/.specialist/tools/phase-gate.js +0 -3534
- package/core/.specialist/tools/phase-gate.test.js +0 -85
- package/core/.specialist/tools/precompute-runner.js +0 -444
- package/core/.specialist/tools/rule-engine.js +0 -621
- package/core/.specialist/tools/task-bridge-jev.test.js +0 -170
- package/core/.synapse/memory-shared.json.sync +0 -1
- package/core/.system/agent-skills/README.md +0 -724
- package/core/.system/cli-tools/README.md +0 -724
- package/core/.system/cortex/MODULES.md +0 -1046
- package/core/.system/dashboard/FRONTEND.md +0 -812
- package/core/.system/dashboard/README.md +0 -737
- package/core/.system/failure/README.md +0 -723
- package/core/.system/formation/LEGACY_SKILLS.md +0 -974
- package/core/.system/formation/POST_COMPLETE.md +0 -602
- package/core/.system/formation/README.md +0 -1094
- package/core/.system/formation/TOOLS_REFERENCE.md +0 -1145
- package/core/.system/kenaz/README.md +0 -787
- package/core/.system/memory/README.md +0 -719
- package/core/.system/pipeline/README.md +0 -712
- package/core/.system/rule/README.md +0 -794
- package/core/.system/sunny/README.md +0 -476
- package/core/.system/sunny/RULES.json +0 -89
- package/core/.system/sunny/knowledge/INDEX.md +0 -37
- package/core/.system/sunny/knowledge/agent-teams-api.md +0 -0
- package/core/.system/sunny/knowledge/ansuz-specialist.md +0 -500
- package/core/.system/sunny/knowledge/claude-cli-spawn.md +0 -177
- package/core/.system/sunny/knowledge/collaboration-api.md +0 -925
- package/core/.system/sunny/teammates/README.md +0 -107
- package/core/.system/sunny/teammates/how_to_use.yaml +0 -101
- package/core/.system/sunny/teammates/tools/headless/launcher.js +0 -318
- package/core/.system/sunny/teammates/tools/powershell/launcher.js +0 -241
- package/core/.system/sunny/teammates/tools/powershell/start.bat +0 -50
- package/core/.system/sunny/teammates/tools/utils/env.js +0 -96
- package/core/.system/sunny/teammates/tools/utils/format-output.js +0 -329
- package/core/.system/sunny/tools.json +0 -101
- package/core/dev/scripts/cleanup-queue.js +0 -184
- package/core/dev/scripts/cleanup_queue.js +0 -86
- package/core/dev/scripts/legacy/README.md +0 -39
- package/core/dev/scripts/legacy/dev_agent_scheduler.ps1.bak +0 -536
- package/core/dev/scripts/legacy/multi_agent_scheduler.ps1.bak +0 -1978
- package/core/dev/scripts/matrix/CLI_README.md +0 -214
- package/core/dev/scripts/matrix/README.md +0 -310
- package/core/dev/scripts/matrix/package-lock.json +0 -4266
- package/core/dev/scripts/matrix/package.json +0 -55
- package/core/dev/scripts/matrix/src/abbreviations.ts +0 -295
- package/core/dev/scripts/matrix/src/cli/commands/convert.ts +0 -211
- package/core/dev/scripts/matrix/src/cli/commands/create.ts +0 -95
- package/core/dev/scripts/matrix/src/cli/commands/delete.ts +0 -102
- package/core/dev/scripts/matrix/src/cli/commands/list-tags.ts.wip +0 -140
- package/core/dev/scripts/matrix/src/cli/commands/manage-tags.ts.wip +0 -173
- package/core/dev/scripts/matrix/src/cli/commands/query.ts +0 -261
- package/core/dev/scripts/matrix/src/cli/commands/read.ts +0 -77
- package/core/dev/scripts/matrix/src/cli/commands/stats.ts.wip +0 -168
- package/core/dev/scripts/matrix/src/cli/commands/tokens.ts.wip +0 -126
- package/core/dev/scripts/matrix/src/cli/commands/update.ts +0 -147
- package/core/dev/scripts/matrix/src/cli/commands/validate.ts +0 -275
- package/core/dev/scripts/matrix/src/cli/index.ts +0 -350
- package/core/dev/scripts/matrix/src/cli/utils/file-handler.ts +0 -72
- package/core/dev/scripts/matrix/src/cli/utils/logger.ts +0 -65
- package/core/dev/scripts/matrix/src/index.ts +0 -62
- package/core/dev/scripts/matrix/src/indexer/tag-indexer.ts +0 -165
- package/core/dev/scripts/matrix/src/parser.ts +0 -281
- package/core/dev/scripts/matrix/src/serializer.ts +0 -151
- package/core/dev/scripts/matrix/src/validator.ts +0 -301
- package/core/dev/scripts/matrix/tests/abbreviations.test.ts +0 -122
- package/core/dev/scripts/matrix/tests/cli.test.ts +0 -177
- package/core/dev/scripts/matrix/tests/convert.test.ts +0 -143
- package/core/dev/scripts/matrix/tests/parser.test.ts +0 -203
- package/core/dev/scripts/matrix/tests/query.test.ts +0 -85
- package/core/dev/scripts/matrix/tests/serializer.test.ts +0 -197
- package/core/dev/scripts/matrix/tests/validate.test.ts +0 -141
- package/core/dev/scripts/matrix/tests/validator.test.ts +0 -167
- package/core/dev/scripts/matrix/tsconfig.json +0 -20
- package/core/dev/scripts/matrix/types/index.d.ts +0 -111
- package/core/dev/scripts/matrix/types/index.d.ts.map +0 -1
- package/core/dev/scripts/matrix/types/index.js +0 -8
- package/core/dev/scripts/matrix/types/index.js.map +0 -1
- package/core/dev/scripts/matrix/types/index.ts +0 -124
- package/core/dev/scripts/memory-usage-report.js +0 -152
- package/core/dev/scripts/probe/ansuz-scaffold-ablation.js +0 -579
- package/core/dev/scripts/probe/ansuz-scaffold-ablation.test.js +0 -244
- package/core/dev/scripts/probe/hook-latency-probe.js +0 -315
- package/core/dev/scripts/probe/hook-latency-probe.test.js +0 -105
- package/core/dev/scripts/probe/prediction-signal-auc.js +0 -483
- package/core/dev/scripts/probe/prediction-signal-auc.test.js +0 -200
- package/core/dev/scripts/test-pty-ws-tunnel.js +0 -229
- package/core/dev/scripts/validate_pipeline.js +0 -197
- package/core/dev/spikes/task2145-evidence-20261004/backend-log-excerpt.txt +0 -56
- package/core/dev/spikes/task2145-evidence-20261004/graph.shadow +0 -0
- package/core/dev/spikes/task2145-evidence-20261004/graph.wal +0 -0
- package/core/dev/spikes/task2145-evidence-20261004/graph_corrupt_suspect.marker +0 -1
- 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
|
|
149
|
+
suggestion: "全局記憶由 Claude Code 自動管理;專案教訓用 `kenaz learn add`"
|
|
263
150
|
- trigger: "嘗試訪問 C:\\Users\\*\\.claude\\"
|
|
264
151
|
message: "❌ 違反 AGT-007:禁止訪問用戶私有配置目錄"
|
|
265
|
-
suggestion: "
|
|
152
|
+
suggestion: "專案教訓請用 `kenaz learn add`,不要寫入用戶目錄"
|
|
266
153
|
|
|
267
154
|
related_systems:
|
|
268
|
-
|
|
269
|
-
path: ".
|
|
270
|
-
purpose: "
|
|
271
|
-
management: "
|
|
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
|
-
#
|
|
285
|
-
|
|
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
|
-
- "文檔是否已寫入專案內?(.
|
|
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
|
-
- "驗證文檔在專案內(.
|
|
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.
|
|
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.
|
|
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: "✅ 文檔都在專案內(.
|
|
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
|
-
|
|
99
|
-
背景 agent
|
|
98
|
+
所有任務追蹤文件必須在專案內的 .kenaz/tasks/ 下(YAML 任務卡,目錄即狀態)。
|
|
99
|
+
背景 agent 的任務狀態必須透過 task-api.js 更新。
|
|
100
100
|
|
|
101
101
|
required_files:
|
|
102
|
-
- "
|
|
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.
|
|
110
|
-
2.
|
|
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
|
|
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 -
|
|
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:
|
|
41
|
-
the target dir sits under the repo or a
|
|
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:
|
|
46
|
-
|
|
47
|
-
|
|
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
|
|
220
|
+
禁止盲寫 — 修改非 trivial symbol 前不看影響範圍是被禁止的行為。
|
|
221
221
|
|
|
222
222
|
red_flags: |
|
|
223
223
|
如果你發現自己在想以下任何一句話 — 立刻停下,這是跳過影響分析的前兆:
|
|
@@ -226,12 +226,12 @@ rules:
|
|
|
226
226
|
- 「我已經很熟這段代碼了」
|
|
227
227
|
- 「只是改個文字 / 樣式 / 常數」
|
|
228
228
|
- 「趕時間,先改了再說」
|
|
229
|
-
來源:
|
|
229
|
+
來源:LoadingScreen.tsx 事件。
|
|
230
230
|
原則:覺得太簡單不需要查的時刻,正是最需要它的時刻。
|
|
231
231
|
|
|
232
232
|
anti_rationalization:
|
|
233
233
|
- excuse: "這只是 UI 改動,不影響邏輯"
|
|
234
|
-
reality: "LoadingScreen.tsx
|
|
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
|
|
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
|
|
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
|
|
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
|
-
# 路徑:.
|
|
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: ".
|
|
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: ".
|
|
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: ".
|
|
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: ".
|
|
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: ".
|
|
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: ".
|
|
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
|
-
|
|
351
|
-
直接拆解任務 →
|
|
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: "
|
|
24
|
+
source: "session.js 注入的 episodic_memory 欄位(若有)"
|
|
25
25
|
content: "summary + lesson only(摘要版)"
|
|
26
|
-
rule: "若已有注入內容 →
|
|
26
|
+
rule: "若已有注入內容 → 直接使用"
|
|
27
27
|
layer_2_history:
|
|
28
28
|
source: "kenaz_task_get / .kenaz/tasks/ / git log — 歷史任務與決策過程"
|
|
29
29
|
when_to_use:
|