godpowers 2.4.0 → 2.4.1

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/CHANGELOG.md CHANGED
@@ -7,6 +7,28 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.4.1] - 2026-06-08
11
+
12
+ ### Added
13
+ - Added adoption-proof outcome metrics for Quick Proof and Adoption Canary
14
+ reports, covering commands to first signal, disk-state source, missing
15
+ artifacts, next command, host level, and host gaps.
16
+ - Added the First 10 Minute Proof case study as a repo-verifiable public proof
17
+ artifact before the first external repository canary.
18
+
19
+ ### Changed
20
+ - Updated README and Getting Started to lead with `--profile=core` and the
21
+ brief Quick Proof path before full autonomy.
22
+ - Updated Quick Proof, Adoption Canary, Reference, Roadmap, and Proof
23
+ Transcript docs to separate observable adoption evidence from broader product
24
+ claims.
25
+ - Added surface-discipline guidance so new public commands require adoption
26
+ evidence before expanding the command surface.
27
+
28
+ ### Fixed
29
+ - Package guardrails now require the adoption metrics runtime helper so the
30
+ published package keeps Quick Proof and canary metrics available.
31
+
10
32
  ## [2.4.0] - 2026-06-08
11
33
 
12
34
  ### Added
package/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  [![CI](https://github.com/aihxp/godpowers/actions/workflows/ci.yml/badge.svg)](https://github.com/aihxp/godpowers/actions/workflows/ci.yml)
4
4
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
5
- [![Version](https://img.shields.io/badge/version-2.4.0-blue)](CHANGELOG.md)
5
+ [![Version](https://img.shields.io/badge/version-2.4.1-blue)](CHANGELOG.md)
6
6
  [![npm](https://img.shields.io/npm/v/godpowers.svg)](https://www.npmjs.com/package/godpowers)
7
7
 
8
8
  **Ship fast. Ship right. Ship everything. Ship accountably.**
@@ -13,18 +13,19 @@ tool** (Claude Code, Codex, Cursor, etc.) that orchestrate **specialist agents**
13
13
  in fresh contexts to do the work.
14
14
 
15
15
  Want the short proof first? Start with [Quick Proof](docs/quick-proof.md) to
16
- run `npx godpowers quick-proof --project=.`, see transcript excerpts, pick a
17
- starter command set, and understand runtime expectations before reading the
18
- full reference.
16
+ run `npx godpowers quick-proof --project=. --brief`, see outcome metrics, pick
17
+ a starter command set, and understand runtime expectations before reading the
18
+ full reference. The [First 10 Minute Proof Case Study](docs/case-studies/first-10-minute-proof.md)
19
+ shows the same evidence as a before-and-after adoption story.
19
20
 
20
21
  Godpowers makes AI coding accountable: every serious run should leave disk
21
22
  state, artifacts, validation gates, host guarantees, and a next action. Code is
22
23
  only one output. The project memory and proof trail matter too.
23
24
 
24
- Version 2.4.0 keeps every leaf command available while making the command
25
- surface easier to navigate. `/god`, `/god-help`, `/god-next`, and route
26
- metadata now share command families, decision ladders, typed route outcomes,
27
- and workflow helper groups so users see clearer paths without losing power.
25
+ Version 2.4.1 keeps the 2.4 command-family UX and adds a clearer first trust
26
+ step: Quick Proof outcome metrics, a First 10 Minute Proof case study,
27
+ profile-first onboarding, and surface-discipline guidance for future command
28
+ growth.
28
29
 
29
30
  Maintainer hardening continues on the 2.x line with small, audited public
30
31
  surface updates when they close real workflow gaps. The 2.1.0 patch closes a command-injection vector in the
@@ -47,6 +48,20 @@ next command, why it is recommended, whether the project is ready, the first
47
48
  blockers that need attention, and whether the current host can provide full,
48
49
  degraded, or unknown runtime guarantees.
49
50
 
51
+ ### Ten Minute Proof Path
52
+
53
+ Run this before deciding whether Godpowers is worth a full project arc:
54
+
55
+ ```bash
56
+ npx godpowers quick-proof --project=. --brief
57
+ npx godpowers status --project=. --brief
58
+ npx godpowers next --project=. --brief
59
+ ```
60
+
61
+ The first command should produce disk-state evidence, missing-artifact
62
+ visibility, a next command, host guarantees, and outcome metrics. The next two
63
+ commands show what Godpowers can infer from your current project.
64
+
50
65
  It fuses four disciplines into one unified workflow:
51
66
 
52
67
  - **Native project context** - every Godpowers project is a Pillars project:
@@ -80,7 +95,7 @@ should prove:
80
95
  ## Install
81
96
 
82
97
  ```bash
83
- npx godpowers --claude --global
98
+ npx godpowers --claude --global --profile=core
84
99
  ```
85
100
 
86
101
  Other targets: `--codex`, `--cursor`, `--windsurf`, `--opencode`, `--gemini`,
@@ -94,7 +109,8 @@ The installer copies:
94
109
  - Codex agent metadata to `<runtime>/agents/*.toml`
95
110
  - SessionStart hook (Claude Code only) to `<runtime>/hooks/`
96
111
 
97
- Installer profiles keep the visible command surface calm:
112
+ Installer profiles keep the visible command surface calm. Start with `core` or
113
+ `builder` unless you already know you need the full maintainer surface:
98
114
 
99
115
  ```bash
100
116
  npx godpowers --claude --global --profile=core
@@ -207,6 +223,21 @@ commands remain direct shortcuts.
207
223
  | Maintain project health | `/god-hygiene`, `/god-update-deps`, `/god-docs`, `/god-check-todos` |
208
224
  | Extend Godpowers | `/god-extension-scaffold --name=@godpowers/my-pack --output=.`, `/god-test-extension`, `/god-extension-add`, `/god-extension-list` |
209
225
 
226
+ ### Outcome Metrics
227
+
228
+ Godpowers reports adoption and run signals separately from narrative claims:
229
+
230
+ | Metric | Where it appears |
231
+ |---|---|
232
+ | Commands to first signal | `quick-proof` outcome metrics |
233
+ | Next command and reason | `quick-proof`, `status`, `next`, `/god-next` |
234
+ | Missing artifacts | dashboard planning visibility |
235
+ | Host gaps | host guarantee line |
236
+ | Run duration, pauses, retries, cost | `/god-metrics`, `/god-trace`, `/god-cost` |
237
+
238
+ New public command surface should be added only when existing families,
239
+ ladders, profiles, recipes, and docs cannot express a proven user need.
240
+
210
241
  The same status engine is available from the installer CLI for humans, CI,
211
242
  Codex, Claude, Cursor, Gemini, OpenCode, Windsurf, Antigravity, and any host
212
243
  runtime that can execute Node:
@@ -509,6 +540,7 @@ Pi. T3 Code inherits from the underlying agent (Codex / Claude / OpenCode).
509
540
 
510
541
  - [Getting Started](docs/getting-started.md)
511
542
  - [Quick Proof](docs/quick-proof.md)
543
+ - [First 10 Minute Proof Case Study](docs/case-studies/first-10-minute-proof.md)
512
544
  - [Concepts](docs/concepts.md)
513
545
  - [Command reference (all 112 skills + 40 agents)](docs/reference.md)
514
546
  - [Feature awareness](docs/feature-awareness.md)
package/RELEASE.md CHANGED
@@ -1,12 +1,11 @@
1
- # Godpowers 2.4.0 Release
1
+ # Godpowers 2.4.1 Release
2
2
 
3
3
  > Status: Ready for package verification
4
4
  > Date: 2026-06-08
5
5
 
6
- Godpowers 2.4.0 is a UX flow consolidation release for the 2.x line. It keeps
7
- the complete 112-command surface intact while making the primary paths easier
8
- to understand through command families, decision ladders, typed route outcomes,
9
- and auditable workflow helper groups.
6
+ Godpowers 2.4.1 is an adoption-proof patch for the 2.4 line. It keeps the
7
+ 2.4.0 command-family UX intact while making the first trust step smaller,
8
+ measurable, and easier to inspect before a user commits to a full project arc.
10
9
 
11
10
  ## What's in this release
12
11
 
@@ -17,43 +16,38 @@ and auditable workflow helper groups.
17
16
 
18
17
  ## Highlights
19
18
 
20
- - `/god-help` now presents command families first, then ladders and the full
21
- catalog.
22
- - `/god` and `/god-next` now share command-family helpers for capture, work
23
- sizing, verification, and overlapping trigger phrases.
24
- - `/god-status` is documented as the continue-family hub, with `/god-progress`,
25
- `/god-lifecycle`, `/god-locate`, and `/god-next` as direct views.
26
- - Every shipped route now carries command family metadata.
27
- - Flexible route exits now carry typed `success-path.outcome` metadata so
28
- contextual, verdict-based, steady-state, session-end, and selection outcomes
29
- can be explained to users.
30
- - Workflow YAML can now use named helper groups, while generated plans still
31
- expand the exact local helper list for visibility.
32
- - Recipes now split simple existing-repo onboarding from deeper inheritance
33
- flows, and clarify workstream versus suite collaboration paths.
34
- - Extension journey docs now describe current extension-pack-required flows
35
- instead of old release annotations.
36
- - Release guardrails now require the command-family runtime files, helper group
37
- runtime files, and command-family regression test.
19
+ - Quick Proof now reports outcome metrics: commands to first signal,
20
+ disk-state source, tracked steps, missing planning artifacts, next command,
21
+ host level, and host gaps.
22
+ - Adoption Canary reports now include CLI-verifiable outcome metrics for
23
+ quick-proof, status, and next signals.
24
+ - README and Getting Started now lead with `--profile=core` and the brief Quick
25
+ Proof path before full autonomy.
26
+ - The First 10 Minute Proof case study documents the local before-and-after
27
+ proof while clearly naming what still requires an external repository canary.
28
+ - Reference and Roadmap docs now include surface-discipline guidance: try
29
+ families, ladders, profiles, recipes, typed route outcomes, and docs before
30
+ adding new public commands.
31
+ - Package guardrails now require `lib/adoption-metrics.js`.
38
32
 
39
33
  ## Validation
40
34
 
41
35
  - `npm test` green across the full suite
42
36
  - `npm run test:audit` green
43
37
  - `npm run pack:check` green
44
- - `npm pack` creates a local `godpowers-2.4.0.tgz` tarball for package
38
+ - `npm pack` creates a local `godpowers-2.4.1.tgz` tarball for package
45
39
  inspection
46
40
 
47
41
  ## Upgrade
48
42
 
49
- - `npm install -g godpowers@2.4.0` or `npx godpowers@2.4.0`
43
+ - `npm install -g godpowers@2.4.1` or `npx godpowers@2.4.1`
50
44
  - Re-run `/god-context` in each project to refresh installed runtime metadata
51
45
  - No breaking changes; existing `.godpowers/` state is compatible. Users who
52
46
  want a compact install can run `npx godpowers --profile=core`.
53
47
 
54
48
  ## Notes
55
49
 
56
- - GitHub release creation for `v2.4.0`
50
+ - GitHub release creation for `v2.4.1`
57
51
  - The tag should match the npm package version
58
- - The `v2.4.0` tag should point to the release commit that matches the npm
59
- `godpowers@2.4.0` package.
52
+ - The `v2.4.1` tag should point to the release commit that matches the npm
53
+ `godpowers@2.4.1` package.
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Adoption proof metrics.
3
+ *
4
+ * These metrics keep first-user trust claims tied to observable CLI signals
5
+ * instead of narrative confidence.
6
+ */
7
+
8
+ function countMissingPlanning(planning = {}) {
9
+ return Object.values(planning)
10
+ .filter(item => item && item.status === 'missing')
11
+ .length;
12
+ }
13
+
14
+ function fromQuickProof(proof) {
15
+ const dashboard = proof.dashboard || {};
16
+ const progress = dashboard.progress || {};
17
+ const planning = dashboard.planning || {};
18
+ const next = dashboard.next || {};
19
+ const host = proof.host || {};
20
+ const hostGaps = Array.isArray(host.gaps) ? host.gaps : [];
21
+ const completed = Number.isFinite(progress.completed) ? progress.completed : 0;
22
+ const total = Number.isFinite(progress.total) ? progress.total : 0;
23
+
24
+ return {
25
+ commandsToFirstSignal: 1,
26
+ stateSource: proof.statePath || 'unknown',
27
+ trackedStepsComplete: completed,
28
+ trackedStepsTotal: total,
29
+ missingPlanningArtifacts: countMissingPlanning(planning),
30
+ nextCommand: next.command || 'describe the next intent',
31
+ nextReason: next.reason || 'No route was computed.',
32
+ hostLevel: host.level || 'unknown',
33
+ hostGapCount: hostGaps.length,
34
+ proofSignals: [
35
+ 'disk state',
36
+ 'missing artifact',
37
+ 'next command',
38
+ 'host guarantee'
39
+ ]
40
+ };
41
+ }
42
+
43
+ function render(metrics) {
44
+ return [
45
+ ` Commands to first signal: ${metrics.commandsToFirstSignal}`,
46
+ ` State source: ${metrics.stateSource}`,
47
+ ` Tracked steps: ${metrics.trackedStepsComplete} of ${metrics.trackedStepsTotal}`,
48
+ ` Missing planning artifacts: ${metrics.missingPlanningArtifacts}`,
49
+ ` Next command: ${metrics.nextCommand}`,
50
+ ` Host level: ${metrics.hostLevel}`,
51
+ ` Host gaps: ${metrics.hostGapCount}`
52
+ ].join('\n');
53
+ }
54
+
55
+ function canaryMetrics(outputs = {}) {
56
+ const quickProof = outputs.quickProof || '';
57
+ const status = outputs.status || '';
58
+ const next = outputs.next || '';
59
+ return {
60
+ cliSignalsCaptured: ['quick-proof', 'status', 'next']
61
+ .filter((name) => outputs[camelSignal(name)] && outputs[camelSignal(name)].trim()).length,
62
+ quickProofHasNext: /\bNext:\s+\S+/.test(quickProof),
63
+ statusHasDashboard: /Godpowers Dashboard|Current status:/.test(status),
64
+ nextHasRecommendation: /Suggested next command:|Recommended:|Next:/.test(next)
65
+ };
66
+ }
67
+
68
+ function camelSignal(name) {
69
+ if (name === 'quick-proof') return 'quickProof';
70
+ return name;
71
+ }
72
+
73
+ function renderCanary(metrics) {
74
+ return [
75
+ `- [DECISION] CLI signals captured: ${metrics.cliSignalsCaptured} of 3.`,
76
+ `- [DECISION] Quick Proof reported a next action: ${metrics.quickProofHasNext ? 'yes' : 'no'}.`,
77
+ `- [DECISION] Status rendered a dashboard signal: ${metrics.statusHasDashboard ? 'yes' : 'no'}.`,
78
+ `- [DECISION] Next rendered a recommendation signal: ${metrics.nextHasRecommendation ? 'yes' : 'no'}.`
79
+ ].join('\n');
80
+ }
81
+
82
+ module.exports = {
83
+ fromQuickProof,
84
+ render,
85
+ canaryMetrics,
86
+ renderCanary
87
+ };
@@ -10,6 +10,7 @@ const path = require('path');
10
10
 
11
11
  const dashboard = require('./dashboard');
12
12
  const hostCapabilities = require('./host-capabilities');
13
+ const adoptionMetrics = require('./adoption-metrics');
13
14
 
14
15
  const FIXTURE_ROOT = path.join(__dirname, '..', 'fixtures', 'quick-proof', 'project');
15
16
  const MANIFEST_PATH = path.join(__dirname, '..', 'fixtures', 'quick-proof', 'manifest.json');
@@ -85,6 +86,8 @@ function compute(projectRoot = process.cwd(), opts = {}) {
85
86
  ]
86
87
  };
87
88
 
89
+ proof.metrics = adoptionMetrics.fromQuickProof(proof);
90
+
88
91
  return proof;
89
92
  }
90
93
 
@@ -111,7 +114,10 @@ function render(proof, opts = {}) {
111
114
  ` State on disk: ${proof.statePath}`,
112
115
  ` Fixture: ${proof.fixturePath}`,
113
116
  ` PRD: ${planning.prd ? planning.prd.status : 'unknown'}`,
114
- ` Roadmap: ${planning.roadmap ? planning.roadmap.status : 'unknown'}`
117
+ ` Roadmap: ${planning.roadmap ? planning.roadmap.status : 'unknown'}`,
118
+ '',
119
+ 'Outcome metrics:',
120
+ adoptionMetrics.render(proof.metrics)
115
121
  ].join('\n');
116
122
  }
117
123
 
@@ -138,6 +144,9 @@ function render(proof, opts = {}) {
138
144
  'Evidence:',
139
145
  ...proof.evidence.map((item, index) => ` ${index + 1}. ${item.label}: ${item.value}`),
140
146
  '',
147
+ 'Outcome metrics:',
148
+ adoptionMetrics.render(proof.metrics),
149
+ '',
141
150
  'Try it on the fixture:',
142
151
  ` npx godpowers status --project=${proof.fixtureRoot} --brief`,
143
152
  ` npx godpowers next --project=${proof.fixtureRoot} --brief`,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "godpowers",
3
- "version": "2.4.0",
3
+ "version": "2.4.1",
4
4
  "description": "AI-powered development system: 112 slash commands and 40 specialist agents that take a project from raw idea to hardened production. Runs inside Claude Code, Codex, Cursor, Windsurf, Gemini, and 10+ other AI coding tools.",
5
5
  "bin": {
6
6
  "godpowers": "./bin/install.js"