@howlil/ez-agents 3.4.2 → 3.5.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 (74) hide show
  1. package/README.md +77 -2
  2. package/agents/ez-observer-agent.md +260 -0
  3. package/agents/ez-release-agent.md +333 -0
  4. package/agents/ez-requirements-agent.md +377 -0
  5. package/agents/ez-scrum-master-agent.md +242 -0
  6. package/agents/ez-tech-lead-agent.md +267 -0
  7. package/bin/install.js +3221 -3272
  8. package/commands/ez/arch-review.md +102 -0
  9. package/commands/ez/execute-phase.md +11 -0
  10. package/commands/ez/export-session.md +79 -0
  11. package/commands/ez/gather-requirements.md +117 -0
  12. package/commands/ez/git-workflow.md +72 -0
  13. package/commands/ez/hotfix.md +120 -0
  14. package/commands/ez/import-session.md +82 -0
  15. package/commands/ez/list-sessions.md +96 -0
  16. package/commands/ez/package-manager.md +316 -0
  17. package/commands/ez/plan-phase.md +9 -1
  18. package/commands/ez/preflight.md +79 -0
  19. package/commands/ez/progress.md +13 -1
  20. package/commands/ez/release.md +153 -0
  21. package/commands/ez/resume.md +107 -0
  22. package/commands/ez/standup.md +85 -0
  23. package/ez-agents/bin/ez-tools.cjs +1095 -716
  24. package/ez-agents/bin/lib/bdd-validator.cjs +622 -0
  25. package/ez-agents/bin/lib/content-scanner.cjs +238 -0
  26. package/ez-agents/bin/lib/context-cache.cjs +154 -0
  27. package/ez-agents/bin/lib/context-errors.cjs +71 -0
  28. package/ez-agents/bin/lib/context-manager.cjs +220 -0
  29. package/ez-agents/bin/lib/discussion-synthesizer.cjs +458 -0
  30. package/ez-agents/bin/lib/file-access.cjs +207 -0
  31. package/ez-agents/bin/lib/git-errors.cjs +83 -0
  32. package/ez-agents/bin/lib/git-utils.cjs +321 -203
  33. package/ez-agents/bin/lib/git-workflow-engine.cjs +1157 -0
  34. package/ez-agents/bin/lib/index.cjs +46 -2
  35. package/ez-agents/bin/lib/lockfile-validator.cjs +227 -0
  36. package/ez-agents/bin/lib/logger.cjs +124 -154
  37. package/ez-agents/bin/lib/memory-compression.cjs +256 -0
  38. package/ez-agents/bin/lib/metrics-tracker.cjs +406 -0
  39. package/ez-agents/bin/lib/package-manager-detector.cjs +203 -0
  40. package/ez-agents/bin/lib/package-manager-executor.cjs +385 -0
  41. package/ez-agents/bin/lib/package-manager-service.cjs +216 -0
  42. package/ez-agents/bin/lib/release-validator.cjs +614 -0
  43. package/ez-agents/bin/lib/safe-exec.cjs +128 -214
  44. package/ez-agents/bin/lib/session-chain.cjs +304 -0
  45. package/ez-agents/bin/lib/session-errors.cjs +81 -0
  46. package/ez-agents/bin/lib/session-export.cjs +251 -0
  47. package/ez-agents/bin/lib/session-import.cjs +262 -0
  48. package/ez-agents/bin/lib/session-manager.cjs +280 -0
  49. package/ez-agents/bin/lib/tier-manager.cjs +428 -0
  50. package/ez-agents/bin/lib/url-fetch.cjs +170 -0
  51. package/ez-agents/references/metrics-schema.md +118 -0
  52. package/ez-agents/references/planning-config.md +140 -0
  53. package/ez-agents/references/tier-strategy.md +103 -0
  54. package/ez-agents/templates/bdd-feature.md +173 -0
  55. package/ez-agents/templates/discussion.md +68 -0
  56. package/ez-agents/templates/incident-runbook.md +205 -0
  57. package/ez-agents/templates/release-checklist.md +133 -0
  58. package/ez-agents/templates/rollback-plan.md +201 -0
  59. package/ez-agents/workflows/arch-review.md +54 -0
  60. package/ez-agents/workflows/autonomous.md +844 -743
  61. package/ez-agents/workflows/execute-phase.md +45 -0
  62. package/ez-agents/workflows/export-session.md +255 -0
  63. package/ez-agents/workflows/gather-requirements.md +206 -0
  64. package/ez-agents/workflows/help.md +92 -0
  65. package/ez-agents/workflows/hotfix.md +291 -0
  66. package/ez-agents/workflows/import-session.md +303 -0
  67. package/ez-agents/workflows/new-milestone.md +713 -384
  68. package/ez-agents/workflows/new-project.md +1107 -1113
  69. package/ez-agents/workflows/plan-phase.md +22 -0
  70. package/ez-agents/workflows/progress.md +15 -25
  71. package/ez-agents/workflows/release.md +253 -0
  72. package/ez-agents/workflows/resume-session.md +215 -0
  73. package/ez-agents/workflows/standup.md +64 -0
  74. package/package.json +9 -2
