diff --git a/autoplan/SKILL.md b/autoplan/SKILL.md index 100a5fada..0cc6c8dca 100644 --- a/autoplan/SKILL.md +++ b/autoplan/SKILL.md @@ -328,9 +328,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"autoplan","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"autoplan","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/canary/SKILL.md b/canary/SKILL.md index 6afe2cf1a..471a844be 100644 --- a/canary/SKILL.md +++ b/canary/SKILL.md @@ -321,9 +321,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"canary","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"canary","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/codex/SKILL.md b/codex/SKILL.md index fa6b8a20b..95dcf1135 100644 --- a/codex/SKILL.md +++ b/codex/SKILL.md @@ -324,9 +324,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"codex","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"codex","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/context-restore/SKILL.md b/context-restore/SKILL.md index 5698510ac..7e2afa5f3 100644 --- a/context-restore/SKILL.md +++ b/context-restore/SKILL.md @@ -325,9 +325,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"context-restore","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"context-restore","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/context-save/SKILL.md b/context-save/SKILL.md index 364bb4e1a..5ba78590e 100644 --- a/context-save/SKILL.md +++ b/context-save/SKILL.md @@ -324,9 +324,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"context-save","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"context-save","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/cso/SKILL.md b/cso/SKILL.md index 574f7b8ea..ecffdd581 100644 --- a/cso/SKILL.md +++ b/cso/SKILL.md @@ -327,9 +327,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"cso","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"cso","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/design-consultation/SKILL.md b/design-consultation/SKILL.md index f9ec11ce4..5aff1b9e1 100644 --- a/design-consultation/SKILL.md +++ b/design-consultation/SKILL.md @@ -347,9 +347,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"design-consultation","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"design-consultation","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/design-html/SKILL.md b/design-html/SKILL.md index 0ad7d67b6..1ebd2e5f1 100644 --- a/design-html/SKILL.md +++ b/design-html/SKILL.md @@ -328,9 +328,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"design-html","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"design-html","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/design-review/SKILL.md b/design-review/SKILL.md index 94948caab..c8ce6d3cf 100644 --- a/design-review/SKILL.md +++ b/design-review/SKILL.md @@ -325,9 +325,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"design-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"design-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/design-shotgun/SKILL.md b/design-shotgun/SKILL.md index 63f13694f..eedaf658e 100644 --- a/design-shotgun/SKILL.md +++ b/design-shotgun/SKILL.md @@ -342,9 +342,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"design-shotgun","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"design-shotgun","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/devex-review/SKILL.md b/devex-review/SKILL.md index 9378041ed..4b38c42b4 100644 --- a/devex-review/SKILL.md +++ b/devex-review/SKILL.md @@ -327,9 +327,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"devex-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"devex-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/document-generate/SKILL.md b/document-generate/SKILL.md index 3aca27ef6..90c2e8fa9 100644 --- a/document-generate/SKILL.md +++ b/document-generate/SKILL.md @@ -327,9 +327,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"document-generate","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"document-generate","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/document-release/SKILL.md b/document-release/SKILL.md index 533b87021..114ad40b5 100644 --- a/document-release/SKILL.md +++ b/document-release/SKILL.md @@ -325,9 +325,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"document-release","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"document-release","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/health/SKILL.md b/health/SKILL.md index ba0a83284..32eff0c1c 100644 --- a/health/SKILL.md +++ b/health/SKILL.md @@ -323,9 +323,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"health","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"health","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/investigate/SKILL.md b/investigate/SKILL.md index 91cbd4028..49f76c650 100644 --- a/investigate/SKILL.md +++ b/investigate/SKILL.md @@ -362,9 +362,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"investigate","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"investigate","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/ios-clean/SKILL.md b/ios-clean/SKILL.md index 0e2695ee3..028812898 100644 --- a/ios-clean/SKILL.md +++ b/ios-clean/SKILL.md @@ -325,9 +325,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-clean","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-clean","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/ios-design-review/SKILL.md b/ios-design-review/SKILL.md index e63bb6ccc..03cc986a7 100644 --- a/ios-design-review/SKILL.md +++ b/ios-design-review/SKILL.md @@ -327,9 +327,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-design-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-design-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/ios-fix/SKILL.md b/ios-fix/SKILL.md index bfd6d839d..3fb54afd0 100644 --- a/ios-fix/SKILL.md +++ b/ios-fix/SKILL.md @@ -328,9 +328,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-fix","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-fix","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/ios-qa/SKILL.md b/ios-qa/SKILL.md index 477e97c18..f9dbc02e6 100644 --- a/ios-qa/SKILL.md +++ b/ios-qa/SKILL.md @@ -331,9 +331,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-qa","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-qa","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/ios-sync/SKILL.md b/ios-sync/SKILL.md index 5d8f0b361..f0cd10840 100644 --- a/ios-sync/SKILL.md +++ b/ios-sync/SKILL.md @@ -325,9 +325,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-sync","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ios-sync","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/land-and-deploy/SKILL.md b/land-and-deploy/SKILL.md index e4f138704..b711edc55 100644 --- a/land-and-deploy/SKILL.md +++ b/land-and-deploy/SKILL.md @@ -320,9 +320,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"land-and-deploy","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"land-and-deploy","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/landing-report/SKILL.md b/landing-report/SKILL.md index a54bf5463..e7a92dce3 100644 --- a/landing-report/SKILL.md +++ b/landing-report/SKILL.md @@ -322,9 +322,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"landing-report","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"landing-report","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/learn/SKILL.md b/learn/SKILL.md index 2c4fcff31..8b8652306 100644 --- a/learn/SKILL.md +++ b/learn/SKILL.md @@ -323,9 +323,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"learn","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"learn","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/office-hours/SKILL.md b/office-hours/SKILL.md index d225dae17..da399d961 100644 --- a/office-hours/SKILL.md +++ b/office-hours/SKILL.md @@ -358,9 +358,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"office-hours","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"office-hours","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/pair-agent/SKILL.md b/pair-agent/SKILL.md index 0b7660775..fdd5eba80 100644 --- a/pair-agent/SKILL.md +++ b/pair-agent/SKILL.md @@ -324,9 +324,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"pair-agent","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"pair-agent","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/plan-ceo-review/SKILL.md b/plan-ceo-review/SKILL.md index 56ebe623c..db7c12fa3 100644 --- a/plan-ceo-review/SKILL.md +++ b/plan-ceo-review/SKILL.md @@ -350,9 +350,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-ceo-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-ceo-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/plan-design-review/SKILL.md b/plan-design-review/SKILL.md index 25230ee84..921d6e5a6 100644 --- a/plan-design-review/SKILL.md +++ b/plan-design-review/SKILL.md @@ -323,9 +323,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-design-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-design-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/plan-devex-review/SKILL.md b/plan-devex-review/SKILL.md index 5fb64bad1..5626c73e4 100644 --- a/plan-devex-review/SKILL.md +++ b/plan-devex-review/SKILL.md @@ -328,9 +328,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-devex-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-devex-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/plan-eng-review/SKILL.md b/plan-eng-review/SKILL.md index 6a60f7e2b..edaba0484 100644 --- a/plan-eng-review/SKILL.md +++ b/plan-eng-review/SKILL.md @@ -326,9 +326,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-eng-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-eng-review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/plan-tune/SKILL.md b/plan-tune/SKILL.md index bffe95dd1..5a63db891 100644 --- a/plan-tune/SKILL.md +++ b/plan-tune/SKILL.md @@ -333,9 +333,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-tune","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-tune","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/qa-only/SKILL.md b/qa-only/SKILL.md index 55f359532..9de1cca6d 100644 --- a/qa-only/SKILL.md +++ b/qa-only/SKILL.md @@ -323,9 +323,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"qa-only","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"qa-only","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/qa/SKILL.md b/qa/SKILL.md index b5488a08d..aa5a60782 100644 --- a/qa/SKILL.md +++ b/qa/SKILL.md @@ -329,9 +329,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"qa","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"qa","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/retro/SKILL.md b/retro/SKILL.md index ae8edc8d2..feeef976e 100644 --- a/retro/SKILL.md +++ b/retro/SKILL.md @@ -343,9 +343,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"retro","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"retro","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/review/SKILL.md b/review/SKILL.md index 931ef141d..379719325 100644 --- a/review/SKILL.md +++ b/review/SKILL.md @@ -325,9 +325,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"review","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/setup-deploy/SKILL.md b/setup-deploy/SKILL.md index 0f5d5c7c7..5be1007dd 100644 --- a/setup-deploy/SKILL.md +++ b/setup-deploy/SKILL.md @@ -324,9 +324,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"setup-deploy","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"setup-deploy","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/setup-gbrain/SKILL.md b/setup-gbrain/SKILL.md index 4c8d1d50d..9fb157d0b 100644 --- a/setup-gbrain/SKILL.md +++ b/setup-gbrain/SKILL.md @@ -323,9 +323,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"setup-gbrain","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"setup-gbrain","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/ship/SKILL.md b/ship/SKILL.md index b1a61b877..260fe964d 100644 --- a/ship/SKILL.md +++ b/ship/SKILL.md @@ -325,9 +325,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ship","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ship","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/skillify/SKILL.md b/skillify/SKILL.md index 0ccef072b..8e8e9fb77 100644 --- a/skillify/SKILL.md +++ b/skillify/SKILL.md @@ -322,9 +322,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"skillify","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"skillify","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/spec/SKILL.md b/spec/SKILL.md index a9bf6606c..bca9b39f4 100644 --- a/spec/SKILL.md +++ b/spec/SKILL.md @@ -323,9 +323,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"spec","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"spec","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/sync-gbrain/SKILL.md b/sync-gbrain/SKILL.md index 67e8079b3..b238bc128 100644 --- a/sync-gbrain/SKILL.md +++ b/sync-gbrain/SKILL.md @@ -324,9 +324,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"sync-gbrain","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"sync-gbrain","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/test/fixtures/context-budget.json b/test/fixtures/context-budget.json index 10f0c7cf7..bcf18f608 100644 --- a/test/fixtures/context-budget.json +++ b/test/fixtures/context-budget.json @@ -2,64 +2,64 @@ "_comment": "Context-budget ratchet ceilings (~tokens). Regenerate: bun test/helpers/capture-context-budget.ts. Headroom: alwaysOnTotal x1.05, eagerPerInvocation x1.1. Graded by test/context-budget-ratchet.test.ts via lib/context-bill.ts checkBudget.", "alwaysOnTotal": 6344, "eagerPerInvocation": { - "autoplan": 15337, + "autoplan": 15370, "benchmark": 4856, "benchmark-models": 3829, "browse": 7022, "browser-skills/hackernews-frontpage": 371, - "canary": 9921, + "canary": 9954, "careful": 919, - "codex": 14412, - "context-restore": 8934, - "context-save": 9551, - "cso": 14524, - "design-consultation": 12985, - "design-html": 12841, - "design-review": 23567, - "design-shotgun": 13028, - "devex-review": 14924, + "codex": 14445, + "context-restore": 8968, + "context-save": 9585, + "cso": 14558, + "design-consultation": 13019, + "design-html": 12875, + "design-review": 23600, + "design-shotgun": 13061, + "devex-review": 14958, "diagram": 3847, - "document-generate": 11679, - "document-release": 9476, + "document-generate": 11712, + "document-release": 9510, "freeze": 990, "gstack": 3548, "gstack-upgrade": 3981, "guard": 889, - "health": 10133, - "investigate": 10785, - "ios-clean": 8038, - "ios-design-review": 8218, - "ios-fix": 7991, - "ios-qa": 10560, - "ios-sync": 8161, - "land-and-deploy": 14559, - "landing-report": 8844, - "learn": 8514, + "health": 10166, + "investigate": 10819, + "ios-clean": 8071, + "ios-design-review": 8252, + "ios-fix": 8024, + "ios-qa": 10593, + "ios-sync": 8195, + "land-and-deploy": 14592, + "landing-report": 8878, + "learn": 8548, "make-pdf": 4957, - "office-hours": 17468, + "office-hours": 17501, "open-gstack-browser": 4429, "openclaw/skills/gstack-openclaw-ceo-review": 2764, "openclaw/skills/gstack-openclaw-investigate": 1429, "openclaw/skills/gstack-openclaw-office-hours": 4433, "openclaw/skills/gstack-openclaw-retro": 2542, - "pair-agent": 10864, - "plan-ceo-review": 18859, - "plan-design-review": 18300, - "plan-devex-review": 16141, - "plan-eng-review": 13081, - "plan-tune": 14088, - "qa": 12582, - "qa-only": 12355, - "retro": 17894, - "review": 14374, + "pair-agent": 10898, + "plan-ceo-review": 18893, + "plan-design-review": 18334, + "plan-devex-review": 16175, + "plan-eng-review": 13114, + "plan-tune": 14122, + "qa": 12615, + "qa-only": 12388, + "retro": 17928, + "review": 14407, "scrape": 3939, "setup-browser-cookies": 3119, - "setup-deploy": 9674, - "setup-gbrain": 14882, - "ship": 18275, - "skillify": 11520, - "spec": 13243, - "sync-gbrain": 13302, + "setup-deploy": 9708, + "setup-gbrain": 14915, + "ship": 18309, + "skillify": 11553, + "spec": 13276, + "sync-gbrain": 13336, "unfreeze": 393 } } diff --git a/test/fixtures/golden/claude-ship-SKILL.md b/test/fixtures/golden/claude-ship-SKILL.md index b1a61b877..260fe964d 100644 --- a/test/fixtures/golden/claude-ship-SKILL.md +++ b/test/fixtures/golden/claude-ship-SKILL.md @@ -325,9 +325,9 @@ Before each AskUserQuestion, choose `question_id` from `~/.claude/skills/gstack/ **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ship","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"ship","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/test/fixtures/golden/codex-ship-SKILL.md b/test/fixtures/golden/codex-ship-SKILL.md index 545a44812..88f89a28e 100644 --- a/test/fixtures/golden/codex-ship-SKILL.md +++ b/test/fixtures/golden/codex-ship-SKILL.md @@ -333,9 +333,9 @@ Before each AskUserQuestion, choose `question_id` from `$GSTACK_ROOT/scripts/que **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -$GSTACK_BIN/gstack-question-log '{"skill":"ship","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +$GSTACK_BIN/gstack-question-log '{"skill":"ship","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/test/fixtures/golden/factory-ship-SKILL.md b/test/fixtures/golden/factory-ship-SKILL.md index b9f096cc8..3f962a282 100644 --- a/test/fixtures/golden/factory-ship-SKILL.md +++ b/test/fixtures/golden/factory-ship-SKILL.md @@ -313,9 +313,9 @@ Before each AskUserQuestion, choose `question_id` from `$GSTACK_ROOT/scripts/que **Embed the option recommendation via the `(recommended)` label suffix** on exactly one option per AUQ. The PreToolUse hook parses `(recommended)` first, falls back to "Recommendation: X" prose, and refuses to auto-decide if ambiguous. Two `(recommended)` labels = refuse. -After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes): +After answer, log best-effort (PostToolUse hook also captures deterministically when installed; dedup on (source, tool_use_id) handles double-writes). Substitute `SESSION_ID` with the value the preamble's skill-start output echoed — shell variables do not survive between Bash calls: ```bash -$GSTACK_BIN/gstack-question-log '{"skill":"ship","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"'"$_SESSION_ID"'"}' 2>/dev/null || true +$GSTACK_BIN/gstack-question-log '{"skill":"ship","question_id":"","question_summary":"","category":"","door_type":"","options_count":N,"user_choice":"","recommended":"","session_id":"SESSION_ID"}' 2>/dev/null || true ``` For two-way questions, offer: "Tune this question? Reply `tune: never-ask`, `tune: always-ask`, or free-form." diff --git a/test/fixtures/parity-baseline-v1.69.1.0.json b/test/fixtures/parity-baseline-v1.69.1.0.json index b58873a84..fd35bf4a4 100644 --- a/test/fixtures/parity-baseline-v1.69.1.0.json +++ b/test/fixtures/parity-baseline-v1.69.1.0.json @@ -1,17 +1,17 @@ { "tag": "v1.69.1.0", - "capturedAt": "2026-08-25T18:01:18.758Z", - "capturedFromCommit": "3bc3b5d5", + "capturedAt": "2026-08-25T20:44:19.052Z", + "capturedFromCommit": "cf530751", "capturedFromBranch": "prompt-token-load-reduction", "totalSkills": 53, - "totalCorpusBytes": 2814663, + "totalCorpusBytes": 2819823, "estTotalCatalogTokens": 4195, "topHeaviest": [ { "skill": "ship", - "skillMdBytes": 200261, + "skillMdBytes": 200390, "skillMdLines": 1087, - "estTokens": 50065, + "estTokens": 50098, "tmplBytes": 29080, "descriptionLen": 293, "hasGateEval": true, @@ -19,9 +19,9 @@ }, { "skill": "plan-ceo-review", - "skillMdBytes": 136143, + "skillMdBytes": 136272, "skillMdLines": 1111, - "estTokens": 34036, + "estTokens": 34068, "tmplBytes": 29028, "descriptionLen": 764, "hasGateEval": true, @@ -29,9 +29,9 @@ }, { "skill": "office-hours", - "skillMdBytes": 118175, + "skillMdBytes": 118304, "skillMdLines": 1134, - "estTokens": 29544, + "estTokens": 29576, "tmplBytes": 15409, "descriptionLen": 860, "hasGateEval": true, @@ -39,9 +39,9 @@ }, { "skill": "plan-eng-review", - "skillMdBytes": 109707, + "skillMdBytes": 109836, "skillMdLines": 693, - "estTokens": 27427, + "estTokens": 27459, "tmplBytes": 13955, "descriptionLen": 201, "hasGateEval": true, @@ -49,9 +49,9 @@ }, { "skill": "plan-devex-review", - "skillMdBytes": 109630, + "skillMdBytes": 109759, "skillMdLines": 1095, - "estTokens": 27408, + "estTokens": 27440, "tmplBytes": 18598, "descriptionLen": 220, "hasGateEval": true, @@ -59,9 +59,9 @@ }, { "skill": "plan-design-review", - "skillMdBytes": 109090, + "skillMdBytes": 109219, "skillMdLines": 1132, - "estTokens": 27273, + "estTokens": 27305, "tmplBytes": 18463, "descriptionLen": 218, "hasGateEval": true, @@ -69,9 +69,9 @@ }, { "skill": "land-and-deploy", - "skillMdBytes": 94191, + "skillMdBytes": 94320, "skillMdLines": 966, - "estTokens": 23548, + "estTokens": 23580, "tmplBytes": 21056, "descriptionLen": 160, "hasGateEval": true, @@ -79,9 +79,9 @@ }, { "skill": "review", - "skillMdBytes": 93357, + "skillMdBytes": 93486, "skillMdLines": 925, - "estTokens": 23339, + "estTokens": 23372, "tmplBytes": 14178, "descriptionLen": 205, "hasGateEval": true, @@ -89,9 +89,9 @@ }, { "skill": "design-review", - "skillMdBytes": 90194, + "skillMdBytes": 90323, "skillMdLines": 1636, - "estTokens": 22549, + "estTokens": 22581, "tmplBytes": 11674, "descriptionLen": 306, "hasGateEval": true, @@ -99,9 +99,9 @@ }, { "skill": "autoplan", - "skillMdBytes": 86921, + "skillMdBytes": 87050, "skillMdLines": 1046, - "estTokens": 21730, + "estTokens": 21763, "tmplBytes": 23529, "descriptionLen": 336, "hasGateEval": true, @@ -111,9 +111,9 @@ "skills": { "autoplan": { "skill": "autoplan", - "skillMdBytes": 86921, + "skillMdBytes": 87050, "skillMdLines": 1046, - "estTokens": 21730, + "estTokens": 21763, "tmplBytes": 23529, "descriptionLen": 336, "hasGateEval": true, @@ -151,9 +151,9 @@ }, "canary": { "skill": "canary", - "skillMdBytes": 37967, + "skillMdBytes": 38096, "skillMdLines": 663, - "estTokens": 9492, + "estTokens": 9524, "tmplBytes": 8033, "descriptionLen": 180, "hasGateEval": true, @@ -171,9 +171,9 @@ }, "codex": { "skill": "codex", - "skillMdBytes": 84304, + "skillMdBytes": 84433, "skillMdLines": 886, - "estTokens": 21076, + "estTokens": 21108, "tmplBytes": 16072, "descriptionLen": 187, "hasGateEval": true, @@ -181,9 +181,9 @@ }, "context-restore": { "skill": "context-restore", - "skillMdBytes": 34192, + "skillMdBytes": 34321, "skillMdLines": 554, - "estTokens": 8548, + "estTokens": 8580, "tmplBytes": 7092, "descriptionLen": 238, "hasGateEval": true, @@ -191,9 +191,9 @@ }, "context-save": { "skill": "context-save", - "skillMdBytes": 36552, + "skillMdBytes": 36681, "skillMdLines": 639, - "estTokens": 9138, + "estTokens": 9170, "tmplBytes": 9293, "descriptionLen": 168, "hasGateEval": true, @@ -201,9 +201,9 @@ }, "cso": { "skill": "cso", - "skillMdBytes": 70176, + "skillMdBytes": 70305, "skillMdLines": 896, - "estTokens": 17544, + "estTokens": 17576, "tmplBytes": 21724, "descriptionLen": 196, "hasGateEval": true, @@ -211,9 +211,9 @@ }, "design-consultation": { "skill": "design-consultation", - "skillMdBytes": 71049, + "skillMdBytes": 71178, "skillMdLines": 841, - "estTokens": 17762, + "estTokens": 17795, "tmplBytes": 9554, "descriptionLen": 890, "hasGateEval": true, @@ -221,9 +221,9 @@ }, "design-html": { "skill": "design-html", - "skillMdBytes": 58940, + "skillMdBytes": 59069, "skillMdLines": 903, - "estTokens": 14735, + "estTokens": 14767, "tmplBytes": 17680, "descriptionLen": 235, "hasGateEval": true, @@ -231,9 +231,9 @@ }, "design-review": { "skill": "design-review", - "skillMdBytes": 90194, + "skillMdBytes": 90323, "skillMdLines": 1636, - "estTokens": 22549, + "estTokens": 22581, "tmplBytes": 11674, "descriptionLen": 306, "hasGateEval": true, @@ -241,9 +241,9 @@ }, "design-shotgun": { "skill": "design-shotgun", - "skillMdBytes": 54569, + "skillMdBytes": 54698, "skillMdLines": 915, - "estTokens": 13642, + "estTokens": 13675, "tmplBytes": 13378, "descriptionLen": 788, "hasGateEval": true, @@ -251,9 +251,9 @@ }, "devex-review": { "skill": "devex-review", - "skillMdBytes": 57118, + "skillMdBytes": 57247, "skillMdLines": 917, - "estTokens": 14280, + "estTokens": 14312, "tmplBytes": 7984, "descriptionLen": 201, "hasGateEval": false, @@ -271,9 +271,9 @@ }, "document-generate": { "skill": "document-generate", - "skillMdBytes": 44696, + "skillMdBytes": 44825, "skillMdLines": 863, - "estTokens": 11174, + "estTokens": 11206, "tmplBytes": 15940, "descriptionLen": 334, "hasGateEval": false, @@ -281,9 +281,9 @@ }, "document-release": { "skill": "document-release", - "skillMdBytes": 61815, + "skillMdBytes": 61944, "skillMdLines": 572, - "estTokens": 15454, + "estTokens": 15486, "tmplBytes": 6688, "descriptionLen": 192, "hasGateEval": true, @@ -321,9 +321,9 @@ }, "health": { "skill": "health", - "skillMdBytes": 38778, + "skillMdBytes": 38907, "skillMdLines": 687, - "estTokens": 9695, + "estTokens": 9727, "tmplBytes": 11617, "descriptionLen": 184, "hasGateEval": true, @@ -331,9 +331,9 @@ }, "investigate": { "skill": "investigate", - "skillMdBytes": 41276, + "skillMdBytes": 41405, "skillMdLines": 687, - "estTokens": 10319, + "estTokens": 10351, "tmplBytes": 11566, "descriptionLen": 1241, "hasGateEval": true, @@ -341,9 +341,9 @@ }, "ios-clean": { "skill": "ios-clean", - "skillMdBytes": 30760, + "skillMdBytes": 30889, "skillMdLines": 467, - "estTokens": 7690, + "estTokens": 7722, "tmplBytes": 3743, "descriptionLen": 254, "hasGateEval": false, @@ -351,9 +351,9 @@ }, "ios-design-review": { "skill": "ios-design-review", - "skillMdBytes": 31452, + "skillMdBytes": 31581, "skillMdLines": 470, - "estTokens": 7863, + "estTokens": 7895, "tmplBytes": 4417, "descriptionLen": 209, "hasGateEval": false, @@ -361,9 +361,9 @@ }, "ios-fix": { "skill": "ios-fix", - "skillMdBytes": 30581, + "skillMdBytes": 30710, "skillMdLines": 466, - "estTokens": 7645, + "estTokens": 7678, "tmplBytes": 3574, "descriptionLen": 187, "hasGateEval": false, @@ -371,9 +371,9 @@ }, "ios-qa": { "skill": "ios-qa", - "skillMdBytes": 40413, + "skillMdBytes": 40542, "skillMdLines": 641, - "estTokens": 10103, + "estTokens": 10136, "tmplBytes": 12370, "descriptionLen": 223, "hasGateEval": true, @@ -381,9 +381,9 @@ }, "ios-sync": { "skill": "ios-sync", - "skillMdBytes": 31234, + "skillMdBytes": 31363, "skillMdLines": 464, - "estTokens": 7809, + "estTokens": 7841, "tmplBytes": 4220, "descriptionLen": 269, "hasGateEval": true, @@ -391,9 +391,9 @@ }, "land-and-deploy": { "skill": "land-and-deploy", - "skillMdBytes": 94191, + "skillMdBytes": 94320, "skillMdLines": 966, - "estTokens": 23548, + "estTokens": 23580, "tmplBytes": 21056, "descriptionLen": 160, "hasGateEval": true, @@ -401,9 +401,9 @@ }, "landing-report": { "skill": "landing-report", - "skillMdBytes": 33847, + "skillMdBytes": 33976, "skillMdLines": 530, - "estTokens": 8462, + "estTokens": 8494, "tmplBytes": 6847, "descriptionLen": 195, "hasGateEval": false, @@ -411,9 +411,9 @@ }, "learn": { "skill": "learn", - "skillMdBytes": 32584, + "skillMdBytes": 32713, "skillMdLines": 564, - "estTokens": 8146, + "estTokens": 8178, "tmplBytes": 5594, "descriptionLen": 178, "hasGateEval": true, @@ -431,9 +431,9 @@ }, "office-hours": { "skill": "office-hours", - "skillMdBytes": 118175, + "skillMdBytes": 118304, "skillMdLines": 1134, - "estTokens": 29544, + "estTokens": 29576, "tmplBytes": 15409, "descriptionLen": 860, "hasGateEval": true, @@ -451,9 +451,9 @@ }, "pair-agent": { "skill": "pair-agent", - "skillMdBytes": 41578, + "skillMdBytes": 41707, "skillMdLines": 764, - "estTokens": 10395, + "estTokens": 10427, "tmplBytes": 13368, "descriptionLen": 167, "hasGateEval": false, @@ -461,9 +461,9 @@ }, "plan-ceo-review": { "skill": "plan-ceo-review", - "skillMdBytes": 136143, + "skillMdBytes": 136272, "skillMdLines": 1111, - "estTokens": 34036, + "estTokens": 34068, "tmplBytes": 29028, "descriptionLen": 764, "hasGateEval": true, @@ -471,9 +471,9 @@ }, "plan-design-review": { "skill": "plan-design-review", - "skillMdBytes": 109090, + "skillMdBytes": 109219, "skillMdLines": 1132, - "estTokens": 27273, + "estTokens": 27305, "tmplBytes": 18463, "descriptionLen": 218, "hasGateEval": true, @@ -481,9 +481,9 @@ }, "plan-devex-review": { "skill": "plan-devex-review", - "skillMdBytes": 109630, + "skillMdBytes": 109759, "skillMdLines": 1095, - "estTokens": 27408, + "estTokens": 27440, "tmplBytes": 18598, "descriptionLen": 220, "hasGateEval": true, @@ -491,9 +491,9 @@ }, "plan-eng-review": { "skill": "plan-eng-review", - "skillMdBytes": 109707, + "skillMdBytes": 109836, "skillMdLines": 693, - "estTokens": 27427, + "estTokens": 27459, "tmplBytes": 13955, "descriptionLen": 201, "hasGateEval": true, @@ -501,9 +501,9 @@ }, "plan-tune": { "skill": "plan-tune", - "skillMdBytes": 53917, + "skillMdBytes": 54046, "skillMdLines": 1024, - "estTokens": 13479, + "estTokens": 13512, "tmplBytes": 26922, "descriptionLen": 327, "hasGateEval": true, @@ -511,9 +511,9 @@ }, "qa": { "skill": "qa", - "skillMdBytes": 70385, + "skillMdBytes": 70514, "skillMdLines": 883, - "estTokens": 17596, + "estTokens": 17629, "tmplBytes": 12792, "descriptionLen": 218, "hasGateEval": true, @@ -521,9 +521,9 @@ }, "qa-only": { "skill": "qa-only", - "skillMdBytes": 47283, + "skillMdBytes": 47412, "skillMdLines": 867, - "estTokens": 11821, + "estTokens": 11853, "tmplBytes": 3851, "descriptionLen": 165, "hasGateEval": true, @@ -531,9 +531,9 @@ }, "retro": { "skill": "retro", - "skillMdBytes": 73496, + "skillMdBytes": 73625, "skillMdLines": 1214, - "estTokens": 18374, + "estTokens": 18406, "tmplBytes": 36523, "descriptionLen": 838, "hasGateEval": true, @@ -541,9 +541,9 @@ }, "review": { "skill": "review", - "skillMdBytes": 93357, + "skillMdBytes": 93486, "skillMdLines": 925, - "estTokens": 23339, + "estTokens": 23372, "tmplBytes": 14178, "descriptionLen": 205, "hasGateEval": true, @@ -571,9 +571,9 @@ }, "setup-deploy": { "skill": "setup-deploy", - "skillMdBytes": 37025, + "skillMdBytes": 37154, "skillMdLines": 606, - "estTokens": 9256, + "estTokens": 9289, "tmplBytes": 7805, "descriptionLen": 197, "hasGateEval": true, @@ -581,9 +581,9 @@ }, "setup-gbrain": { "skill": "setup-gbrain", - "skillMdBytes": 79139, + "skillMdBytes": 79268, "skillMdLines": 1060, - "estTokens": 19785, + "estTokens": 19817, "tmplBytes": 27628, "descriptionLen": 325, "hasGateEval": true, @@ -591,9 +591,9 @@ }, "ship": { "skill": "ship", - "skillMdBytes": 200261, + "skillMdBytes": 200390, "skillMdLines": 1087, - "estTokens": 50065, + "estTokens": 50098, "tmplBytes": 29080, "descriptionLen": 293, "hasGateEval": true, @@ -601,9 +601,9 @@ }, "skillify": { "skill": "skillify", - "skillMdBytes": 44087, + "skillMdBytes": 44216, "skillMdLines": 837, - "estTokens": 11022, + "estTokens": 11054, "tmplBytes": 15338, "descriptionLen": 233, "hasGateEval": true, @@ -611,9 +611,9 @@ }, "spec": { "skill": "spec", - "skillMdBytes": 67430, + "skillMdBytes": 67559, "skillMdLines": 901, - "estTokens": 16858, + "estTokens": 16890, "tmplBytes": 19784, "descriptionLen": 282, "hasGateEval": true, @@ -621,9 +621,9 @@ }, "sync-gbrain": { "skill": "sync-gbrain", - "skillMdBytes": 50908, + "skillMdBytes": 51037, "skillMdLines": 865, - "estTokens": 12727, + "estTokens": 12759, "tmplBytes": 23886, "descriptionLen": 246, "hasGateEval": false,