From 54cc89d7ecf69de35964b7b379cc6303b9cf9e2d Mon Sep 17 00:00:00 2001 From: garrytan Date: Sat, 31 Oct 2026 13:46:42 +0000 Subject: [PATCH] fix(loadouts): claude_loadout read through CONFIG_BIN; capy skill context ceiling for the --model line (GSTA-161) Co-authored-by: capy-ai[bot] <230910855+capy-ai[bot]@users.noreply.github.com> --- bin/gstack-render-claude.sh | 4 ++-- capy/skill/gstack/SKILL.md | 2 +- test/fixtures/context-budget.json | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/bin/gstack-render-claude.sh b/bin/gstack-render-claude.sh index e7f45ed93..c7b06c4cd 100644 --- a/bin/gstack-render-claude.sh +++ b/bin/gstack-render-claude.sh @@ -64,9 +64,9 @@ gstack_claude_overlay() { # for a saved non-full claude_loadout, else empty. A malformed value is # ignored with a note, so the full skills are served. gstack_claude_loadout_arg() { - local value + local CONFIG_BIN="$1" value _LOADOUT_ARG="" - value="$("$1" get claude_loadout 2>/dev/null || true)" + value="$("$CONFIG_BIN" get claude_loadout 2>/dev/null || true)" case "$value" in ''|full) return 0 ;; esac diff --git a/capy/skill/gstack/SKILL.md b/capy/skill/gstack/SKILL.md index cff559940..25a087975 100644 --- a/capy/skill/gstack/SKILL.md +++ b/capy/skill/gstack/SKILL.md @@ -30,7 +30,7 @@ With `GSTACK_CAPY=1`, a workflow started in an unattended or spawned session che For Capy running GPT-6 Astra, read `${CODEX_HOME:-$HOME/.codex}/skills/gstack/SKILL.md` for routing, then `${CODEX_HOME:-$HOME/.codex}/skills/gstack-/SKILL.md` for the selected workflow. These are the generated GPT-6 Astra instructions, not the Claude source files. -For Claude Code, read `~/.claude/skills/gstack/SKILL.md` for routing and `~/.claude/skills//SKILL.md` for the selected workflow. When launching a Claude Code session, tell it to load gstack and name the intended workflow. For Capy running a Claude model, the Claude instruction files can be read directly with the Capy adaptations below; that does not turn Capy into the Claude Code harness. Add `--model ` (your model id from the thread's model line) to every `scripts/install.sh` run: when it prints `SKILL_ROOT: `, read `/gstack/SKILL.md` and `//SKILL.md` instead and source the printed `GSTACK_LAUNCH_FILE` (`docs/loadouts.md`; only Opus 5.5 gets a smaller tree). +For Claude Code, read `~/.claude/skills/gstack/SKILL.md` for routing and `~/.claude/skills//SKILL.md` for the selected workflow. When launching a Claude Code session, tell it to load gstack and name the intended workflow. For Capy running a Claude model, the Claude instruction files can be read directly with the Capy adaptations below; that does not turn Capy into the Claude Code harness. Pass your model id as `--model ` to `scripts/install.sh`; when it prints `SKILL_ROOT: `, read skills from `` instead (`docs/loadouts.md`). If no specific skill was requested, use the router's task-to-skill mapping. Read only the selected workflow and its referenced files. For other models, use the closest applicable instruction profile without claiming a model-specific profile was generated or evaluated for them. diff --git a/test/fixtures/context-budget.json b/test/fixtures/context-budget.json index 9f26e133f..8ea2838e3 100644 --- a/test/fixtures/context-budget.json +++ b/test/fixtures/context-budget.json @@ -9,7 +9,7 @@ "browser-skills/hackernews-frontpage": 371, "canary": 7738, "captain": 6551, - "capy/skill/gstack": 5136, + "capy/skill/gstack": 5690, "careful": 1239, "codex": 9890, "context-restore": 6287,