@@ -0,0 +1,316 @@
1
+ # Package Manager Command
2
+
3
+ ## Overview
4
+
5
+ The `package-manager` command provides flexible package manager support for ez-agents, enabling seamless operation with **npm**, **yarn**, and **pnpm**. It automatically detects available package managers, respects existing lockfiles, and provides configuration-driven defaults for consistent team workflows.
6
+
7
+ ### Features
8
+
9
+ - **Auto-Detection**: Intelligently detects available package managers (pnpm, yarn, npm) on the system
10
+ - **Lockfile Respect**: Honors existing lockfiles (package-lock.json, yarn.lock, pnpm-lock.yaml)
11
+ - **Configuration Control**: Configurable default package manager in `.planning/config.json`
12
+ - **Cross-Platform Execution**: Consistent shell syntax across Windows, macOS, and Linux
13
+ - **Full Command Support**: install, add, remove operations for all three package managers
14
+ - **Backward Compatibility**: Maintains existing npm compatibility for legacy projects
15
+
16
+ ## Usage
17
+
18
+ ```bash
19
+ ez package-manager <subcommand> [options]
20
+ ```
21
+
22
+ ### Subcommands
23
+
24
+ #### `detect` - Detect available package manager
25
+
26
+ Automatically detects the available package manager using a priority-based strategy.
27
+
28
+ ```bash
29
+ ez package-manager detect
30
+ ```
31
+
32
+ **Output format (JSON):**
33
+ ```json
34
+ {
35
+ "manager": "pnpm",
36
+ "source": "lockfile",
37
+ "confidence": "high",
38
+ "lockfilePath": "/path/to/pnpm-lock.yaml"
39
+ }
40
+ ```
41
+
42
+ **Detection Sources:**
43
+ - `config` - From `.planning/config.json` packageManager.default
44
+ - `lockfile` - From existing lockfile presence
45
+ - `system` - From system availability check
46
+ - `fallback` - Default to npm when nothing else is available
47
+
48
+ **Confidence Levels:**
49
+ - `high` - Config or lockfile detection
50
+ - `medium` - System availability detection
51
+ - `low` - Fallback to npm
52
+
53
+ ---
54
+
55
+ #### `install` - Install dependencies
56
+
57
+ Install dependencies from lockfile.
58
+
59
+ ```bash
60
+ ez package-manager install [--frozen] [--production]
61
+ ```
62
+
63
+ **Options:**
64
+ - `--frozen` - Use frozen lockfile install (CI/CD safe)
65
+ - `--production` - Production install (exclude devDependencies)
66
+
67
+ **Examples:**
68
+ ```bash
69
+ # Standard install
70
+ ez package-manager install
71
+
72
+ # Frozen lockfile install (CI/CD)
73
+ ez package-manager install --frozen
74
+
75
+ # Production install
76
+ ez package-manager install --production
77
+ ```
78
+
79
+ **Package Manager Commands:**
80
+ - npm: `npm install [--frozen-lockfile] [--production]`
81
+ - yarn: `yarn install [--frozen-lockfile] [--production]`
82
+ - pnpm: `pnpm install [--frozen-lockfile] [--prod]`
83
+
84
+ ---
85
+
86
+ #### `add` - Add package(s)
87
+
88
+ Add new package(s) to the project.
89
+
90
+ ```bash
91
+ ez package-manager add <package> [--dev|-D]
92
+ ```
93
+
94
+ **Options:**
95
+ - `--dev` or `-D` - Add as devDependency
96
+
97
+ **Examples:**
98
+ ```bash
99
+ # Add production dependency
100
+ ez package-manager add lodash
101
+
102
+ # Add dev dependency
103
+ ez package-manager add eslint --dev
104
+ ez package-manager add prettier -D
105
+
106
+ # Add multiple packages
107
+ ez package-manager add react react-dom
108
+ ```
109
+
110
+ **Package Manager Commands:**
111
+ - npm: `npm install [--save-dev] <package>`
112
+ - yarn: `yarn add [--dev] <package>`
113
+ - pnpm: `pnpm add [--save-dev] <package>`
114
+
115
+ ---
116
+
117
+ #### `remove` - Remove package(s)
118
+
119
+ Remove package(s) from the project.
120
+
121
+ ```bash
122
+ ez package-manager remove <package>
123
+ ```
124
+
125
+ **Examples:**
126
+ ```bash
127
+ # Remove single package
128
+ ez package-manager remove lodash
129
+
130
+ # Remove multiple packages
131
+ ez package-manager remove eslint prettier
132
+ ```
133
+
134
+ **Package Manager Commands:**
135
+ - npm: `npm uninstall <package>`
136
+ - yarn: `yarn remove <package>`
137
+ - pnpm: `pnpm remove <package>`
138
+
139
+ ---
140
+
141
+ #### `info` - Show package manager info
142
+
143
+ Display current package manager information.
144
+
145
+ ```bash
146
+ ez package-manager info
147
+ ```
148
+
149
+ **Output format (JSON):**
150
+ ```json
151
+ {
152
+ "manager": "pnpm",
153
+ "source": "lockfile",
154
+ "cwd": "/path/to/project",
155
+ "lockfile": "/path/to/pnpm-lock.yaml"
156
+ }
157
+ ```
158
+
159
+ ---
160
+
161
+ ## Configuration
162
+
163
+ Configure package manager behavior in `.planning/config.json`:
164
+
165
+ ```json
166
+ {
167
+ "packageManager": {
168
+ "default": "npm",
169
+ "autoDetect": true,
170
+ "respectLockfile": true,
171
+ "frozenLockfileInCI": true
172
+ }
173
+ }
174
+ ```
175
+
176
+ ### Configuration Options
177
+
178
+ | Option | Type | Default | Description |
179
+ |--------|------|---------|-------------|
180
+ | `default` | string | `"npm"` | Default package manager (`npm`, `yarn`, or `pnpm`) |
181
+ | `autoDetect` | boolean | `true` | Enable automatic package manager detection |
182
+ | `respectLockfile` | boolean | `true` | Respect existing lockfiles when detecting |
183
+ | `frozenLockfileInCI` | boolean | `true` | Use frozen lockfile installs in CI environments |
184
+
185
+ ---
186
+
187
+ ## Detection Priority
188
+
189
+ The package manager detection follows a priority-based strategy:
190
+
191
+ ```
192
+ ┌─────────────────────────────────────────────────────────────┐
193
+ │ Package Manager Detection Pipeline │
194
+ ├─────────────────────────────────────────────────────────────┤
195
+ │ Layer 1: Configuration (highest priority) │
196
+ │ - Check .planning/config.json → packageManager.default │
197
+ │ - If found and installed, use configured manager │
198
+ ├─────────────────────────────────────────────────────────────┤
199
+ │ Layer 2: Lockfile Detection │
200
+ │ - Check for pnpm-lock.yaml → use pnpm │
201
+ │ - Check for yarn.lock → use yarn │
202
+ │ - Check for package-lock.json → use npm │
203
+ ├─────────────────────────────────────────────────────────────┤
204
+ │ Layer 3: System Availability │
205
+ │ - Check which managers are installed │
206
+ │ - Prefer pnpm > yarn > npm (performance order) │
207
+ ├─────────────────────────────────────────────────────────────┤
208
+ │ Layer 4: Fallback │
209
+ │ - Default to npm (always available with Node) │
210
+ └─────────────────────────────────────────────────────────────┘
211
+ ```
212
+
213
+ ### Detection Examples
214
+
215
+ | Scenario | Detected Manager | Source |
216
+ |----------|-----------------|--------|
217
+ | Config says `pnpm`, pnpm installed | `pnpm` | config |
218
+ | No config, `pnpm-lock.yaml` exists | `pnpm` | lockfile |
219
+ | No config, `yarn.lock` exists | `yarn` | lockfile |
220
+ | No config, `package-lock.json` exists | `npm` | lockfile |
221
+ | No lockfile, pnpm/yarn/npm installed | `pnpm` | system |
222
+ | No lockfile, only npm installed | `npm` | system |
223
+ | Nothing detected | `npm` | fallback |
224
+
225
+ ---
226
+
227
+ ## Cross-Platform Support
228
+
229
+ The package manager command works identically across all platforms:
230
+
231
+ - **Windows** - Uses `execFile` for cross-platform execution
232
+ - **macOS** - Native Unix shell compatibility
233
+ - **Linux** - Native Unix shell compatibility
234
+
235
+ ### Implementation Details
236
+
237
+ - All commands use `execFile` (not `exec`) for security and cross-platform compatibility
238
+ - All paths use `path.join()` for proper path separator handling
239
+ - No shell injection vulnerabilities (shell: false)
240
+ - 5-minute timeout for all operations
241
+ - 10MB buffer for command output
242
+
243
+ ---
244
+
245
+ ## Package Manager Commands Reference
246
+
247
+ ### npm
248
+
249
+ | Operation | Command |
250
+ |-----------|---------|
251
+ | Install | `npm install` |
252
+ | Frozen Install | `npm install --frozen-lockfile` |
253
+ | Add Package | `npm install <pkg>` |
254
+ | Add Dev Package | `npm install --save-dev <pkg>` |
255
+ | Remove Package | `npm uninstall <pkg>` |
256
+ | Lockfile | `package-lock.json` |
257
+
258
+ ### yarn
259
+
260
+ | Operation | Command |
261
+ |-----------|---------|
262
+ | Install | `yarn install` |
263
+ | Frozen Install | `yarn install --frozen-lockfile` |
264
+ | Add Package | `yarn add <pkg>` |
265
+ | Add Dev Package | `yarn add --dev <pkg>` |
266
+ | Remove Package | `yarn remove <pkg>` |
267
+ | Lockfile | `yarn.lock` |
268
+
269
+ ### pnpm
270
+
271
+ | Operation | Command |
272
+ |-----------|---------|
273
+ | Install | `pnpm install` |
274
+ | Frozen Install | `pnpm install --frozen-lockfile` |
275
+ | Add Package | `pnpm add <pkg>` |
276
+ | Add Dev Package | `pnpm add --save-dev <pkg>` |
277
+ | Remove Package | `pnpm remove <pkg>` |
278
+ | Lockfile | `pnpm-lock.yaml` |
279
+
280
+ ---
281
+
282
+ ## Error Handling
283
+
284
+ The command provides detailed error messages for common issues:
285
+
286
+ - **No package manager detected** - Falls back to npm with warning
287
+ - **Lockfile validation failed** - Logs warning but continues
288
+ - **Command execution failed** - Returns stderr output with context
289
+ - **Unknown subcommand** - Lists available subcommands
290
+
291
+ ---
292
+
293
+ ## Library API
294
+
295
+ The package manager modules are also available for programmatic use:
296
+
297
+ ```javascript
298
+ const {
299
+ PackageManagerService,
300
+ PackageManagerDetector,
301
+ PackageManagerExecutor,
302
+ LockfileValidator
303
+ } = require('./ez-agents/bin/lib/index.cjs');
304
+
305
+ // Use the service
306
+ const service = new PackageManagerService(cwd);
307
+ await service.initialize();
308
+ await service.install({ frozenLockfile: true });
309
+ await service.add(['lodash'], { dev: true });
310
+ ```
311
+
312
+ See individual module files for detailed API documentation:
313
+ - `ez-agents/bin/lib/package-manager-detector.cjs`
314
+ - `ez-agents/bin/lib/package-manager-executor.cjs`
315
+ - `ez-agents/bin/lib/lockfile-validator.cjs`
316
+ - `ez-agents/bin/lib/package-manager-service.cjs`
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: ez:plan-phase
3
3
  description: Create detailed phase plan (PLAN.md) with verification loop
