Skip to content
This repository was archived by the owner on Apr 11, 2026. It is now read-only.

Commit 576238d

Browse files
z23ccclaude
andcommitted
fix(pipeline): enforce zero-interaction contract across entire go pipeline (v0.1.37)
- flow-code-run: add explicit ZERO-INTERACTION CONTRACT header — no AskUserQuestion anywhere in the pipeline - brainstorm: auto-detect pipeline invocation and force Auto mode (both skills/ and codex/skills/ copies) - plan: "If empty, ask" now conditional on standalone invocation only - work: "If no input, ask" now conditional on standalone invocation only - brainstorm in run SKILL.md: explicitly marked as AUTO mode All sub-skills already had "Never use AskUserQuestion" in review loops. This closes the remaining gaps in brainstorm and plan/work input handling. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent 39c18be commit 576238d

5 files changed

Lines changed: 14 additions & 5 deletions

File tree

codex/skills/flow-code-brainstorm/SKILL.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,8 @@ user-invocable: false
99

1010
Explore and pressure-test an idea before committing to a plan. Outputs a requirements doc that feeds directly into `/flow-code:plan`.
1111

12+
**Pipeline auto-detection**: If this skill is invoked as part of the `/flow-code:go` pipeline (detected by: epic already exists, or `flow-code-run` is the caller), ALWAYS use Auto mode — AI self-interview with zero human input. Do NOT use `AskUserQuestion`. The go pipeline has a zero-interaction contract.
13+
1214
**IMPORTANT**: This plugin uses `.flow/` for ALL task tracking. Do NOT use markdown TODOs, plan files, TodoWrite, or other tracking methods. All task state must be read and written via `flowctl`.
1315

1416
**CRITICAL: flowctl is BUNDLED — NOT installed globally.** `which flowctl` will fail (expected). Always use:

codex/skills/flow-code-plan/SKILL.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,8 @@ Examples:
7272
- `/flow-code:plan fn-1` (legacy formats fn-1, fn-1-xxx still supported)
7373
- `/flow-code:plan fn-1-add-oauth then review via /flow-code:plan-review`
7474

75-
If empty, ask: "What should I plan? Give me the feature or bug in 1-5 sentences."
75+
If empty and invoked standalone: ask "What should I plan? Give me the feature or bug in 1-5 sentences."
76+
If empty and invoked from `/flow-code:go` pipeline: this should never happen (go always provides input). If it does, derive the plan target from the epic title or requirements doc — never block on user input.
7677

7778
## Context Analysis (replaces setup questions)
7879

codex/skills/flow-code-work/SKILL.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,8 @@ Examples:
5656
- `/flow-code:work Add rate limiting`
5757
- `/flow-code:work fn-1-add-oauth then review via /flow-code:impl-review`
5858

59-
If no input provided, ask for it.
59+
If no input provided and invoked standalone: ask for it.
60+
If invoked from `/flow-code:go` pipeline: input is always the epic ID from the plan phase — never block on user input.
6061

6162
## Context Analysis (replaces setup questions)
6263

skills/flow-code-brainstorm/SKILL.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,10 @@ user-invocable: false
1010
Explore and pressure-test an idea before committing to a plan. Outputs a requirements doc that feeds directly into `/flow-code:plan`.
1111

1212
**Two modes:**
13-
- **Interactive** (default): asks user questions via `AskUserQuestion`
14-
- **Auto** (`--auto`): AI self-interview — analyzes codebase, asks itself questions, answers from code evidence, produces refined spec with zero human input
13+
- **Interactive** (default when invoked standalone via `/flow-code:brainstorm`): asks user questions via `AskUserQuestion`
14+
- **Auto** (`--auto`, or when invoked from `/flow-code:go` pipeline): AI self-interview — analyzes codebase, asks itself questions, answers from code evidence, produces refined spec with zero human input
15+
16+
**Pipeline auto-detection**: If this skill is invoked as part of the `/flow-code:go` pipeline (detected by: epic already exists, or `flow-code-run` is the caller), ALWAYS use Auto mode regardless of flags. The go pipeline has a zero-interaction contract.
1517

1618
**IMPORTANT**: This plugin uses `.flow/` for ALL task tracking. Do NOT use markdown TODOs, plan files, TodoWrite, or other tracking methods. All task state must be read and written via `flowctl`.
1719

skills/flow-code-run/SKILL.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,8 @@ user-invocable: false
1212
1313
Internal pipeline engine. Drives the entire development lifecycle (brainstorm, plan, work, review, close) through flowctl phase next/done. Invoked by `/flow-code:go`.
1414

15+
**ZERO-INTERACTION CONTRACT**: This pipeline runs fully autonomously. You MUST NOT use `AskUserQuestion` at any point. All decisions are made automatically based on codebase analysis, config, and best-practice defaults. If information is missing, use the best available default — never block on user input.
16+
1517
**CRITICAL: flowctl is BUNDLED.** Always use:
1618
```bash
1719
FLOWCTL="$HOME/.flow/bin/flowctl"
@@ -65,7 +67,8 @@ Detect input type to decide whether to execute or skip:
6567
1. Run: `$FLOWCTL phase done --epic $EPIC_ID --phase brainstorm --json`
6668
2. Proceed to Plan phase
6769

68-
**Execute brainstorm** (input is natural language — a new idea):
70+
**Execute brainstorm** (input is natural language — a new idea).
71+
**This is always AUTO mode — AI self-interview, no AskUserQuestion, no human input.**
6972
1. **Codebase context**: Search for files related to the request (Grep/Glob for key terms), read git log for recent changes, check existing `.flow/` specs for related work
7073
2. **Classify complexity**: Trivial (1-2 files) / Medium (clear feature) / Large (cross-cutting)
7174
3. **Self-interview**: Ask and answer 6-10 Q&A pairs grounded in code evidence. Core questions:

0 commit comments

Comments
 (0)