create-issflow 1.8.0 → 1.8.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/bin/cli.js CHANGED
@@ -201,22 +201,28 @@ const NEXT_STEPS = {
201
201
  function agentsMd() {
202
202
  return [
203
203
  '# AGENTS.md — iStartSoftFlow', '',
204
- 'This repo runs the **iStartSoftFlow** agentic dev workflow. The complete,',
205
- 'tool-agnostic methodology — the loop, roles, procedures, rituals, and hard',
206
- 'rules — lives in ONE file. Read it before acting:', '',
204
+ 'This repo runs the **iStartSoftFlow** agentic dev workflow.', '',
205
+ '**Primary entry (this file).** The complete, tool-agnostic methodology — loop,',
206
+ 'roles, procedures, rituals, hard rules — lives in ONE place. Read before acting:', '',
207
207
  '> **`.claude/istartsoft-flow/METHODOLOGY.md`** ← single source of truth.', '',
208
- 'Do not restate its rules elsewhere; this file only indexes it (anti-drift invariant).', '',
208
+ 'The portable kit lives in **`.claude/`** (folder name = host convention for',
209
+ 'commands/agents/hooks — content is tool-agnostic; see `.claude/README.md`).',
210
+ 'Do not restate METHODOLOGY rules elsewhere (anti-drift).', '',
209
211
  '## The loop', '',
210
- 'design-research → grill ×2 → plan → implement → test → deploy — one VERTICAL',
211
- 'SLICE per phase. Phase 0 (infra) leads only when infra is self-managed.', '',
212
+ 'design-research → grill ×2 → plan → (propose/design if quoted) → implement →',
213
+ 'test → deploy — one VERTICAL SLICE per phase. Phase 0 (infra) only when',
214
+ 'infra is self-managed.', '',
212
215
  '## Roles — `.claude/agents/`', '',
213
216
  'planner · researcher · implementer · test-author · debugger · e2e-runner · synthesizer', '',
214
217
  '## Procedures — `.claude/commands/` (run as `/name`)', '',
215
- '/overview · /feature · /goal · /propose · /phase · /sprint · /ui-audit · /qa-audit ·',
216
- '/security-audit · /release · /uat · /change-request · /replan · /quick · /synthesize ·',
217
- '/runbook · /store-wisdom · /log-issue · /log-decision · /unstuck', '',
218
+ '**Default:** `/overview` · `/feature` · `/quick`', '',
219
+ '**Advanced:** `/propose` · `/design` · `/support` · `/phase` · `/sprint` · `/goal` ·',
220
+ '`/ui-audit` · `/qa-audit` · `/security-audit` · `/release` · `/uat` ·',
221
+ '`/change-request` · `/replan` · `/synthesize` · `/runbook` · `/store-wisdom` ·',
222
+ '`/log-issue` · `/log-decision` · `/unstuck`', '',
218
223
  '## Skills — `.claude/skills/` (loaded on demand)', '',
219
- 'caveman · grill-me · karpathy-guidelines · ux-design · security (Secure SDLC) · code-standards', '',
224
+ 'caveman · grill-me · karpathy-guidelines · ux-design · security · code-standards ·',
225
+ 'support-triage', '',
220
226
  '## Autonomy', '',
221
227
  'Planning (`/overview` grill + plan approval) always asks — that input is cheap.',
222
228
  '**AUTO (default)** governs the DEV loop: follow the plan, decide + log + continue,',
@@ -225,16 +231,8 @@ function agentsMd() {
225
231
  'mid-flow. **GUIDED** asks at each fork in dev too. Declare the mode in',
226
232
  '`docs/OVERVIEW.md`. See METHODOLOGY → Autonomy.', '',
227
233
  '## Hard-rule index (full text in METHODOLOGY.md)', '',
228
- '1 grep ISSUES + research before debugging · 2 debug cap = 3 (AUTO: park + continue) ·',
229
- '3 log every fix · 4 synthesize + context-reset per phase · 5 phase gate = real suite',
230
- 'green · 6 blind tests (RED-first) · 7 programmatic E2E auth · 8 log-decision on arch',
231
- 'change · 9 UI conforms to the `ux-design` cookbook + wireframe frame · 10 no-rationalization ·',
232
- '11 Secure SDLC: threat-model → secure coding → SAST/SCA/secrets each phase → pentest',
233
- 'gate + security review before deploy (`security` skill) · 12 code-standards gate:',
234
- 'lint/format clean + naming per language idiom + declared architecture (`code-standards`) ·',
235
- '13 PLAN-APPROVAL gate: no phase/sprint starts until `docs/PLAN.md` is human-approved ·',
236
- '14 UNDERSTAND-FIRST gate: brief back any new free-text task and wait for confirm',
237
- 'before executing (an approved PLAN/FEATURE/CR/goal is the recorded confirmation).', '',
234
+ '1–12 as in METHODOLOGY · 13 PLAN-APPROVAL · 14 UNDERSTAND-FIRST ·',
235
+ '15 DESIGN + ARCHITECTURE gates (after proposal, before `/phase`; internal may n/a).', '',
238
236
  '## Your stack', '',
239
237
  'Declare your stack (language, framework, infra, auth, test + E2E runner,',
240
238
  'planning source) once in `docs/OVERVIEW.md`. Every rule references *your declared',
@@ -244,17 +242,14 @@ function agentsMd() {
244
242
 
245
243
  function claudeMd() {
246
244
  return [
247
- '# CLAUDE.md — iStartSoftFlow (Claude Code entry)', '',
245
+ '# CLAUDE.md — host shim for Claude Code', '',
248
246
  '@AGENTS.md', '',
249
- 'The import above is the single source of truth — it points to',
250
- '`.claude/istartsoft-flow/METHODOLOGY.md` (read on demand). Do NOT restate any',
251
- 'rule here; this file only wires Claude-native mechanisms (anti-drift invariant).', '',
252
- '## Claude-native wiring (automatic — see `.claude/settings.json`)', '',
253
- '- **SessionStart** hook injects git state + `docs/STATE.md` + open `docs/ISSUES.md`',
254
- ' + the rule summary each session — read those first.',
255
- '- **PreCompact** + **SubagentStop** hooks run their rituals automatically.',
256
- '- Commands in `.claude/commands/` run as `/name`; agents in `.claude/agents/` are',
257
- ' native subagents.', '',
247
+ 'Claude Code auto-loads **this filename only**. The import above is the real',
248
+ 'entry (`AGENTS.md` → METHODOLOGY). Do NOT restate rules here.', '',
249
+ '## Host wiring (automatic — see `.claude/settings.json`)', '',
250
+ '- **SessionStart** injects git state + `docs/STATE.md` + open `docs/ISSUES.md`.',
251
+ '- **PreCompact** + **SubagentStop** rituals run automatically.',
252
+ '- Commands in `.claude/commands/` → `/name`; agents in `.claude/agents/` → native subagents.', '',
258
253
  ].join('\n');
259
254
  }
260
255
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "create-issflow",
3
- "version": "1.8.0",
3
+ "version": "1.8.1",
4
4
  "description": "Scaffold the iStartSoftFlow AI-coding workflow into a project. Stack-agnostic, tool-agnostic (Claude Code, Codex, Cursor, Gemini, Aider), non-destructive.",
5
5
  "bin": {
6
6
  "create-issflow": "bin/cli.js"
@@ -0,0 +1,33 @@
1
+ # `.claude/` — portable iStartSoftFlow kit
2
+
3
+ This directory is the **portable workflow kit** installed into every project.
4
+ Content is **tool-agnostic**. The folder name `.claude/` is a **host convention**
5
+ (Claude Code and several other agents load commands/agents/hooks from this path).
6
+ It is **not** “Claude-only product branding.”
7
+
8
+ **Human entry points (repo root):**
9
+
10
+ | File | Role |
11
+ |------|------|
12
+ | `AGENTS.md` | Open-standard primary entry — indexes this kit |
13
+ | `CLAUDE.md` | Thin shim (`@AGENTS.md`) — only because Claude Code auto-loads that filename |
14
+
15
+ **Single source of truth for rules:** [`istartsoft-flow/METHODOLOGY.md`](./istartsoft-flow/METHODOLOGY.md)
16
+
17
+ ## Layout
18
+
19
+ | Path | What |
20
+ |------|------|
21
+ | `agents/` | Fresh-context workers (planner, researcher, implementer, …) |
22
+ | `commands/` | Procedures — Default: `/overview` `/feature` `/quick`; Advanced: `/propose` `/design` `/support` … |
23
+ | `skills/` | On-demand cookbooks (ux-design, security, support-triage, …) |
24
+ | `hooks/` | Lifecycle enforcement (context, plan gate, feature gate, …) |
25
+ | `istartsoft-flow/` | METHODOLOGY.md — every hard rule lives here once |
26
+ | `templates/` | Proposal / UX pack / architecture / CR / FEATURE / automation |
27
+ | `settings.json` | Host hook wiring (when using Claude Code adapter) |
28
+ | `flow-config.json` | Context watchdog + sprint knobs (optional overrides) |
29
+
30
+ Do **not** duplicate METHODOLOGY rules into other files (anti-drift).
31
+ Do **not** put personal rate cards or salary numbers in this kit.
32
+
33
+ Installer: `npx create-issflow` (omit `--tool` = all adapters).
@@ -1,16 +1,20 @@
1
1
  # iStartSoftFlow — portable agent methodology (single source of truth)
2
2
 
3
- > **The iStartSoft execution loop.** Namespaced under `.claude/istartsoft-flow/`
4
- > so it coexists with a repo's own agent-instruction files (`CLAUDE.md`,
5
- > `AGENTS.md`, `GEMINI.md`, …) — it does NOT replace them. The kit is
6
- > **stack-agnostic and tool-agnostic**: it pins a *process*, not a *stack*.
7
- > Declare your stack (language, framework, infra, auth, test + E2E runner,
8
- > planning source) once in `docs/OVERVIEW.md`; every rule below references *your
9
- > declared stack* and hardcodes none. If infra is **managed** (a PaaS + a managed
10
- > datastore), Phase 0 (infra) is N/A and phases begin at the first vertical slice;
11
- > otherwise Phase 0 provisions infra first. Planning source of truth stays in your
12
- > PRD / architecture / stories (e.g. BMAD / iSSM); iStartSoftFlow is the execution
13
- > loop layered on top.
3
+ > **The iStartSoft execution loop.** Lives under `.claude/istartsoft-flow/` as
4
+ > part of the **portable kit**. The directory name `.claude/` is a **host
5
+ > convention** (several agents load commands/hooks from that path) — not
6
+ > Claude-only branding. Primary human entry is root **`AGENTS.md`** (open
7
+ > standard). `CLAUDE.md` / `GEMINI.md` / … are thin host adapters that point
8
+ > here; they do NOT replace this file.
9
+ >
10
+ > The kit is **stack-agnostic and tool-agnostic**: it pins a *process*, not a
11
+ > *stack*. Declare your stack (language, framework, infra, auth, test + E2E
12
+ > runner, planning source) once in `docs/OVERVIEW.md`; every rule below
13
+ > references *your declared stack* and hardcodes none. If infra is **managed**
14
+ > (a PaaS + a managed datastore), Phase 0 (infra) is N/A and phases begin at the
15
+ > first vertical slice; otherwise Phase 0 provisions infra first. Planning source
16
+ > of truth stays in your PRD / architecture / stories (e.g. BMAD / iSSM);
17
+ > iStartSoftFlow is the execution loop layered on top.
14
18
 
15
19
  <!-- ISTARTSOFTFLOW-AGENTS-SENTINEL-v2.0 -->
16
20
  > **SENTINEL.** The HTML comment above (`ISTARTSOFTFLOW-AGENTS-SENTINEL-v2.0`) is a
@@ -23,10 +27,11 @@
23
27
  > open `AGENTS.md` standard, get the full methodology from here.
24
28
 
25
29
  > **Anti-drift invariant (load-bearing).** Every rule lives in exactly ONE place:
26
- > this file. `CLAUDE.md` restates NO rule — it only maps roles to Claude-native
27
- > files and says "native mechanism X performs ritual Y automatically." A rule and
28
- > its automation may never contradict. Duplication between files is an
29
- > architectural defect, not a convenience.
30
+ > this file. Host entry files (`AGENTS.md`, `CLAUDE.md`, `GEMINI.md`, …) restate
31
+ > NO rule — they only index this file and wire host-native mechanisms
32
+ > ("mechanism X performs ritual Y automatically"). A rule and its automation may
33
+ > never contradict. Duplication between files is an architectural defect, not a
34
+ > convenience.
30
35
 
31
36
  Caveman ULTRA mode always on. Apply the `karpathy-guidelines` skill (engineering
32
37
  discipline) on every coding and debugging task. Apply the `ux-design` skill (the UX
@@ -694,19 +699,19 @@ the KB. The kit works normally without a KB.
694
699
 
695
700
  ## Capability matrix (which host gets what)
696
701
 
697
- The kit is single-source (`.claude/` + this file). `create-issflow --tool=<host>`
698
- writes the right adapter; unsupported features degrade to model-run rituals, never
699
- silently vanish. The portable assets (agents, commands, skills, methodology) are
700
- the same everywhere — only the *wiring* differs.
702
+ Single-source kit: **`.claude/` tree** (portable) + **this file** (rules) + root
703
+ **`AGENTS.md`** (open-standard entry). `create-issflow --tool=<host>` (omit =
704
+ all) writes adapters; unsupported features degrade to model-run rituals, never
705
+ silently vanish. Assets are the same everywhere — only the *wiring* differs.
701
706
 
702
707
  | Host | Entry file | Commands | Subagents | Lifecycle hooks | Shared KB |
703
708
  |------|-----------|----------|-----------|-----------------|-----------|
704
- | **Claude Code** (reference) | `CLAUDE.md` (`@AGENTS.md`) + `.claude/` | `.claude/commands/` | native | SessionStart · PreToolUse (context watchdog + rule-13 plan gate) · PreCompact · SubagentStop · Stop (feature gate) | yes |
709
+ | **Any AGENTS.md host** | `AGENTS.md` | read as reference | model-run | model-run | yes |
705
710
  | **Codex CLI** | `AGENTS.md` (native) | `.claude/commands/` (read as prompts) | read as reference | model-run | yes |
706
711
  | **Cursor** | `.cursor/rules/` + `AGENTS.md` | `.cursor/commands/` | reads `.claude/agents/` | `.cursor/hooks.json` (sessionStart · subagentStop) | yes |
707
712
  | **Gemini CLI** | `GEMINI.md` + `AGENTS.md` | `.claude/commands/` (read as prompts) | read as reference | model-run | yes |
708
713
  | **Aider** | `.aider.conf.yml` → `AGENTS.md` | read as reference | model-run | model-run | yes |
709
- | **Any AGENTS.md host** | `AGENTS.md` | read as reference | model-run | model-run | yes |
714
+ | **Claude Code** | `CLAUDE.md` (`@AGENTS.md`) + `.claude/` | `.claude/commands/` | native | SessionStart · PreToolUse (context watchdog + plan gate) · PreCompact · SubagentStop · Stop | yes |
710
715
 
711
716
  "model-run" = the host can't automate the ritual, so the model performs it by hand
712
717
  (SESSION-OPEN at the top of each session; the COMPRESS snapshot before a reset).