aw-ecc 1.4.32 → 1.4.48

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 (259) hide show
  1. package/.claude-plugin/plugin.json +1 -1
  2. package/.cursor/INSTALL.md +7 -5
  3. package/.cursor/hooks/adapter.js +41 -4
  4. package/.cursor/hooks/after-agent-response.js +62 -0
  5. package/.cursor/hooks/before-submit-prompt.js +7 -1
  6. package/.cursor/hooks/post-tool-use-failure.js +21 -0
  7. package/.cursor/hooks/post-tool-use.js +39 -0
  8. package/.cursor/hooks/shared/aw-phase-definitions.js +53 -0
  9. package/.cursor/hooks/shared/aw-phase-runner.js +3 -1
  10. package/.cursor/hooks/subagent-start.js +22 -4
  11. package/.cursor/hooks/subagent-stop.js +18 -1
  12. package/.cursor/hooks.json +23 -2
  13. package/.opencode/package.json +1 -1
  14. package/AGENTS.md +3 -3
  15. package/README.md +5 -5
  16. package/commands/adk.md +52 -0
  17. package/commands/build.md +22 -9
  18. package/commands/deploy.md +12 -0
  19. package/commands/execute.md +9 -0
  20. package/commands/feature.md +333 -0
  21. package/commands/investigate.md +18 -5
  22. package/commands/plan.md +23 -9
  23. package/commands/publish.md +65 -0
  24. package/commands/review.md +12 -0
  25. package/commands/ship.md +12 -0
  26. package/commands/test.md +12 -0
  27. package/commands/verify.md +9 -0
  28. package/hooks/hooks.json +36 -0
  29. package/manifests/install-components.json +8 -0
  30. package/manifests/install-modules.json +83 -0
  31. package/manifests/install-profiles.json +7 -0
  32. package/package.json +2 -2
  33. package/scripts/ci/validate-rules.js +51 -0
  34. package/scripts/cursor-aw-home/hooks.json +23 -2
  35. package/scripts/cursor-aw-hooks/adapter.js +41 -4
  36. package/scripts/cursor-aw-hooks/before-submit-prompt.js +7 -1
  37. package/scripts/hooks/aw-usage-commit-created.js +32 -0
  38. package/scripts/hooks/aw-usage-post-tool-use-failure.js +56 -0
  39. package/scripts/hooks/aw-usage-post-tool-use.js +242 -0
  40. package/scripts/hooks/aw-usage-prompt-submit.js +112 -0
  41. package/scripts/hooks/aw-usage-session-start.js +48 -0
  42. package/scripts/hooks/aw-usage-stop.js +182 -0
  43. package/scripts/hooks/aw-usage-telemetry-send.js +84 -0
  44. package/scripts/hooks/cost-tracker.js +3 -23
  45. package/scripts/hooks/shared/aw-phase-definitions.js +53 -0
  46. package/scripts/hooks/shared/aw-phase-runner.js +3 -1
  47. package/scripts/lib/aw-hook-contract.js +2 -2
  48. package/scripts/lib/aw-pricing.js +306 -0
  49. package/scripts/lib/aw-usage-telemetry.js +472 -0
  50. package/scripts/lib/codex-hook-config.js +8 -8
  51. package/scripts/lib/cursor-hook-config.js +25 -10
  52. package/scripts/lib/install-targets/cursor-project.js +3 -0
  53. package/scripts/lib/install-targets/helpers.js +20 -3
  54. package/skills/aw-adk/SKILL.md +317 -0
  55. package/skills/aw-adk/agents/analyzer.md +113 -0
  56. package/skills/aw-adk/agents/comparator.md +113 -0
  57. package/skills/aw-adk/agents/grader.md +115 -0
  58. package/skills/aw-adk/assets/eval_review.html +76 -0
  59. package/skills/aw-adk/eval-viewer/generate_review.py +164 -0
  60. package/skills/aw-adk/eval-viewer/viewer.html +181 -0
  61. package/skills/aw-adk/evals/eval-colocated-placement.md +84 -0
  62. package/skills/aw-adk/evals/eval-create-agent.md +90 -0
  63. package/skills/aw-adk/evals/eval-create-command.md +98 -0
  64. package/skills/aw-adk/evals/eval-create-eval.md +89 -0
  65. package/skills/aw-adk/evals/eval-create-rule.md +99 -0
  66. package/skills/aw-adk/evals/eval-create-skill.md +97 -0
  67. package/skills/aw-adk/evals/eval-delete-agent.md +79 -0
  68. package/skills/aw-adk/evals/eval-delete-command.md +89 -0
  69. package/skills/aw-adk/evals/eval-delete-rule.md +86 -0
  70. package/skills/aw-adk/evals/eval-delete-skill.md +90 -0
  71. package/skills/aw-adk/evals/eval-meta-eval-coverage.md +78 -0
  72. package/skills/aw-adk/evals/eval-meta-eval-determinism.md +81 -0
  73. package/skills/aw-adk/evals/eval-meta-eval-false-pass.md +81 -0
  74. package/skills/aw-adk/evals/eval-score-accuracy.md +95 -0
  75. package/skills/aw-adk/evals/eval-type-redirect.md +68 -0
  76. package/skills/aw-adk/evals/evals.json +96 -0
  77. package/skills/aw-adk/references/artifact-wiring.md +162 -0
  78. package/skills/aw-adk/references/cross-ide-mapping.md +71 -0
  79. package/skills/aw-adk/references/eval-placement-guide.md +183 -0
  80. package/skills/aw-adk/references/external-resources.md +75 -0
  81. package/skills/aw-adk/references/getting-started.md +66 -0
  82. package/skills/aw-adk/references/registry-structure.md +152 -0
  83. package/skills/aw-adk/references/rubric-agent.md +36 -0
  84. package/skills/aw-adk/references/rubric-command.md +36 -0
  85. package/skills/aw-adk/references/rubric-eval.md +36 -0
  86. package/skills/aw-adk/references/rubric-meta-eval.md +132 -0
  87. package/skills/aw-adk/references/rubric-rule.md +36 -0
  88. package/skills/aw-adk/references/rubric-skill.md +36 -0
  89. package/skills/aw-adk/references/schemas.md +222 -0
  90. package/skills/aw-adk/references/template-agent.md +251 -0
  91. package/skills/aw-adk/references/template-command.md +279 -0
  92. package/skills/aw-adk/references/template-eval.md +176 -0
  93. package/skills/aw-adk/references/template-rule.md +119 -0
  94. package/skills/aw-adk/references/template-skill.md +123 -0
  95. package/skills/aw-adk/references/type-classifier.md +98 -0
  96. package/skills/aw-adk/references/writing-good-agents.md +227 -0
  97. package/skills/aw-adk/references/writing-good-commands.md +258 -0
  98. package/skills/aw-adk/references/writing-good-evals.md +271 -0
  99. package/skills/aw-adk/references/writing-good-rules.md +214 -0
  100. package/skills/aw-adk/references/writing-good-skills.md +159 -0
  101. package/skills/aw-adk/scripts/aggregate-benchmark.py +190 -0
  102. package/skills/aw-adk/scripts/lint-artifact.sh +211 -0
  103. package/skills/aw-adk/scripts/score-artifact.sh +179 -0
  104. package/skills/aw-adk/scripts/trigger-eval.py +192 -0
  105. package/skills/aw-build/SKILL.md +19 -2
  106. package/skills/aw-deploy/SKILL.md +65 -3
  107. package/skills/aw-design/SKILL.md +156 -0
  108. package/skills/aw-design/references/highrise-tokens.md +394 -0
  109. package/skills/aw-design/references/micro-interactions.md +76 -0
  110. package/skills/aw-design/references/prompt-template.md +160 -0
  111. package/skills/aw-design/references/quality-checklist.md +70 -0
  112. package/skills/aw-design/references/self-review.md +497 -0
  113. package/skills/aw-design/references/stitch-workflow.md +127 -0
  114. package/skills/aw-feature/SKILL.md +293 -0
  115. package/skills/aw-investigate/SKILL.md +17 -0
  116. package/skills/aw-plan/SKILL.md +34 -3
  117. package/skills/aw-publish/SKILL.md +300 -0
  118. package/skills/aw-publish/evals/eval-confirmation-gate.md +60 -0
  119. package/skills/aw-publish/evals/eval-intent-detection.md +111 -0
  120. package/skills/aw-publish/evals/eval-push-modes.md +67 -0
  121. package/skills/aw-publish/evals/eval-rules-push.md +60 -0
  122. package/skills/aw-publish/evals/evals.json +29 -0
  123. package/skills/aw-publish/references/push-modes.md +38 -0
  124. package/skills/aw-review/SKILL.md +88 -9
  125. package/skills/aw-rules-review/SKILL.md +124 -0
  126. package/skills/aw-rules-review/agents/openai.yaml +3 -0
  127. package/skills/aw-rules-review/scripts/generate-review-template.mjs +323 -0
  128. package/skills/aw-ship/SKILL.md +16 -0
  129. package/skills/aw-spec/SKILL.md +15 -0
  130. package/skills/aw-tasks/SKILL.md +15 -0
  131. package/skills/aw-test/SKILL.md +16 -0
  132. package/skills/aw-yolo/SKILL.md +4 -0
  133. package/skills/diagnose/SKILL.md +121 -0
  134. package/skills/diagnose/scripts/hitl-loop.template.sh +41 -0
  135. package/skills/finish-only-when-green/SKILL.md +265 -0
  136. package/skills/grill-me/SKILL.md +24 -0
  137. package/skills/grill-with-docs/SKILL.md +92 -0
  138. package/skills/grill-with-docs/adr-format.md +47 -0
  139. package/skills/grill-with-docs/context-format.md +67 -0
  140. package/skills/improve-codebase-architecture/SKILL.md +75 -0
  141. package/skills/improve-codebase-architecture/deepening.md +37 -0
  142. package/skills/improve-codebase-architecture/interface-design.md +44 -0
  143. package/skills/improve-codebase-architecture/language.md +53 -0
  144. package/skills/local-ghl-setup-from-screenshot/SKILL.md +538 -0
  145. package/skills/tdd/SKILL.md +115 -0
  146. package/skills/tdd/deep-modules.md +33 -0
  147. package/skills/tdd/interface-design.md +31 -0
  148. package/skills/tdd/mocking.md +59 -0
  149. package/skills/tdd/refactoring.md +10 -0
  150. package/skills/tdd/tests.md +61 -0
  151. package/skills/to-issues/SKILL.md +62 -0
  152. package/skills/to-prd/SKILL.md +75 -0
  153. package/skills/using-aw-skills/SKILL.md +170 -237
  154. package/skills/using-aw-skills/hooks/session-start.sh +11 -41
  155. package/skills/zoom-out/SKILL.md +24 -0
  156. package/.codex/hooks/aw-post-tool-use.sh +0 -6
  157. package/.codex/hooks/aw-pre-tool-use.sh +0 -6
  158. package/.codex/hooks/aw-session-start.sh +0 -25
  159. package/.codex/hooks/aw-stop.sh +0 -6
  160. package/.codex/hooks/aw-user-prompt-submit.sh +0 -10
  161. package/.codex/hooks.json +0 -62
  162. package/.cursor/rules/common-agents.md +0 -53
  163. package/.cursor/rules/common-aw-routing.md +0 -43
  164. package/.cursor/rules/common-coding-style.md +0 -52
  165. package/.cursor/rules/common-development-workflow.md +0 -33
  166. package/.cursor/rules/common-git-workflow.md +0 -28
  167. package/.cursor/rules/common-hooks.md +0 -34
  168. package/.cursor/rules/common-patterns.md +0 -35
  169. package/.cursor/rules/common-performance.md +0 -59
  170. package/.cursor/rules/common-security.md +0 -33
  171. package/.cursor/rules/common-testing.md +0 -33
  172. package/.cursor/skills/api-and-interface-design/SKILL.md +0 -75
  173. package/.cursor/skills/article-writing/SKILL.md +0 -85
  174. package/.cursor/skills/aw-brainstorm/SKILL.md +0 -115
  175. package/.cursor/skills/aw-build/SKILL.md +0 -152
  176. package/.cursor/skills/aw-build/evals/build-stage-cases.json +0 -28
  177. package/.cursor/skills/aw-debug/SKILL.md +0 -49
  178. package/.cursor/skills/aw-deploy/SKILL.md +0 -101
  179. package/.cursor/skills/aw-deploy/evals/deploy-stage-cases.json +0 -32
  180. package/.cursor/skills/aw-execute/SKILL.md +0 -47
  181. package/.cursor/skills/aw-execute/references/mode-code.md +0 -47
  182. package/.cursor/skills/aw-execute/references/mode-docs.md +0 -28
  183. package/.cursor/skills/aw-execute/references/mode-infra.md +0 -44
  184. package/.cursor/skills/aw-execute/references/mode-migration.md +0 -58
  185. package/.cursor/skills/aw-execute/references/worker-implementer.md +0 -26
  186. package/.cursor/skills/aw-execute/references/worker-parallel-worker.md +0 -23
  187. package/.cursor/skills/aw-execute/references/worker-quality-reviewer.md +0 -23
  188. package/.cursor/skills/aw-execute/references/worker-spec-reviewer.md +0 -23
  189. package/.cursor/skills/aw-execute/scripts/build-worker-bundle.js +0 -229
  190. package/.cursor/skills/aw-finish/SKILL.md +0 -111
  191. package/.cursor/skills/aw-investigate/SKILL.md +0 -109
  192. package/.cursor/skills/aw-plan/SKILL.md +0 -368
  193. package/.cursor/skills/aw-prepare/SKILL.md +0 -118
  194. package/.cursor/skills/aw-review/SKILL.md +0 -118
  195. package/.cursor/skills/aw-ship/SKILL.md +0 -115
  196. package/.cursor/skills/aw-spec/SKILL.md +0 -104
  197. package/.cursor/skills/aw-tasks/SKILL.md +0 -138
  198. package/.cursor/skills/aw-test/SKILL.md +0 -118
  199. package/.cursor/skills/aw-verify/SKILL.md +0 -51
  200. package/.cursor/skills/aw-yolo/SKILL.md +0 -111
  201. package/.cursor/skills/browser-testing-with-devtools/SKILL.md +0 -81
  202. package/.cursor/skills/bun-runtime/SKILL.md +0 -84
  203. package/.cursor/skills/ci-cd-and-automation/SKILL.md +0 -71
  204. package/.cursor/skills/code-simplification/SKILL.md +0 -74
  205. package/.cursor/skills/content-engine/SKILL.md +0 -88
  206. package/.cursor/skills/context-engineering/SKILL.md +0 -74
  207. package/.cursor/skills/deprecation-and-migration/SKILL.md +0 -75
  208. package/.cursor/skills/documentation-and-adrs/SKILL.md +0 -75
  209. package/.cursor/skills/documentation-lookup/SKILL.md +0 -90
  210. package/.cursor/skills/frontend-slides/SKILL.md +0 -184
  211. package/.cursor/skills/frontend-slides/STYLE_PRESETS.md +0 -330
  212. package/.cursor/skills/frontend-ui-engineering/SKILL.md +0 -68
  213. package/.cursor/skills/git-workflow-and-versioning/SKILL.md +0 -75
  214. package/.cursor/skills/idea-refine/SKILL.md +0 -84
  215. package/.cursor/skills/incremental-implementation/SKILL.md +0 -75
  216. package/.cursor/skills/investor-materials/SKILL.md +0 -96
  217. package/.cursor/skills/investor-outreach/SKILL.md +0 -76
  218. package/.cursor/skills/market-research/SKILL.md +0 -75
  219. package/.cursor/skills/mcp-server-patterns/SKILL.md +0 -67
  220. package/.cursor/skills/nextjs-turbopack/SKILL.md +0 -44
  221. package/.cursor/skills/performance-optimization/SKILL.md +0 -77
  222. package/.cursor/skills/security-and-hardening/SKILL.md +0 -70
  223. package/.cursor/skills/using-aw-skills/SKILL.md +0 -290
  224. package/.cursor/skills/using-aw-skills/evals/skill-trigger-cases.tsv +0 -25
  225. package/.cursor/skills/using-aw-skills/evals/test-skill-triggers.sh +0 -171
  226. package/.cursor/skills/using-aw-skills/hooks/hooks.json +0 -9
  227. package/.cursor/skills/using-aw-skills/hooks/session-start.sh +0 -67
  228. package/.cursor/skills/using-platform-skills/SKILL.md +0 -163
  229. package/.cursor/skills/using-platform-skills/evals/platform-selection-cases.json +0 -52
  230. /package/.cursor/rules/{golang-coding-style.md → golang-coding-style.mdc} +0 -0
  231. /package/.cursor/rules/{golang-hooks.md → golang-hooks.mdc} +0 -0
  232. /package/.cursor/rules/{golang-patterns.md → golang-patterns.mdc} +0 -0
  233. /package/.cursor/rules/{golang-security.md → golang-security.mdc} +0 -0
  234. /package/.cursor/rules/{golang-testing.md → golang-testing.mdc} +0 -0
  235. /package/.cursor/rules/{kotlin-coding-style.md → kotlin-coding-style.mdc} +0 -0
  236. /package/.cursor/rules/{kotlin-hooks.md → kotlin-hooks.mdc} +0 -0
  237. /package/.cursor/rules/{kotlin-patterns.md → kotlin-patterns.mdc} +0 -0
  238. /package/.cursor/rules/{kotlin-security.md → kotlin-security.mdc} +0 -0
  239. /package/.cursor/rules/{kotlin-testing.md → kotlin-testing.mdc} +0 -0
  240. /package/.cursor/rules/{php-coding-style.md → php-coding-style.mdc} +0 -0
  241. /package/.cursor/rules/{php-hooks.md → php-hooks.mdc} +0 -0
  242. /package/.cursor/rules/{php-patterns.md → php-patterns.mdc} +0 -0
  243. /package/.cursor/rules/{php-security.md → php-security.mdc} +0 -0
  244. /package/.cursor/rules/{php-testing.md → php-testing.mdc} +0 -0
  245. /package/.cursor/rules/{python-coding-style.md → python-coding-style.mdc} +0 -0
  246. /package/.cursor/rules/{python-hooks.md → python-hooks.mdc} +0 -0
  247. /package/.cursor/rules/{python-patterns.md → python-patterns.mdc} +0 -0
  248. /package/.cursor/rules/{python-security.md → python-security.mdc} +0 -0
  249. /package/.cursor/rules/{python-testing.md → python-testing.mdc} +0 -0
  250. /package/.cursor/rules/{swift-coding-style.md → swift-coding-style.mdc} +0 -0
  251. /package/.cursor/rules/{swift-hooks.md → swift-hooks.mdc} +0 -0
  252. /package/.cursor/rules/{swift-patterns.md → swift-patterns.mdc} +0 -0
  253. /package/.cursor/rules/{swift-security.md → swift-security.mdc} +0 -0
  254. /package/.cursor/rules/{swift-testing.md → swift-testing.mdc} +0 -0
  255. /package/.cursor/rules/{typescript-coding-style.md → typescript-coding-style.mdc} +0 -0
  256. /package/.cursor/rules/{typescript-hooks.md → typescript-hooks.mdc} +0 -0
  257. /package/.cursor/rules/{typescript-patterns.md → typescript-patterns.mdc} +0 -0
  258. /package/.cursor/rules/{typescript-security.md → typescript-security.mdc} +0 -0
  259. /package/.cursor/rules/{typescript-testing.md → typescript-testing.mdc} +0 -0
