From 2e89234e729607e7eadce54a972c940cffc80204 Mon Sep 17 00:00:00 2001 From: Garry Tan Date: Sat, 28 Mar 2026 08:11:46 -0700 Subject: [PATCH] chore: regenerate SKILL.md files from updated templates Regenerated from autoplan/SKILL.md.tmpl (dual-voice fix) and scripts/resolvers/review.ts (plan search path fix). Co-Authored-By: Claude Opus 4.6 (1M context) --- autoplan/SKILL.md | 22 ++++++++++++---------- review/SKILL.md | 7 +++++-- ship/SKILL.md | 7 +++++-- 3 files changed, 22 insertions(+), 14 deletions(-) diff --git a/autoplan/SKILL.md b/autoplan/SKILL.md index 5e8db065..c523c270 100644 --- a/autoplan/SKILL.md +++ b/autoplan/SKILL.md @@ -617,7 +617,9 @@ Override: every AskUserQuestion → auto-decide using the 6 principles. Duplicates → reject (P4). Borderline (3-5 files) → mark TASTE DECISION. - All 10 review sections: run fully, auto-decide each issue, log every decision. - Dual voices: always run BOTH Claude subagent AND Codex if available (P6). - Run them simultaneously (Agent tool for subagent, Bash for Codex). + Run them sequentially in foreground. First the Claude subagent (Agent tool, + foreground — do NOT use run_in_background), then Codex (Bash). Both must + complete before building the consensus table. **Codex CEO voice** (via Bash): ```bash @@ -644,7 +646,7 @@ Override: every AskUserQuestion → auto-decide using the 6 principles. 5. What's the competitive risk — could someone else solve this first/better? For each finding: what's wrong, severity (critical/high/medium), and the fix." - **Error handling:** All non-blocking. Codex auth/timeout/empty → proceed with + **Error handling:** Both calls block in foreground. Codex auth/timeout/empty → proceed with Claude subagent only, tagged `[single-model]`. If Claude subagent also fails → "Outside voices unavailable — continuing with primary review." @@ -665,10 +667,10 @@ Step 0 (0A-0F) — run each sub-step and produce: - 0E: Temporal interrogation (HOUR 1 → HOUR 6+) - 0F: Mode selection confirmation -Step 0.5 (Dual Voices): Run Claude subagent AND Codex simultaneously. Present -Codex output under CODEX SAYS (CEO — strategy challenge) header. Present subagent -output under CLAUDE SUBAGENT (CEO — strategic independence) header. Produce CEO -consensus table: +Step 0.5 (Dual Voices): Run Claude subagent (foreground Agent tool) first, then +Codex (Bash). Present Codex output under CODEX SAYS (CEO — strategy challenge) +header. Present subagent output under CLAUDE SUBAGENT (CEO — strategic independence) +header. Produce CEO consensus table: ``` CEO DUAL VOICES — CONSENSUS TABLE: @@ -761,7 +763,7 @@ Override: every AskUserQuestion → auto-decide using the 6 principles. For each finding: what's wrong, severity (critical/high/medium), and the fix." NO prior-phase context — subagent must be truly independent. - Error handling: same as Phase 1 (non-blocking, degradation matrix applies). + Error handling: same as Phase 1 (both foreground/blocking, degradation matrix applies). - Design choices: if codex disagrees with a design decision with valid UX reasoning → TASTE DECISION. @@ -770,7 +772,7 @@ Override: every AskUserQuestion → auto-decide using the 6 principles. 1. Step 0 (Design Scope): Rate completeness 0-10. Check DESIGN.md. Map existing patterns. -2. Step 0.5 (Dual Voices): Run Claude subagent AND Codex simultaneously. Present under +2. Step 0.5 (Dual Voices): Run Claude subagent (foreground) first, then Codex. Present under CODEX SAYS (design — UX challenge) and CLAUDE SUBAGENT (design — independent review) headers. Produce design litmus scorecard (consensus table). Use the litmus scorecard format from plan-design-review. Include CEO phase findings in Codex prompt ONLY @@ -831,7 +833,7 @@ Override: every AskUserQuestion → auto-decide using the 6 principles. For each finding: what's wrong, severity, and the fix." NO prior-phase context — subagent must be truly independent. - Error handling: same as Phase 1 (non-blocking, degradation matrix applies). + Error handling: same as Phase 1 (both foreground/blocking, degradation matrix applies). - Architecture choices: explicit over clever (P5). If codex disagrees with valid reason → TASTE DECISION. - Evals: always include all relevant suites (P1) @@ -843,7 +845,7 @@ Override: every AskUserQuestion → auto-decide using the 6 principles. 1. Step 0 (Scope Challenge): Read actual code referenced by the plan. Map each sub-problem to existing code. Run the complexity check. Produce concrete findings. -2. Step 0.5 (Dual Voices): Run Claude subagent AND Codex simultaneously. Present +2. Step 0.5 (Dual Voices): Run Claude subagent (foreground) first, then Codex. Present Codex output under CODEX SAYS (eng — architecture challenge) header. Present subagent output under CLAUDE SUBAGENT (eng — independent review) header. Produce eng consensus table: diff --git a/review/SKILL.md b/review/SKILL.md index f11c708f..6c8152a4 100644 --- a/review/SKILL.md +++ b/review/SKILL.md @@ -417,8 +417,11 @@ Before reviewing code quality, check: **did they build what was requested — no setopt +o nomatch 2>/dev/null || true # zsh compat BRANCH=$(git branch --show-current 2>/dev/null | tr '/' '-') REPO=$(basename "$(git rev-parse --show-toplevel 2>/dev/null)") -# Search common plan file locations -for PLAN_DIR in "$HOME/.claude/plans" "$HOME/.codex/plans" ".gstack/plans"; do +# Compute project slug for ~/.gstack/projects/ lookup +_PLAN_SLUG=$(git remote get-url origin 2>/dev/null | sed 's|.*[:/]\([^/]*/[^/]*\)\.git$|\1|;s|.*[:/]\([^/]*/[^/]*\)$|\1|' | tr '/' '-' | tr -cd 'a-zA-Z0-9._-') || true +_PLAN_SLUG="${_PLAN_SLUG:-$(basename "$PWD" | tr -cd 'a-zA-Z0-9._-')}" +# Search common plan file locations (project designs first, then personal/local) +for PLAN_DIR in "$HOME/.gstack/projects/$_PLAN_SLUG" "$HOME/.claude/plans" "$HOME/.codex/plans" ".gstack/plans"; do [ -d "$PLAN_DIR" ] || continue PLAN=$(ls -t "$PLAN_DIR"/*.md 2>/dev/null | xargs grep -l "$BRANCH" 2>/dev/null | head -1) [ -z "$PLAN" ] && PLAN=$(ls -t "$PLAN_DIR"/*.md 2>/dev/null | xargs grep -l "$REPO" 2>/dev/null | head -1) diff --git a/ship/SKILL.md b/ship/SKILL.md index 9b51fabc..58b80e1a 100644 --- a/ship/SKILL.md +++ b/ship/SKILL.md @@ -1149,8 +1149,11 @@ Repo: {owner/repo} setopt +o nomatch 2>/dev/null || true # zsh compat BRANCH=$(git branch --show-current 2>/dev/null | tr '/' '-') REPO=$(basename "$(git rev-parse --show-toplevel 2>/dev/null)") -# Search common plan file locations -for PLAN_DIR in "$HOME/.claude/plans" "$HOME/.codex/plans" ".gstack/plans"; do +# Compute project slug for ~/.gstack/projects/ lookup +_PLAN_SLUG=$(git remote get-url origin 2>/dev/null | sed 's|.*[:/]\([^/]*/[^/]*\)\.git$|\1|;s|.*[:/]\([^/]*/[^/]*\)$|\1|' | tr '/' '-' | tr -cd 'a-zA-Z0-9._-') || true +_PLAN_SLUG="${_PLAN_SLUG:-$(basename "$PWD" | tr -cd 'a-zA-Z0-9._-')}" +# Search common plan file locations (project designs first, then personal/local) +for PLAN_DIR in "$HOME/.gstack/projects/$_PLAN_SLUG" "$HOME/.claude/plans" "$HOME/.codex/plans" ".gstack/plans"; do [ -d "$PLAN_DIR" ] || continue PLAN=$(ls -t "$PLAN_DIR"/*.md 2>/dev/null | xargs grep -l "$BRANCH" 2>/dev/null | head -1) [ -z "$PLAN" ] && PLAN=$(ls -t "$PLAN_DIR"/*.md 2>/dev/null | xargs grep -l "$REPO" 2>/dev/null | head -1)