4
- argument-hint: "[phase] [--auto] [--research] [--skip-research] [--gaps] [--skip-verify] [--prd <file>]"
4
+ argument-hint: "[phase] [--auto] [--research] [--skip-research] [--gaps] [--skip-verify] [--prd <file>] [--no-auto] [--verbose]"
5
5
  agent: ez-planner
6
6
  allowed-tools:
7
7
  - Read
@@ -35,6 +35,14 @@ Phase number: $ARGUMENTS (optional — auto-detects next unplanned phase if omit
35
35
  - `--gaps` — Gap closure mode (reads VERIFICATION.md, skips research)
36
36
  - `--skip-verify` — Skip verification loop
37
37
  - `--prd <file>` — Use a PRD/acceptance criteria file instead of discuss-phase. Parses requirements into CONTEXT.md automatically. Skips discuss-phase entirely.
38
+ - `--no-auto` — Disable smart orchestration (skip auto discuss-phase for sensitive areas).
39
+ - `--verbose` — Show detail for every auto-invocation step.
40
+ - `--skip-discussion` — Skip auto discuss-phase only (more granular than --no-auto).
41
+
42
+ **Smart Orchestration (auto, unless --no-auto):**
43
+ - Detects sensitive area keywords in phase name/goal: `auth`, `login`, `jwt`, `oauth`, `database`, `migration`, `schema`, `payment`, `billing`, `security`
44
+ - If detected AND no CONTEXT.md exists: auto-runs `discuss-phase --auto` before planning
45
+ - All auto-invocations appear with `[auto]` prefix in output
38
46
 
39
47
  Normalize phase input in step 2 before any directory lookups.
40
48
  </context>
@@ -0,0 +1,79 @@
1
+ ---
2
+ name: preflight
3
+ description: Run release checklist validation without creating a release. Shows pass/fail for all tier checklist items.
4
+ usage: /ez:release preflight <tier>
5
+ ---
6
+
7
+ # /ez:release preflight
8
+
9
+ Run the release checklist for a tier without creating a branch, tag, or changelog. Use this to see what's blocking or passing before you commit to a release.
10
+
11
+ ## Usage
12
+
13
+ ```
14
+ /ez:release preflight <tier>
15
+ ```
16
+
17
+ ## Arguments
18
+
19
+ | Argument | Required | Description |
20
+ |----------|----------|-------------|
21
+ | `tier` | Yes | `mvp`, `medium`, or `enterprise` |
22
+
23
+ ## What It Checks
24
+
25
+ Runs security gates + tier checklist without side effects:
26
+
27
+ ```
28
+ /ez:release preflight medium
29
+
30
+ Security Gates (4/4):
31
+ ✓ No secrets in committed files
32
+ ✓ npm audit — no critical vulnerabilities
33
+ ✓ No production TODOs
34
+ ✓ .env files in .gitignore
35
+
36
+ Medium Checklist (12/18):
37
+ ✓ All @must BDD scenarios passing
38
+ ✗ Test coverage ≥ 80% — Coverage: 71% (need 9% more)
39
+ ✓ npm audit — clean
40
+ ✓ No secrets in committed files
41
+ ✓ Application starts
42
+ ✓ Rollback documented
43
+ ✓ All @should BDD scenarios passing
44
+ ✗ Test coverage ≥ 80% — 71% (need +9%)
45
+ ? Staging environment parity — requires manual verification
46
+ ? Monitoring/alerts configured — requires manual verification
47
+ ✓ No console.log in prod
48
+ ? Performance baseline — requires manual verification
49
+ ...
50
+
51
+ Production Readiness Score: 74/100 — CONDITIONAL
52
+
53
+ Blockers: 0
54
+ Warnings: 2 (coverage below threshold)
55
+ Manual items: 6 (need human verification)
56
+
57
+ To release: /ez:release medium v1.5.0
58
+ ```
59
+
60
+ ## When to Use
61
+
62
+ - Before starting a release to know what you need to fix
63
+ - When onboarding to a new tier to understand the gap
64
+ - During development to track progress toward release readiness
65
+
66
+ ## Legend
67
+
68
+ | Symbol | Meaning |
69
+ |--------|---------|
70
+ | ✓ | Automated check passed |
71
+ | ✗ | Automated check failed |
72
+ | ? | Requires manual human verification |
73
+ | ○ | Skipped (not applicable) |
74
+
75
+ ## Related Commands
76
+
77
+ - `/ez:release mvp v1.0.0` — Execute the actual release
78
+ - `/ez:hotfix` — Emergency fix on released version
79
+ - `/ez:standup` — Sprint health check
@@ -1,12 +1,12 @@
1
1
  ---
2
2
  name: ez:progress
3
3
  description: Check project progress, show context, and route to next action (execute or plan)
4
+ argument-hint: "[--no-auto]"
4
5
  allowed-tools:
5
6
  - Read
6
7
  - Bash
7
8
  - Grep
8
9
  - Glob
9
- - SlashCommand
10
10
  ---
11
11
  <objective>
12
12
  Check project progress, summarize recent work and what's ahead, then intelligently route to the next action - either executing an existing plan or creating the next one.
@@ -18,6 +18,18 @@ Provides situational awareness before continuing work.
18
18
  @~/.claude/ez-agents/workflows/progress.md
19
19
  </execution_context>
20
20
 
21
+ <context>
22
+ Arguments: $ARGUMENTS
23
+
24
+ **Flags:**
25
+ - `--no-auto` — Disable silent health check auto-invocation.
26
+
27
+ **Smart Orchestration (auto, unless --no-auto):**
28
+ - Pre: health check (warns in report on FAIL, does not stop progress)
29
+
30
+ Health check result is silent on pass. Only shown in output if health fails.
31
+ </context>
32
+
21
33
  <process>
22
34
  Execute the progress workflow from @~/.claude/ez-agents/workflows/progress.md end-to-end.
23
35
  Preserve all routing logic (Routes A through F) and edge case handling.
@@ -0,0 +1,153 @@
1
+ ---
2
+ name: ez:release
3
+ description: Create a tier-aware release with branch automation, changelog generation, security gates, and rollback plan.
4
+ usage: /ez:release <tier> <version>
5
+ argument-hint: "<tier> <version> | preflight <tier>"
6
+ allowed-tools:
7
+ - Read
8
+ - Write
9
+ - Edit
10
+ - Bash
11
+ - Glob
12
+ - Grep
13
+ - Task
14
+ ---
15
+
16
+ <execution_context>
17
+ @~/.claude/ez-agents/workflows/release.md
18
+ </execution_context>
19
+
20
+ <process>
21
+ Execute the release workflow from @~/.claude/ez-agents/workflows/release.md end-to-end.
22
+ Parse ARGUMENTS for tier, version, and flags before executing.
23
+ </process>
24
+
25
+ # /ez:release
26
+
27
+ Create a production release. Automates branch strategy, security gates, tier checklist, changelog generation, and rollback plan based on the target tier (mvp/medium/enterprise).
28
+
29
+ ## Usage
30
+
31
+ ```
32
+ /ez:release <tier> <version>
33
+ /ez:release preflight <tier>
34
+ ```
35
+
36
+ ## Arguments
37
+
38
+ | Argument | Required | Description |
39
+ |----------|----------|-------------|
40
+ | `tier` | Yes | `mvp`, `medium`, or `enterprise` |
41
+ | `version` | Yes | Semver version (e.g., `1.0.0`, `2.1.0`) |
42
+
43
+ ## Release Tiers
44
+
45
+ ### MVP (`/ez:release mvp v1.0.0`)
46
+ For: "Ship working software fast"
47
+ - Scope: @must scenarios only
48
+ - Coverage: 60% minimum
49
+ - Git: Trunk-based (tag directly on main)
50
+ - Checklist: 6 items
51
+ - Typical use: First public release, early access
52
+
53
+ ### Medium (`/ez:release medium v1.1.0`)
54
+ For: "Production-ready for real users"
55
+ - Scope: @must + @should scenarios
56
+ - Coverage: 80% minimum
57
+ - Git: GitHub Flow (release branch → PR → main)
58
+ - Checklist: 18 items
59
+ - Typical use: General availability, paying customers
60
+
61
+ ### Enterprise (`/ez:release enterprise v2.0.0`)
62
+ For: "Compliance-grade production"
63
+ - Scope: All MoSCoW priorities
64
+ - Coverage: 95% minimum
65
+ - Git: GitFlow (release/vX.Y.Z → develop → main)
66
+ - Checklist: 30 items
67
+ - Typical use: Enterprise customers, regulated industries
68
+
69
+ ## Auto-Invocation (Smart Orchestration)
70
+
71
+ Based on tier, this command automatically runs pre-flight checks before the release:
72
+
73
+ | Tier | Auto Pre-flight |
74
+ |------|----------------|
75
+ | `mvp` | None — proceed directly to release checklist |
76
+ | `medium` | `[auto]` verify-work (if no existing VERIFICATION.md) |
77
+ | `enterprise` | `[auto]` verify-work → `[auto]` audit-milestone → `[auto]` arch-review |
78
+
79
+ All auto-invocations appear with `[auto]` prefix in output.
80
+
81
+ Override with `--no-auto` to skip all pre-invocations.
82
+
83
+ ## Flags
84
+
85
+ | Flag | Effect |
86
+ |------|--------|
87
+ | `--no-auto` | Skip all auto pre-flight invocations |
88
+
89
+ ## What It Does
90
+
91
+ 1. **Smart pre-flight** (auto, tier-based — see above)
92
+ 2. **Validates** state (clean working tree, tests passing, coverage meets tier threshold)
93
+ 3. **Runs security gates** (no secrets, no critical vulns, no production TODOs)
94
+ 4. **Evaluates tier checklist** (6/18/30 items based on tier)
95
+ 5. **Creates release branch** (per tier git strategy)
96
+ 6. **Generates changelog** (from commits since last tag)
97
+ 7. **Bumps version** in package.json
98
+ 8. **Creates rollback plan** in `.planning/releases/`
99
+ 9. **Tags the release** with `v{version}`
100
+ 10. **Reports Production Readiness Score** (0-100)
101
+
102
+ ## Output Example
103
+
104
+ ```
105
+ ## Release: v1.0.0 (mvp tier)
106
+
107
+ Security Gates: 4/4 passed
108
+ Checklist: 6/6 items passed
109
+ Production Readiness Score: 96/100
110
+
111
+ Branch: main (trunk-based)
112
+ Tag: v1.0.0
113
+ Changelog: Updated
114
+ Rollback Plan: .planning/releases/v1.0.0-ROLLBACK-PLAN.md
115
+
116
+ ✓ Ready to push:
117
+ git push origin main && git push origin v1.0.0
118
+ ```
119
+
120
+ ## Tier Promotion
121
+
122
+ Promote tier when ready for more users:
123
+
124
+ ```bash
125
+ # Start MVP
126
+ /ez:release mvp v1.0.0
127
+
128
+ # 3 months later, enough users for proper testing
129
+ /ez:release medium v1.5.0
130
+
131
+ # Enterprise deal signed
132
+ /ez:release enterprise v2.0.0
133
+ ```
134
+
135
+ Each promotion checks that previous tier requirements are still satisfied.
136
+
137
+ ## Preflight Check
138
+
139
+ Run checklist without creating release:
140
+
141
+ ```bash
142
+ /ez:release preflight mvp
143
+ /ez:release preflight enterprise
144
+ ```
145
+
146
+ Shows which items pass/fail without creating branch or tag.
147
+
148
+ ## Related Commands
149
+
150
+ - `/ez:hotfix` — Emergency fix on released version
151
+ - `/ez:standup` — Check sprint health before release
152
+ - `/ez:arch-review` — Architecture review before release
153
+ - `/ez:verify-work` — Manual verification before release