@chongyan/autospec 1.0.1 → 1.0.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 (595) hide show
  1. package/LICENSE +242 -21
  2. package/README.md +54 -476
  3. package/dist/README.md +54 -0
  4. package/dist/adapters/claude-code/README.md.enc +6 -0
  5. package/dist/adapters/claude-code/agents.js +1 -0
  6. package/dist/adapters/claude-code/commands.config.js +1 -0
  7. package/dist/adapters/claude-code/commands.js +1 -0
  8. package/dist/adapters/claude-code/hooks.config.js +2 -0
  9. package/dist/adapters/claude-code/hooks.js +1 -0
  10. package/dist/adapters/claude-code/install.js +1 -0
  11. package/dist/adapters/claude-code/skills.js +1 -0
  12. package/dist/adapters/codex/README.md.enc +6 -0
  13. package/dist/adapters/codex/hooks/pre-commit.sh +10 -0
  14. package/dist/adapters/codex/install.js +1 -0
  15. package/dist/adapters/codex/prompts/env-learn.md.enc +6 -0
  16. package/dist/adapters/codex/prompts/review.md.enc +6 -0
  17. package/dist/adapters/codex/wrappers/autospec-cli.sh +118 -0
  18. package/dist/adapters/codex/wrappers/parallel.sh +20 -0
  19. package/dist/adapters/codex/wrappers/post-task.sh +138 -0
  20. package/dist/bin/autospec.js +2 -0
  21. package/dist/knowledge/README.en.md.enc +6 -0
  22. package/dist/knowledge/README.md.enc +6 -0
  23. package/dist/knowledge/change-management.md.enc +6 -0
  24. package/dist/knowledge/cognition-engine.md.enc +6 -0
  25. package/dist/knowledge/config/baseline-permissions.md.enc +6 -0
  26. package/dist/knowledge/config/external-mounts.yaml.enc +6 -0
  27. package/dist/knowledge/config/model-profiles.yaml.enc +6 -0
  28. package/dist/knowledge/config/role-composition.yaml.enc +6 -0
  29. package/dist/knowledge/config/token-optimization.yaml.enc +6 -0
  30. package/dist/knowledge/config/validation-patterns.yaml.enc +6 -0
  31. package/dist/knowledge/constitution.md.enc +6 -0
  32. package/dist/knowledge/core-rules.md.enc +6 -0
  33. package/dist/knowledge/environment/adapters/README.md.enc +6 -0
  34. package/dist/knowledge/environment/detection-patterns.yaml.enc +6 -0
  35. package/dist/knowledge/environment/failure-patterns.json +223 -0
  36. package/dist/knowledge/environment/repair-strategies.json +206 -0
  37. package/dist/knowledge/memory/README.md.enc +6 -0
  38. package/dist/knowledge/memory/field/README.md.enc +6 -0
  39. package/dist/knowledge/memory/project/decisions/README.md.enc +6 -0
  40. package/dist/knowledge/memory/project/evolution-log.md.enc +6 -0
  41. package/dist/knowledge/memory/project/health-metrics.md.enc +6 -0
  42. package/dist/knowledge/memory/team/best-practices.md.enc +6 -0
  43. package/dist/knowledge/pipeline/code.md.enc +6 -0
  44. package/dist/knowledge/pipeline/explore.md.enc +6 -0
  45. package/dist/knowledge/pipeline/plan.md.enc +6 -0
  46. package/dist/knowledge/pipeline/protocol.md.enc +6 -0
  47. package/dist/knowledge/protocol/capabilities.yaml.enc +6 -0
  48. package/dist/knowledge/protocol/evolve-integration.md.enc +6 -0
  49. package/dist/knowledge/skills/README.md.enc +6 -0
  50. package/dist/knowledge/skills/adversarial-review.md.enc +6 -0
  51. package/dist/knowledge/skills/analyze-requirement.md.enc +6 -0
  52. package/dist/knowledge/skills/channel-operations.md.enc +6 -0
  53. package/dist/knowledge/skills/content-operations.md.enc +6 -0
  54. package/dist/knowledge/skills/content-prompts.md.enc +6 -0
  55. package/dist/knowledge/skills/conversion-optimization.md.enc +6 -0
  56. package/dist/knowledge/skills/data-operations.md.enc +6 -0
  57. package/dist/knowledge/skills/design-solution.md.enc +6 -0
  58. package/dist/knowledge/skills/growth-strategies.md.enc +6 -0
  59. package/dist/knowledge/skills/implement-code.md.enc +6 -0
  60. package/dist/knowledge/skills/knowledge-distill.md.enc +6 -0
  61. package/dist/knowledge/skills/parallel-dev.md.enc +6 -0
  62. package/dist/knowledge/skills/private-domain-traffic.md.enc +6 -0
  63. package/dist/knowledge/skills/skill-format.md.enc +6 -0
  64. package/dist/knowledge/skills/social-commerce.md.enc +6 -0
  65. package/dist/knowledge/skills/team-orchestration.md.enc +6 -0
  66. package/dist/knowledge/skills/unified-review.md.enc +6 -0
  67. package/dist/knowledge/skills/user-operations.md.enc +6 -0
  68. package/dist/knowledge/templates/autospec-config.yaml.enc +6 -0
  69. package/dist/knowledge/templates/smoke-test.md.enc +6 -0
  70. package/dist/knowledge/templates/spec/SPEC.md.enc +6 -0
  71. package/dist/knowledge/templates/spec/layers/delta.md.enc +6 -0
  72. package/dist/knowledge/templates/spec/layers/how.md.enc +6 -0
  73. package/dist/knowledge/templates/spec/layers/plan.md.enc +6 -0
  74. package/dist/knowledge/templates/spec/layers/what.md.enc +6 -0
  75. package/dist/knowledge/templates/spec/layers/why.md.enc +6 -0
  76. package/dist/knowledge/templates/wiki/catalog.yaml.enc +6 -0
  77. package/dist/knowledge/templates/wiki/content.md.enc +6 -0
  78. package/dist/knowledge/templates/wiki/meta.yaml.enc +6 -0
  79. package/dist/package.json +62 -0
  80. package/dist/plugins/.claude-plugin/plugin.json +671 -0
  81. package/dist/plugins/agents/roles/ai-engineer.md.enc +6 -0
  82. package/dist/plugins/agents/roles/backend-engineer.md.enc +6 -0
  83. package/dist/plugins/agents/roles/ceo.md.enc +6 -0
  84. package/dist/plugins/agents/roles/channel-ops.md.enc +6 -0
  85. package/dist/plugins/agents/roles/content-ops.md.enc +6 -0
  86. package/dist/plugins/agents/roles/conversion-ops.md.enc +6 -0
  87. package/dist/plugins/agents/roles/data-engineer.md.enc +6 -0
  88. package/dist/plugins/agents/roles/data-ops.md.enc +6 -0
  89. package/dist/plugins/agents/roles/devops-engineer.md.enc +6 -0
  90. package/dist/plugins/agents/roles/frontend-engineer.md.enc +6 -0
  91. package/dist/plugins/agents/roles/marketing-director.md.enc +6 -0
  92. package/dist/plugins/agents/roles/operations-director.md.enc +6 -0
  93. package/dist/plugins/agents/roles/private-traffic.md.enc +6 -0
  94. package/dist/plugins/agents/roles/product-owner.md.enc +6 -0
  95. package/dist/plugins/agents/roles/quality-engineer.md.enc +6 -0
  96. package/dist/plugins/agents/roles/security-engineer.md.enc +6 -0
  97. package/dist/plugins/agents/roles/tech-lead.md.enc +6 -0
  98. package/dist/plugins/agents/roles/user-ops.md.enc +6 -0
  99. package/dist/plugins/agents/support/blind-comparator.md.enc +6 -0
  100. package/dist/plugins/agents/support/consistency-checker.md.enc +6 -0
  101. package/dist/plugins/agents/support/experiment-evaluator.md.enc +6 -0
  102. package/dist/plugins/agents/support/failure-diagnostician.md.enc +6 -0
  103. package/dist/plugins/agents/support/independent-reviewer.md.enc +6 -0
  104. package/dist/plugins/agents/support/memory-curator.md.enc +6 -0
  105. package/dist/plugins/agents/support/monitoring-agent.md.enc +6 -0
  106. package/dist/plugins/agents/support/safety-auditor.md.enc +6 -0
  107. package/dist/plugins/agents/support/skill-benchmarker.md.enc +6 -0
  108. package/dist/plugins/agents/support/skill-forger.md.enc +6 -0
  109. package/dist/plugins/agents/support/stage-gate-evaluator.md.enc +6 -0
  110. package/dist/plugins/agents/support/team-orchestrator.md.enc +6 -0
  111. package/dist/plugins/agents/support/test-coverage-reviewer.md.enc +6 -0
  112. package/dist/plugins/benchmarks/templates/README.en.md.enc +6 -0
  113. package/dist/plugins/benchmarks/templates/README.md.enc +6 -0
  114. package/dist/plugins/benchmarks/templates/commands/code-template.yaml.enc +6 -0
  115. package/dist/plugins/benchmarks/templates/commands/explore-template.yaml.enc +6 -0
  116. package/dist/plugins/benchmarks/templates/commands/field-evolve-template.yaml.enc +6 -0
  117. package/dist/plugins/benchmarks/templates/commands/plan-template.yaml.enc +6 -0
  118. package/dist/plugins/benchmarks/templates/commands/project-evolve-template.yaml.enc +6 -0
  119. package/dist/plugins/benchmarks/templates/commands/review-template.yaml.enc +6 -0
  120. package/dist/plugins/benchmarks/templates/commands/run-template.yaml.enc +6 -0
  121. package/dist/plugins/benchmarks/templates/skills/benchmark-executor-template.yaml.enc +6 -0
  122. package/dist/plugins/benchmarks/templates/skills/benchmark-generator-template.yaml.enc +6 -0
  123. package/dist/plugins/benchmarks/templates/skills/delivery-stage-template.yaml.enc +6 -0
  124. package/dist/plugins/benchmarks/templates/skills/design-stage-template.yaml.enc +6 -0
  125. package/dist/plugins/benchmarks/templates/skills/exploration-phase-template.yaml.enc +6 -0
  126. package/dist/plugins/benchmarks/templates/skills/field-evolve-analyzer-template.yaml.enc +6 -0
  127. package/dist/plugins/benchmarks/templates/skills/field-evolve-distiller-template.yaml.enc +6 -0
  128. package/dist/plugins/benchmarks/templates/skills/field-evolve-executor-template.yaml.enc +6 -0
  129. package/dist/plugins/benchmarks/templates/skills/field-evolve-fixer-template.yaml.enc +6 -0
  130. package/dist/plugins/benchmarks/templates/skills/field-evolve-learner-template.yaml.enc +6 -0
  131. package/dist/plugins/benchmarks/templates/skills/field-evolve-scanner-template.yaml.enc +6 -0
  132. package/dist/plugins/benchmarks/templates/skills/field-evolve-template.yaml.enc +6 -0
  133. package/dist/plugins/benchmarks/templates/skills/field-evolve-verifier-template.yaml.enc +6 -0
  134. package/dist/plugins/benchmarks/templates/skills/implementation-stage-template.yaml.enc +6 -0
  135. package/dist/plugins/benchmarks/templates/skills/layer1-validation-template.yaml.enc +6 -0
  136. package/dist/plugins/benchmarks/templates/skills/project-evolve-analyzer-template.yaml.enc +6 -0
  137. package/dist/plugins/benchmarks/templates/skills/project-evolve-fixer-template.yaml.enc +6 -0
  138. package/dist/plugins/benchmarks/templates/skills/project-evolve-generator-template.yaml.enc +6 -0
  139. package/dist/plugins/benchmarks/templates/skills/project-evolve-learner-template.yaml.enc +6 -0
  140. package/dist/plugins/benchmarks/templates/skills/project-evolve-reviewer-template.yaml.enc +6 -0
  141. package/dist/plugins/benchmarks/templates/skills/project-evolve-scanner-template.yaml.enc +6 -0
  142. package/dist/plugins/benchmarks/templates/skills/project-evolve-template.yaml.enc +6 -0
  143. package/dist/plugins/benchmarks/templates/skills/project-evolve-verifier-template.yaml.enc +6 -0
  144. package/dist/plugins/benchmarks/templates/skills/requirement-analyzer-template.yaml.enc +6 -0
  145. package/dist/plugins/benchmarks/templates/skills/skill-forge-template.yaml.enc +6 -0
  146. package/dist/plugins/benchmarks/templates/skills/startup-guard-template.yaml.enc +6 -0
  147. package/dist/plugins/benchmarks/templates/skills/testing-stage-template.yaml.enc +6 -0
  148. package/dist/plugins/commands/README.en.md.enc +6 -0
  149. package/dist/plugins/commands/README.md.enc +6 -0
  150. package/dist/plugins/commands/automation.md.enc +6 -0
  151. package/dist/plugins/commands/code.md.enc +6 -0
  152. package/dist/plugins/commands/contribute.md.enc +6 -0
  153. package/dist/plugins/commands/dashboard.md.enc +6 -0
  154. package/dist/plugins/commands/env.md.enc +6 -0
  155. package/dist/plugins/commands/explore.md.enc +6 -0
  156. package/dist/plugins/commands/field-evolve.md.enc +6 -0
  157. package/dist/plugins/commands/global.md.enc +6 -0
  158. package/dist/plugins/commands/init.md.enc +6 -0
  159. package/dist/plugins/commands/list.md.enc +6 -0
  160. package/dist/plugins/commands/memory.md.enc +6 -0
  161. package/dist/plugins/commands/monitor.md.enc +6 -0
  162. package/dist/plugins/commands/org.md.enc +6 -0
  163. package/dist/plugins/commands/persist.md.enc +6 -0
  164. package/dist/plugins/commands/plan.md.enc +6 -0
  165. package/dist/plugins/commands/plugin.md.enc +6 -0
  166. package/dist/plugins/commands/project-evolve.md.enc +6 -0
  167. package/dist/plugins/commands/review.md.enc +6 -0
  168. package/dist/plugins/commands/run.md.enc +6 -0
  169. package/dist/plugins/commands/status.md.enc +6 -0
  170. package/dist/plugins/commands/sync.md.enc +6 -0
  171. package/dist/plugins/commands/update.md.enc +6 -0
  172. package/dist/plugins/env-capabilities/env-core/plugin.json +33 -0
  173. package/dist/plugins/hooks/README.en.md.enc +6 -0
  174. package/dist/plugins/hooks/README.md.enc +6 -0
  175. package/dist/plugins/hooks/artifact-evaluation-hook.js +2 -0
  176. package/dist/plugins/hooks/cognitive-dreamer.js +2 -0
  177. package/dist/plugins/hooks/cognitive-sync.js +2 -0
  178. package/dist/plugins/hooks/cognitive-tracker.js +2 -0
  179. package/dist/plugins/hooks/config/detection-patterns.yaml.enc +6 -0
  180. package/dist/plugins/hooks/constitution-guard.js +2 -0
  181. package/dist/plugins/hooks/do-review-separation-guard.js +2 -0
  182. package/dist/plugins/hooks/environment-autocommit.js +2 -0
  183. package/dist/plugins/hooks/environment-doctor.js +1 -0
  184. package/dist/plugins/hooks/environment-startup-scan.js +2 -0
  185. package/dist/plugins/hooks/execution-tracker.js +2 -0
  186. package/dist/plugins/hooks/frozen-zone-guard.js +2 -0
  187. package/dist/plugins/hooks/layer1-validator.js +2 -0
  188. package/dist/plugins/hooks/lib/artifact-evaluator.js +1 -0
  189. package/dist/plugins/hooks/lib/auto-fix-loop.js +1 -0
  190. package/dist/plugins/hooks/lib/benchmarks/change-detector.js +1 -0
  191. package/dist/plugins/hooks/lib/benchmarks/evaluator.js +1 -0
  192. package/dist/plugins/hooks/lib/benchmarks/integration-example.js +1 -0
  193. package/dist/plugins/hooks/lib/cognitive/adaptive-matcher.js +1 -0
  194. package/dist/plugins/hooks/lib/cognitive/base-store.js +1 -0
  195. package/dist/plugins/hooks/lib/cognitive/causal-engine.js +1 -0
  196. package/dist/plugins/hooks/lib/cognitive/cognitive-config.js +1 -0
  197. package/dist/plugins/hooks/lib/cognitive/cognitive-fingerprint.js +1 -0
  198. package/dist/plugins/hooks/lib/cognitive/collective-sync.js +1 -0
  199. package/dist/plugins/hooks/lib/cognitive/confidence-engine.js +1 -0
  200. package/dist/plugins/hooks/lib/cognitive/dream-engine.js +1 -0
  201. package/dist/plugins/hooks/lib/cognitive/episodic-store.js +1 -0
  202. package/dist/plugins/hooks/lib/cognitive/index.js +1 -0
  203. package/dist/plugins/hooks/lib/cognitive/kernel.js +1 -0
  204. package/dist/plugins/hooks/lib/cognitive/knowledge-distiller.js +1 -0
  205. package/dist/plugins/hooks/lib/cognitive/memory-transport.js +1 -0
  206. package/dist/plugins/hooks/lib/cognitive/persistence-manager.js +1 -0
  207. package/dist/plugins/hooks/lib/cognitive/priority-store.js +1 -0
  208. package/dist/plugins/hooks/lib/cognitive/procedural-store.js +1 -0
  209. package/dist/plugins/hooks/lib/cognitive/semantic-store.js +1 -0
  210. package/dist/plugins/hooks/lib/cognitive/skill-tuner.js +1 -0
  211. package/dist/plugins/hooks/lib/cognitive/wiki-materializer.js +1 -0
  212. package/dist/plugins/hooks/lib/detection-pattern-loader.js +1 -0
  213. package/dist/plugins/hooks/lib/directory-discovery.js +1 -0
  214. package/dist/plugins/hooks/lib/environment-capability-package.js +1 -0
  215. package/dist/plugins/hooks/lib/environment-capability-probe.js +1 -0
  216. package/dist/plugins/hooks/lib/environment-config-loader.js +1 -0
  217. package/dist/plugins/hooks/lib/environment-executor.js +1 -0
  218. package/dist/plugins/hooks/lib/environment-feedback.js +1 -0
  219. package/dist/plugins/hooks/lib/environment-health-monitor.js +1 -0
  220. package/dist/plugins/hooks/lib/environment-knowledge-synthesizer.js +1 -0
  221. package/dist/plugins/hooks/lib/environment-knowledge-validator.js +1 -0
  222. package/dist/plugins/hooks/lib/environment-learning-discoverer.js +1 -0
  223. package/dist/plugins/hooks/lib/environment-learning-engine.js +1 -0
  224. package/dist/plugins/hooks/lib/environment-module-repository.js +1 -0
  225. package/dist/plugins/hooks/lib/environment-planner.js +1 -0
  226. package/dist/plugins/hooks/lib/environment-plugin-registry.js +1 -0
  227. package/dist/plugins/hooks/lib/environment-readiness.js +1 -0
  228. package/dist/plugins/hooks/lib/environment-route-ranking.js +1 -0
  229. package/dist/plugins/hooks/lib/environment-strategy-overlay.js +1 -0
  230. package/dist/plugins/hooks/lib/execution-path.js +1 -0
  231. package/dist/plugins/hooks/lib/external-mount-adapter.js +1 -0
  232. package/dist/plugins/hooks/lib/external-scanner.js +1 -0
  233. package/dist/plugins/hooks/lib/hook-error-recorder.js +1 -0
  234. package/dist/plugins/hooks/lib/hook-logger.js +1 -0
  235. package/dist/plugins/hooks/lib/hook-runner.js +2 -0
  236. package/dist/plugins/hooks/lib/hook-state-manager.js +1 -0
  237. package/dist/plugins/hooks/lib/memory-extractor.js +1 -0
  238. package/dist/plugins/hooks/lib/memory-manager.js +1 -0
  239. package/dist/plugins/hooks/lib/metrics-analyzer.js +1 -0
  240. package/dist/plugins/hooks/lib/mount-manager.js +1 -0
  241. package/dist/plugins/hooks/lib/plugin-activation-registry.js +1 -0
  242. package/dist/plugins/hooks/lib/plugin-selector.js +1 -0
  243. package/dist/plugins/hooks/lib/plugin-source-registry.js +1 -0
  244. package/dist/plugins/hooks/lib/plugin-workspace-registry.js +1 -0
  245. package/dist/plugins/hooks/lib/project-evolution/auto-fixer.js +1 -0
  246. package/dist/plugins/hooks/lib/project-evolution/memory-manager.js +1 -0
  247. package/dist/plugins/hooks/lib/project-evolution/pattern-detector.js +1 -0
  248. package/dist/plugins/hooks/lib/project-evolution/semantic-indexer.js +1 -0
  249. package/dist/plugins/hooks/lib/rollback-tracker.js +1 -0
  250. package/dist/plugins/hooks/lib/source-code-scanner.js +1 -0
  251. package/dist/plugins/hooks/lib/technology-stack-detector.js +1 -0
  252. package/dist/plugins/hooks/lib/test-failure-analyzer.js +1 -0
  253. package/dist/plugins/hooks/lib/test-failure-fixer.js +1 -0
  254. package/dist/plugins/hooks/lib/trace-context.js +1 -0
  255. package/dist/plugins/hooks/lib/validation-patterns.js +1 -0
  256. package/dist/plugins/hooks/memory-sync.js +1 -0
  257. package/dist/plugins/hooks/pipeline-observer.js +2 -0
  258. package/dist/plugins/hooks/retry-limit-guard.js +2 -0
  259. package/dist/plugins/hooks/scope-sentinel.js +2 -0
  260. package/dist/plugins/hooks/secret-scanner.js +2 -0
  261. package/dist/plugins/hooks/stop-evolve-prompt.js +1 -0
  262. package/dist/plugins/hooks/trace-initialization.js +2 -0
  263. package/dist/plugins/hooks/version-checker.js +2 -0
  264. package/dist/plugins/memory/templates/code-quality.yaml.enc +6 -0
  265. package/dist/plugins/memory/templates/multi-system.yaml.enc +6 -0
  266. package/dist/plugins/memory/templates/team-habits.yaml.enc +6 -0
  267. package/dist/plugins/memory/templates/testing.yaml.enc +6 -0
  268. package/dist/plugins/skills/README.en.md.enc +6 -0
  269. package/dist/plugins/skills/README.md.enc +6 -0
  270. package/dist/plugins/skills/ab-test-executor/SKILL.md.enc +6 -0
  271. package/dist/plugins/skills/benchmark-executor/SKILL.md.enc +6 -0
  272. package/dist/plugins/skills/benchmark-generator/SKILL.md.enc +6 -0
  273. package/dist/plugins/skills/content-prompts/SKILL.md.enc +6 -0
  274. package/dist/plugins/skills/delivery-stage/SKILL.md.enc +6 -0
  275. package/dist/plugins/skills/design-stage/SKILL.md.enc +6 -0
  276. package/dist/plugins/skills/environment-learning/SKILL.md.enc +6 -0
  277. package/dist/plugins/skills/environment-resilience/build-failure-doctor.md.enc +6 -0
  278. package/dist/plugins/skills/environment-resilience/environment-repair.md.enc +6 -0
  279. package/dist/plugins/skills/environment-resilience/pre-flight-check.md.enc +6 -0
  280. package/dist/plugins/skills/experiment-evaluator/SKILL.md.enc +6 -0
  281. package/dist/plugins/skills/exploration-phase/SKILL.md.enc +6 -0
  282. package/dist/plugins/skills/field-evolve-analyzer/SKILL.md.enc +6 -0
  283. package/dist/plugins/skills/field-evolve-distiller/SKILL.md.enc +6 -0
  284. package/dist/plugins/skills/field-evolve-executor/SKILL.md.enc +6 -0
  285. package/dist/plugins/skills/field-evolve-executor/executor.js +2 -0
  286. package/dist/plugins/skills/field-evolve-fixer/SKILL.md.enc +6 -0
  287. package/dist/plugins/skills/field-evolve-learner/SKILL.md.enc +6 -0
  288. package/dist/plugins/skills/field-evolve-scanner/SKILL.md.enc +6 -0
  289. package/dist/plugins/skills/field-evolve-scanner/scripts/fallback-scanner.js +2 -0
  290. package/dist/plugins/skills/field-evolve-verifier/SKILL.md.enc +6 -0
  291. package/dist/plugins/skills/heartbeat-monitor/SKILL.md.enc +6 -0
  292. package/dist/plugins/skills/implementation-stage/SKILL.md.enc +6 -0
  293. package/dist/plugins/skills/layer1-validation/SKILL.md.enc +6 -0
  294. package/dist/plugins/skills/multi-role-orchestration/SKILL.md.enc +6 -0
  295. package/dist/plugins/skills/ops-content-marketing/SKILL.md.enc +6 -0
  296. package/dist/plugins/skills/ops-conversion/SKILL.md.enc +6 -0
  297. package/dist/plugins/skills/ops-data-driven/SKILL.md.enc +6 -0
  298. package/dist/plugins/skills/ops-growth-strategies/SKILL.md.enc +6 -0
  299. package/dist/plugins/skills/ops-private-domain/SKILL.md.enc +6 -0
  300. package/dist/plugins/skills/ops-social-commerce/SKILL.md.enc +6 -0
  301. package/dist/plugins/skills/ops-user-growth/SKILL.md.enc +6 -0
  302. package/dist/plugins/skills/pending-dashboard/SKILL.md.enc +6 -0
  303. package/dist/plugins/skills/project-evolve-analyzer/SKILL.md.enc +6 -0
  304. package/dist/plugins/skills/project-evolve-fixer/SKILL.md.enc +6 -0
  305. package/dist/plugins/skills/project-evolve-generator/SKILL.md.enc +6 -0
  306. package/dist/plugins/skills/project-evolve-learner/SKILL.md.enc +6 -0
  307. package/dist/plugins/skills/project-evolve-reviewer/SKILL.md.enc +6 -0
  308. package/dist/plugins/skills/project-evolve-scanner/SKILL.md.enc +6 -0
  309. package/dist/plugins/skills/project-evolve-scanner/scripts/dependency-reuse-checker.js +2 -0
  310. package/dist/plugins/skills/project-evolve-scanner/scripts/subsystem-coverage.js +2 -0
  311. package/dist/plugins/skills/project-evolve-verifier/SKILL.md.enc +6 -0
  312. package/dist/plugins/skills/requirement-stage/SKILL.md.enc +6 -0
  313. package/dist/plugins/skills/secret-scanner/SKILL.md.enc +6 -0
  314. package/dist/plugins/skills/skill-forge/SKILL.md.enc +6 -0
  315. package/dist/plugins/skills/skill-forge/references/description-guide.md.enc +6 -0
  316. package/dist/plugins/skills/skill-forge/references/quality-rubric.md.enc +6 -0
  317. package/dist/plugins/skills/skill-forge/references/skill-template.md.enc +6 -0
  318. package/dist/plugins/skills/startup-guard/SKILL.md.enc +6 -0
  319. package/dist/plugins/skills/tdd-workflow/SKILL.md.enc +6 -0
  320. package/dist/plugins/skills/testing-stage/SKILL.md.enc +6 -0
  321. package/dist/plugins/skills/tracking-validator/SKILL.md.enc +6 -0
  322. package/dist/scripts/build-crypto.js +2 -0
  323. package/dist/scripts/cli/contribute.js +1 -0
  324. package/dist/scripts/cli/dashboard.js +1 -0
  325. package/dist/scripts/cli/env.js +1 -0
  326. package/dist/scripts/cli/global-init.js +1 -0
  327. package/dist/scripts/cli/global.js +1 -0
  328. package/dist/scripts/cli/index.js +1 -0
  329. package/dist/scripts/cli/init.js +1 -0
  330. package/dist/scripts/cli/list.js +1 -0
  331. package/dist/scripts/cli/memory.js +1 -0
  332. package/dist/scripts/cli/org.js +1 -0
  333. package/dist/scripts/cli/plugin.js +1 -0
  334. package/dist/scripts/cli/practice-report.js +1 -0
  335. package/dist/scripts/cli/runtime-governance.js +1 -0
  336. package/dist/scripts/cli/system.js +1 -0
  337. package/dist/scripts/cli/update.js +1 -0
  338. package/dist/scripts/commands/catalog.js +1 -0
  339. package/dist/scripts/commands/slash-command-docs.js +1 -0
  340. package/dist/scripts/config/external-mounts.config.js +2 -0
  341. package/dist/scripts/heartbeat/check.js +2 -0
  342. package/dist/scripts/heartbeat/setup-cron.js +2 -0
  343. package/dist/scripts/install/adapters.js +1 -0
  344. package/dist/scripts/install/constants.js +1 -0
  345. package/dist/scripts/install/file-reader.js +1 -0
  346. package/dist/scripts/install/index.js +1 -0
  347. package/dist/scripts/install/shards/constants-shard.js +1 -0
  348. package/dist/scripts/install/shards/crypto-config-shard.js +1 -0
  349. package/dist/scripts/install/shards/error-messages-shard.js +1 -0
  350. package/dist/scripts/install/shards/reassemble.js +1 -0
  351. package/dist/scripts/install/shards/utils-shard.js +1 -0
  352. package/dist/scripts/install/shards/version-info-shard.js +1 -0
  353. package/dist/scripts/postinstall.js +1 -0
  354. package/dist/scripts/state.js +1 -0
  355. package/package.json +21 -12
  356. package/README.en.md +0 -472
  357. package/bin/autospec.js +0 -3
  358. package/knowledge/README.md +0 -144
  359. package/knowledge/checklists/code.md +0 -182
  360. package/knowledge/checklists/design.md +0 -196
  361. package/knowledge/checklists/release.md +0 -70
  362. package/knowledge/checklists/requirement.md +0 -169
  363. package/knowledge/checklists/test.md +0 -46
  364. package/knowledge/config/README.en.md +0 -44
  365. package/knowledge/config/README.md +0 -44
  366. package/knowledge/config/role-composition.yaml +0 -98
  367. package/knowledge/config/role-extensions.yaml +0 -140
  368. package/knowledge/config/skill-compositions.yaml +0 -142
  369. package/knowledge/config/team-stage.yaml +0 -95
  370. package/knowledge/config/team-tasks.yaml +0 -139
  371. package/knowledge/config/team-triggers.yaml +0 -198
  372. package/knowledge/config/validation-patterns.yaml +0 -137
  373. package/knowledge/domain/README.md +0 -115
  374. package/knowledge/domain/flows/README.md +0 -194
  375. package/knowledge/domain/glossary.md +0 -143
  376. package/knowledge/domain/rules.md +0 -138
  377. package/knowledge/environment/README.en.md +0 -36
  378. package/knowledge/environment/README.md +0 -87
  379. package/knowledge/environment/component-knowledge.md +0 -316
  380. package/knowledge/environment/detection-patterns.yaml +0 -502
  381. package/knowledge/environment/middleware-knowledge.md +0 -237
  382. package/knowledge/environment/template-registry.md +0 -321
  383. package/knowledge/guides/domain-driven-design.md +0 -345
  384. package/knowledge/guides/knowledge-management.md +0 -369
  385. package/knowledge/guides/requirement-engineering.md +0 -329
  386. package/knowledge/guides/stages/ai-effect-evaluator.md +0 -93
  387. package/knowledge/guides/stages/code-implementer.md +0 -205
  388. package/knowledge/guides/stages/code-reviewer.md +0 -111
  389. package/knowledge/guides/stages/consistency-checker.md +0 -177
  390. package/knowledge/guides/stages/design-planner.md +0 -401
  391. package/knowledge/guides/stages/design-reviewer.md +0 -83
  392. package/knowledge/guides/stages/integration-test-runner.md +0 -105
  393. package/knowledge/guides/stages/release-checker.md +0 -205
  394. package/knowledge/guides/stages/requirement-analyzer.md +0 -195
  395. package/knowledge/guides/stages/requirement-reviewer.md +0 -83
  396. package/knowledge/guides/stages/security-reviewer.md +0 -89
  397. package/knowledge/guides/stages/test-context-analyzer.md +0 -250
  398. package/knowledge/guides/stages/test-generator.md +0 -241
  399. package/knowledge/guides/stages/test-planner.md +0 -183
  400. package/knowledge/guides/stages/test-reviewer.md +0 -76
  401. package/knowledge/guides/stages/unit-test-runner.md +0 -83
  402. package/knowledge/guides/support/ai-agent-analyzer.md +0 -362
  403. package/knowledge/guides/support/ai-anomaly-analyzer.md +0 -213
  404. package/knowledge/guides/support/ai-artifact-evaluator.md +0 -192
  405. package/knowledge/guides/support/ai-capability-analyzer.md +0 -193
  406. package/knowledge/guides/support/ai-component-analyzer.md +0 -169
  407. package/knowledge/guides/support/ai-data-validator.md +0 -276
  408. package/knowledge/guides/support/ai-evaluation-planner.md +0 -374
  409. package/knowledge/guides/support/ai-path-evaluator.md +0 -274
  410. package/knowledge/guides/support/ai-pipeline-evaluator.md +0 -219
  411. package/knowledge/guides/support/ai-rag-analyzer.md +0 -339
  412. package/knowledge/guides/support/ai-task-assessor.md +0 -418
  413. package/knowledge/guides/support/ai-test-diagnostics.md +0 -133
  414. package/knowledge/guides/support/complexity-assessor.md +0 -268
  415. package/knowledge/guides/support/component-discovery.md +0 -183
  416. package/knowledge/guides/support/environment-scanner.md +0 -207
  417. package/knowledge/guides/support/environment-validator.md +0 -207
  418. package/knowledge/guides/support/knowledge-generator.md +0 -234
  419. package/knowledge/guides/support/methodology-extractor.md +0 -55
  420. package/knowledge/guides/support/pipeline-protocol.md +0 -438
  421. package/knowledge/guides/support/practice-logger.md +0 -359
  422. package/knowledge/guides/support/scope-inference.md +0 -174
  423. package/knowledge/guides/support/skill-distiller.md +0 -91
  424. package/knowledge/guides/support/skill-updater.md +0 -45
  425. package/knowledge/guides/support/skill-validator.md +0 -72
  426. package/knowledge/guides/support/team-orchestrator.md +0 -323
  427. package/knowledge/guides/support/tech-stack-analyzer.md +0 -139
  428. package/knowledge/guides/support/test-runner.md +0 -254
  429. package/knowledge/guides/system-design.md +0 -352
  430. package/knowledge/organization/ai-native-team.md +0 -318
  431. package/knowledge/organization/team-metrics.md +0 -228
  432. package/knowledge/principles/constitution.md +0 -134
  433. package/knowledge/principles/core-principles.md +0 -368
  434. package/knowledge/principles/design-philosophy.md +0 -877
  435. package/knowledge/principles/evolution.md +0 -553
  436. package/knowledge/process/01-requirement.md +0 -113
  437. package/knowledge/process/02-design.md +0 -123
  438. package/knowledge/process/03-implementation.md +0 -90
  439. package/knowledge/process/04-review.md +0 -80
  440. package/knowledge/process/05-testing.md +0 -90
  441. package/knowledge/process/06-delivery.md +0 -88
  442. package/knowledge/process/README.en.md +0 -38
  443. package/knowledge/process/README.md +0 -48
  444. package/knowledge/process/ai-sdlc.md +0 -475
  445. package/knowledge/process/overview.md +0 -319
  446. package/knowledge/standards/code-review.md +0 -876
  447. package/knowledge/standards/coding-style.md +0 -940
  448. package/knowledge/standards/data-consistency.md +0 -1085
  449. package/knowledge/standards/document-versioning.md +0 -210
  450. package/knowledge/standards/risk-detection.md +0 -186
  451. package/knowledge/templates/ai-evaluation.md +0 -150
  452. package/knowledge/templates/api-design.md +0 -117
  453. package/knowledge/templates/database-design.md +0 -132
  454. package/knowledge/templates/domain-driven-design.md +0 -321
  455. package/knowledge/templates/product-proposal.md +0 -201
  456. package/knowledge/templates/system-design.md +0 -227
  457. package/knowledge/templates/task-breakdown.md +0 -107
  458. package/knowledge/templates/test-case.md +0 -170
  459. package/plugins/.claude-plugin/plugin.json +0 -134
  460. package/plugins/agents/roles/ai-engineer.md +0 -129
  461. package/plugins/agents/roles/backend-engineer.md +0 -165
  462. package/plugins/agents/roles/ceo.md +0 -94
  463. package/plugins/agents/roles/data-engineer.md +0 -135
  464. package/plugins/agents/roles/devops-engineer.md +0 -181
  465. package/plugins/agents/roles/frontend-engineer.md +0 -129
  466. package/plugins/agents/roles/product-owner.md +0 -98
  467. package/plugins/agents/roles/quality-engineer.md +0 -129
  468. package/plugins/agents/roles/security-engineer.md +0 -180
  469. package/plugins/agents/roles/tech-lead.md +0 -97
  470. package/plugins/agents/support/blind-comparator.md +0 -88
  471. package/plugins/agents/support/consistency-checker.md +0 -103
  472. package/plugins/agents/support/failure-diagnostician.md +0 -141
  473. package/plugins/agents/support/independent-reviewer.md +0 -80
  474. package/plugins/agents/support/safety-auditor.md +0 -121
  475. package/plugins/agents/support/skill-benchmarker.md +0 -86
  476. package/plugins/agents/support/skill-forger.md +0 -105
  477. package/plugins/agents/support/stage-gate-evaluator.md +0 -121
  478. package/plugins/agents/support/test-coverage-reviewer.md +0 -73
  479. package/plugins/benchmarks/templates/README.md +0 -44
  480. package/plugins/benchmarks/templates/commands/explore-template.yaml +0 -48
  481. package/plugins/benchmarks/templates/pipeline/agile-template.yaml +0 -84
  482. package/plugins/benchmarks/templates/pipeline/waterfall-template.yaml +0 -106
  483. package/plugins/benchmarks/templates/skills/requirement-analyzer-template.yaml +0 -48
  484. package/plugins/commands/README.en.md +0 -96
  485. package/plugins/commands/README.md +0 -96
  486. package/plugins/commands/apply.md +0 -191
  487. package/plugins/commands/archive.md +0 -76
  488. package/plugins/commands/env-export.md +0 -79
  489. package/plugins/commands/env-sync.md +0 -640
  490. package/plugins/commands/env-template.md +0 -223
  491. package/plugins/commands/env-update.md +0 -264
  492. package/plugins/commands/env-validate.md +0 -176
  493. package/plugins/commands/env.md +0 -79
  494. package/plugins/commands/explore.md +0 -76
  495. package/plugins/commands/field-evolve.md +0 -536
  496. package/plugins/commands/memory.md +0 -249
  497. package/plugins/commands/project-evolve.md +0 -821
  498. package/plugins/commands/propose.md +0 -93
  499. package/plugins/commands/review.md +0 -140
  500. package/plugins/commands/run.md +0 -224
  501. package/plugins/commands/status.md +0 -62
  502. package/plugins/commands/validate.md +0 -108
  503. package/plugins/hooks/README.en.md +0 -56
  504. package/plugins/hooks/README.md +0 -56
  505. package/plugins/hooks/ai-project-guard.js +0 -329
  506. package/plugins/hooks/artifact-evaluation-hook.js +0 -237
  507. package/plugins/hooks/constitution-guard.js +0 -211
  508. package/plugins/hooks/environment-autocommit.js +0 -264
  509. package/plugins/hooks/environment-manager.js +0 -778
  510. package/plugins/hooks/execution-tracker.js +0 -354
  511. package/plugins/hooks/frozen-zone-guard.js +0 -140
  512. package/plugins/hooks/layer1-validator.js +0 -423
  513. package/plugins/hooks/lib/artifact-evaluator.js +0 -414
  514. package/plugins/hooks/lib/benchmarks/change-detector.js +0 -390
  515. package/plugins/hooks/lib/benchmarks/evaluator.js +0 -605
  516. package/plugins/hooks/lib/benchmarks/integration-example.js +0 -169
  517. package/plugins/hooks/lib/data-and-ai-detector.js +0 -275
  518. package/plugins/hooks/lib/detection-pattern-loader.js +0 -865
  519. package/plugins/hooks/lib/directory-discovery.js +0 -395
  520. package/plugins/hooks/lib/environment-config-loader.js +0 -341
  521. package/plugins/hooks/lib/environment-detector.js +0 -553
  522. package/plugins/hooks/lib/environment-evolver.js +0 -564
  523. package/plugins/hooks/lib/environment-registry.js +0 -813
  524. package/plugins/hooks/lib/execution-path.js +0 -427
  525. package/plugins/hooks/lib/hook-error-recorder.js +0 -245
  526. package/plugins/hooks/lib/hook-logger.js +0 -538
  527. package/plugins/hooks/lib/hook-runner.js +0 -97
  528. package/plugins/hooks/lib/hook-state-manager.js +0 -480
  529. package/plugins/hooks/lib/memory-extractor.js +0 -377
  530. package/plugins/hooks/lib/memory-manager.js +0 -673
  531. package/plugins/hooks/lib/metrics-analyzer.js +0 -489
  532. package/plugins/hooks/lib/project-evolution/auto-fixer.js +0 -511
  533. package/plugins/hooks/lib/project-evolution/memory-manager.js +0 -346
  534. package/plugins/hooks/lib/project-evolution/pattern-detector.js +0 -476
  535. package/plugins/hooks/lib/project-evolution/semantic-indexer.js +0 -480
  536. package/plugins/hooks/lib/project-structure-detector.js +0 -326
  537. package/plugins/hooks/lib/rollback-tracker.js +0 -346
  538. package/plugins/hooks/lib/source-code-scanner.js +0 -596
  539. package/plugins/hooks/lib/technology-stack-detector.js +0 -374
  540. package/plugins/hooks/lib/test-failure-analyzer.js +0 -375
  541. package/plugins/hooks/lib/test-failure-fixer.js +0 -268
  542. package/plugins/hooks/lib/trace-context.js +0 -277
  543. package/plugins/hooks/lib/validation-patterns.js +0 -415
  544. package/plugins/hooks/memory-sync.js +0 -171
  545. package/plugins/hooks/pipeline-observer.js +0 -413
  546. package/plugins/hooks/scope-sentinel.js +0 -204
  547. package/plugins/hooks/trace-initialization.js +0 -169
  548. package/plugins/memory/templates/code-quality.yaml +0 -149
  549. package/plugins/memory/templates/multi-system.yaml +0 -155
  550. package/plugins/memory/templates/team-habits.yaml +0 -119
  551. package/plugins/memory/templates/testing.yaml +0 -121
  552. package/plugins/skills/README.en.md +0 -47
  553. package/plugins/skills/README.md +0 -104
  554. package/plugins/skills/benchmark-executor/README.md +0 -93
  555. package/plugins/skills/benchmark-executor/SKILL.md +0 -647
  556. package/plugins/skills/benchmark-generator/SKILL.md +0 -349
  557. package/plugins/skills/delivery-stage/SKILL.md +0 -203
  558. package/plugins/skills/design-stage/SKILL.md +0 -216
  559. package/plugins/skills/evolution-process/SKILL.md +0 -291
  560. package/plugins/skills/exploration-phase/SKILL.md +0 -133
  561. package/plugins/skills/implementation-stage/SKILL.md +0 -179
  562. package/plugins/skills/layer1-validation/SKILL.md +0 -79
  563. package/plugins/skills/pending-dashboard/SKILL.md +0 -109
  564. package/plugins/skills/project-evolution/SKILL.md +0 -847
  565. package/plugins/skills/requirement-stage/SKILL.md +0 -183
  566. package/plugins/skills/skill-forge/SKILL.md +0 -223
  567. package/plugins/skills/skill-forge/references/description-guide.md +0 -92
  568. package/plugins/skills/skill-forge/references/quality-rubric.md +0 -104
  569. package/plugins/skills/skill-forge/references/skill-template.md +0 -106
  570. package/plugins/skills/startup-guard/SKILL.md +0 -38
  571. package/plugins/skills/testing-stage/SKILL.md +0 -195
  572. package/scripts/cli/global-init.js +0 -288
  573. package/scripts/cli/global.js +0 -324
  574. package/scripts/cli/index.js +0 -55
  575. package/scripts/cli/init.js +0 -382
  576. package/scripts/cli/list.js +0 -69
  577. package/scripts/cli/org.js +0 -340
  578. package/scripts/cli/update.js +0 -44
  579. package/scripts/config/commands.config.js +0 -145
  580. package/scripts/config/hooks.config.js +0 -197
  581. package/scripts/evolution/evolution-router.js +0 -273
  582. package/scripts/evolution/evolution-signal-collector.js +0 -307
  583. package/scripts/evolution/knowledge-loader.js +0 -346
  584. package/scripts/evolution/marketplace.js +0 -317
  585. package/scripts/evolution/version-manager.js +0 -371
  586. package/scripts/install/agents.js +0 -106
  587. package/scripts/install/commands.js +0 -133
  588. package/scripts/install/constants.js +0 -424
  589. package/scripts/install/hook-logger.js +0 -536
  590. package/scripts/install/hooks.js +0 -110
  591. package/scripts/install/index.js +0 -39
  592. package/scripts/install/skills.js +0 -95
  593. package/scripts/postinstall.js +0 -25
  594. package/scripts/state.js +0 -376
  595. /package/{plugins → dist/plugins}/hooks/lib/hook-runner.sh +0 -0
