Skip to main content

plan-tune

Enhances user interaction by tuning question sensitivity and developer profiles for improved engagement in gstack.

Install this skill

or
0/100

Security score

The plan-tune skill was audited on Jun 10, 2026 and we found 115 security issues across 3 threat categories. Review the findings below before installing.

Categories Tested

Security Issues

medium line 43

Template literal with variable interpolation in command context

SourceSKILL.md
43```bash
medium line 293

Template literal with variable interpolation in command context

SourceSKILL.md
293```bash
medium line 428

Template literal with variable interpolation in command context

SourceSKILL.md
428```bash
medium line 462

Template literal with variable interpolation in command context

SourceSKILL.md
462echo "before relying on \`gbrain search\` for code questions in this worktree."
medium line 590

Template literal with variable interpolation in command context

SourceSKILL.md
590```bash
medium line 1026

Template literal with variable interpolation in command context

SourceSKILL.md
1026console.log(\`\${r.count}x \${r.id} (\${r.skill}) followed:\${r.followed} overridden:\${r.overridden}\`);
medium line 1027

Template literal with variable interpolation in command context

SourceSKILL.md
1027console.log(\` \${r.summary}\`);
low line 44

Access to hidden dotfiles in home directory

SourceSKILL.md
44_UPD=$(~/.claude/skills/gstack/bin/gstack-update-check 2>/dev/null || .claude/skills/gstack/bin/gstack-update-check 2>/dev/null || true)
low line 46

Access to hidden dotfiles in home directory

SourceSKILL.md
46mkdir -p ~/.gstack/sessions
low line 47

Access to hidden dotfiles in home directory

SourceSKILL.md
47touch ~/.gstack/sessions/"$PPID"
low line 48

Access to hidden dotfiles in home directory

SourceSKILL.md
48_SESSIONS=$(find ~/.gstack/sessions -mmin -120 -type f 2>/dev/null | wc -l | tr -d ' ')
low line 49

Access to hidden dotfiles in home directory

SourceSKILL.md
49find ~/.gstack/sessions -mmin +120 -type f -exec rm {} + 2>/dev/null || true
low line 50

Access to hidden dotfiles in home directory

SourceSKILL.md
50_PROACTIVE=$(~/.claude/skills/gstack/bin/gstack-config get proactive 2>/dev/null || echo "true")
low line 51

Access to hidden dotfiles in home directory

SourceSKILL.md
51_PROACTIVE_PROMPTED=$([ -f ~/.gstack/.proactive-prompted ] && echo "yes" || echo "no")
low line 54

Access to hidden dotfiles in home directory

SourceSKILL.md
54_SKILL_PREFIX=$(~/.claude/skills/gstack/bin/gstack-config get skill_prefix 2>/dev/null || echo "false")
low line 58

Access to hidden dotfiles in home directory

SourceSKILL.md
58source <(~/.claude/skills/gstack/bin/gstack-repo-mode 2>/dev/null) || true
low line 61

Access to hidden dotfiles in home directory

SourceSKILL.md
61_SESSION_KIND=$(~/.claude/skills/gstack/bin/gstack-session-kind 2>/dev/null || echo "interactive")
low line 64

Access to hidden dotfiles in home directory

SourceSKILL.md
64_LAKE_SEEN=$([ -f ~/.gstack/.completeness-intro-seen ] && echo "yes" || echo "no")
low line 66

Access to hidden dotfiles in home directory

SourceSKILL.md
66_TEL=$(~/.claude/skills/gstack/bin/gstack-config get telemetry 2>/dev/null || true)
low line 67

Access to hidden dotfiles in home directory

SourceSKILL.md
67_TEL_PROMPTED=$([ -f ~/.gstack/.telemetry-prompted ] && echo "yes" || echo "no")
low line 72

Access to hidden dotfiles in home directory

SourceSKILL.md
72_EXPLAIN_LEVEL=$(~/.claude/skills/gstack/bin/gstack-config get explain_level 2>/dev/null || echo "default")
low line 75

Access to hidden dotfiles in home directory

SourceSKILL.md
75_QUESTION_TUNING=$(~/.claude/skills/gstack/bin/gstack-config get question_tuning 2>/dev/null || echo "false")
low line 77

Access to hidden dotfiles in home directory

SourceSKILL.md
77mkdir -p ~/.gstack/analytics
low line 79

Access to hidden dotfiles in home directory

SourceSKILL.md
79echo '{"skill":"plan-tune","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'","repo":"'$(_repo=$(basename "$(git rev-parse --show-toplevel 2>/dev/null)" 2>/dev/null | tr -cd 'a-zA-Z0-9._-'); echo "${_repo:-unkno
low line 81

Access to hidden dotfiles in home directory

SourceSKILL.md
81for _PF in $(find ~/.gstack/analytics -maxdepth 1 -name '.pending-*' 2>/dev/null); do
low line 83

Access to hidden dotfiles in home directory

SourceSKILL.md
83if [ "$_TEL" != "off" ] && [ -x "~/.claude/skills/gstack/bin/gstack-telemetry-log" ]; then
low line 84

Access to hidden dotfiles in home directory

SourceSKILL.md
84~/.claude/skills/gstack/bin/gstack-telemetry-log --event-type skill_run --skill _pending_finalize --outcome unknown --session-id "$_SESSION_ID" 2>/dev/null || true
low line 90

Access to hidden dotfiles in home directory

SourceSKILL.md
90eval "$(~/.claude/skills/gstack/bin/gstack-slug 2>/dev/null)" 2>/dev/null || true
low line 96

Access to hidden dotfiles in home directory

SourceSKILL.md
96~/.claude/skills/gstack/bin/gstack-learnings-search --limit 3 2>/dev/null || true
low line 101

Access to hidden dotfiles in home directory

SourceSKILL.md
101~/.claude/skills/gstack/bin/gstack-timeline-log '{"skill":"plan-tune","event":"started","branch":"'"$_BRANCH"'","session":"'"$_SESSION_ID"'"}' 2>/dev/null &
low line 106

Access to hidden dotfiles in home directory

SourceSKILL.md
106_ROUTING_DECLINED=$(~/.claude/skills/gstack/bin/gstack-config get routing_declined 2>/dev/null || echo "false")
low line 117

Access to hidden dotfiles in home directory

SourceSKILL.md
117_CHECKPOINT_MODE=$(~/.claude/skills/gstack/bin/gstack-config get checkpoint_mode 2>/dev/null || echo "explicit")
low line 118

Access to hidden dotfiles in home directory

SourceSKILL.md
118_CHECKPOINT_PUSH=$(~/.claude/skills/gstack/bin/gstack-config get checkpoint_push 2>/dev/null || echo "false")
medium line 139

Access to hidden dotfiles in home directory

SourceSKILL.md
139In plan mode, allowed because they inform the plan: `$B`, `$D`, `codex exec`/`codex review`, writes to `~/.gstack/`, writes to the plan file, and `open` for generated artifacts.
medium line 147

Access to hidden dotfiles in home directory

SourceSKILL.md
147If `SKILL_PREFIX` is `"true"`, suggest/invoke `/gstack-*` names. Disk paths stay `~/.claude/skills/gstack/[skill-name]/SKILL.md`.
medium line 149

Access to hidden dotfiles in home directory

SourceSKILL.md
149If output shows `UPGRADE_AVAILABLE <old> <new>`: read `~/.claude/skills/gstack/gstack-upgrade/SKILL.md` and follow the "Inline upgrade flow" (auto-upgrade if configured, otherwise AskUserQuestion with
medium line 154

Access to hidden dotfiles in home directory

SourceSKILL.md
154- Missing `~/.claude/skills/gstack/.feature-prompted-continuous-checkpoint`: AskUserQuestion for Continuous checkpoint auto-commits. If accepted, run `~/.claude/skills/gstack/bin/gstack-config set che
medium line 155

Access to hidden dotfiles in home directory

SourceSKILL.md
155- Missing `~/.claude/skills/gstack/.feature-prompted-model-overlay`: inform "Model overlays are active. MODEL_OVERLAY shows the patch." Always touch marker.
medium line 168

Access to hidden dotfiles in home directory

SourceSKILL.md
168If B: run `~/.claude/skills/gstack/bin/gstack-config set explain_level terse`.
low line 172

Access to hidden dotfiles in home directory

SourceSKILL.md
172rm -f ~/.gstack/.writing-style-prompt-pending
low line 173

Access to hidden dotfiles in home directory

SourceSKILL.md
173touch ~/.gstack/.writing-style-prompted
low line 182

Access to hidden dotfiles in home directory

SourceSKILL.md
182touch ~/.gstack/.completeness-intro-seen
medium line 195

Access to hidden dotfiles in home directory

SourceSKILL.md
195If A: run `~/.claude/skills/gstack/bin/gstack-config set telemetry community`
medium line 205

Access to hidden dotfiles in home directory

SourceSKILL.md
205If B→A: run `~/.claude/skills/gstack/bin/gstack-config set telemetry anonymous`
medium line 206

Access to hidden dotfiles in home directory

SourceSKILL.md
206If B→B: run `~/.claude/skills/gstack/bin/gstack-config set telemetry off`
low line 210

Access to hidden dotfiles in home directory

SourceSKILL.md
210touch ~/.gstack/.telemetry-prompted
medium line 223

Access to hidden dotfiles in home directory

SourceSKILL.md
223If A: run `~/.claude/skills/gstack/bin/gstack-config set proactive true`
medium line 224

Access to hidden dotfiles in home directory

SourceSKILL.md
224If B: run `~/.claude/skills/gstack/bin/gstack-config set proactive false`
low line 228

Access to hidden dotfiles in home directory

SourceSKILL.md
228touch ~/.gstack/.proactive-prompted
medium line 270

Access to hidden dotfiles in home directory

SourceSKILL.md
270If B: run `~/.claude/skills/gstack/bin/gstack-config set routing_declined true` and say they can re-enable with `gstack-config set routing_declined false`.
medium line 274

Access to hidden dotfiles in home directory

SourceSKILL.md
274If `VENDORED_GSTACK` is `yes`, warn once via AskUserQuestion unless `~/.gstack/.vendoring-warned-$SLUG` exists:
medium line 286

Access to hidden dotfiles in home directory

SourceSKILL.md
2863. Run `~/.claude/skills/gstack/bin/gstack-team-init required` (or `optional`)
medium line 288

Access to hidden dotfiles in home directory

SourceSKILL.md
2885. Tell the user: "Done. Each developer now runs: `cd ~/.claude/skills/gstack && ./setup --team`"
low line 294

Access to hidden dotfiles in home directory

SourceSKILL.md
294eval "$(~/.claude/skills/gstack/bin/gstack-slug 2>/dev/null)" 2>/dev/null || true
low line 295

Access to hidden dotfiles in home directory

SourceSKILL.md
295touch ~/.gstack/.vendoring-warned-${SLUG:-unknown}
low line 437

Access to hidden dotfiles in home directory

SourceSKILL.md
437_BRAIN_SYNC_BIN="~/.claude/skills/gstack/bin/gstack-brain-sync"
low line 438

Access to hidden dotfiles in home directory

SourceSKILL.md
438_BRAIN_CONFIG_BIN="~/.claude/skills/gstack/bin/gstack-config"
medium line 542

Access to hidden dotfiles in home directory

SourceSKILL.md
542If A/B and `~/.gstack/.git` is missing, ask whether to run `gstack-artifacts-init`. Do not block the skill.
low line 547

Access to hidden dotfiles in home directory

SourceSKILL.md
547"~/.claude/skills/gstack/bin/gstack-brain-sync" --discover-new 2>/dev/null || true
low line 548

Access to hidden dotfiles in home directory

SourceSKILL.md
548"~/.claude/skills/gstack/bin/gstack-brain-sync" --once 2>/dev/null || true
low line 591

Access to hidden dotfiles in home directory

SourceSKILL.md
591eval "$(~/.claude/skills/gstack/bin/gstack-slug 2>/dev/null)"
low line 608

Access to hidden dotfiles in home directory

SourceSKILL.md
608~/.claude/skills/gstack/bin/gstack-decision-search --recent 5 2>/dev/null
medium line 617

Access to hidden dotfiles in home directory

SourceSKILL.md
617**Cross-session decisions.** If `ACTIVE DECISIONS` are listed, treat them as prior settled calls with their rationale — do not silently re-litigate them; if you're about to reverse one, say so explici
medium line 630

Access to hidden dotfiles in home directory

SourceSKILL.md
630Curated jargon list lives at `~/.claude/skills/gstack/scripts/jargon-list.json` (80+ terms). On the first jargon term you encounter this session, Read that file once; treat the `terms` array as the ca
medium line 676

Access to hidden dotfiles in home directory

SourceSKILL.md
676Before each AskUserQuestion, choose `question_id` from `scripts/question-registry.ts` or `{skill}-{slug}`, then run `~/.claude/skills/gstack/bin/gstack-question-preference --check "<id>"`. `AUTO_DECID
low line 684

Access to hidden dotfiles in home directory

SourceSKILL.md
684~/.claude/skills/gstack/bin/gstack-question-log '{"skill":"plan-tune","question_id":"<id>","question_summary":"<short>","category":"<approval|clarification|routing|cherry-pick|feedback-loop>","door_ty
low line 693

Access to hidden dotfiles in home directory

SourceSKILL.md
693~/.claude/skills/gstack/bin/gstack-question-preference --write '{"question_id":"<id>","preference":"<pref>","source":"inline-user","free_text":"<optional original words>"}'
low line 713

Access to hidden dotfiles in home directory

SourceSKILL.md
713~/.claude/skills/gstack/bin/gstack-learnings-log '{"skill":"SKILL_NAME","type":"operational","key":"SHORT_KEY","insight":"DESCRIPTION","confidence":N,"source":"observed"}'
medium line 723

Access to hidden dotfiles in home directory

SourceSKILL.md
723`~/.gstack/analytics/`, matching preamble analytics writes.
low line 730

Access to hidden dotfiles in home directory

SourceSKILL.md
730rm -f ~/.gstack/analytics/.pending-"$_SESSION_ID" 2>/dev/null || true
low line 732

Access to hidden dotfiles in home directory

SourceSKILL.md
732~/.claude/skills/gstack/bin/gstack-timeline-log '{"skill":"SKILL_NAME","event":"completed","branch":"'$(git branch --show-current 2>/dev/null || echo unknown)'","outcome":"OUTCOME","duration_s":"'"$_T
low line 735

Access to hidden dotfiles in home directory

SourceSKILL.md
735echo '{"skill":"SKILL_NAME","duration_s":"'"$_TEL_DUR"'","outcome":"OUTCOME","browse":"USED_BROWSE","session":"'"$_SESSION_ID"'","ts":"'$(date -u +%Y-%m-%dT%H:%M:%SZ)'"}' >> ~/.gstack/analytics/skill-
low line 738

Access to hidden dotfiles in home directory

SourceSKILL.md
738if [ "$_TEL" != "off" ] && [ -x ~/.claude/skills/gstack/bin/gstack-telemetry-log ]; then
low line 739

Access to hidden dotfiles in home directory

SourceSKILL.md
739~/.claude/skills/gstack/bin/gstack-telemetry-log \
medium line 776

Access to hidden dotfiles in home directory

SourceSKILL.md
776`~/.gstack/.question-tuning-prompted` is missing → run `Consent + opt-in`
medium line 779

Access to hidden dotfiles in home directory

SourceSKILL.md
779`~/.gstack/developer-profile.json`'s `declared` object is empty AND
medium line 780

Access to hidden dotfiles in home directory

SourceSKILL.md
780`~/.gstack/.declared-setup-prompted` is missing → run `5-Q setup` below.
medium line 783

Access to hidden dotfiles in home directory

SourceSKILL.md
783`~/.gstack/projects/<slug>/distillation-proposals.json` exists AND has
medium line 801

Access to hidden dotfiles in home directory

SourceSKILL.md
80110. **"Turn it off" / "disable"** → `~/.claude/skills/gstack/bin/gstack-config set question_tuning false`
medium line 802

Access to hidden dotfiles in home directory

SourceSKILL.md
80211. **"Turn it on" / "enable"** → `~/.claude/skills/gstack/bin/gstack-config set question_tuning true && touch ~/.gstack/.question-tuning-prompted`
medium line 817

Access to hidden dotfiles in home directory

SourceSKILL.md
817`~/.gstack/.question-tuning-prompted` is missing. The user has never been
low line 833

Access to hidden dotfiles in home directory

SourceSKILL.md
833_QT=$(~/.claude/skills/gstack/bin/gstack-config get question_tuning 2>/dev/null || echo "false")
low line 834

Access to hidden dotfiles in home directory

SourceSKILL.md
834_CONTRIB=$(~/.claude/skills/gstack/bin/gstack-config get gstack_contributor 2>/dev/null || echo "false")
medium line 848

Access to hidden dotfiles in home directory

SourceSKILL.md
848> Logs stay local (`~/.gstack/projects/<slug>/question-log.jsonl`).
medium line 861

Access to hidden dotfiles in home directory

SourceSKILL.md
861> `~/.gstack/projects/<slug>/question-log.jsonl` — nothing leaves your
low line 872

Access to hidden dotfiles in home directory

SourceSKILL.md
872touch ~/.gstack/.question-tuning-prompted
low line 877

Access to hidden dotfiles in home directory

SourceSKILL.md
877~/.claude/skills/gstack/bin/gstack-config set question_tuning true
medium line 889

Access to hidden dotfiles in home directory

SourceSKILL.md
889`declared` is empty AND `~/.gstack/.declared-setup-prompted` is missing.
medium line 925

Access to hidden dotfiles in home directory

SourceSKILL.md
925`~/.gstack/developer-profile.json` under `declared.{dimension}`:
low line 929

Access to hidden dotfiles in home directory

SourceSKILL.md
929~/.claude/skills/gstack/bin/gstack-developer-profile --read >/dev/null
low line 931

Access to hidden dotfiles in home directory

SourceSKILL.md
931eval "$(~/.claude/skills/gstack/bin/gstack-paths)"
low line 951

Access to hidden dotfiles in home directory

SourceSKILL.md
951touch ~/.gstack/.declared-setup-prompted
low line 967

Access to hidden dotfiles in home directory

SourceSKILL.md
967~/.claude/skills/gstack/bin/gstack-developer-profile --profile
low line 1006

Access to hidden dotfiles in home directory

SourceSKILL.md
1006eval "$(~/.claude/skills/gstack/bin/gstack-slug 2>/dev/null)"
low line 1007

Access to hidden dotfiles in home directory

SourceSKILL.md
1007eval "$(~/.claude/skills/gstack/bin/gstack-paths)"
low line 1066

Access to hidden dotfiles in home directory

SourceSKILL.md
1066~/.claude/skills/gstack/bin/gstack-question-preference --write '{"question_id":"<id>","preference":"<never-ask|always-ask|ask-only-for-one-way>","source":"plan-tune","free_text":"<original phrase>"}'
low line 1101

Access to hidden dotfiles in home directory

SourceSKILL.md
1101eval "$(~/.claude/skills/gstack/bin/gstack-paths)"
low line 1122

Access to hidden dotfiles in home directory

SourceSKILL.md
1122~/.claude/skills/gstack/bin/gstack-developer-profile --gap
low line 1145

Access to hidden dotfiles in home directory

SourceSKILL.md
1145~/.claude/skills/gstack/bin/gstack-question-preference --stats
low line 1146

Access to hidden dotfiles in home directory

SourceSKILL.md
1146eval "$(~/.claude/skills/gstack/bin/gstack-slug 2>/dev/null)"
low line 1147

Access to hidden dotfiles in home directory

SourceSKILL.md
1147eval "$(~/.claude/skills/gstack/bin/gstack-paths)"
low line 1171

Access to hidden dotfiles in home directory

SourceSKILL.md
1171~/.claude/skills/gstack/bin/gstack-developer-profile --profile | bun -e "
low line 1180

Access to hidden dotfiles in home directory

SourceSKILL.md
1180~/.claude/skills/gstack/bin/gstack-distill-free-text --status
low line 1198

Access to hidden dotfiles in home directory

SourceSKILL.md
1198eval "$(~/.claude/skills/gstack/bin/gstack-slug 2>/dev/null)"
low line 1199

Access to hidden dotfiles in home directory

SourceSKILL.md
1199eval "$(~/.claude/skills/gstack/bin/gstack-paths)"
low line 1230

Access to hidden dotfiles in home directory

SourceSKILL.md
1230eval "$(~/.claude/skills/gstack/bin/gstack-slug 2>/dev/null)"
low line 1231

Access to hidden dotfiles in home directory

SourceSKILL.md
1231eval "$(~/.claude/skills/gstack/bin/gstack-paths)"
low line 1273

Access to hidden dotfiles in home directory

SourceSKILL.md
1273~/.claude/skills/gstack/bin/gstack-distill-apply --list
low line 1291

Access to hidden dotfiles in home directory

SourceSKILL.md
1291~/.claude/skills/gstack/bin/gstack-distill-apply --proposal N --gbrain-published true|false
low line 1296

Access to hidden dotfiles in home directory

SourceSKILL.md
1296~/.claude/skills/gstack/bin/gstack-distill-apply --proposal N
low line 1303

Access to hidden dotfiles in home directory

SourceSKILL.md
1303~/.claude/skills/gstack/bin/gstack-distill-apply --proposal N
low line 1332

Access to hidden dotfiles in home directory

SourceSKILL.md
1332~/.claude/skills/gstack/bin/gstack-distill-free-text
low line 1345

Access to hidden dotfiles in home directory

SourceSKILL.md
1345~/.claude/skills/gstack/bin/gstack-distill-free-text --background
low line 178

External URL reference

SourceSKILL.md
178If `LAKE_INTRO` is `no`: say "gstack follows the **Boil the Ocean** principle — do the complete thing when AI makes marginal cost near-zero. Read more: https://garryslist.org/posts/boil-the-ocean" Off
low line 181

External URL reference

SourceSKILL.md
181open https://garryslist.org/posts/boil-the-ocean
Scanned on Jun 10, 2026
View Security Dashboard
Installation guide →