@luizsantiago/spec-guardrails 3.1.3 → 3.1.4

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/README.md CHANGED
@@ -8,8 +8,8 @@
8
8
  | | |
9
9
  | --- | --- |
10
10
  | **Problem** | Agents ship “looks good” with thin specs, missing evidence, and the same context that wrote the code declaring victory. |
11
- | **Solution** | A repo-local process kit: Specify Tasks Execute waves Verify with fresh context. **Process mode** (Node) always; **Brakes mode** (+ Python) adds structural stop-gates; you approve specs/tasks. |
12
- | **Result** | Traceable `.specs/` memory, fewer fake finishes, cheaper turns (~70% less skill text on planning), and an explicit stop when evidence is missing. |
11
+ | **Solution** | One kit, two deliberate modes: **Process** (Node only) for a flexible spec-driven workflow; **Brakes** (Node + Python) for the **full product** structural gates that exit non-zero when paperwork or evidence is missing. You approve specs/tasks in both. |
12
+ | **Result** | Traceable `.specs/` memory, fewer fake finishes, cheaper turns (~70% less skill text on planning). Choose Process for light ceremony; add Python when you want the [Guarantees matrix](#guarantees-matrix) enforced automatically. |
13
13
 
14
14
  npm: [`@luizsantiago/spec-guardrails`](https://www.npmjs.com/package/@luizsantiago/spec-guardrails) **3.1.x**
15
15
 
@@ -26,17 +26,19 @@ npx @luizsantiago/spec-guardrails install
26
26
  | Requirement | Role |
27
27
  | --- | --- |
28
28
  | **Node.js 18+** | Required — runs the CLI and `install` |
29
- | **Python 3.10+** | Activates **Brakes mode** — structural gates (`validate-spec`, `validate-tasks`, …). Without Python you stay in **Process mode**: same phases and checklists, no exit-code enforcement. Run [`doctor`](#install) to see the banner when Python is missing |
29
+ | **Python 3.10+** | Activates **Brakes mode** — the **full** kit with Python structural gates (`validate-spec`, `validate-tasks`, …). Gates stay Python by design. Without Python you stay in **Process mode**: same phases and checklists, no exit-code enforcement. Run [`doctor`](#install) to see which mode you are in |
30
30
 
31
31
  ### What install does
32
32
 
33
33
  | Lands in your project | Purpose |
34
34
  | --- | --- |
35
- | `.cursor/skills/` + `.claude/skills/` | Hub, phase references, sister skills |
36
- | `.specs/guardrails/scripts/` | Python gate scripts |
37
- | `.specs/STATE.md`, `.specs/features/`, … | Project memory |
35
+ | `.cursor/skills/` + `.claude/skills/` | Hub, phase references, sister skills (first shipped **adapters** — not the only supported agents) |
36
+ | `.specs/guardrails/scripts/` | Python gate scripts (Brakes mode) |
37
+ | `.specs/STATE.md`, `.specs/features/`, … | Project memory (any agent) |
38
38
  | `.cursor/rules/engineering-baseline.mdc` | Always-on Cursor rule |
39
39
 
40
+ **Agent environments:** the **core** (`.specs/`, CLI, hub, Python gates) works with any AI agent that reads repo instructions and runs shell commands. Install ships Cursor + Claude Code adapters today; Codex, GitHub Copilot, and others are documented in [Architecture](docs/guide/Architecture.md).
41
+
40
42
  Re-run `install` anytime to refresh skills; your `.specs/` decisions and `STATE.md` are kept.
41
43
 
42
44
  | Need | Command |
@@ -68,12 +70,16 @@ Plain-language tour: [Home](docs/guide/Home.md) · [How it works](docs/guide/How
68
70
 
69
71
  ## Operating modes
70
72
 
71
- | Mode | Runtime | What you get |
72
- | --- | --- | --- |
73
- | **Process** | Node.js 18+ | Workflow, `.specs/` memory, progressive loading, independent `/verify` |
74
- | **Brakes** | Node + Python 3.10+ | Process **plus** exit-code enforcement on structural gates |
73
+ Two modes, one package pick how much rigor you want:
74
+
75
+ | Mode | Runtime | What you get | Best for |
76
+ | --- | --- | --- | --- |
77
+ | **Process** | Node.js 18+ | Spec-driven workflow, `.specs/` memory, progressive loading, independent `/verify` | Flexible ceremony, exploration, teams that enforce by review |
78
+ | **Brakes** | Node + **Python 3.10+** | Everything in Process **plus** Python gates from the [Guarantees matrix](#guarantees-matrix) — exit ≠ 0 → stop and fix | The **full Spec Guardrails** — traceability, evidence, and structural guarantees enforced automatically |
79
+
80
+ **Gates stay Python.** That is the product: Brakes mode is the complete version with automated enforcement. Process mode is the same loop without exit-code brakes — intentional, not incomplete.
75
81
 
76
- Python activates Brakes — not a bug. Without it you keep the same phases and checklists (flexible mode). Run `doctor` to see when enforcement is manual-only.
82
+ Install Python when you want gates to fire; run `doctor` to confirm Brakes are available.
77
83
 
78
84
  ---
79
85
 
@@ -180,7 +186,7 @@ Full reference: **[Gates](docs/guide/gates.md)** · [Guarantees matrix](docs/gui
180
186
  | [Concepts](docs/guide/concepts.md) | Spec-driven + guardrails + loop + graph |
181
187
  | [Skills and hub](docs/guide/skills-and-hub.md) | What each skill file does |
182
188
  | [Gates](docs/guide/gates.md) | How each gate works |
183
- | [Platform parity](docs/guide/Platform-parity.md) | Cursor vs Claude Code adapters today |
189
+ | [Platform parity](docs/guide/Platform-parity.md) | Shipped adapters (Cursor, Claude Code) core works with any agent |
184
190
  | [FAQ](docs/guide/FAQ.md) | Common questions |
185
191
  | [Changelog](docs/CHANGELOG.md) | Full version history |
186
192
 
package/lib/gates.js CHANGED
@@ -112,8 +112,8 @@ export async function runGuardrailsScript(command, args, options = {}) {
112
112
 
113
113
  if (!python) {
114
114
  throw new Error(
115
- "Python 3 not found. Install Python 3.10+ to run guardrails scripts, " +
116
- "or perform the equivalent checks manually (degraded mode).",
115
+ "Python 3 not found. Install Python 3.10+ for Brakes mode (automatic gates), " +
116
+ "or perform the equivalent checks manually in Process mode.",
117
117
  );
118
118
  }
119
119
 
package/lib/install.js CHANGED
@@ -129,8 +129,8 @@ export async function install(options = {}) {
129
129
  const pythonAvailable = await hasPython();
130
130
  if (!pythonAvailable) {
131
131
  log(
132
- "⚠️ Python 3 not found. Skills still work in degraded mode " +
133
- "(manual checks). Install Python 3.10+ to enable the gates.",
132
+ "⚠️ Python 3 not found Process mode only (flexible workflow, manual checkpoints). " +
133
+ "Install Python 3.10+ for Brakes mode (full kit with automatic gates).",
134
134
  );
135
135
  }
136
136
 
package/lib/next-steps.js CHANGED
@@ -12,9 +12,10 @@ export function formatInstallNextSteps(options = {}) {
12
12
  "✨ Setup complete.",
13
13
  "",
14
14
  "Next:",
15
- " 1. Open Cursor or Claude Code in this project.",
15
+ " 1. Open your AI coding agent in this project (Cursor and Claude Code adapters install automatically).",
16
16
  " 2. Run **Specify** (`/specify` or “Specify a feature: …”).",
17
17
  "",
18
+ " Other agents: core + CLI work anywhere — see docs/guide/Architecture.md",
18
19
  " Guide: docs/guide/Quick-start.md (repo) · .specs/GETTING_STARTED.md (this project)",
19
20
  ];
20
21
 
@@ -24,7 +25,8 @@ export function formatInstallNextSteps(options = {}) {
24
25
 
25
26
  if (options.pythonAvailable === false) {
26
27
  lines.push(
27
- " Note: install Python 3.10+ for automatic gates, or the agent checks by hand.",
28
+ " Note: install Python 3.10+ for Brakes mode (full kit with automatic gates), " +
29
+ "or stay in Process mode (same phases, manual checkpoints).",
28
30
  );
29
31
  }
30
32
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@luizsantiago/spec-guardrails",
3
- "version": "3.1.3",
4
- "description": "Spec-driven process kit for repo-local AI agents (Cursor and Claude Code adapters today): written goals, structural stop-gates, independent verify, progressive skill loading.",
3
+ "version": "3.1.4",
4
+ "description": "Spec-driven process kit for any repo-local AI agent: Process mode (Node) or full Brakes mode (Node + Python gates). Progressive loading, independent verify, Guarantees matrix.",
5
5
  "type": "module",
6
6
  "bin": {
7
7
  "spec-guardrails": "./index.js"
@@ -4,7 +4,7 @@ You installed the **Spec Guardrails**. You do **not** need to memorize CLI comma
4
4
 
5
5
  ## What to do now
6
6
 
7
- 1. Open **Cursor** or **Claude Code** in this project.
7
+ 1. Open your **AI coding agent** in this project (Cursor or Claude Code if you use those adapters).
8
8
  2. Start with **Specify** (an **agent command** — chat, not terminal):
9
9
 
10
10
  ```
@@ -20,7 +20,7 @@ You installed the **Spec Guardrails**. You do **not** need to memorize CLI comma
20
20
 
21
21
  ## Agent commands (chat — not terminal)
22
22
 
23
- Type these in **Cursor or Claude Code**. They load phase procedures from `.cursor/skills/references/`. The agent runs gates for you.
23
+ Type these in **chat** in your agent environment. They load phase procedures from the installed skills tree (e.g. `.cursor/skills/references/`). In **Brakes mode**, the agent runs Python gates for you.
24
24
 
25
25
  | Command | When |
26
26
  | --- | --- |