bigpowers 2.84.0 → 2.85.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.
- package/.agents/skills/audit-code/SKILL.md +4 -7
- package/.agents/skills/craft-skill/SKILL.md +21 -4
- package/.agents/skills/grill-me/SKILL.md +12 -0
- package/.agents/skills/grill-with-docs/SKILL.md +12 -0
- package/.agents/skills/request-review/SKILL.md +1 -0
- package/.agents/skills/seed-conventions/SKILL.md +21 -4
- package/.agents/skills/stocktake-skills/SKILL.md +2 -0
- package/.agents/skills/wire-ci/SKILL.md +164 -181
- package/.codebuddy/skills/audit-code/SKILL.md +4 -7
- package/.codebuddy/skills/craft-skill/SKILL.md +21 -4
- package/.codebuddy/skills/grill-me/SKILL.md +12 -0
- package/.codebuddy/skills/grill-with-docs/SKILL.md +12 -0
- package/.codebuddy/skills/request-review/SKILL.md +1 -0
- package/.codebuddy/skills/seed-conventions/SKILL.md +21 -4
- package/.codebuddy/skills/stocktake-skills/SKILL.md +2 -0
- package/.codebuddy/skills/wire-ci/SKILL.md +164 -181
- package/.codex/skills/audit-code/SKILL.md +4 -7
- package/.codex/skills/craft-skill/SKILL.md +21 -4
- package/.codex/skills/grill-me/SKILL.md +12 -0
- package/.codex/skills/grill-with-docs/SKILL.md +12 -0
- package/.codex/skills/request-review/SKILL.md +1 -0
- package/.codex/skills/seed-conventions/SKILL.md +21 -4
- package/.codex/skills/stocktake-skills/SKILL.md +2 -0
- package/.codex/skills/wire-ci/SKILL.md +164 -181
- package/.hermes/skills/audit-code/SKILL.md +4 -7
- package/.hermes/skills/craft-skill/SKILL.md +21 -4
- package/.hermes/skills/grill-me/SKILL.md +12 -0
- package/.hermes/skills/grill-with-docs/SKILL.md +12 -0
- package/.hermes/skills/request-review/SKILL.md +1 -0
- package/.hermes/skills/seed-conventions/SKILL.md +21 -4
- package/.hermes/skills/stocktake-skills/SKILL.md +2 -0
- package/.hermes/skills/wire-ci/SKILL.md +164 -181
- package/.kilocode/rules/audit-code.md +4 -7
- package/.kilocode/rules/craft-skill.md +21 -4
- package/.kilocode/rules/grill-me.md +12 -0
- package/.kilocode/rules/grill-with-docs.md +12 -0
- package/.kilocode/rules/request-review.md +1 -0
- package/.kilocode/rules/seed-conventions.md +21 -4
- package/.kilocode/rules/stocktake-skills.md +2 -0
- package/.kilocode/rules/wire-ci.md +164 -181
- package/.mimocode/skills/audit-code/SKILL.md +4 -7
- package/.mimocode/skills/craft-skill/SKILL.md +21 -4
- package/.mimocode/skills/grill-me/SKILL.md +12 -0
- package/.mimocode/skills/grill-with-docs/SKILL.md +12 -0
- package/.mimocode/skills/request-review/SKILL.md +1 -0
- package/.mimocode/skills/seed-conventions/SKILL.md +21 -4
- package/.mimocode/skills/stocktake-skills/SKILL.md +2 -0
- package/.mimocode/skills/wire-ci/SKILL.md +164 -181
- package/.pi/package.json +1 -1
- package/.pi/prompts/audit-code.md +4 -7
- package/.pi/prompts/craft-skill.md +21 -4
- package/.pi/prompts/grill-me.md +12 -0
- package/.pi/prompts/grill-with-docs.md +12 -0
- package/.pi/prompts/request-review.md +1 -0
- package/.pi/prompts/seed-conventions.md +21 -4
- package/.pi/prompts/stocktake-skills.md +2 -0
- package/.pi/prompts/wire-ci.md +164 -181
- package/.pi/skills/audit-code/SKILL.md +4 -7
- package/.pi/skills/craft-skill/SKILL.md +21 -4
- package/.pi/skills/grill-me/SKILL.md +12 -0
- package/.pi/skills/grill-with-docs/SKILL.md +12 -0
- package/.pi/skills/request-review/SKILL.md +1 -0
- package/.pi/skills/seed-conventions/SKILL.md +21 -4
- package/.pi/skills/stocktake-skills/SKILL.md +2 -0
- package/.pi/skills/wire-ci/SKILL.md +164 -181
- package/.trae/skills/audit-code/SKILL.md +4 -7
- package/.trae/skills/craft-skill/SKILL.md +21 -4
- package/.trae/skills/grill-me/SKILL.md +12 -0
- package/.trae/skills/grill-with-docs/SKILL.md +12 -0
- package/.trae/skills/request-review/SKILL.md +1 -0
- package/.trae/skills/seed-conventions/SKILL.md +21 -4
- package/.trae/skills/stocktake-skills/SKILL.md +2 -0
- package/.trae/skills/wire-ci/SKILL.md +164 -181
- package/.windsurf/rules/audit-code.md +4 -7
- package/.windsurf/rules/craft-skill.md +21 -4
- package/.windsurf/rules/grill-me.md +12 -0
- package/.windsurf/rules/grill-with-docs.md +12 -0
- package/.windsurf/rules/request-review.md +1 -0
- package/.windsurf/rules/seed-conventions.md +21 -4
- package/.windsurf/rules/stocktake-skills.md +2 -0
- package/.windsurf/rules/wire-ci.md +164 -181
- package/.zcode/skills/audit-code/SKILL.md +4 -7
- package/.zcode/skills/craft-skill/SKILL.md +21 -4
- package/.zcode/skills/grill-me/SKILL.md +12 -0
- package/.zcode/skills/grill-with-docs/SKILL.md +12 -0
- package/.zcode/skills/request-review/SKILL.md +1 -0
- package/.zcode/skills/seed-conventions/SKILL.md +21 -4
- package/.zcode/skills/stocktake-skills/SKILL.md +2 -0
- package/.zcode/skills/wire-ci/SKILL.md +164 -181
- package/CHANGELOG.md +19 -0
- package/README.md +14 -1
- package/SKILL-INDEX.md +84 -76
- package/package.json +1 -1
- package/scripts/generate-skill-index.sh +20 -4
- package/scripts/golden-g04-selftest.sh +19 -0
- package/scripts/land-branch.sh +22 -9
- package/scripts/lib/__pycache__/link_utils.cpython-312.pyc +0 -0
- package/scripts/lib/__pycache__/srp_engine_links.cpython-312.pyc +0 -0
- package/scripts/lib/land-branch-push.sh +106 -0
- package/scripts/validate-agentic-ste.sh +229 -0
- package/skills/audit-code/SKILL.md +4 -7
- package/skills/craft-skill/SKILL.md +22 -4
- package/skills/grill-me/SKILL.md +12 -0
- package/skills/grill-with-docs/SKILL.md +12 -0
- package/skills/request-review/SKILL.md +1 -0
- package/skills/seed-conventions/SKILL.md +21 -4
- package/skills/stocktake-skills/SKILL.md +2 -0
- package/skills/visual-dashboard/scripts/frame-template.html +1 -39
- package/skills/wire-ci/REFERENCE.md +137 -152
- package/skills/wire-ci/SKILL.md +28 -30
- package/skills-lock.json +8 -8
- package/tests/test-land-branch-protected.sh +222 -0
package/SKILL-INDEX.md
CHANGED
|
@@ -11,14 +11,14 @@
|
|
|
11
11
|
|
|
12
12
|
| Phase | Count | Skills |
|
|
13
13
|
|---|---|---|
|
|
14
|
-
| Discover |
|
|
14
|
+
| Discover | 8 | `audit-plan, elaborate-spec, find-way, map-codebase, research-first, search-skills, survey-context, using-bigpowers` |
|
|
15
15
|
| Design | 7 | `deepen-architecture, define-language, define-success, design-interface, grill-me, grill-with-docs, model-domain` |
|
|
16
16
|
| Plan | 9 | `assess-impact, change-request, plan-refactor, plan-release, plan-work, run-planning, scope-work, seed-conventions, slice-tasks` |
|
|
17
17
|
| Build | 19 | `align-grid, build-epic, craft-skill, deploy, develop-tdd, execute-plan, extract-design, guard-git, hook-commits, kickoff-branch, orchestrate-project, publish-package, quick-fix, setup-environment, smoke-test, spike-prototype, validate-contracts, wire-ci, wire-observability` |
|
|
18
|
-
| Verify |
|
|
18
|
+
| Verify | 18 | `audit-code, context7-mcp, diagnose-root, diagnose-stall, enforce-first, fix-bug, gate-trace, generate-allure-report, inspect-quality, investigate-bug, plan-tests, request-review, respond-review, run-evals, security-review, trace-requirement, validate-fix, verify-work` |
|
|
19
19
|
| Release | 2 | `commit-message, release-branch` |
|
|
20
|
-
| Sustain |
|
|
21
|
-
| **TOTAL** | **
|
|
20
|
+
| Sustain | 17 | `compose-workflow, delegate-task, dispatch-agents, edit-document, evolve-skill, harden-vps, maintain-wiki, migrate-spec, organize-workspace, reset-baseline, run-benchmark, session-state, simulate-agents, stocktake-skills, terse-mode, visual-dashboard, write-document` |
|
|
21
|
+
| **TOTAL** | **80** | |
|
|
22
22
|
|
|
23
23
|
---
|
|
24
24
|
|
|
@@ -28,78 +28,86 @@
|
|
|
28
28
|
|---|---|---|---|---|
|
|
29
29
|
| 1 | Discover | `audit-plan` | Evaluate an incoming project plan against bigpowers principles and conventions, | ✅ Active |
|
|
30
30
|
| 2 | Discover | `elaborate-spec` | Refine a rough idea into a clear, detailed specification through dialogue. Does | ✅ Active |
|
|
31
|
-
| 3 | Discover | `
|
|
32
|
-
| 4 | Discover | `
|
|
33
|
-
| 5 | Discover | `
|
|
34
|
-
| 6 | Discover | `
|
|
35
|
-
| 7 | Discover | `
|
|
36
|
-
| 8 |
|
|
37
|
-
| 9 | Design | `
|
|
38
|
-
| 10 | Design | `define-
|
|
39
|
-
| 11 | Design | `
|
|
40
|
-
| 12 | Design | `
|
|
41
|
-
| 13 | Design | `grill-
|
|
42
|
-
| 14 | Design | `
|
|
43
|
-
| 15 |
|
|
44
|
-
| 16 | Plan | `
|
|
45
|
-
| 17 | Plan | `
|
|
46
|
-
| 18 | Plan | `plan-
|
|
47
|
-
| 19 | Plan | `plan-
|
|
48
|
-
| 20 | Plan | `
|
|
49
|
-
| 21 | Plan | `
|
|
50
|
-
| 22 | Plan | `
|
|
51
|
-
| 23 | Plan | `
|
|
52
|
-
| 24 |
|
|
53
|
-
| 25 | Build | `
|
|
54
|
-
| 26 | Build | `
|
|
55
|
-
| 27 | Build | `
|
|
56
|
-
| 28 | Build | `
|
|
57
|
-
| 29 | Build | `
|
|
58
|
-
| 30 | Build | `
|
|
59
|
-
| 31 | Build | `
|
|
60
|
-
| 32 | Build | `
|
|
61
|
-
| 33 | Build | `
|
|
62
|
-
| 34 | Build | `
|
|
63
|
-
| 35 | Build | `
|
|
64
|
-
| 36 | Build | `
|
|
65
|
-
| 37 | Build | `
|
|
66
|
-
| 38 | Build | `
|
|
67
|
-
| 39 | Build | `
|
|
68
|
-
| 40 | Build | `
|
|
69
|
-
| 41 | Build | `
|
|
70
|
-
| 42 | Build | `wire-
|
|
71
|
-
| 43 |
|
|
72
|
-
| 44 | Verify | `
|
|
73
|
-
| 45 | Verify | `
|
|
74
|
-
| 46 | Verify | `
|
|
75
|
-
| 47 | Verify | `
|
|
76
|
-
| 48 | Verify | `
|
|
77
|
-
| 49 | Verify | `
|
|
78
|
-
| 50 | Verify | `
|
|
79
|
-
| 51 | Verify | `
|
|
80
|
-
| 52 | Verify | `
|
|
81
|
-
| 53 | Verify | `
|
|
82
|
-
| 54 | Verify | `
|
|
83
|
-
| 55 | Verify | `
|
|
84
|
-
| 56 |
|
|
85
|
-
| 57 |
|
|
86
|
-
| 58 |
|
|
87
|
-
| 59 |
|
|
88
|
-
| 60 |
|
|
89
|
-
| 61 |
|
|
90
|
-
| 62 |
|
|
91
|
-
| 63 |
|
|
92
|
-
| 64 | Sustain | `
|
|
93
|
-
| 65 | Sustain | `
|
|
94
|
-
| 66 | Sustain | `
|
|
95
|
-
| 67 | Sustain | `
|
|
96
|
-
| 68 | Sustain | `
|
|
97
|
-
| 69 | Sustain | `
|
|
98
|
-
| 70 | Sustain | `
|
|
99
|
-
| 71 | Sustain | `
|
|
100
|
-
| 72 | Sustain | `
|
|
101
|
-
|
|
102
|
-
|
|
31
|
+
| 3 | Discover | `find-way` | Plan a large effort as a shared map of decision tickets on an issue tracker, res | ✅ Active |
|
|
32
|
+
| 4 | Discover | `map-codebase` | "Derives the tech-stack doc from scratch by scanning the codebase — analyzes s | ✅ Active |
|
|
33
|
+
| 5 | Discover | `research-first` | Look-before-build — search registries, repo, existing skills, and web for prio | ✅ Active |
|
|
34
|
+
| 6 | Discover | `search-skills` | Find the right bigpowers skill from natural-language intent using a local lexica | ✅ Active |
|
|
35
|
+
| 7 | Discover | `survey-context` | Per-task context bootstrap — reads existing specs/ and tech-architecture docs | ✅ Active |
|
|
36
|
+
| 8 | Discover | `using-bigpowers` | One-time bootstrap that introduces the bigpowers skills system, the PMBOK lifecy | ✅ Active |
|
|
37
|
+
| 9 | Design | `deepen-architecture` | Find deepening opportunities in a codebase, informed by the domain language in s | ✅ Active |
|
|
38
|
+
| 10 | Design | `define-language` | Extract a DDD-style ubiquitous language glossary from the current conversation, | ✅ Active |
|
|
39
|
+
| 11 | Design | `define-success` | 'Convert an imperative task statement into explicit "step → verify: <cmd>" pai | ✅ Active |
|
|
40
|
+
| 12 | Design | `design-interface` | Generate multiple radically different interface designs for a module using paral | ✅ Active |
|
|
41
|
+
| 13 | Design | `grill-me` | Interactive assumption-surfacing Q&A that stress-tests a plan through relentless | ✅ Active |
|
|
42
|
+
| 14 | Design | `grill-with-docs` | Doc-grounded variant of grill-me — stress-tests plan assumptions by fetching a | ✅ Active |
|
|
43
|
+
| 15 | Design | `model-domain` | Grilling session that challenges your plan against the existing domain model, sh | ✅ Active |
|
|
44
|
+
| 16 | Plan | `assess-impact` | Analyze the blast radius of a proposed change before any code is written. Maps d | ✅ Active |
|
|
45
|
+
| 17 | Plan | `change-request` | Add a new requirement or reorder epics by WSJF against specs/release-plan.yaml a | ✅ Active |
|
|
46
|
+
| 18 | Plan | `plan-refactor` | Create a detailed refactor plan with tiny commits via user interview, then save | ✅ Active |
|
|
47
|
+
| 19 | Plan | `plan-release` | "RELEASE-INDEX BUILDER — Sequence elaborated epics into specs/release-plan.yam | ✅ Active |
|
|
48
|
+
| 20 | Plan | `plan-work` | "PLANNING SPINE STEP 3 of 3 — Plan the work: write detailed implementation tas | ✅ Active |
|
|
49
|
+
| 21 | Plan | `run-planning` | "DISCOVER-PHASE ADVANCER — Drive the discover-phase checklist (specs/planning- | ✅ Active |
|
|
50
|
+
| 22 | Plan | `scope-work` | "PLANNING SPINE STEP 1 of 3 — Scope the work: define what is in and out of sco | ✅ Active |
|
|
51
|
+
| 23 | Plan | `seed-conventions` | Generate CLAUDE.md and CONVENTIONS.md for a brand-new project through a brief in | ✅ Active |
|
|
52
|
+
| 24 | Plan | `slice-tasks` | "PLANNING SPINE STEP 2 of 3 — Slice the work: break a scoped PRD into vertical | ✅ Active |
|
|
53
|
+
| 25 | Build | `align-grid` | "Build editorial/magazine/report webpages on a GENUINE Müller-Brockmann modular | ✅ Active |
|
|
54
|
+
| 26 | Build | `build-epic` | Eight-step epic build cycle — reads state.yaml, execution-status.yaml, and one | ✅ Active |
|
|
55
|
+
| 27 | Build | `craft-skill` | Create new bigpowers skills with proper structure, progressive disclosure, and b | ✅ Active |
|
|
56
|
+
| 28 | Build | `deploy` | "Build → verify artifact → deploy → wait → smoke deployment pipeline. Pl | ✅ Active |
|
|
57
|
+
| 29 | Build | `develop-tdd` | Test-driven development with red-green-refactor loop using vertical slices. Use | ✅ Active |
|
|
58
|
+
| 30 | Build | `execute-plan` | Batch-execute tasks from the active epic capsule sequentially, with a human chec | ✅ Active |
|
|
59
|
+
| 31 | Build | `extract-design` | "Extract a Google DESIGN.md file from an HTML prototype (claude.ai/design or any | ✅ Active |
|
|
60
|
+
| 32 | Build | `guard-git` | Block dangerous git commands (push, force push, reset --hard, clean, branch -D, | ✅ Active |
|
|
61
|
+
| 33 | Build | `hook-commits` | Set up pre-commit hooks with lint-staged (Prettier), type checking, and tests in | ✅ Active |
|
|
62
|
+
| 34 | Build | `kickoff-branch` | Create a git worktree and feature branch, then verify a clean test baseline befo | ✅ Active |
|
|
63
|
+
| 35 | Build | `orchestrate-project` | Meta-skill that enforces the 6-phase core loop (discover → elaborate → plan | ✅ Active |
|
|
64
|
+
| 36 | Build | `publish-package` | "Package registry publishing for npm, crates.io, PyPI, and Homebrew. Verifies pr | ✅ Active |
|
|
65
|
+
| 37 | Build | `quick-fix` | "Streamlined fast-path for trivial data-only fixes — no TDD, no branching cere | ✅ Active |
|
|
66
|
+
| 38 | Build | `setup-environment` | Pre-install dependencies and configure tools before development work begins. Use | ✅ Active |
|
|
67
|
+
| 39 | Build | `smoke-test` | "Post-deploy health-check against a live URL. Validates HTTP status, response co | ✅ Active |
|
|
68
|
+
| 40 | Build | `spike-prototype` | Throw-away prototype for unknown problem spaces. Output is learning notes in spe | ✅ Active |
|
|
69
|
+
| 41 | Build | `validate-contracts` | "Assert data shape consistency across system boundaries — live API responses a | ✅ Active |
|
|
70
|
+
| 42 | Build | `wire-ci` | "CI pipeline setup with pre-built templates and local validation. Generates GitH | ✅ Active |
|
|
71
|
+
| 43 | Build | `wire-observability` | Add structured JSON logging, observability commands, and idempotent setup script | ✅ Active |
|
|
72
|
+
| 44 | Verify | `audit-code` | Self-review checklist for the coding agent to run before dispatching a reviewer. | ✅ Active |
|
|
73
|
+
| 45 | Verify | `context7-mcp` | Fetch current library docs via Context7 MCP instead of training data. Use when u | ✅ Active |
|
|
74
|
+
| 46 | Verify | `diagnose-root` | Run 4-phase root cause analysis — reproduce, isolate, hypothesize, verify. Use | ✅ Active |
|
|
75
|
+
| 47 | Verify | `diagnose-stall` | Diagnose why agent orchestration stopped producing progress — silent stalls in | ✅ Active |
|
|
76
|
+
| 48 | Verify | `enforce-first` | Apply the F.I.R.S.T test quality rubric (per CONVENTIONS.md §Tests) to a test s | ✅ Active |
|
|
77
|
+
| 49 | Verify | `fix-bug` | Bug fix orchestrator — active_flow fix_bug; reads specs/bugs/BUG-*.md; chains | ✅ Active |
|
|
78
|
+
| 50 | Verify | `gate-trace` | "Deterministic traceability quality gate — reads coverage matrix + blind-spot | ✅ Active |
|
|
79
|
+
| 51 | Verify | `generate-allure-report` | "Generate Allure-ready reports from bigpowers YAML metadata. Reads execution-sta | ✅ Active |
|
|
80
|
+
| 52 | Verify | `inspect-quality` | Interactive QA session where user reports bugs or issues conversationally, and t | ✅ Active |
|
|
81
|
+
| 53 | Verify | `investigate-bug` | Investigate a bug or issue by exploring the codebase to find root cause, then wr | ✅ Active |
|
|
82
|
+
| 54 | Verify | `plan-tests` | "Design a risk-scaled test architecture for an epic before implementation begins | ✅ Active |
|
|
83
|
+
| 55 | Verify | `request-review` | Dispatch a fresh reviewer agent with a clean context to critique the code after | ✅ Active |
|
|
84
|
+
| 56 | Verify | `respond-review` | Act on a reviewer agent's feedback systematically — categorize findings, apply | ✅ Active |
|
|
85
|
+
| 57 | Verify | `run-evals` | Eval-Driven Development — define capability and regression evals before buildi | ✅ Active |
|
|
86
|
+
| 58 | Verify | `security-review` | > | ✅ Active |
|
|
87
|
+
| 59 | Verify | `trace-requirement` | Link story IDs from specs/release-plan.yaml + epic capsule directories to the im | ✅ Active |
|
|
88
|
+
| 60 | Verify | `validate-fix` | Prove a fix works before declaring done — re-run the failing test, run the ful | ✅ Active |
|
|
89
|
+
| 61 | Verify | `verify-work` | Multi-phase UAT gate — cold-start smoke, build, typecheck, lint, tests, step-b | ✅ Active |
|
|
90
|
+
| 62 | Release | `commit-message` | Reviews working-tree changes, then drafts a Conventional Commits title/body and | ✅ Active |
|
|
91
|
+
| 63 | Release | `release-branch` | Make the merge/PR/keep/discard decision for a feature branch, verify coverage ga | ✅ Active |
|
|
92
|
+
| 64 | Sustain | `compose-workflow` | Chain multiple bigpowers skills into a custom workflow recipe saved in specs/. U | ✅ Active |
|
|
93
|
+
| 65 | Sustain | `delegate-task` | Delegate one complex task to a single subagent, review its work in two stages be | ✅ Active |
|
|
94
|
+
| 66 | Sustain | `dispatch-agents` | Dispatch multiple subagents in parallel on independent tasks. No waiting between | ✅ Active |
|
|
95
|
+
| 67 | Sustain | `edit-document` | Edit and improve documents by restructuring sections, improving clarity, and tig | ✅ Active |
|
|
96
|
+
| 68 | Sustain | `evolve-skill` | Benchmark-gated skill evolution — consume bigpowers-benchmark report, propose | ✅ Active |
|
|
97
|
+
| 69 | Sustain | `harden-vps` | "Harden a production Linux VPS for BigBase across three layers — BigBase app ( | ✅ Active |
|
|
98
|
+
| 70 | Sustain | `maintain-wiki` | "Agent-maintained OKF wiki — INGEST source docs, LINT for issues, QUERY across | ✅ Active |
|
|
99
|
+
| 71 | Sustain | `migrate-spec` | Detect GSD, spec-kit, or BMAD spec artifacts and transform them into bigpowers Y | ✅ Active |
|
|
100
|
+
| 72 | Sustain | `organize-workspace` | Scans the active workspace for disposable artifacts—logs, caches, stale build | ✅ Active |
|
|
101
|
+
| 73 | Sustain | `reset-baseline` | Restore the project to a known clean state between agent runs or experiments. Us | ✅ Active |
|
|
102
|
+
| 74 | Sustain | `run-benchmark` | Run skill quality benchmarks from specs/benchmarks/ definitions — N-run with/w | ✅ Active |
|
|
103
|
+
| 75 | Sustain | `session-state` | Track implementation decisions and progress in specs/state.yaml to prevent conte | ✅ Active |
|
|
104
|
+
| 76 | Sustain | `simulate-agents` | Run Mock User and Auditor agents against a feature in fresh contexts before huma | ✅ Active |
|
|
105
|
+
| 77 | Sustain | `stocktake-skills` | Sequential subagent batch audit of the bigpowers skill catalog — Quick Scan (c | ✅ Active |
|
|
106
|
+
| 78 | Sustain | `terse-mode` | Fallback ultra-compressed communication mode. Cuts token usage ~75% by dropping | ✅ Active |
|
|
107
|
+
| 79 | Sustain | `visual-dashboard` | Start a browser-based dashboard that visualizes architecture, implementation pla | ✅ Active |
|
|
108
|
+
| 80 | Sustain | `write-document` | Write, organize, and sync high-integrity technical documents using the BMAD meth | ✅ Active |
|
|
109
|
+
|
|
110
|
+
**Total: 80 active skills.**
|
|
103
111
|
|
|
104
112
|
---
|
|
105
113
|
|
package/package.json
CHANGED
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
set -euo pipefail
|
|
7
7
|
|
|
8
8
|
source "$(dirname "${BASH_SOURCE[0]}")/lib/skill-common.sh"
|
|
9
|
+
resolve_repo_root
|
|
9
10
|
|
|
10
11
|
LOCKFILE="$REPO_ROOT/skills-lock.json"
|
|
11
12
|
INDEX_FILE="$REPO_ROOT/SKILL-INDEX.md"
|
|
@@ -16,9 +17,24 @@ if [[ ! -f "$LOCKFILE" ]]; then
|
|
|
16
17
|
fi
|
|
17
18
|
|
|
18
19
|
# Phase categorization — maps each skill to a lifecycle phase
|
|
19
|
-
#
|
|
20
|
+
# Primary: reads phase: from SKILL.md frontmatter (self-maintaining)
|
|
21
|
+
# Fallback: hardcoded case statement for bash 3.2 compatibility
|
|
20
22
|
phase_of() {
|
|
21
|
-
|
|
23
|
+
local skill_name="$1"
|
|
24
|
+
local skill_file="$REPO_ROOT/skills/$skill_name/SKILL.md"
|
|
25
|
+
|
|
26
|
+
# Try frontmatter first (self-maintaining path)
|
|
27
|
+
if [[ -f "$skill_file" ]]; then
|
|
28
|
+
local phase
|
|
29
|
+
phase=$(awk '/^---$/{n++; next} n==1 && /^phase:/{gsub(/^phase:[[:space:]]*/, ""); gsub(/[[:space:]]*$/, ""); print; exit}' "$skill_file" 2>/dev/null | awk '{print toupper(substr($0,1,1)) tolower(substr($0,2))}')
|
|
30
|
+
if [[ -n "$phase" ]]; then
|
|
31
|
+
echo "$phase"
|
|
32
|
+
return
|
|
33
|
+
fi
|
|
34
|
+
fi
|
|
35
|
+
|
|
36
|
+
# Fallback: hardcoded case statement
|
|
37
|
+
case "$skill_name" in
|
|
22
38
|
# Discover
|
|
23
39
|
survey-context|research-first|search-skills|using-bigpowers|map-codebase|elaborate-spec|audit-plan) echo "Discover" ;;
|
|
24
40
|
# Design
|
|
@@ -28,11 +44,11 @@ phase_of() {
|
|
|
28
44
|
# Build
|
|
29
45
|
develop-tdd|kickoff-branch|execute-plan|build-epic|spike-prototype|craft-skill|quick-fix|setup-environment|wire-observability|wire-ci|publish-package|align-grid|orchestrate-project|guard-git|hook-commits|deploy|smoke-test|validate-contracts|extract-design) echo "Build" ;;
|
|
30
46
|
# Verify
|
|
31
|
-
verify-work|validate-fix|audit-code|enforce-first|run-evals|investigate-bug|diagnose-root|fix-bug|inspect-quality|request-review|respond-review|trace-requirement|security-review) echo "Verify" ;;
|
|
47
|
+
verify-work|validate-fix|audit-code|enforce-first|run-evals|investigate-bug|diagnose-root|fix-bug|inspect-quality|request-review|respond-review|trace-requirement|security-review|context7-mcp|diagnose-stall|gate-trace|generate-allure-report|plan-tests) echo "Verify" ;;
|
|
32
48
|
# Release
|
|
33
49
|
release-branch|commit-message) echo "Release" ;;
|
|
34
50
|
# Sustain
|
|
35
|
-
session-state|edit-document|write-document|organize-workspace|reset-baseline|stocktake-skills|evolve-skill|run-benchmark|terse-mode|delegate-task|dispatch-agents|simulate-agents|compose-workflow|migrate-spec|visual-dashboard) echo "Sustain" ;;
|
|
51
|
+
session-state|edit-document|write-document|organize-workspace|reset-baseline|stocktake-skills|evolve-skill|run-benchmark|terse-mode|delegate-task|dispatch-agents|simulate-agents|compose-workflow|migrate-spec|visual-dashboard|harden-vps|maintain-wiki) echo "Sustain" ;;
|
|
36
52
|
esac
|
|
37
53
|
}
|
|
38
54
|
|
|
@@ -116,6 +116,25 @@ if [[ -n "${lock_count:-}" && -n "${index_count:-}" ]]; then
|
|
|
116
116
|
fi
|
|
117
117
|
fi
|
|
118
118
|
|
|
119
|
+
# ── Task 4: Phase table TOTAL row vs lockfile count ──────────────────
|
|
120
|
+
|
|
121
|
+
if [[ -f "$INDEXFILE" ]]; then
|
|
122
|
+
# Parse the TOTAL row from the phase table (e.g., "| **TOTAL** | **72** | |")
|
|
123
|
+
total_row=$(grep '| \*\*TOTAL\*\* |' "$INDEXFILE" 2>/dev/null | head -1) || true
|
|
124
|
+
if [[ -n "$total_row" ]]; then
|
|
125
|
+
total_count=$(echo "$total_row" | grep -oE '\*\*[0-9]+\*\*' | head -1 | tr -d '*') || true
|
|
126
|
+
if [[ -n "${total_count:-}" && -n "${lock_count:-}" ]]; then
|
|
127
|
+
if [[ "$total_count" -eq "$lock_count" ]]; then
|
|
128
|
+
g04_pass "phase table TOTAL ($total_count) matches lockfile ($lock_count)"
|
|
129
|
+
else
|
|
130
|
+
g04_fail "phase table TOTAL ($total_count) != lockfile ($lock_count) — skills missing from phase_of()"
|
|
131
|
+
fi
|
|
132
|
+
fi
|
|
133
|
+
else
|
|
134
|
+
g04_fail "no TOTAL row found in $INDEXFILE"
|
|
135
|
+
fi
|
|
136
|
+
fi
|
|
137
|
+
|
|
119
138
|
# ── Summary ───────────────────────────────────────────────────────────
|
|
120
139
|
|
|
121
140
|
echo ""
|
package/scripts/land-branch.sh
CHANGED
|
@@ -5,6 +5,9 @@
|
|
|
5
5
|
# Run from the primary repository root (not a linked worktree).
|
|
6
6
|
set -euo pipefail
|
|
7
7
|
|
|
8
|
+
# shellcheck source=lib/land-branch-push.sh
|
|
9
|
+
source "$(dirname "${BASH_SOURCE[0]}")/lib/land-branch-push.sh"
|
|
10
|
+
|
|
8
11
|
CONVENTIONAL_REGEX='^(feat|fix|docs|style|refactor|perf|test|build|ci|chore|revert)(\(.+\))?!?: .+'
|
|
9
12
|
|
|
10
13
|
usage_land() {
|
|
@@ -150,7 +153,9 @@ echo "==> Land commit: $LAND_SHA"
|
|
|
150
153
|
|
|
151
154
|
if git remote get-url origin >/dev/null 2>&1; then
|
|
152
155
|
echo "==> Pushing $DEFAULT_BRANCH to origin"
|
|
153
|
-
|
|
156
|
+
if ! land_push_default_branch "$DEFAULT_BRANCH" "$LAND_SHA" "$FEATURE_BRANCH" "$COMMIT_MSG"; then
|
|
157
|
+
land_branch_deny "git push origin $DEFAULT_BRANCH failed"
|
|
158
|
+
fi
|
|
154
159
|
fi
|
|
155
160
|
|
|
156
161
|
# Epic capsule archival (evolved bigpowers v4.0.0+)
|
|
@@ -198,11 +203,19 @@ fi
|
|
|
198
203
|
git checkout "$DEFAULT_BRANCH"
|
|
199
204
|
|
|
200
205
|
echo ""
|
|
201
|
-
|
|
202
|
-
echo "
|
|
203
|
-
echo "
|
|
204
|
-
echo "
|
|
205
|
-
echo "
|
|
206
|
-
echo "
|
|
207
|
-
|
|
208
|
-
echo "
|
|
206
|
+
if [ "${LAND_PR_FALLBACK:-0}" = "1" ]; then
|
|
207
|
+
echo "Land complete (protected-branch fallback — PR opened)."
|
|
208
|
+
echo " Branch: $FEATURE_BRANCH (local cleanup below)"
|
|
209
|
+
echo " Recovery: $(land_recovery_branch_name "$FEATURE_BRANCH") @ $LAND_SHA"
|
|
210
|
+
echo " Message: $COMMIT_MSG"
|
|
211
|
+
echo " Note: local $DEFAULT_BRANCH reset to origin; merge via PR"
|
|
212
|
+
else
|
|
213
|
+
echo "Land complete."
|
|
214
|
+
echo " Branch: $FEATURE_BRANCH (removed)"
|
|
215
|
+
echo " Commit: $LAND_SHA on $DEFAULT_BRANCH"
|
|
216
|
+
echo " Message: $COMMIT_MSG"
|
|
217
|
+
echo " cwd: $(pwd)"
|
|
218
|
+
echo " current: $(git branch --show-current)"
|
|
219
|
+
echo ""
|
|
220
|
+
echo "semantic-release will pick up the push to $DEFAULT_BRANCH when configured."
|
|
221
|
+
fi
|
|
Binary file
|
|
Binary file
|
|
@@ -0,0 +1,106 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# land-branch-push.sh — push + protected-branch fallback helpers for land-branch.sh
|
|
3
|
+
# story: BUG-2026-07-25-land-branch-protected
|
|
4
|
+
set -euo pipefail
|
|
5
|
+
|
|
6
|
+
if [[ -n "${LAND_BRANCH_PUSH_LOADED:-}" ]]; then return 0; fi
|
|
7
|
+
LAND_BRANCH_PUSH_LOADED=1
|
|
8
|
+
|
|
9
|
+
LAND_PR_FALLBACK=0
|
|
10
|
+
|
|
11
|
+
is_protected_branch_rejection() {
|
|
12
|
+
local output="$1"
|
|
13
|
+
echo "$output" | grep -qE '(^|[[:space:]])GH006|Changes must be made through a pull request'
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
land_recovery_branch_name() {
|
|
17
|
+
local feature_branch="$1"
|
|
18
|
+
echo "land-recovery/${feature_branch}"
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
land_print_recovery_commands() {
|
|
22
|
+
local recovery_branch="$1"
|
|
23
|
+
local land_sha="$2"
|
|
24
|
+
local default_branch="$3"
|
|
25
|
+
local commit_msg="$4"
|
|
26
|
+
|
|
27
|
+
{
|
|
28
|
+
echo "ERROR: Protected-branch fallback failed. Run these commands to recover manually:"
|
|
29
|
+
echo ""
|
|
30
|
+
echo " git branch $recovery_branch $land_sha"
|
|
31
|
+
echo " git checkout $default_branch"
|
|
32
|
+
echo " git fetch origin $default_branch"
|
|
33
|
+
echo " git reset --hard origin/$default_branch"
|
|
34
|
+
echo " git push -u origin $recovery_branch"
|
|
35
|
+
echo " gh pr create --base $default_branch --head $recovery_branch --title \"$commit_msg\""
|
|
36
|
+
} >&2
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
land_fallback_to_pr() {
|
|
40
|
+
local default_branch="$1"
|
|
41
|
+
local land_sha="$2"
|
|
42
|
+
local feature_branch="$3"
|
|
43
|
+
local commit_msg="$4"
|
|
44
|
+
local recovery_branch
|
|
45
|
+
recovery_branch="$(land_recovery_branch_name "$feature_branch")"
|
|
46
|
+
local full_sha
|
|
47
|
+
full_sha="$(git rev-parse "$land_sha")"
|
|
48
|
+
|
|
49
|
+
echo "==> Protected branch push rejected; falling back to PR workflow"
|
|
50
|
+
echo " Recovery branch: $recovery_branch @ $land_sha"
|
|
51
|
+
|
|
52
|
+
if git show-ref --verify --quiet "refs/heads/$recovery_branch"; then
|
|
53
|
+
git branch -D "$recovery_branch"
|
|
54
|
+
fi
|
|
55
|
+
git branch "$recovery_branch" "$full_sha"
|
|
56
|
+
|
|
57
|
+
git fetch origin "$default_branch"
|
|
58
|
+
git reset --hard "origin/$default_branch"
|
|
59
|
+
|
|
60
|
+
if ! git push -u origin "$recovery_branch"; then
|
|
61
|
+
land_print_recovery_commands "$recovery_branch" "$full_sha" "$default_branch" "$commit_msg"
|
|
62
|
+
return 1
|
|
63
|
+
fi
|
|
64
|
+
|
|
65
|
+
local pr_body
|
|
66
|
+
pr_body="Automated recovery from \`land-branch.sh\` after protected-branch push rejection on \`$default_branch\`.
|
|
67
|
+
|
|
68
|
+
Squash commit: \`$land_sha\`
|
|
69
|
+
Source feature branch: \`$feature_branch\`"
|
|
70
|
+
|
|
71
|
+
if ! gh pr create \
|
|
72
|
+
--base "$default_branch" \
|
|
73
|
+
--head "$recovery_branch" \
|
|
74
|
+
--title "$commit_msg" \
|
|
75
|
+
--body "$pr_body"; then
|
|
76
|
+
land_print_recovery_commands "$recovery_branch" "$full_sha" "$default_branch" "$commit_msg"
|
|
77
|
+
return 1
|
|
78
|
+
fi
|
|
79
|
+
|
|
80
|
+
LAND_PR_FALLBACK=1
|
|
81
|
+
echo "==> PR created via protected-branch fallback (local $default_branch reset to origin)"
|
|
82
|
+
return 0
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
land_push_default_branch() {
|
|
86
|
+
local default_branch="$1"
|
|
87
|
+
local land_sha="$2"
|
|
88
|
+
local feature_branch="$3"
|
|
89
|
+
local commit_msg="$4"
|
|
90
|
+
local push_output=""
|
|
91
|
+
local push_status=0
|
|
92
|
+
|
|
93
|
+
if push_output=$(git push origin "$default_branch" 2>&1); then
|
|
94
|
+
return 0
|
|
95
|
+
fi
|
|
96
|
+
push_status=$?
|
|
97
|
+
|
|
98
|
+
if is_protected_branch_rejection "$push_output"; then
|
|
99
|
+
echo "$push_output" >&2
|
|
100
|
+
land_fallback_to_pr "$default_branch" "$land_sha" "$feature_branch" "$commit_msg"
|
|
101
|
+
return $?
|
|
102
|
+
fi
|
|
103
|
+
|
|
104
|
+
echo "$push_output" >&2
|
|
105
|
+
return "$push_status"
|
|
106
|
+
}
|