@@ -1,354 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * AutoSpec PostToolUse Hook: Execution Tracker
5
- *
6
- * Tracks execution of key steps in the AutoSpec pipeline:
7
- * - Skill loading
8
- * - Agent invocation
9
- * - Stage completion
10
- * - Artifact generation
11
- *
12
- * 增强功能:
13
- * - Trace ID 支持:所有事件关联到 traceId
14
- * - 统一事件格式:标准化的事件结构
15
- * - 双写机制:同时写入每日日志和 trace 日志
16
- *
17
- * Security Level: LOW - fail-open + logging
18
- */
19
-
20
- import { createHookLogger, safeJsonParse, handleHookError, readStdin, findProjectRootAsync } from './lib/hook-logger.js';
21
- import { recordHookExecution } from './lib/hook-error-recorder.js';
22
- import { getState } from './lib/hook-state-manager.js';
23
- import { generateEventId, getTraceId, appendTraceEvent } from './lib/trace-context.js';
24
- import fs from 'fs';
25
- import path from 'path';
26
-
27
- const logger = createHookLogger('execution-tracker');
28
-
29
- // Key artifacts to track
30
- const ARTIFACT_PATTERNS = {
31
- // Requirement stage
32
- 'requirement.md': { stage: '01-require', type: 'deliverable' },
33
- 'review-requirement.md': { stage: '01-require', type: 'review' },
34
-
35
- // Design stage
36
- 'design.md': { stage: '02-design', type: 'deliverable' },
37
- 'review-design.md': { stage: '02-design', type: 'review' },
38
-
39
- // Implementation stage
40
- 'review-code.md': { stage: '03-implement', type: 'review' },
41
-
42
- // Testing stage
43
- 'tests/': { stage: '05-testing', type: 'deliverable' },
44
- 'review-testing.md': { stage: '05-testing', type: 'review' },
45
- 'evaluation-report.md': { stage: '05-testing', type: 'evaluation' },
46
-
47
- // Delivery stage
48
- 'consistency-report.md': { stage: '06-delivery', type: 'report' },
49
- 'safety-audit-': { stage: '06-delivery', type: 'audit' },
50
-
51
- // Practice log
52
- 'practice-log/': { stage: 'evolution', type: 'log' }
53
- };
54
-
55
- // Execution log file
56
- function getLogPath(projectRoot) {
57
- const date = new Date().toISOString().split('T')[0];
58
- return path.join(projectRoot, '.autospec', 'logs', `execution-${date}.json`);
59
- }
60
-
61
- function ensureLogDir(projectRoot) {
62
- const logDir = path.join(projectRoot, '.autospec', 'logs');
63
- if (!fs.existsSync(logDir)) {
64
- fs.mkdirSync(logDir, { recursive: true });
65
- }
66
- }
67
-
68
- function readLog(projectRoot) {
69
- const logPath = getLogPath(projectRoot);
70
- if (fs.existsSync(logPath)) {
71
- try {
72
- return JSON.parse(fs.readFileSync(logPath, 'utf-8'));
73
- } catch {
74
- return { entries: [], summary: {} };
75
- }
76
- }
77
- return { entries: [], summary: {} };
78
- }
79
-
80
- function writeLog(projectRoot, logData) {
81
- const logPath = getLogPath(projectRoot);
82
- ensureLogDir(projectRoot);
83
- fs.writeFileSync(logPath, JSON.stringify(logData, null, 2), 'utf-8');
84
- }
85
-
86
- /**
87
- * 创建标准化事件对象
88
- * @param {string} projectRoot - 项目根目录
89
- * @param {string} type - 事件类型
90
- * @param {Object} data - 事件数据
91
- * @returns {Object} 标准化事件对象
92
- */
93
- function createEvent(projectRoot, type, data = {}) {
94
- const state = getState(projectRoot);
95
- const traceId = getTraceId(projectRoot);
96
-
97
- return {
98
- eventId: generateEventId(),
99
- traceId,
100
- timestamp: new Date().toISOString(),
101
- type,
102
- source: 'execution-tracker',
103
- stage: state?.currentStage || data.stage || null,
104
- tool: data.tool || null,
105
- action: data.action || null,
106
- data: data.data || {},
107
- metadata: {
108
- projectRoot,
109
- executionMode: state?.executionMode || 'interactive'
110
- }
111
- };
112
- }
113
-
114
- function addEntry(logData, entry, projectRoot = null) {
115
- // 创建标准化事件
116
- const event = {
117
- timestamp: new Date().toISOString(),
118
- ...entry
119
- };
120
-
121
- // 如果有 projectRoot,添加 Trace ID
122
- if (projectRoot) {
123
- const traceId = getTraceId(projectRoot);
124
- if (traceId) {
125
- event.traceId = traceId;
126
- event.eventId = generateEventId();
127
- }
128
- }
129
-
130
- logData.entries.push(event);
131
-
132
- // Update summary
133
- const stage = entry.stage || 'unknown';
134
- if (!logData.summary[stage]) {
135
- logData.summary[stage] = { count: 0, artifacts: [], reviews: [] };
136
- }
137
- logData.summary[stage].count++;
138
-
139
- if (entry.artifacts) {
140
- logData.summary[stage].artifacts.push(...entry.artifacts);
141
- }
142
- if (entry.reviewed) {
143
- logData.summary[stage].reviews.push(entry.reviewed);
144
- }
145
-
146
- return event;
147
- }
148
-
149
- function detectArtifactType(filePath) {
150
- for (const [pattern, info] of Object.entries(ARTIFACT_PATTERNS)) {
151
- if (filePath.includes(pattern)) {
152
- return info;
153
- }
154
- }
155
- return null;
156
- }
157
-
158
- async function main() {
159
- let input;
160
- try {
161
- const rawInput = await readStdin(1000);
162
- input = safeJsonParse(rawInput, null, 'hook input');
163
-
164
- if (!input) {
165
- logger.debug('Empty or invalid input, skipping');
166
- process.exit(0);
167
- }
168
- } catch (err) {
169
- logger.error('Failed to parse input', { error: err.message });
170
- process.exit(0);
171
- }
172
-
173
- const toolName = input.tool_name;
174
-
175
- // Track Write operations for artifact generation
176
- if (toolName === 'Write') {
177
- const filePath = input.tool_input?.file_path || '';
178
-
179
- // Find project root
180
- const cwd = input.cwd || process.cwd();
181
- const projectRoot = await findProjectRootAsync(cwd);
182
-
183
- if (!projectRoot) {
184
- logger.debug('No .autospec directory found, skipping');
185
- process.exit(0);
186
- }
187
-
188
- // Check if this is a key artifact
189
- const artifactInfo = detectArtifactType(filePath);
190
- if (artifactInfo) {
191
- logger.info('Detected key artifact', { filePath, ...artifactInfo });
192
-
193
- // 读取文件内容用于调试和评测
194
- let contentPreview = '';
195
- let contentLength = 0;
196
- try {
197
- if (fs.existsSync(filePath)) {
198
- const content = fs.readFileSync(filePath, 'utf-8');
199
- contentLength = content.length;
200
- // 截取前 500 字符作为预览
201
- contentPreview = content.length > 500
202
- ? content.substring(0, 500) + '... [truncated]'
203
- : content;
204
- }
205
- } catch (e) {
206
- // 忽略读取错误
207
- }
208
-
209
- const logData = readLog(projectRoot);
210
- const event = addEntry(logData, {
211
- event: 'artifact_created',
212
- file: filePath,
213
- stage: artifactInfo.stage,
214
- type: artifactInfo.type,
215
- // 增强:记录内容预览用于调试
216
- contentPreview,
217
- contentLength
218
- }, projectRoot);
219
- writeLog(projectRoot, logData);
220
-
221
- // 同时写入 trace 日志(包含完整内容用于深度分析)
222
- const traceEvent = createEvent(projectRoot, 'artifact_created', {
223
- stage: artifactInfo.stage,
224
- tool: 'Write',
225
- action: 'create_artifact',
226
- data: {
227
- file: filePath,
228
- artifactType: artifactInfo.type,
229
- // 完整内容用于深度评测(仅关键文件)
230
- fullContent: artifactInfo.type === 'deliverable' ? contentPreview : null,
231
- contentLength
232
- }
233
- });
234
- appendTraceEvent(projectRoot, traceEvent);
235
- }
236
- }
237
-
238
- // Track Agent tool usage for review invocations
239
- if (toolName === 'Agent') {
240
- const subagentType = input.tool_input?.subagent_type || '';
241
- const prompt = input.tool_input?.prompt || '';
242
-
243
- const cwd = input.cwd || process.cwd();
244
- const projectRoot = await findProjectRootAsync(cwd);
245
-
246
- if (projectRoot && subagentType) {
247
- logger.info('Detected Agent invocation', { subagentType });
248
-
249
- const logData = readLog(projectRoot);
250
-
251
- // Determine what type of review this is
252
- let reviewType = 'unknown';
253
- if (subagentType.includes('reviewer')) {
254
- reviewType = 'review';
255
- } else if (subagentType.includes('consistency')) {
256
- reviewType = 'consistency';
257
- } else if (subagentType.includes('safety')) {
258
- reviewType = 'safety';
259
- } else if (subagentType.includes('diagnose')) {
260
- reviewType = 'diagnosis';
261
- } else if (subagentType.includes('ceo') || subagentType.includes('challenger')) {
262
- reviewType = 'exploration';
263
- }
264
-
265
- // 截取 prompt 关键信息用于调试和评测
266
- const promptPreview = prompt.length > 500
267
- ? prompt.substring(0, 500) + '... [truncated]'
268
- : prompt;
269
-
270
- const event = addEntry(logData, {
271
- event: 'agent_invoked',
272
- subagent: subagentType,
273
- reviewType,
274
- stage: 'inferred_from_subagent',
275
- // 增强:记录 prompt 预览用于调试和评测
276
- promptPreview,
277
- promptLength: prompt.length
278
- }, projectRoot);
279
- writeLog(projectRoot, logData);
280
-
281
- // 同时写入 trace 日志(包含完整 prompt 用于深度分析)
282
- const traceEvent = createEvent(projectRoot, 'agent_invoked', {
283
- tool: 'Agent',
284
- action: 'invoke_agent',
285
- data: {
286
- subagentType,
287
- reviewType,
288
- // 完整 prompt 用于深度评测
289
- fullPrompt: prompt,
290
- promptLength: prompt.length
291
- }
292
- });
293
- appendTraceEvent(projectRoot, traceEvent);
294
- }
295
- }
296
-
297
- // Track Agent response (PostAgentCompletion hook would capture this)
298
- // 注意:Agent 的 response 需要通过其他 hook 或日志系统捕获
299
- // 这里我们记录 Agent 调用开始,等待 response hook 补充
300
-
301
- // Track stage gate completions by checking state.json
302
- if (toolName === 'Write' || toolName === 'Edit') {
303
- const filePath = input.tool_input?.file_path || '';
304
-
305
- if (filePath.includes('state.json')) {
306
- const cwd = input.cwd || process.cwd();
307
- const projectRoot = await findProjectRootAsync(cwd);
308
-
309
- if (projectRoot) {
310
- const statePath = path.join(projectRoot, '.autospec', 'runtime', 'state.json');
311
- if (fs.existsSync(statePath)) {
312
- try {
313
- const state = JSON.parse(fs.readFileSync(statePath, 'utf-8'));
314
- if (state.currentStage) {
315
- logger.info('Stage transition detected', { stage: state.currentStage });
316
-
317
- const logData = readLog(projectRoot);
318
- const event = addEntry(logData, {
319
- event: 'stage_completed',
320
- stage: state.currentStage,
321
- completedAt: state.completedAt
322
- }, projectRoot);
323
- writeLog(projectRoot, logData);
324
-
325
- // 同时写入 trace 日志
326
- const traceEvent = createEvent(projectRoot, 'stage_completed', {
327
- stage: state.currentStage,
328
- tool: toolName,
329
- action: 'complete_stage',
330
- data: {
331
- completedAt: state.completedAt
332
- }
333
- });
334
- appendTraceEvent(projectRoot, traceEvent);
335
- }
336
- } catch {
337
- // Ignore state.json parsing errors
338
- }
339
- }
340
- }
341
- }
342
- }
343
-
344
- process.exit(0);
345
- }
346
-
347
- main().catch((err) => {
348
- const result = handleHookError('execution-tracker', err, {
349
- eventName: 'PostToolUse'
350
- });
351
- process.stdout.write(JSON.stringify(result.hookSpecificOutput));
352
- // Low 优先级 hook:fail-open
353
- process.exit(0);
354
- });
@@ -1,140 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- /**
4
- * AutoSpec PreToolUse Hook: Frozen Zone Guard
5
- *
6
- * Blocks writes/edits to frozen-zone files (constitution, evolution rules, core principles).
7
- * See framework/evolution.md for zone definitions.
8
- *
9
- * Security Level: CRITICAL - fail-closed
10
- */
11
-
12
- import { createHookLogger, safeJsonParse, handleHookError, readStdin, findProjectRootAsync, matchesAnyPattern } from './lib/hook-logger.js';
13
- import { recordHookExecution } from './lib/hook-error-recorder.js';
14
-
15
- const logger = createHookLogger('frozen-zone-guard');
16
-
17
- const FROZEN_PATTERNS = [
18
- /constitution\.md$/,
19
- /evolution\.md$/,
20
- /design-philosophy\.md$/, // Core principles (DP1-DP3)
21
- /pipeline\/overview\.md$/, // Startup gate + dual validation definitions
22
- // 全局冻结区模式
23
- /\.claude\/autospec\/knowledge\/principles\/constitution\.md$/,
24
- /\.claude\/autospec\/knowledge\/principles\/evolution\.md$/,
25
- /\.claude\/autospec\/knowledge\/principles\/design-philosophy\.md$/,
26
- // 组织冻结区模式
27
- /\.claude\/autospec\/orgs\/[^\/]+\/knowledge\/principles\//
28
- ];
29
-
30
- // 检查是否为全局/组织路径
31
- function isGlobalOrOrgPath(filePath) {
32
- return filePath.includes('/.claude/autospec/') ||
33
- filePath.includes('\\.claude\\autospec\\');
34
- }
35
-
36
- async function main() {
37
- const startTime = Date.now();
38
- let input;
39
- let projectRoot = null;
40
-
41
- try {
42
- const rawInput = await readStdin(1000);
43
- input = safeJsonParse(rawInput, null, 'hook input');
44
-
45
- if (!input) {
46
- logger.debug('Empty or invalid input, skipping');
47
- process.exit(0);
48
- }
49
-
50
- const toolName = input.tool_name;
51
- if (toolName !== 'Write' && toolName !== 'Edit') {
52
- logger.debug('Not a write/edit operation, skipping', { toolName });
53
- process.exit(0);
54
- }
55
-
56
- const filePath = (input.tool_input?.file_path || '').replace(/\\/g, '/');
57
- if (!filePath) {
58
- logger.debug('No file path in input, skipping');
59
- process.exit(0);
60
- }
61
-
62
- logger.debug('Checking file', { filePath, toolName });
63
-
64
- // Find project root
65
- const cwd = input.cwd || process.cwd();
66
- projectRoot = await findProjectRootAsync(cwd);
67
-
68
- if (!projectRoot) {
69
- logger.debug('No .autospec directory found, skipping');
70
- process.exit(0);
71
- }
72
-
73
- logger.debug('Project root found', { projectRoot });
74
-
75
- // Check if file is in framework directory or global/org directory
76
- const inFramework = filePath.includes('.autospec/knowledge/') ||
77
- filePath.includes('/knowledge/');
78
- const inGlobalOrOrg = isGlobalOrOrgPath(filePath);
79
-
80
- if (!inFramework && !inGlobalOrOrg) {
81
- logger.debug('File not in framework or global/org directory, allowing', { filePath });
82
- // 记录成功执行
83
- recordHookExecution(projectRoot, 'frozen-zone-guard', input, null, Date.now() - startTime, true);
84
- process.exit(0);
85
- }
86
-
87
- logger.debug('File in framework or global/org, checking frozen patterns', { filePath });
88
-
89
- // Check against frozen patterns (for both framework and global/org paths)
90
- if (matchesAnyPattern(filePath, FROZEN_PATTERNS)) {
91
- logger.info('Blocked write to frozen zone', { filePath });
92
-
93
- const output = {
94
- hookSpecificOutput: {
95
- hookEventName: 'PreToolUse',
96
- permissionDecision: 'deny',
97
- permissionDecisionReason:
98
- `FROZEN ZONE: ${filePath} is protected by AutoSpec evolution rules. ` +
99
- `This file can only be modified through a human-initiated change process. ` +
100
- `See framework/evolution.md for details.`
101
- }
102
- };
103
-
104
- // 记录成功执行(阻止操作是预期行为)
105
- recordHookExecution(projectRoot, 'frozen-zone-guard', input, output, Date.now() - startTime, true);
106
- process.stdout.write(JSON.stringify(output));
107
- process.exit(0);
108
- }
109
-
110
- logger.debug('File not in frozen zone, allowing', { filePath });
111
- // 记录成功执行
112
- recordHookExecution(projectRoot, 'frozen-zone-guard', input, null, Date.now() - startTime, true);
113
- process.exit(0);
114
-
115
- } catch (err) {
116
- // 使用增强的错误处理
117
- const result = handleHookError('frozen-zone-guard', err, {
118
- eventName: 'PreToolUse',
119
- projectRoot,
120
- input
121
- });
122
-
123
- // 记录失败的执行
124
- if (projectRoot) {
125
- recordHookExecution(projectRoot, 'frozen-zone-guard', input, result, Date.now() - startTime, false);
126
- }
127
-
128
- process.stdout.write(JSON.stringify(result.hookSpecificOutput));
129
-
130
- // 关键 hook:根据错误类型决定退出码
131
- // fail-closed: 如果 shouldBlock 为 true,使用 exit(2) 阻止操作
132
- if (result.shouldBlock) {
133
- process.exit(2);
134
- } else {
135
- process.exit(0);
136
- }
137
- }
138
- }
139
-
140
- main();