Skip to content
Back to skills

Baton Setup

ASecurity

One-time setup and health check for fable-baton. Use when the user asks to set up, configure, verify, or troubleshoot fable-baton - sets the default model to "best" (Fable 5 with Opus fallback) in ~/.claude/settings.json and verifies the plugin is fully installed.

  • 930 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 6, 2026
ai-agents

Works with

  • claude code

Security analysis

A100/100

Scanned September 6, 2026

npx -y skills add ccplugins/awesome-claude-code-plugins --skill baton-setup --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Baton Setup?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Baton Setup
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ccplugins-baton-setup/badge)](https://www.skillsdirectory.com/skills/ccplugins-baton-setup)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: baton-setup
description: One-time setup and health check for fable-baton. Use when the user asks to set up, configure, verify, or troubleshoot fable-baton - sets the default model to "best" (Fable 5 with Opus fallback) in ~/.claude/settings.json and verifies the plugin is fully installed.
---

# baton-setup

One-time setup for fable-baton. Run each step in order. Never rewrite `~/.claude/settings.json` wholesale - edit only the named keys and preserve everything else.

## Step 1 - Read current state

1. Read `~/.claude/settings.json` (if missing, you will create a minimal one).
2. Check `echo "$CLAUDE_CODE_SUBAGENT_MODEL"`. If set, warn the user: this variable silently overrides every agent's `model` frontmatter and defeats the tiering. Recommend unsetting it, but do not unset it yourself without approval.

## Step 2 - Propose changes and get approval

Show the user exactly what you will change before writing anything:

| Key | Rule |
|---|---|
| `model` | If absent → set `"best"`. If present with a different value → ask: keep theirs, or switch to `"best"`? (`best` resolves to Fable 5 when the account has access, otherwise the latest Opus.) If already `"best"` → no change. |
| `fallbackModel` | If absent → add `["opus", "sonnet"]` (covers overload/unavailability). If present → leave it. |
| `availableModels` | Only if the key already exists (it is an allowlist): ensure it contains `"opus"`, `"sonnet"`, `"haiku"`, and the chosen main-model value. If absent → do not add it. |

Back up the file first: copy it to `~/.claude/settings.json.baton-backup-<YYYYMMDD-HHMMSS>` (skip if the file didn't exist).

## Step 3 - Apply and validate

Apply the approved edits, then validate: `jq empty ~/.claude/settings.json` must exit 0 (or parse the JSON yourself if `jq` is unavailable).

If Claude Code rejects the `best` alias at startup (older versions), fall back to `"opus"` and suggest updating Claude Code.

## Step 4 - Verify the install

1. Confirm the four agents are available: scout, executor, architect, verifier (ask "which subagent types are available?" or check the Agent tool's list).
2. Confirm the orchestration policy is present in context (it is injected at session start; in a session started before install it won't be - that's expected).
3. Tell the user to restart their Claude Code session: agents and the model setting load at session start.

## Step 5 - Report

Summarize: what changed, what was skipped, where the backup is, and that a restart is needed.

## Uninstall (on request)

1. `/plugin uninstall fable-baton` removes the agents, hook, and this skill.
2. In `~/.claude/settings.json`: restore `model` from the oldest `settings.json.baton-backup-*` file, or remove the key if the backup has none. Remove `fallbackModel` if the user doesn't want it.

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.