package/.codex/hooks.json DELETED
@@ -1,62 +0,0 @@
1
- {
2
- "hooks": {
3
- "SessionStart": [
4
- {
5
- "matcher": "*",
6
- "hooks": [
7
- {
8
- "type": "command",
9
- "command": "bash -lc 'bash \"$HOME/.codex/hooks/aw-session-start.sh\"'"
10
- }
11
- ],
12
- "description": "Load AW routing context at session start"
13
- }
14
- ],
15
- "UserPromptSubmit": [
16
- {
17
- "hooks": [
18
- {
19
- "type": "command",
20
- "command": "bash -lc 'bash \"$HOME/.codex/hooks/aw-user-prompt-submit.sh\"'"
21
- }
22
- ],
23
- "description": "Inject compact AW routing and rule reminders on each prompt"
24
- }
25
- ],
26
- "PreToolUse": [
27
- {
28
- "matcher": "*",
29
- "hooks": [
30
- {
31
- "type": "command",
32
- "command": "bash -lc 'bash \"$HOME/.codex/hooks/aw-pre-tool-use.sh\"'"
33
- }
34
- ],
35
- "description": "Reserved AW pre-tool-use phase for Codex home installs"
36
- }
37
- ],
38
- "PostToolUse": [
39
- {
40
- "matcher": "*",
41
- "hooks": [
42
- {
43
- "type": "command",
44
- "command": "bash -lc 'bash \"$HOME/.codex/hooks/aw-post-tool-use.sh\"'"
45
- }
46
- ],
47
- "description": "Reserved AW post-tool-use phase for Codex home installs"
48
- }
49
- ],
50
- "Stop": [
51
- {
52
- "hooks": [
53
- {
54
- "type": "command",
55
- "command": "bash -lc 'bash \"$HOME/.codex/hooks/aw-stop.sh\"'"
56
- }
57
- ],
58
- "description": "Reserved AW stop phase for Codex home installs"
59
- }
60
- ]
61
- }
62
- }
@@ -1,53 +0,0 @@
1
- ---
2
- description: "Agent orchestration: available agents, parallel execution, multi-perspective analysis"
3
- alwaysApply: true
4
- ---
5
- # Agent Orchestration
6
-
7
- ## Available Agents
8
-
9
- Located in `~/.claude/agents/`:
10
-
11
- | Agent | Purpose | When to Use |
12
- |-------|---------|-------------|
13
- | planner | Implementation planning | Complex features, refactoring |
14
- | architect | System design | Architectural decisions |
15
- | tdd-guide | Test-driven development | New features, bug fixes |
16
- | code-reviewer | Code review | After writing code |
17
- | security-reviewer | Security analysis | Before commits |
18
- | build-error-resolver | Fix build errors | When build fails |
19
- | e2e-runner | E2E testing | Critical user flows |
20
- | refactor-cleaner | Dead code cleanup | Code maintenance |
21
- | doc-updater | Documentation | Updating docs |
22
-
23
- ## Immediate Agent Usage
24
-
25
- No user prompt needed:
26
- 1. Complex feature requests - Use **planner** agent
27
- 2. Code just written/modified - Use **code-reviewer** agent
28
- 3. Bug fix or new feature - Use **tdd-guide** agent
29
- 4. Architectural decision - Use **architect** agent
30
-
31
- ## Parallel Task Execution
32
-
33
- ALWAYS use parallel Task execution for independent operations:
34
-
35
- ```markdown
36
- # GOOD: Parallel execution
37
- Launch 3 agents in parallel:
38
- 1. Agent 1: Security analysis of auth module
39
- 2. Agent 2: Performance review of cache system
40
- 3. Agent 3: Type checking of utilities
41
-
42
- # BAD: Sequential when unnecessary
43
- First agent 1, then agent 2, then agent 3
44
- ```
45
-
46
- ## Multi-Perspective Analysis
47
-
48
- For complex problems, use split role sub-agents:
49
- - Factual reviewer
50
- - Senior engineer
51
- - Security expert
52
- - Consistency reviewer
53
- - Redundancy checker
@@ -1,43 +0,0 @@
1
- ---
2
- description: "AW global routing: use the AW router skill first, then apply org rules and references by domain"
3
- alwaysApply: true
4
- ---
5
- # AW Global Routing
6
-
7
- - Before any substantive response, load `using-aw-skills` from `~/.cursor/skills/using-aw-skills/SKILL.md`.
8
- - Select the smallest correct AW route first:
9
- - `/aw:plan`
10
- - `/aw:build`
11
- - `/aw:investigate`
12
- - `/aw:test`
13
- - `/aw:review`
14
- - `/aw:deploy`
15
- - `/aw:ship`
16
- - For non-trivial requests, the first substantive line should be `Selected AW Route: <route>`.
17
- - After the route is known, load the matching AW stage skill from `~/.cursor/skills/` and only the smallest supporting skills needed.
18
-
19
- ## Org Rules
20
-
21
- - Always read:
22
- - `~/.aw_rules/platform/universal/AGENTS.md`
23
- - `~/.aw_rules/platform/security/AGENTS.md`
24
- - Then pick the smallest correct domain rule based on the requirement and current context, and read it before acting:
25
- - `api-design` -> `~/.aw_rules/platform/api-design/AGENTS.md`
26
- - `backend` -> `~/.aw_rules/platform/backend/AGENTS.md`
27
- - `data` -> `~/.aw_rules/platform/data/AGENTS.md`
28
- - `frontend` -> `~/.aw_rules/platform/frontend/AGENTS.md`
29
- - `infra` -> `~/.aw_rules/platform/infra/AGENTS.md`
30
- - `mobile` -> `~/.aw_rules/platform/mobile/AGENTS.md`
31
- - `sdet` -> `~/.aw_rules/platform/sdet/AGENTS.md`
32
- - Load `references/` under the chosen domain on demand when implementation details or canonical links matter.
33
- - If repo-local instructions conflict with org-level AW rules, follow the org-level AW rules.
34
-
35
- ## Route Hints
36
-
37
- - Ideas, architecture, specs, planning, new project setup, and database choice -> `/aw:plan`
38
- - Implementation, bug fixing, and build work -> `/aw:build`
39
- - Unclear failures, alerts, or root-cause hunting -> `/aw:investigate`
40
- - QA proof, regression evidence, and validation -> `/aw:test`
41
- - Findings, readiness, and approval decisions -> `/aw:review`
42
- - One release action -> `/aw:deploy`
43
- - Rollout, rollback readiness, and closeout -> `/aw:ship`
@@ -1,52 +0,0 @@
1
- ---
2
- description: "ECC coding style: immutability, file organization, error handling, validation"
3
- alwaysApply: true
4
- ---
5
- # Coding Style
6
-
7
- ## Immutability (CRITICAL)
8
-
9
- ALWAYS create new objects, NEVER mutate existing ones:
10
-
11
- ```
12
- // Pseudocode
13
- WRONG: modify(original, field, value) → changes original in-place
14
- CORRECT: update(original, field, value) → returns new copy with change
15
- ```
16
-
17
- Rationale: Immutable data prevents hidden side effects, makes debugging easier, and enables safe concurrency.
18
-
19
- ## File Organization
20
-
21
- MANY SMALL FILES > FEW LARGE FILES:
22
- - High cohesion, low coupling
23
- - 200-400 lines typical, 800 max
24
- - Extract utilities from large modules
25
- - Organize by feature/domain, not by type
26
-
27
- ## Error Handling
28
-
29
- ALWAYS handle errors comprehensively:
30
- - Handle errors explicitly at every level
31
- - Provide user-friendly error messages in UI-facing code
32
- - Log detailed error context on the server side
33
- - Never silently swallow errors
34
-
35
- ## Input Validation
36
-
37
- ALWAYS validate at system boundaries:
38
- - Validate all user input before processing
39
- - Use schema-based validation where available
40
- - Fail fast with clear error messages
41
- - Never trust external data (API responses, user input, file content)
42
-
43
- ## Code Quality Checklist
44
-
45
- Before marking work complete:
46
- - [ ] Code is readable and well-named
47
- - [ ] Functions are small (<50 lines)
48
- - [ ] Files are focused (<800 lines)
49
- - [ ] No deep nesting (>4 levels)
50
- - [ ] Proper error handling
51
- - [ ] No hardcoded values (use constants or config)
52
- - [ ] No mutation (immutable patterns used)
@@ -1,33 +0,0 @@
1
- ---
2
- description: "Development workflow: plan, TDD, review, commit pipeline"
3
- alwaysApply: true
4
- ---
5
- # Development Workflow
6
-
7
- > This rule extends the git workflow rule with the full feature development process that happens before git operations.
8
-
9
- The Feature Implementation Workflow describes the development pipeline: planning, TDD, code review, and then committing to git.
10
-
11
- ## Feature Implementation Workflow
12
-
13
- 1. **Plan First**
14
- - Use **planner** agent to create implementation plan
15
- - Identify dependencies and risks
16
- - Break down into phases
17
-
18
- 2. **TDD Approach**
19
- - Use **tdd-guide** agent
20
- - Write tests first (RED)
21
- - Implement to pass tests (GREEN)
22
- - Refactor (IMPROVE)
23
- - Verify 80%+ coverage
24
-
25
- 3. **Code Review**
26
- - Use **code-reviewer** agent immediately after writing code
27
- - Address CRITICAL and HIGH issues
28
- - Fix MEDIUM issues when possible
29
-
30
- 4. **Commit & Push**
31
- - Detailed commit messages
32
- - Follow conventional commits format
33
- - See the git workflow rule for commit message format and PR process
@@ -1,28 +0,0 @@
1
- ---
2
- description: "Git workflow: conventional commits, PR process"
3
- alwaysApply: true
4
- ---
5
- # Git Workflow
6
-
7
- ## Commit Message Format
8
- ```
9
- <type>: <description>
10
-
11
- <optional body>
12
- ```
13
-
14
- Types: feat, fix, refactor, docs, test, chore, perf, ci
15
-
16
- Note: Attribution disabled globally via ~/.claude/settings.json.
17
-
18
- ## Pull Request Workflow
19
-
20
- When creating PRs:
21
- 1. Analyze full commit history (not just latest commit)
22
- 2. Use `git diff [base-branch]...HEAD` to see all changes
23
- 3. Draft comprehensive PR summary
24
- 4. Include test plan with TODOs
25
- 5. Push with `-u` flag if new branch
26
-
27
- > For the full development process (planning, TDD, code review) before git operations,
28
- > see the development workflow rule.
@@ -1,34 +0,0 @@
1
- ---
2
- description: "Hooks system: types, auto-accept permissions, TodoWrite best practices"
3
- alwaysApply: true
4
- ---
5
- # Hooks System
6
-
7
- ## Hook Types
8
-
9
- - **PreToolUse**: Before tool execution (validation, parameter modification)
10
- - **PostToolUse**: After tool execution (auto-format, checks)
11
- - **Stop**: When session ends (final verification)
12
-
13
- ## Auto-Accept Permissions
14
-
15
- Use with caution:
16
- - Enable for trusted, well-defined plans
17
- - Disable for exploratory work
18
- - Never use dangerously-skip-permissions flag
19
- - Configure `allowedTools` in `~/.claude.json` instead
20
-
21
- ## TodoWrite Best Practices
22
-
23
- Use TodoWrite tool to:
24
- - Track progress on multi-step tasks
25
- - Verify understanding of instructions
26
- - Enable real-time steering
27
- - Show granular implementation steps
28
-
29
- Todo list reveals:
30
- - Out of order steps
31
- - Missing items
32
- - Extra unnecessary items
33
- - Wrong granularity
34
- - Misinterpreted requirements
@@ -1,35 +0,0 @@
1
- ---
2
- description: "Common patterns: repository, API response, skeleton projects"
3
- alwaysApply: true
4
- ---
5
- # Common Patterns
6
-
7
- ## Skeleton Projects
8
-
9
- When implementing new functionality:
10
- 1. Search for battle-tested skeleton projects
11
- 2. Use parallel agents to evaluate options:
12
- - Security assessment
13
- - Extensibility analysis
14
- - Relevance scoring
15
- - Implementation planning
16
- 3. Clone best match as foundation
17
- 4. Iterate within proven structure
18
-
19
- ## Design Patterns
20
-
21
- ### Repository Pattern
22
-
23
- Encapsulate data access behind a consistent interface:
24
- - Define standard operations: findAll, findById, create, update, delete
25
- - Concrete implementations handle storage details (database, API, file, etc.)
26
- - Business logic depends on the abstract interface, not the storage mechanism
27
- - Enables easy swapping of data sources and simplifies testing with mocks
28
-
29
- ### API Response Format
30
-
31
- Use a consistent envelope for all API responses:
32
- - Include a success/status indicator
33
- - Include the data payload (nullable on error)
34
- - Include an error message field (nullable on success)
35
- - Include metadata for paginated responses (total, page, limit)
@@ -1,59 +0,0 @@
1
- ---
2
- description: "Performance: model selection, context management, build troubleshooting"
3
- alwaysApply: true
4
- ---
5
- # Performance Optimization
6
-
7
- ## Model Selection Strategy
8
-
9
- **Haiku 4.5** (90% of Sonnet capability, 3x cost savings):
10
- - Lightweight agents with frequent invocation
11
- - Pair programming and code generation
12
- - Worker agents in multi-agent systems
13
-
14
- **Sonnet 4.6** (Best coding model):
15
- - Main development work
16
- - Orchestrating multi-agent workflows
17
- - Complex coding tasks
18
-
19
- **Opus 4.5** (Deepest reasoning):
20
- - Complex architectural decisions
21
- - Maximum reasoning requirements
22
- - Research and analysis tasks
23
-
24
- ## Context Window Management
25
-
26
- Avoid last 20% of context window for:
27
- - Large-scale refactoring
28
- - Feature implementation spanning multiple files
29
- - Debugging complex interactions
30
-
31
- Lower context sensitivity tasks:
32
- - Single-file edits
33
- - Independent utility creation
34
- - Documentation updates
35
- - Simple bug fixes
36
-
37
- ## Extended Thinking + Plan Mode
38
-
39
- Extended thinking is enabled by default, reserving up to 31,999 tokens for internal reasoning.
40
-
41
- Control extended thinking via:
42
- - **Toggle**: Option+T (macOS) / Alt+T (Windows/Linux)
43
- - **Config**: Set `alwaysThinkingEnabled` in `~/.claude/settings.json`
44
- - **Budget cap**: `export MAX_THINKING_TOKENS=10000`
45
- - **Verbose mode**: Ctrl+O to see thinking output
46
-
47
- For complex tasks requiring deep reasoning:
48
- 1. Ensure extended thinking is enabled (on by default)
49
- 2. Enable **Plan Mode** for structured approach
50
- 3. Use multiple critique rounds for thorough analysis
51
- 4. Use split role sub-agents for diverse perspectives
52
-
53
- ## Build Troubleshooting
54
-
55
- If build fails:
56
- 1. Use **build-error-resolver** agent
57
- 2. Analyze error messages
58
- 3. Fix incrementally
59
- 4. Verify after each fix
@@ -1,33 +0,0 @@
1
- ---
2
- description: "Security: mandatory checks, secret management, response protocol"
3
- alwaysApply: true
4
- ---
5
- # Security Guidelines
6
-
7
- ## Mandatory Security Checks
8
-
9
- Before ANY commit:
10
- - [ ] No hardcoded secrets (API keys, passwords, tokens)
11
- - [ ] All user inputs validated
12
- - [ ] SQL injection prevention (parameterized queries)
13
- - [ ] XSS prevention (sanitized HTML)
14
- - [ ] CSRF protection enabled
15
- - [ ] Authentication/authorization verified
16
- - [ ] Rate limiting on all endpoints
17
- - [ ] Error messages don't leak sensitive data
18
-
19
- ## Secret Management
20
-
21
- - NEVER hardcode secrets in source code
22
- - ALWAYS use environment variables or a secret manager
23
- - Validate that required secrets are present at startup
24
- - Rotate any secrets that may have been exposed
25
-
26
- ## Security Response Protocol
27
-
28
- If security issue found:
29
- 1. STOP immediately
30
- 2. Use **security-reviewer** agent
31
- 3. Fix CRITICAL issues before continuing
32
- 4. Rotate any exposed secrets
33
- 5. Review entire codebase for similar issues
@@ -1,33 +0,0 @@
1
- ---
2
- description: "Testing requirements: 80% coverage, TDD workflow, test types"
3
- alwaysApply: true
4
- ---
5
- # Testing Requirements
6
-
7
- ## Minimum Test Coverage: 80%
8
-
9
- Test Types (ALL required):
10
- 1. **Unit Tests** - Individual functions, utilities, components
11
- 2. **Integration Tests** - API endpoints, database operations
12
- 3. **E2E Tests** - Critical user flows (framework chosen per language)
13
-
14
- ## Test-Driven Development
15
-
16
- MANDATORY workflow:
17
- 1. Write test first (RED)
18
- 2. Run test - it should FAIL
19
- 3. Write minimal implementation (GREEN)
20
- 4. Run test - it should PASS
21
- 5. Refactor (IMPROVE)
22
- 6. Verify coverage (80%+)
23
-
24
- ## Troubleshooting Test Failures
25
-
26
- 1. Use **tdd-guide** agent
27
- 2. Check test isolation
28
- 3. Verify mocks are correct
29
- 4. Fix implementation, not tests (unless tests are wrong)
30
-
31
- ## Agent Support
32
-
33
- - **tdd-guide** - Use PROACTIVELY for new features, enforces write-tests-first
@@ -1,75 +0,0 @@
1
- ---
2
- name: api-and-interface-design
3
- description: Designs stable APIs and module boundaries. Use when changing public contracts, service interfaces, component props, or any boundary another system or team depends on.
4
- origin: ECC
5
- ---
6
-
7
- # API and Interface Design
8
-
9
- ## Overview
10
-
11
- Design interfaces that are stable, documented, and hard to misuse.
12
- This applies to REST and GraphQL APIs, TypeScript contracts, event payloads, component props, database-informed boundaries, and service-to-service interfaces.
13
-
14
- ## When to Use
15
-
16
- - designing or changing API endpoints
17
- - defining interfaces between modules, services, or teams
18
- - shaping component props or shared library contracts
19
- - planning data contracts that other code depends on
20
- - changing existing public behavior that consumers may already rely on
21
-
22
- **When NOT to use**
23
-
24
- - the change is fully internal and does not cross a meaningful boundary
25
- - the work is purely implementation with no contract implications
26
-
27
- ## Workflow
28
-
29
- 1. Name the boundary and its consumers first.
30
- Clarify who consumes the interface and what kind of compatibility risk exists:
31
- user clients, internal services, frontend callers, workers, or shared packages.
32
- 2. Define the contract before the implementation.
33
- Write the request and response shape, error semantics, idempotency rules, and ordering guarantees before coding the handler.
34
- Use `../../references/interface-stability.md` and `api-design` when the surface is HTTP-facing.
35
- 3. Treat observable behavior as part of the contract.
36
- Apply Hyrum's Law thinking:
37
- if consumers can observe it, they may depend on it.
38
- Avoid leaking implementation details, inconsistent error patterns, or unstable defaults.
39
- 4. Validate at the boundary, not everywhere.
40
- Validate user input, third-party responses, environment configuration, and external payloads where they enter the system.
41
- Keep internal code paths simpler once the boundary is trusted.
42
- 5. Prefer extension over breaking change.
43
- Add optional fields, new endpoints, new event versions, or adapters before removing or changing existing semantics.
44
- If a breaking change is unavoidable, load `deprecation-and-migration`.
45
- 6. Record the long-lived design decision.
46
- For important public or architectural contracts, update docs or ADRs through `documentation-and-adrs`.
47
- In GHL- or AW-governed repos, align the contract with `.aw_rules`, platform APIs, and baseline expectations.
48
-
49
- ## Common Rationalizations
50
-
51
- | Rationalization | Reality |
52
- |---|---|
53
- | "We can document the contract later." | The contract is the design. If it is unclear now, implementation will drift. |
54
- | "Nobody depends on that behavior." | If it is observable, somebody eventually will. |
55
- | "We can just support two versions forever." | Version sprawl multiplies maintenance and creates dependency pain. |
56
- | "Validation everywhere is safer." | Boundary validation is safer and simpler than repeating checks throughout internal code. |
57
-
58
- ## Red Flags
59
-
60
- - different endpoints or modules expose inconsistent error behavior
61
- - breaking changes are introduced without migration or compatibility planning
62
- - boundary validation is missing for user or third-party input
63
- - implementation details leak into public behavior or naming
64
- - the team cannot explain what part of the behavior is contract versus accident
65
-
66
- ## Verification
67
-
68
- After designing or changing an interface, confirm:
69
-
70
- - [ ] the consumers and compatibility surface are explicit
71
- - [ ] the contract exists before or alongside implementation
72
- - [ ] error semantics and validation boundaries are consistent
73
- - [ ] additions were preferred over breaking changes where possible
74
- - [ ] deprecation or migration is planned for any unavoidable break
75
- - [ ] important interface decisions are documented for future engineers and agents
@@ -1,85 +0,0 @@
1
- ---
2
- name: article-writing
3
- description: Write articles, guides, blog posts, tutorials, newsletter issues, and other long-form content in a distinctive voice derived from supplied examples or brand guidance. Use when the user wants polished written content longer than a paragraph, especially when voice consistency, structure, and credibility matter.
4
- origin: ECC
5
- ---
6
-
7
- # Article Writing
8
-
9
- Write long-form content that sounds like a real person or brand, not generic AI output.
10
-
11
- ## When to Activate
12
-
13
- - drafting blog posts, essays, launch posts, guides, tutorials, or newsletter issues
14
- - turning notes, transcripts, or research into polished articles
15
- - matching an existing founder, operator, or brand voice from examples
16
- - tightening structure, pacing, and evidence in already-written long-form copy
17
-
18
- ## Core Rules
19
-
20
- 1. Lead with the concrete thing: example, output, anecdote, number, screenshot description, or code block.
21
- 2. Explain after the example, not before.
22
- 3. Prefer short, direct sentences over padded ones.
23
- 4. Use specific numbers when available and sourced.
24
- 5. Never invent biographical facts, company metrics, or customer evidence.
25
-
26
- ## Voice Capture Workflow
27
-
28
- If the user wants a specific voice, collect one or more of:
29
- - published articles
30
- - newsletters
31
- - X / LinkedIn posts
32
- - docs or memos
33
- - a short style guide
34
-
35
- Then extract:
36
- - sentence length and rhythm
37
- - whether the voice is formal, conversational, or sharp
38
- - favored rhetorical devices such as parentheses, lists, fragments, or questions
39
- - tolerance for humor, opinion, and contrarian framing
40
- - formatting habits such as headers, bullets, code blocks, and pull quotes
41
-
42
- If no voice references are given, default to a direct, operator-style voice: concrete, practical, and low on hype.
43
-
44
- ## Banned Patterns
45
-
46
- Delete and rewrite any of these:
47
- - generic openings like "In today's rapidly evolving landscape"
48
- - filler transitions such as "Moreover" and "Furthermore"
49
- - hype phrases like "game-changer", "cutting-edge", or "revolutionary"
50
- - vague claims without evidence
51
- - biography or credibility claims not backed by provided context
52
-
53
- ## Writing Process
54
-
55
- 1. Clarify the audience and purpose.
56
- 2. Build a skeletal outline with one purpose per section.
57
- 3. Start each section with evidence, example, or scene.
58
- 4. Expand only where the next sentence earns its place.
59
- 5. Remove anything that sounds templated or self-congratulatory.
60
-
61
- ## Structure Guidance
62
-
63
- ### Technical Guides
64
- - open with what the reader gets
65
- - use code or terminal examples in every major section
66
- - end with concrete takeaways, not a soft summary
67
-
68
- ### Essays / Opinion Pieces
69
- - start with tension, contradiction, or a sharp observation
70
- - keep one argument thread per section
71
- - use examples that earn the opinion
72
-
73
- ### Newsletters
74
- - keep the first screen strong
75
- - mix insight with updates, not diary filler
76
- - use clear section labels and easy skim structure
77
-
78
- ## Quality Gate
79
-
80
- Before delivering:
81
- - verify factual claims against provided sources
82
- - remove filler and corporate language
83
- - confirm the voice matches the supplied examples
84
- - ensure every section adds new information
85
- - check formatting for the intended platform