bigpowers 2.43.4 → 2.44.0

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 (173) hide show
  1. package/.pi/package.json +1 -1
  2. package/.pi/prompts/quick-fix.md +0 -8
  3. package/.pi/prompts/using-bigpowers.md +1 -1
  4. package/.pi/skills/quick-fix/SKILL.md +0 -8
  5. package/.pi/skills/using-bigpowers/SKILL.md +1 -1
  6. package/CHANGELOG.md +14 -0
  7. package/CLAUDE.md +3 -3
  8. package/CONTRIBUTING.md +1 -1
  9. package/CONVENTIONS.md +2 -1
  10. package/README.md +204 -104
  11. package/SKILL-INDEX.md +1 -2
  12. package/package.json +1 -1
  13. package/scripts/add-model-frontmatter.sh +4 -1
  14. package/scripts/audit-catalog.sh +10 -7
  15. package/scripts/check-skill-size.sh +5 -2
  16. package/scripts/generate-reference-tables.sh +5 -2
  17. package/scripts/generate-skill-index.sh +7 -2
  18. package/scripts/install.sh +4 -1
  19. package/scripts/regenerate-lockfile.sh +4 -1
  20. package/scripts/run-skill-verify.sh +4 -1
  21. package/scripts/sync-skills.sh +28 -2
  22. package/{quick-fix → skills/quick-fix}/SKILL.md +0 -8
  23. package/{using-bigpowers → skills/using-bigpowers}/SKILL.md +1 -1
  24. package/skills-lock.json +74 -74
  25. package/COMMIT-MESSAGE.md +0 -34
  26. package/RELEASE.md +0 -133
  27. /package/{align-grid → skills/align-grid}/SKILL.md +0 -0
  28. /package/{align-grid → skills/align-grid}/scripts/grid_tokens.py +0 -0
  29. /package/{align-grid → skills/align-grid}/scripts/verify_grid.js +0 -0
  30. /package/{assess-impact → skills/assess-impact}/SKILL.md +0 -0
  31. /package/{audit-code → skills/audit-code}/HEURISTICS.md +0 -0
  32. /package/{audit-code → skills/audit-code}/SKILL.md +0 -0
  33. /package/{audit-plan → skills/audit-plan}/SKILL.md +0 -0
  34. /package/{build-epic → skills/build-epic}/SKILL.md +0 -0
  35. /package/{change-request → skills/change-request}/REFERENCE.md +0 -0
  36. /package/{change-request → skills/change-request}/SKILL.md +0 -0
  37. /package/{commit-message → skills/commit-message}/REFERENCE.md +0 -0
  38. /package/{commit-message → skills/commit-message}/SKILL.md +0 -0
  39. /package/{compose-workflow → skills/compose-workflow}/REFERENCE.md +0 -0
  40. /package/{compose-workflow → skills/compose-workflow}/SKILL.md +0 -0
  41. /package/{craft-skill → skills/craft-skill}/REFERENCE.md +0 -0
  42. /package/{craft-skill → skills/craft-skill}/SKILL.md +0 -0
  43. /package/{deepen-architecture → skills/deepen-architecture}/DEEPENING.md +0 -0
  44. /package/{deepen-architecture → skills/deepen-architecture}/INTERFACE-DESIGN.md +0 -0
  45. /package/{deepen-architecture → skills/deepen-architecture}/LANGUAGE.md +0 -0
  46. /package/{deepen-architecture → skills/deepen-architecture}/SKILL.md +0 -0
  47. /package/{define-language → skills/define-language}/SKILL.md +0 -0
  48. /package/{define-success → skills/define-success}/SKILL.md +0 -0
  49. /package/{delegate-task → skills/delegate-task}/SKILL.md +0 -0
  50. /package/{deploy → skills/deploy}/REFERENCE.md +0 -0
  51. /package/{deploy → skills/deploy}/SKILL.md +0 -0
  52. /package/{design-interface → skills/design-interface}/SKILL.md +0 -0
  53. /package/{develop-tdd → skills/develop-tdd}/REFERENCE.md +0 -0
  54. /package/{develop-tdd → skills/develop-tdd}/SKILL.md +0 -0
  55. /package/{develop-tdd → skills/develop-tdd}/deep-modules.md +0 -0
  56. /package/{develop-tdd → skills/develop-tdd}/interface-design.md +0 -0
  57. /package/{develop-tdd → skills/develop-tdd}/mocking.md +0 -0
  58. /package/{develop-tdd → skills/develop-tdd}/refactoring.md +0 -0
  59. /package/{develop-tdd → skills/develop-tdd}/tests.md +0 -0
  60. /package/{diagnose-root → skills/diagnose-root}/SKILL.md +0 -0
  61. /package/{dispatch-agents → skills/dispatch-agents}/SKILL.md +0 -0
  62. /package/{edit-document → skills/edit-document}/SKILL.md +0 -0
  63. /package/{elaborate-spec → skills/elaborate-spec}/SKILL.md +0 -0
  64. /package/{enforce-first → skills/enforce-first}/SKILL.md +0 -0
  65. /package/{evolve-skill → skills/evolve-skill}/REFERENCE.md +0 -0
  66. /package/{evolve-skill → skills/evolve-skill}/SKILL.md +0 -0
  67. /package/{execute-plan → skills/execute-plan}/SKILL.md +0 -0
  68. /package/{extract-design → skills/extract-design}/REFERENCE.md +0 -0
  69. /package/{extract-design → skills/extract-design}/SKILL.md +0 -0
  70. /package/{extract-design → skills/extract-design}/extract-design.feature +0 -0
  71. /package/{extract-design → skills/extract-design}/scripts/classify-colors.js +0 -0
  72. /package/{extract-design → skills/extract-design}/scripts/classify-rounded.js +0 -0
  73. /package/{extract-design → skills/extract-design}/scripts/classify-spacing.js +0 -0
  74. /package/{extract-design → skills/extract-design}/scripts/classify-typography.js +0 -0
  75. /package/{extract-design → skills/extract-design}/scripts/collect-styles.js +0 -0
  76. /package/{extract-design → skills/extract-design}/scripts/detect-components.js +0 -0
  77. /package/{extract-design → skills/extract-design}/scripts/extract.js +0 -0
  78. /package/{extract-design → skills/extract-design}/scripts/generate-prose.js +0 -0
  79. /package/{extract-design → skills/extract-design}/scripts/lib/browser.js +0 -0
  80. /package/{extract-design → skills/extract-design}/scripts/lib/constants.js +0 -0
  81. /package/{extract-design → skills/extract-design}/scripts/lib/logging.js +0 -0
  82. /package/{extract-design → skills/extract-design}/scripts/lib/retry.js +0 -0
  83. /package/{extract-design → skills/extract-design}/scripts/lib/state.js +0 -0
  84. /package/{extract-design → skills/extract-design}/scripts/lib/validator.js +0 -0
  85. /package/{extract-design → skills/extract-design}/scripts/write-designd.js +0 -0
  86. /package/{extract-design → skills/extract-design}/tests/fixtures/glassmorphism-dark/expected-tokens.json +0 -0
  87. /package/{extract-design → skills/extract-design}/tests/fixtures/glassmorphism-dark/prototype.html +0 -0
  88. /package/{extract-design → skills/extract-design}/tests/fixtures/minimal-no-styles/expected-tokens.json +0 -0
  89. /package/{extract-design → skills/extract-design}/tests/fixtures/minimal-no-styles/prototype.html +0 -0
  90. /package/{extract-design → skills/extract-design}/tests/fixtures/swiss-grid/expected-tokens.json +0 -0
  91. /package/{extract-design → skills/extract-design}/tests/fixtures/swiss-grid/prototype.html +0 -0
  92. /package/{extract-design → skills/extract-design}/tests/test-extraction.js +0 -0
  93. /package/{fix-bug → skills/fix-bug}/SKILL.md +0 -0
  94. /package/{grill-me → skills/grill-me}/REFERENCE.md +0 -0
  95. /package/{grill-me → skills/grill-me}/SKILL.md +0 -0
  96. /package/{grill-with-docs → skills/grill-with-docs}/REFERENCE.md +0 -0
  97. /package/{grill-with-docs → skills/grill-with-docs}/SKILL.md +0 -0
  98. /package/{guard-git → skills/guard-git}/REFERENCE.md +0 -0
  99. /package/{guard-git → skills/guard-git}/SKILL.md +0 -0
  100. /package/{guard-git → skills/guard-git}/scripts/block-dangerous-git.sh +0 -0
  101. /package/{guard-git → skills/guard-git}/scripts/lib/git-guardrails-core.sh +0 -0
  102. /package/{hook-commits → skills/hook-commits}/SKILL.md +0 -0
  103. /package/{inspect-quality → skills/inspect-quality}/SKILL.md +0 -0
  104. /package/{investigate-bug → skills/investigate-bug}/SKILL.md +0 -0
  105. /package/{kickoff-branch → skills/kickoff-branch}/SKILL.md +0 -0
  106. /package/{map-codebase → skills/map-codebase}/SKILL.md +0 -0
  107. /package/{migrate-spec → skills/migrate-spec}/REFERENCE-GSD.md +0 -0
  108. /package/{migrate-spec → skills/migrate-spec}/REFERENCE.md +0 -0
  109. /package/{migrate-spec → skills/migrate-spec}/SKILL.md +0 -0
  110. /package/{migrate-spec → skills/migrate-spec}/templates/METHODOLOGY_LATEST.md +0 -0
  111. /package/{migrate-spec → skills/migrate-spec}/templates/REQUIREMENTS_TRACE.yaml +0 -0
  112. /package/{model-domain → skills/model-domain}/ADR-FORMAT.md +0 -0
  113. /package/{model-domain → skills/model-domain}/CONTEXT-FORMAT.md +0 -0
  114. /package/{model-domain → skills/model-domain}/SKILL.md +0 -0
  115. /package/{orchestrate-project → skills/orchestrate-project}/REFERENCE.md +0 -0
  116. /package/{orchestrate-project → skills/orchestrate-project}/SKILL.md +0 -0
  117. /package/{organize-workspace → skills/organize-workspace}/REFERENCE.md +0 -0
  118. /package/{organize-workspace → skills/organize-workspace}/SKILL.md +0 -0
  119. /package/{plan-refactor → skills/plan-refactor}/SKILL.md +0 -0
  120. /package/{plan-release → skills/plan-release}/SKILL.md +0 -0
  121. /package/{plan-work → skills/plan-work}/REFERENCE.md +0 -0
  122. /package/{plan-work → skills/plan-work}/SKILL.md +0 -0
  123. /package/{publish-package → skills/publish-package}/REFERENCE.md +0 -0
  124. /package/{publish-package → skills/publish-package}/SKILL.md +0 -0
  125. /package/{release-branch → skills/release-branch}/REFERENCE.md +0 -0
  126. /package/{release-branch → skills/release-branch}/SKILL.md +0 -0
  127. /package/{request-review → skills/request-review}/SKILL.md +0 -0
  128. /package/{research-first → skills/research-first}/REFERENCE.md +0 -0
  129. /package/{research-first → skills/research-first}/SKILL.md +0 -0
  130. /package/{reset-baseline → skills/reset-baseline}/SKILL.md +0 -0
  131. /package/{respond-review → skills/respond-review}/SKILL.md +0 -0
  132. /package/{run-benchmark → skills/run-benchmark}/SKILL.md +0 -0
  133. /package/{run-evals → skills/run-evals}/REFERENCE.md +0 -0
  134. /package/{run-evals → skills/run-evals}/SKILL.md +0 -0
  135. /package/{run-planning → skills/run-planning}/SKILL.md +0 -0
  136. /package/{scope-work → skills/scope-work}/SKILL.md +0 -0
  137. /package/{search-skills → skills/search-skills}/SKILL.md +0 -0
  138. /package/{security-review → skills/security-review}/REFERENCE-confidence-rubric.md +0 -0
  139. /package/{security-review → skills/security-review}/REFERENCE-false-positives.md +0 -0
  140. /package/{security-review → skills/security-review}/REFERENCE-vuln-categories.md +0 -0
  141. /package/{security-review → skills/security-review}/SKILL.md +0 -0
  142. /package/{seed-conventions → skills/seed-conventions}/REFERENCE.md +0 -0
  143. /package/{seed-conventions → skills/seed-conventions}/SKILL.md +0 -0
  144. /package/{session-state → skills/session-state}/SKILL.md +0 -0
  145. /package/{setup-environment → skills/setup-environment}/SKILL.md +0 -0
  146. /package/{simulate-agents → skills/simulate-agents}/SKILL.md +0 -0
  147. /package/{slice-tasks → skills/slice-tasks}/SKILL.md +0 -0
  148. /package/{smoke-test → skills/smoke-test}/REFERENCE.md +0 -0
  149. /package/{smoke-test → skills/smoke-test}/SKILL.md +0 -0
  150. /package/{spike-prototype → skills/spike-prototype}/SKILL.md +0 -0
  151. /package/{stocktake-skills → skills/stocktake-skills}/REFERENCE.md +0 -0
  152. /package/{stocktake-skills → skills/stocktake-skills}/SKILL.md +0 -0
  153. /package/{survey-context → skills/survey-context}/SKILL.md +0 -0
  154. /package/{terse-mode → skills/terse-mode}/SKILL.md +0 -0
  155. /package/{trace-requirement → skills/trace-requirement}/SKILL.md +0 -0
  156. /package/{validate-contracts → skills/validate-contracts}/REFERENCE.md +0 -0
  157. /package/{validate-contracts → skills/validate-contracts}/SKILL.md +0 -0
  158. /package/{validate-fix → skills/validate-fix}/SKILL.md +0 -0
  159. /package/{verify-work → skills/verify-work}/REFERENCE.md +0 -0
  160. /package/{verify-work → skills/verify-work}/SKILL.md +0 -0
  161. /package/{visual-dashboard → skills/visual-dashboard}/SKILL.md +0 -0
  162. /package/{visual-dashboard → skills/visual-dashboard}/scripts/cockpit.html +0 -0
  163. /package/{visual-dashboard → skills/visual-dashboard}/scripts/frame-template.html +0 -0
  164. /package/{visual-dashboard → skills/visual-dashboard}/scripts/helper.js +0 -0
  165. /package/{visual-dashboard → skills/visual-dashboard}/scripts/read-specs-status.cjs +0 -0
  166. /package/{visual-dashboard → skills/visual-dashboard}/scripts/server.cjs +0 -0
  167. /package/{visual-dashboard → skills/visual-dashboard}/scripts/start-server.sh +0 -0
  168. /package/{visual-dashboard → skills/visual-dashboard}/scripts/stop-server.sh +0 -0
  169. /package/{wire-ci → skills/wire-ci}/REFERENCE.md +0 -0
  170. /package/{wire-ci → skills/wire-ci}/SKILL.md +0 -0
  171. /package/{wire-observability → skills/wire-observability}/SKILL.md +0 -0
  172. /package/{write-document → skills/write-document}/REFERENCE.md +0 -0
  173. /package/{write-document → skills/write-document}/SKILL.md +0 -0
package/.pi/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigpowers",
3
- "version": "2.43.4",
3
+ "version": "2.44.0",
4
4
  "description": "72 skills — 72 agent skills synthesizing 17 years of software engineering discipline into a prescriptive methodology for solo developers",
5
5
  "keywords": [
6
6
  "pi-package"
@@ -98,14 +98,6 @@ Invoke `release-branch` to merge and ship.
98
98
 
99
99
  → verify: `test -f quick-fix/SKILL.md && grep -q '^name:' quick-fix/SKILL.md && echo "OK: quick-fix valid" || echo "FAIL: quick-fix missing"`
100
100
 
101
-
102
- ```bash
103
- test -f quick-fix/SKILL.md && echo "OK: skill file exists" || echo "FAIL: no skill file"
104
- grep -q "name: quick-fix" quick-fix/SKILL.md && echo "OK: frontmatter" || echo "FAIL: frontmatter"
105
- grep -qi "data.only\|trivial\|fast.path\|guardrail\|abort" quick-fix/SKILL.md && echo "OK: entry criteria and guardrails"
106
- grep -q "quick-fix" SKILL-INDEX.md && echo "OK: in SKILL-INDEX"
107
- ```
108
-
109
101
  ## Example
110
102
 
111
103
  ### Bosnia flag missing from FLAGS dictionary
@@ -98,7 +98,7 @@ Start the HTTP dashboard with `visual-dashboard` → `GET /api/status?projectDir
98
98
  - **Integrate:** team default is `gh pr` (team-pr); solo profile uses `land-branch.sh`. Never create GitHub issues from skills — use local Markdown files instead.
99
99
  - **One skill, one thing.** If you're unsure which skill to call, call `survey-context` — it reads your current state and recommends the next step.
100
100
  - **verify: every step.** Every epic task must have `verify: <runnable command>`. Evidence over claims.
101
- - **70 skills.** See `SKILL-INDEX.md`; find skills with `search-skills`.
101
+ - **The full catalog is auto-generated.** See `SKILL-INDEX.md`; find skills with `search-skills`.
102
102
 
103
103
  ## After this
104
104
 
@@ -100,14 +100,6 @@ Invoke `release-branch` to merge and ship.
100
100
 
101
101
  → verify: `test -f quick-fix/SKILL.md && grep -q '^name:' quick-fix/SKILL.md && echo "OK: quick-fix valid" || echo "FAIL: quick-fix missing"`
102
102
 
103
-
104
- ```bash
105
- test -f quick-fix/SKILL.md && echo "OK: skill file exists" || echo "FAIL: no skill file"
106
- grep -q "name: quick-fix" quick-fix/SKILL.md && echo "OK: frontmatter" || echo "FAIL: frontmatter"
107
- grep -qi "data.only\|trivial\|fast.path\|guardrail\|abort" quick-fix/SKILL.md && echo "OK: entry criteria and guardrails"
108
- grep -q "quick-fix" SKILL-INDEX.md && echo "OK: in SKILL-INDEX"
109
- ```
110
-
111
103
  ## Example
112
104
 
113
105
  ### Bosnia flag missing from FLAGS dictionary
@@ -100,7 +100,7 @@ Start the HTTP dashboard with `visual-dashboard` → `GET /api/status?projectDir
100
100
  - **Integrate:** team default is `gh pr` (team-pr); solo profile uses `land-branch.sh`. Never create GitHub issues from skills — use local Markdown files instead.
101
101
  - **One skill, one thing.** If you're unsure which skill to call, call `survey-context` — it reads your current state and recommends the next step.
102
102
  - **verify: every step.** Every epic task must have `verify: <runnable command>`. Evidence over claims.
103
- - **70 skills.** See `SKILL-INDEX.md`; find skills with `search-skills`.
103
+ - **The full catalog is auto-generated.** See `SKILL-INDEX.md`; find skills with `search-skills`.
104
104
 
105
105
  ## After this
106
106
 
package/CHANGELOG.md CHANGED
@@ -1,3 +1,17 @@
1
+ # [2.44.0](https://github.com/danielvm-git/bigpowers/compare/v2.43.5...v2.44.0) (2026-07-02)
2
+
3
+
4
+ ### Features
5
+
6
+ * **repo:** move 72 skill sources to skills/ directory ([89ab1d9](https://github.com/danielvm-git/bigpowers/commit/89ab1d9d588bcac74b7186b7bd8170c3c4df8242))
7
+
8
+ ## [2.43.5](https://github.com/danielvm-git/bigpowers/compare/v2.43.4...v2.43.5) (2026-07-02)
9
+
10
+
11
+ ### Bug Fixes
12
+
13
+ * **ci:** trim quick-fix SKILL.md to 115 lines (cap 120) ([10d4105](https://github.com/danielvm-git/bigpowers/commit/10d41052db02367938223f15c983217a5f45de8a))
14
+
1
15
  ## [2.43.4](https://github.com/danielvm-git/bigpowers/compare/v2.43.3...v2.43.4) (2026-07-02)
2
16
 
3
17
 
package/CLAUDE.md CHANGED
@@ -4,7 +4,7 @@ Read CONVENTIONS.md before any GitHub or git operation.
4
4
 
5
5
  ## Project
6
6
 
7
- bigpowers — 61 agent skills for spec-driven, test-first software development by solo developers.
7
+ bigpowers — agent skills for spec-driven, test-first software development by solo developers (skill count and catalog are auto-generated in `SKILL-INDEX.md`; never hardcode the count in docs).
8
8
  Stack: Markdown / Bash (documentation-based; skills integrate with Claude Code, Cursor, Gemini CLI)
9
9
 
10
10
  ## Commands
@@ -21,11 +21,11 @@ Stack: Markdown / Bash (documentation-based; skills integrate with Claude Code,
21
21
 
22
22
  ## Architecture
23
23
 
24
- Collection of 61 verb-noun skills, each with a SKILL.md source file and supporting documentation. Runtime specs live in `specs/state.yaml`, `specs/release-plan.yaml`, and `specs/execution-status.yaml`; intent in `specs/product/`; epic shards in `specs/epics/`. The sync-skills.sh script auto-generates artifacts for Cursor (.cursor/rules) and Gemini CLI (.gemini/extensions/bigpowers/) from SKILL.md sources. All planning output goes to specs/ at the project root.
24
+ Collection of verb-noun skills under `skills/`, each with a SKILL.md source file and supporting documentation. Runtime specs live in `specs/state.yaml`, `specs/release-plan.yaml`, and `specs/execution-status.yaml`; intent in `specs/product/`; epic shards in `specs/epics/`. The sync-skills.sh script auto-generates artifacts for Cursor (.cursor/rules) and Gemini CLI (.gemini/extensions/bigpowers/) from SKILL.md sources. All planning output goes to specs/ at the project root.
25
25
 
26
26
  ## Conventions
27
27
 
28
- - Skill directories use verb-noun naming (two words, kebab-case)
28
+ - Skill directories under `skills/` use verb-noun naming (two words, kebab-case)
29
29
  - Every skill has a single SKILL.md file as its source of truth
30
30
  - All planning/spec output goes to specs/ at project root
31
31
  - Artifacts in .cursor/rules and .gemini/ are auto-generated; edit SKILL.md, not artifacts
package/CONTRIBUTING.md CHANGED
@@ -85,7 +85,7 @@ npm run sync
85
85
 
86
86
  ```
87
87
  bigpowers/
88
- ├── [skill-name]/ # Each skill has its own directory with SKILL.md
88
+ ├── skills/[skill-name]/ # Each skill has its own directory with SKILL.md
89
89
  ├── scripts/ # Install, sync, validation, and compliance scripts
90
90
  ├── specs/ # YAML cockpit — state.yaml, release-plan.yaml, epics/
91
91
  ├── docs/ # Guides and references
package/CONVENTIONS.md CHANGED
@@ -202,7 +202,7 @@ The agent implements defensive code only for categories explicitly listed here.
202
202
 
203
203
  ## Skill Naming — Conventions and Exceptions
204
204
 
205
- All skill directories use a two-word `verb-noun` kebab-case pair (ADR-0001). Grep for any skill
205
+ All skill directories under `skills/` use a two-word `verb-noun` kebab-case pair (ADR-0001). Grep for any skill
206
206
  name must return < 5 results across the repo.
207
207
 
208
208
  **Documented exceptions** (adjective-noun retained for clarity; renaming would reduce usability):
@@ -212,5 +212,6 @@ name must return < 5 results across the repo.
212
212
  | `terse-mode` | adjective-noun | `enable-terse` implies a toggle; `terse-mode` names a mode state |
213
213
  | `visual-dashboard` | adjective-noun | `view-dashboard` implies read-only; `show-dashboard` collides with `show` verbs |
214
214
  | `deploy` | single verb | Well-known DevOps single-word concept; renames like `deploy-app` or `deploy-service` are redundant since deploy always targets an application |
215
+ | `grill-with-docs` | three-word verb-prep-noun | Variant of `grill-me`; the `-with-docs` suffix is the distinguishing feature — collapsing it would hide the doc-grounded contract |
215
216
 
216
217
  Any new exception requires an entry in this table before the skill is published.
package/README.md CHANGED
@@ -1,108 +1,121 @@
1
- # bigpowers
1
+ # bigpowers — Best-in-Class Agentic Skills
2
2
 
3
3
  ![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)
4
+ ![npm version](https://img.shields.io/npm/v/bigpowers.svg)
5
+ ![Skills](https://img.shields.io/badge/skills-72-brightgreen.svg)
4
6
 
5
- ![npm version](https://img.shields.io/badge/npm-v2.43.2-blue.svg)
7
+ **Agent skills synthesizing 17 years of software engineering discipline — from Clean Code to AI-native architecture — into a single, prescriptive methodology for solo developers.**
6
8
 
7
- ![Skills](https://img.shields.io/badge/skills-72-brightgreen.svg)
9
+ `bigpowers` provides a prescriptive, vertical-slice methodology for building software with AI agents (Claude Code, Gemini CLI, Cursor, pi). It bridges the gap between raw LLM capabilities and professional engineering standards.
10
+
11
+ It is not a random collection of best practices. It is a chronological layer cake of ideas — each wave of thinking (Uncle Bob → Ousterhout → Karpathy → Wasowski → Akita) builds on and resolves tensions from the last, culminating in a 6-phase lifecycle with hard gates, a 94% quality threshold, and a YAML cockpit (`specs/state.yaml`) that keeps both human and agent aligned across sessions.
12
+
13
+ Published on npm: [bigpowers](https://www.npmjs.com/package/bigpowers). The skill count in the badge above is stamped automatically by `sync-skills.sh`; the canonical catalog is [`SKILL-INDEX.md`](SKILL-INDEX.md).
14
+
15
+ ---
16
+
17
+ ## 🗺 How to Read This README
8
18
 
9
- > 72 agent skills synthesizing 17 years of software engineering discipline into a prescriptive methodology for solo developers.
19
+ This README is a guided path, not a wall of reference. Start where you are:
10
20
 
11
- `bigpowers` is not a random collection of best practices. It is a highly opinionated, chronological layer cake of ideas, combining classical software craftsmanship with modern AI-native architecture.
21
+ | You want to… | Go to |
22
+ |:---|:---|
23
+ | Try it in 30 seconds | [Quick Start](#-quick-start) |
24
+ | Understand what it actually does | [Features](#-features) and [The v2.0.0 Lifecycle](#-the-v200-lifecycle) |
25
+ | Learn the ideas behind it | [Philosophical Stack](#-philosophical-stack--how-these-ideas-concatenate) |
26
+ | Look something up | [Hierarchy of Truth](#-hierarchy-of-truth) and [Project Structure](#-project-structure) |
27
+ | Wire it into pi or MCP | [pi Support](#-pi-support) and [MCP Server](#-mcp-server-model-context-protocol) |
28
+ | Contribute or hack on it | [Development](#-development) and [Contributing](#-contributing) |
12
29
 
13
- It provides a 6-phase lifecycle with hard gates, a 94% quality threshold, and a YAML cockpit (`specs/state.yaml`) that keeps both human and AI agents perfectly aligned across complex software projects. By enforcing strict boundaries and verifiable outcomes, it allows solo developers to orchestrate multi-agent workflows with predictable, high-quality results.
30
+ After installing, ask your agent to run the `using-bigpowers` skill — it is the one-time bootstrap that explains the lifecycle and tells you which skill to call first for your situation.
14
31
 
15
- ## Prerequisites
32
+ ---
16
33
 
17
- - **Runtime**: Node.js v14+
18
- - **Environment**: Bash (required for all internal scripts)
19
- - **Tooling**: jq (highly recommended for configuration)
20
- - **AI Tools**: Claude Code, Gemini CLI, Cursor, or pi
34
+ ## 🚀 Quick Start
21
35
 
22
- ## Installation
36
+ ### npm (recommended)
23
37
 
24
38
  ```bash
25
- # One-shot setup: downloads, syncs artifacts, and links skills
39
+ # One-shot setup — downloads, syncs artifacts, and links skills to your tools
26
40
  npx bigpowers
27
41
 
28
- # Or install globally
42
+ # Or install globally and run the setup command anytime
29
43
  npm install -g bigpowers
30
44
  bigpowers
31
45
  ```
32
46
 
33
- ## Usage
47
+ Both commands sync skill artifacts and link them to Claude Code, Gemini CLI, and Cursor (see [Prerequisites](#-prerequisites)).
48
+
49
+ ### From source (contributors)
34
50
 
35
51
  ```bash
36
- # Update and re-sync your local skills
37
- npm update -g bigpowers
38
- bigpowers
52
+ git clone https://github.com/danielvm-git/bigpowers.git && cd bigpowers
53
+ npm install # runs postinstall: sync + link
54
+ # or manually:
55
+ bash scripts/install.sh
56
+ npm run sync
39
57
  ```
40
58
 
41
- For deep usage, integrate the generated skills directly into your favorite AI tool (Claude Code, Gemini CLI, Cursor). Use the provided MCP Server to expose skills dynamically:
59
+ ---
42
60
 
43
- ```bash
44
- node scripts/mcp-server.js
45
- ```
61
+ ## 🛠 Prerequisites
62
+
63
+ - **Bash**: Required for all scripts.
64
+ - **Node.js**: v14+ (required for npm/npx).
65
+ - **jq**: (Highly Recommended) Used for robust configuration of tool settings.
66
+ - **AI Tools**: One or more of:
67
+ - [Claude Code](https://claude.ai/code)
68
+ - [Gemini CLI](https://github.com/google/gemini-cli)
69
+ - [Cursor](https://cursor.sh/)
70
+ - [pi](https://pi.dev/) — coding agent harness
46
71
 
47
- ## Features
72
+ ---
48
73
 
49
- - **72 Purpose-Built Skills**: From `survey-context` to `develop-tdd`, each skill is a targeted tool for a specific phase of development.
74
+ ## ✨ Features
75
+
76
+ - **Purpose-Built Skills**: From `survey-context` to `develop-tdd`, each skill is a targeted tool for a specific phase of development. See [`SKILL-INDEX.md`](SKILL-INDEX.md) for the full auto-generated catalog.
50
77
  - **Spec-Driven Cockpit**: Uses `specs/state.yaml` and `release-plan.yaml` to maintain state across agent sessions, preventing context drift.
51
78
  - **Native IDE Support**: Automatically generates configurations for Cursor (`.cursor/rules`), Gemini CLI, and pi.
52
79
  - **Model Context Protocol (MCP)**: Dynamic tool discovery and invocation via the included MCP server.
53
80
  - **Built-in Quality Gates**: Strict verification standards (e.g., F.I.R.S.T tests, BCP accounting) enforced before any code is merged.
54
81
 
55
- 🏗 The v2.0.0 Lifecycle
82
+ ---
56
83
 
57
- Every project follows the orchestrate-project 6-phase model (full SOP: docs/[WORKFLOW-SOP-v2.md](http://WORKFLOW-SOP-v2.md)):
84
+ ## 🏗 The v2.0.0 Lifecycle
58
85
 
59
- ONE TIME seed-conventions ([CLAUDE.md](http://CLAUDE.md), .claude/, .gemini/, agents/, skill sync)
86
+ Every project follows the **orchestrate-project 6-phase model** (full SOP: [`docs/WORKFLOW-SOP-v2.md`](docs/WORKFLOW-SOP-v2.md)):
60
87
 
88
+ ```
89
+ ONE TIME seed-conventions (CLAUDE.md, .claude/, .gemini/, agents/, skill sync)
61
90
  ↓
62
-
63
91
  ONCE/PROJECT orchestrate-project
64
-
65
92
  │
66
-
67
93
  ├─ Ph1 DISCOVER survey-context, research-first, elaborate-spec
68
-
69
94
  ├─ Ph2 ELABORATE model-domain, grill-me, define-language, deepen-architecture
70
-
71
95
  ├─ Ph3 PLAN scope-work, slice-tasks, plan-work → release-plan.yaml (BCP baseline)
72
-
73
96
  ├─ Ph4 BUILD build-epic × N stories
74
-
75
97
  │
76
-
77
98
  │ Per story — 8-step build-epic cycle:
78
-
79
99
  │ 1. survey-context ← stamps story_start in state.yaml
80
-
81
100
  │ 2. plan-work ← [BCP N] tasks + verify: commands
82
-
83
101
  │ 3. kickoff-branch ← worktree + feature branch
84
-
85
102
  │ 4. develop-tdd ← RED → GREEN → REFACTOR
86
-
87
103
  │ 5. verify-work ← UAT gate
88
-
89
104
  │ 6. audit-code ← quality gate ≥ 94%
90
-
91
105
  │ 7. commit-message ← Conventional Commits + semver
92
-
93
106
  │ 8. release-branch ← land to main; writes story_end + cycle-times.yaml
94
-
95
107
  │
96
-
97
108
  ├─ Ph5 VERIFY run-evals, verify-work (project-level)
98
-
99
109
  └─ Ph6 RELEASE semantic-release → v1.0.0 MVP tag
110
+ ```
100
111
 
101
- Semver: projects start at 0.0.0-β; each feat: story → minor bump; developer declares MVP → 1.0.0.
112
+ **Semver:** projects start at `0.0.0-β`; each `feat:` story → minor bump; developer declares MVP → `1.0.0`.
102
113
 
103
- BCP accounting: every task labeled [BCP N]; story total in state.yaml; BCP/hr logged to specs/metrics/cycle-times.yaml.
114
+ **BCP accounting:** every task labeled `[BCP N]`; story total in `state.yaml`; BCP/hr logged to `specs/metrics/cycle-times.yaml`.
104
115
 
105
- next_skill signaling: each critical-path skill writes [handoff.next](http://handoff.next)_skill to state.yaml. Call survey-context after any interruption to resume exactly where you left off.
116
+ **next_skill signaling:** each critical-path skill writes `handoff.next_skill` to `state.yaml`. Call `survey-context` after any interruption to resume exactly where you left off.
117
+
118
+ ---
106
119
 
107
120
  ## 🧠 Philosophical Stack — How These Ideas Concatenate
108
121
 
@@ -110,96 +123,174 @@ next_skill signaling: each critical-path skill writes [handoff.next](http://hand
110
123
 
111
124
  ![Philosophy Diagram](docs/images/philosophy_diagram.jpg)
112
125
 
113
-
114
- | Era | Source | Contribution | Tension Resolved |
115
- | :------------- | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :---------------------------------------------------------------------------------- | :-------------------------------------------------------------------------------- |
116
- | **2008** | [Uncle Bob](https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882) (Clean Code) | SRP, Boy Scout Rule, F.I.R.S.T. tests, intention-revealing names | — (foundation) |
117
- | **2018** | [Ousterhout](https://www.amazon.com/Philosophy-Software-Design-John-Ousterhout/dp/1732102201) (*A Philosophy of Software Design*) | Deep modules, information hiding, define errors out of existence | Small functions alone create shallow modules with bloated interfaces |
118
- | **2023–24** | [Karpathy](https://github.com/multica-ai/andrej-karpathy-skills), [Superpowers](https://github.com/obra/superpowers), [Pocock](https://github.com/mattpocock/skills) | Think-first planning, verb-noun skill architecture, zoom-out strategy | Raw LLMs have no discipline — they need orchestration, not raw prompting |
119
- | **2024** | [Wasowski](https://medium.com/@wasowski.jarek/sdd-writing-specifications-for-ai-bdd-as-the-missing-link-spec-driven-development-ad1b540b7f75) (SDD), [BCP](https://github.com/flow-ciandt/bcp-agent) | Specs as the human-agent interface; business complexity as a pre-build sizing unit | Agents drift without a verifiable spec — BDD Gherkin closes the loop |
120
- | **2026** | [Akita](https://akitaonrails.com/2026/04/20/clean-code-para-agentes-de-ia/) (*Clean Code for AI Agents*) | Grep-ability, structured JSON logging, token economy, remediation hints in errors | Uncle Bob's rules were written for humans — agents need different code hygiene |
121
- | **Synthesis** | BMAD + GSD (self-authored) | 6-phase lifecycle, hard gates, 94% quality threshold, `specs/state.yaml` cockpit | All the above are principles; bigpowers turns them into an executable discipline |
122
-
126
+ | Era | Source | Contribution | Tension Resolved |
127
+ |:---|:---|:---|:---|
128
+ | **2008** | [Uncle Bob](https://www.amazon.com/Clean-Code-Handbook-Software-Craftsmanship/dp/0132350882) (Clean Code) | SRP, Boy Scout Rule, F.I.R.S.T. tests, intention-revealing names | — (foundation) |
129
+ | **2018** | [Ousterhout](https://www.amazon.com/Philosophy-Software-Design-John-Ousterhout/dp/1732102201) (*A Philosophy of Software Design*) | Deep modules, information hiding, define errors out of existence | Small functions alone create shallow modules with bloated interfaces |
130
+ | **2023–24** | [Karpathy](https://github.com/multica-ai/andrej-karpathy-skills), [Superpowers](https://github.com/obra/superpowers), [Pocock](https://github.com/mattpocock/skills) | Think-first planning, verb-noun skill architecture, zoom-out strategy | Raw LLMs have no discipline — they need orchestration, not raw prompting |
131
+ | **2024** | [Wasowski](https://medium.com/@wasowski.jarek/sdd-writing-specifications-for-ai-bdd-as-the-missing-link-spec-driven-development-ad1b540b7f75) (SDD), [BCP](https://github.com/flow-ciandt/bcp-agent) | Specs as the human-agent interface; business complexity as a pre-build sizing unit | Agents drift without a verifiable spec — BDD Gherkin closes the loop |
132
+ | **2026** | [Akita](https://akitaonrails.com/2026/04/20/clean-code-para-agentes-de-ia/) (*Clean Code for AI Agents*) | Grep-ability, structured JSON logging, token economy, remediation hints in errors | Uncle Bob's rules were written for humans — agents need different code hygiene |
133
+ | **Synthesis** | BMAD + GSD (self-authored) | 6-phase lifecycle, hard gates, 94% quality threshold, `specs/state.yaml` cockpit | All the above are principles; bigpowers turns them into an executable discipline |
123
134
 
124
135
  ### How to see the concatenation in action
125
136
 
126
137
  Each philosophical pillar has a corresponding Gherkin `.feature` file in [`specs/verifications/features/`](specs/verifications/features/) that empirically proves compliance:
127
138
 
128
-
129
- | Pillar | Verification |
130
- | :----------------------- | :------------------------ |
131
- | Classical Craftsmanship | `cleancode.feature` |
132
- | Complexity Management | `pocock.feature` |
133
- | Behavioral Integrity | `karpathy.feature` |
139
+ | Pillar | Verification |
140
+ |:---|:---|
141
+ | Classical Craftsmanship | `cleancode.feature` |
142
+ | Complexity Management | `pocock.feature` |
143
+ | Behavioral Integrity | `karpathy.feature` |
134
144
  | Spec-Driven Development | Implicit in SDD workflow |
135
- | Agentic Standard | `akita.feature` |
136
- | Project Conventions | `conventions.feature` |
137
- | Original Baseline | `superpowers.feature` |
145
+ | Agentic Standard | `akita.feature` |
146
+ | Project Conventions | `conventions.feature` |
147
+ | Original Baseline | `superpowers.feature` |
148
+
149
+ Run `npm run compliance` to audit all features. Score < 94% = hard stop.
150
+
151
+ ---
152
+
153
+ ## 📖 Hierarchy of Truth
154
+
155
+ | Level | Document | Responsibility |
156
+ | :--- | :--- | :--- |
157
+ | **Vision** | `docs/PRINCIPLES.md` | Philosophical foundations and evolution. |
158
+ | **Context** | `specs/tech-architecture/TECH_STACK_LATEST.md` | Tech stack, architecture, and domain notes. |
159
+ | **Scope** | `specs/product/SCOPE_LATEST.yaml` | In-scope / out-of-scope and success criteria. |
160
+ | **Vision** | `specs/product/VISION_LATEST.yaml` | North star and initiative success criteria. |
161
+ | **Decisions** | `specs/adr/` | Architectural Decision Records (irreversible choices). |
162
+ | **Roadmap** | `specs/release-plan.yaml` + `specs/epics/` | WSJF-prioritized epics and stories with BCP baseline. |
163
+ | **Current** | `specs/state.yaml` | Session flow, active epic, `handoff.next_skill`, timestamps. |
164
+ | **Metrics** | `specs/metrics/cycle-times.yaml` | Per-story BCPs, cycle minutes, BCP/hr (v2.0.0). |
165
+ | **Index** | `SKILL-INDEX.md` | Canonical list of all active skills (auto-generated). |
166
+ | **Style** | `CONVENTIONS.md` | Coding, testing, and naming standards. |
138
167
 
168
+ ---
139
169
 
140
- Run `npm run compliance` to audit all features. Score &lt; 94% = hard stop.
170
+ ## 📁 Project Structure
141
171
 
172
+ - `skills/[skill-name]/`: Source files for each of the 72 skills.
173
+ - `scripts/`: Installation, syncing, and compliance tools.
174
+ - `specs/`: YAML cockpit — `state.yaml`, `release-plan.yaml`, `epics/`, `execution-status.yaml`, `requirements/`.
175
+ - `specs/metrics/`: Cycle-time ledger (`cycle-times.yaml`) — per-story BCPs, timestamps, BCP/hr (v2.0.0).
176
+ - `dashboard/`: Live monitoring tool — TUI (`npm run dashboard`) and web (`npm run dashboard:web`, port 7742).
177
+ - `docs/`: Guides including `WORKFLOW-SOP-v2.md` (full SDLC SOP) and `using-bigpowers.md`.
178
+ - `docs/references/`: Theoretical foundations (Uncle Bob, Ousterhout, Karpathy, etc.).
142
179
 
180
+ ---
143
181
 
144
- 🔧 MCP Server (Model Context Protocol)
182
+ ## 🔌 pi Support
145
183
 
146
- bigpowers ships an MCP server that exposes all skills as callable MCP tools. Agents can discover and invoke skills dynamically instead of relying on a static system prompt.
184
+ bigpowers generates pi Agent Skills and prompt templates alongside Cursor and Gemini artifacts via `sync-skills.sh`.
147
185
 
148
- Start the server
186
+ ### Install as a pi package
149
187
 
188
+ ```bash
189
+ # Clone and sync to generate pi artifacts
190
+ cd bigpowers
191
+ bash scripts/sync-skills.sh
192
+
193
+ # Install from local path as a pi package
194
+ pi install .
195
+
196
+ # Or install as a pi npm package (once published with pi-package keyword)
197
+ pi install npm:bigpowers
198
+ ```
199
+
200
+ **What you get:**
201
+ - **pi skills** in `.pi/skills/` (one per SKILL.md) — loaded automatically into pi's system prompt as `<available_skills>`
202
+ - **pi prompt templates** in `.pi/prompts/` — slash commands like `/survey-context`, `/plan-work`
203
+ - **pi package manifest** in `.pi/package.json` — enables `pi install` with auto-discovery
204
+
205
+ Skills are loaded on-demand via progressive disclosure: only descriptions are always in context; the full SKILL.md loads when the agent reads it. Prompt templates expand in pi's editor with autocomplete.
206
+
207
+ ## 🔧 MCP Server (Model Context Protocol)
208
+
209
+ bigpowers **includes** an MCP server (`scripts/mcp-server.js`) that exposes the skill catalog as callable MCP tools, so agents can discover and invoke skills dynamically instead of relying on a static system prompt. It is not active until you register it with your agent — see below.
210
+
211
+ ### Start the server
212
+
213
+ ```bash
150
214
  node scripts/mcp-server.js
215
+ ```
151
216
 
152
- Add to Claude Code
217
+ ### Add to Claude Code
153
218
 
219
+ ```bash
154
220
  claude mcp add bigpowers node /path/to/bigpowers/scripts/mcp-server.js
221
+ ```
155
222
 
156
- Or add manually to .claude/settings.json:
223
+ Or add manually to `.claude/settings.json`:
157
224
 
225
+ ```json
158
226
  {
159
-
160
227
  "mcpServers": {
161
-
162
228
  "bigpowers": {
163
-
164
229
  "command": "node",
165
-
166
230
  "args": ["/path/to/bigpowers/scripts/mcp-server.js"]
167
-
168
231
  }
169
-
170
232
  }
171
-
172
233
  }
234
+ ```
173
235
 
174
- Available MCP tools
236
+ ### Available MCP tools
175
237
 
176
- Tool Description
238
+ | Tool | Description |
239
+ |------|-------------|
240
+ | `bigpowers_list_skills` | List all skills with name, description, phase. Optional `phase` filter. |
241
+ | `bigpowers_get_skill` | Get full SKILL.md content for any skill by name. |
242
+ | `bigpowers_search_skills` | Keyword/semantic search — returns ranked matches for a query. |
243
+ | `bigpowers_get_state` | Get current `specs/state.yaml` (active flow, epic, step). |
244
+ | `bigpowers_invoke_skill` | Get skill instructions with optional context for agent invocation. |
177
245
 
178
- bigpowers_list_skills List all 70 skills with name, description, phase. Optional phase filter.
246
+ ---
179
247
 
180
- bigpowers_get_skill Get full [SKILL.md](http://SKILL.md) content for any skill by name.
248
+ ## 🔄 Maintenance (Update & Uninstall)
181
249
 
182
- bigpowers_search_skills Keyword/semantic search — returns ranked matches for a query.
250
+ ### Update
183
251
 
184
- bigpowers_get_state Get current specs/state.yaml (active flow, epic, step).
252
+ **npm install:**
185
253
 
186
- bigpowers_invoke_skill Get skill instructions with optional context for agent invocation.
254
+ ```bash
255
+ npm update -g bigpowers
256
+ bigpowers # re-sync and refresh symlinks
257
+ ```
187
258
 
188
- Tool Description
259
+ **git clone:**
189
260
 
190
- bigpowers_list_skills List all 72 skills with name, description, phase. Optional phase filter.
261
+ ```bash
262
+ git pull
263
+ npm run sync
264
+ ```
265
+
266
+ *Install uses symlinks — re-running setup refreshes links without duplicating files.*
267
+
268
+ ### Uninstall
191
269
 
192
- bigpowers_get_skill Get full [SKILL.md](http://SKILL.md) content for any skill by name.
270
+ **npm install:**
271
+
272
+ ```bash
273
+ bash "$(npm root -g)/bigpowers/scripts/install.sh" --uninstall
274
+ npm uninstall -g bigpowers
275
+ ```
193
276
 
194
- bigpowers_search_skills Keyword/semantic search — returns ranked matches for a query.
277
+ **git clone:**
195
278
 
196
- bigpowers_get_state Get current specs/state.yaml (active flow, epic, step).
279
+ ```bash
280
+ bash scripts/install.sh --uninstall
281
+ ```
197
282
 
198
- bigpowers_invoke_skill Get skill instructions with optional context for agent invocation.
283
+ ### Reinstall
199
284
 
285
+ ```bash
286
+ npx bigpowers
287
+ # or, if installed globally:
288
+ bigpowers
289
+ ```
200
290
 
291
+ ---
201
292
 
202
- ## Development
293
+ ## 🧪 Development
203
294
 
204
295
  ```bash
205
296
  git clone https://github.com/danielvm-git/bigpowers.git
@@ -209,7 +300,7 @@ npm install
209
300
  npm run sync
210
301
  ```
211
302
 
212
- ## Tests
303
+ ### Tests
213
304
 
214
305
  ```bash
215
306
  # Run compliance verification against Gherkin features
@@ -220,7 +311,9 @@ npm run doctrine
220
311
  npm run validate-specs
221
312
  ```
222
313
 
223
- ## Contributing
314
+ ---
315
+
316
+ ## 🤝 Contributing
224
317
 
225
318
  1. Fork the repo.
226
319
  2. Create a feature branch (`git checkout -b feature/my-thing`).
@@ -229,16 +322,18 @@ npm run validate-specs
229
322
  5. Push to the branch (`git push origin feature/my-thing`).
230
323
  6. Open a Pull Request.
231
324
 
232
- ## Changelog
325
+ ### Changelog
233
326
 
234
327
  See [CHANGELOG.md](CHANGELOG.md) or [Releases](https://github.com/danielvm-git/bigpowers/releases).
235
328
 
236
- ## Links
329
+ ### Links
330
+
331
+ - **Repository**: https://github.com/danielvm-git/bigpowers
332
+ - **Issue Tracker**: https://github.com/danielvm-git/bigpowers/issues
237
333
 
238
- - **Repository**: [https://github.com/danielvm-git/bigpowers](https://github.com/danielvm-git/bigpowers)
239
- - **Issue Tracker**: [https://github.com/danielvm-git/bigpowers/issues](https://github.com/danielvm-git/bigpowers/issues)
334
+ ---
240
335
 
241
- ## Acknowledgements
336
+ ## 🙏 Acknowledgements
242
337
 
243
338
  This project is a synthesis of decades of software engineering thought. It would not be possible without the foundational work of the authors who wrote the inspirational articles and books that shaped this methodology:
244
339
 
@@ -248,6 +343,11 @@ This project is a synthesis of decades of software engineering thought. It would
248
343
  - **Jarek Wasowski** for identifying Spec-Driven Development (SDD) as the missing link for AI agents.
249
344
  - **AkitaOnRails** for adapting classical clean code principles to the reality of the AI token economy.
250
345
 
251
- ## License
346
+ ---
347
+
348
+ ## 📄 License
349
+
350
+ This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
252
351
 
253
- MIT — see [LICENSE](LICENSE) for details.
352
+ ---
353
+ *“Simplicity is the ultimate sophistication, but integrity is the ultimate requirement.”*
package/SKILL-INDEX.md CHANGED
@@ -3,7 +3,6 @@
3
3
  > **DO NOT EDIT** — This file is auto-generated by `scripts/generate-skill-index.sh`.
4
4
  > Edit `SKILL.md` source files or `skills-lock.json` instead. Run `bash scripts/sync-skills.sh` to regenerate.
5
5
 
6
- **Generated:** 2026-07-02T15:59:32Z
7
6
  **Skills:** 72
8
7
 
9
8
  ---
@@ -160,5 +159,5 @@ All skills follow `verb-noun` kebab-case (ADR-0001). Documented exceptions:
160
159
  1. Run `bash scripts/sync-skills.sh` to regenerate this file and all artifacts.
161
160
  2. Or run `bash scripts/generate-skill-index.sh` to only regenerate this index.
162
161
 
163
- → verify: `find . -maxdepth 2 -name "SKILL.md" | grep -v ".git\|.cursor\|.gemini" | wc -l`
162
+ → verify: `find . skills -maxdepth 2 -name "SKILL.md" 2>/dev/null | grep -v ".git\|.cursor\|.gemini\|.pi" | sort -u | wc -l`
164
163
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bigpowers",
3
- "version": "2.43.4",
3
+ "version": "2.44.0",
4
4
  "description": "72 agent skills synthesizing 17 years of software engineering discipline into a prescriptive methodology for solo developers",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -2,6 +2,9 @@
2
2
  # add-model-frontmatter.sh — one-time helper; idempotent model: injection
3
3
  set -euo pipefail
4
4
  REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
5
+ # SKILLS_ROOT: use skills/ when it exists, fall back to repo root
6
+ SKILLS_ROOT="$REPO_ROOT"
7
+ [[ -d "$REPO_ROOT/skills" ]] && SKILLS_ROOT="$REPO_ROOT/skills"
5
8
 
6
9
  # Bash 3.2-compatible model mapping (no declare -A)
7
10
  get_model() {
@@ -12,7 +15,7 @@ get_model() {
12
15
  esac
13
16
  }
14
17
 
15
- for skill_dir in "$REPO_ROOT"/*/; do
18
+ for skill_dir in "$SKILLS_ROOT"/*/; do
16
19
  skill_md="$skill_dir/SKILL.md"
17
20
  [[ -f "$skill_md" ]] || continue
18
21
  name=$(basename "$skill_dir")