uninstall
Unwire yet-another-statusline from Claude Code — removes statusLine.command from settings.json in CLAUDE_CONFIG_DIR (default ~/.claude/) and deletes the…
Skill by tmck-code
Chalk Labs
Need help deploying uninstall?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/tmck-code-uninstall
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/uninstall
Tools it pre-approves 3
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Read,Write,Bash
What's inside
- Skill name
uninstall- Description
- Unwire yet-another-statusline from Claude Code — removes statusLine.command from settings.json in CLAUDE_CONFIG_DIR (default ~/.claude/) and deletes the renderer's runtime state. Run before (or after) `claude plugin uninstall yas`, which only deletes the plugin cache and leaves the statusLine config behind.
- License
- BSD-3-Clause
- Allowed tools
- Read,, Write,, Bash
- Instructions
- 127 lines in SKILL.md · view on GitHub
Before installing
- Pre-approves any shell command
Files (1)
- SKILL.md
SKILL.md (first lines)
<objective>
Reverse `/yas:init`. Remove the `statusLine` block from `settings.json` in `$CLAUDE_CONFIG_DIR` (default `~/.claude/`), only when it points at this plugin's renderer, and delete the runtime logs and per-session payloads the renderer wrote.
`claude plugin uninstall yas@yet-another-statusline` only deletes the plugin *cache* — Claude Code keeps reading `statusLine.command` from settings.json and tries to run the now-missing script. This skill clears that config so the statusline actually stops.
Leaves untouched: a custom (non-yas) statusLine, the `settings.json.bak-yas-*` backups, the user's `yas.toml` config file, and any `make install` dev symlinks.
</objective>
<workflow>
## Step 0: Resolve config dir
```bash
CONFIG_DIR="${CLAUDE_CONFIG_DIR:-$HOME/.claude}"
SETTINGS="$CONFIG_DIR/settings.json"
printf " Config dir: %s\n" "$CONFIG_DIR"
```
## Step 1: Inspect the current statusLine
```bash
if [ ! -f "$SETTINGS" ]; then
printf " No settings.json — nothing to unwire.\n"
CFG_STATE="absent"
else
CMD=$(jq -r '.statusLine.command // ""' "$SETTINGS" 2>/dev/null) # timeout: 5000
if [ -z "$CMD" ]; then
printf " No statusLine configured — nothing to remove.\n"
CFG_STATE="none"
elif printf '%s' "$CMD" | grep -q "statusline_command.py"; then
printf " Found yas statusLine: %s\n" "$CMD"
CFG_STATE="yas"
else
printf "! statusLine points elsewhere — not a yas command:\n %s\n Leaving it untouched.\n" "$CMD"
CFG_STATE="foreign"
fi
fi
```
`statusline_command.py` is the signature of this project's renderer (used by both the plugin-cache path and the dev checkout path from the README). If `CFG_STATE` is anything other than `yas`, **skip Step 2** — do not edit `statusLine`.
## Step 2: Back up, then remove the statusLine block
Only when `CFG_STATE` is `yas`:
```bash
BAK_TS=$(date -u +%Y%m%dT%H%M%SZ)
cp "$SETTINGS" "$SETTINGS.bak-yas-${BAK_TS}" # timeout: 5000
printf " Backed up → settings.json.bak-yas-%s\n" "$BAK_TS"
_result=$(jq 'del(.statusLine)' "$SETTINGS") # timeout: 5000
[ $? -eq 0 ] && [ -n "$_result" ] || { printf "! jq failed — settings.json unchanged\n"; exit 1; }
_tmp=$(mktemp "$SETTINGS.XXXXXXXXXX")
printf '%s\n' "$_result" > "$_tmp" \
|| { rm -f "$_tmp"; printf "! write failed — settings.json unchanged\n"; exit 1; }
mv "$_tmp" "$SETTINGS" # timeout: 3000
if jq empty "$SETTINGS" 2>/dev/null; then # timeout: 5000
printf " Removed statusLine from settings.json\n"
else
cp "$SETTINGS.bak-yas-${BAK_TS}" "$SETTINGS"
printf "! Result was invalid JSON — restored from backup\n"
exit 1
fi
```
## Step 3: Delete runtime state
The renderer writes these as it runs. Safe to remove; they regenerate if the statusline is ever reinstalled. `yas.toml` is deliberately preserved — it is the user's own configuration, not YAS-generated state.
```bash
# Consolidated state tree (current versions)
if [ -d "$CONFIG_DIR/yas" ]; then
rm -rf "$CONFIG_DIR/yas" && printf " Removed yas/\n"
fi
# Legacy flat paths (older versions, pre-migration)
for f in statusline-tokens.log statusline-token-rate.log statusline-render.log \
statusline-theme terminal-width yas-last-prompt.json yas.toml.cache; do
if [ -e "$CONFIG_DIR/$f" ]; then
rm -f "$CONFIG_DIR/$f" && printf " Removed legacy %s\n" "$f"
fi
done
if [ -d "$CONFIG_DIR/statusline-output" ]; then
rm -rf "$CONFIG_DIR/statusline-output" && printf " Removed legacy statusline-output/\n"
fi
# Legacy: older versions wrote per-session info files here
for f in "$CONFIG_DIR"/statusline-info-*; do
[ -e "$f" ] || continue
rm -f "$f" && printf " Removed legacy %s\n" "$(basename "$f")"
done
```
(Use the resolved `$CONFIG_DIR` — not a hardcoded `~/.claude`.)
## Step 4: Report
Count, but do not delete, the init/uninstall backups:
```bash
N_BAK=$(ls -1 "$CONFIG_DIR"/settings.json.bak-yas-* 2>/dev/null | wc -l | tr -d ' ')
[ "$N_BAK" -gt 0 ] && printf " Kept %s settings.json.bak-yas-* backup(s) in %s\n" "$N_BAK" "$CONFIG_DIR"
```
Then print a summary:
```
Done. statusLine config and runtime state removed.
Still installed (this skill does not remove these):
• the plugin itself — run: claude plugin uninstall yas@yet-another-statusline
• your config — yas.toml
• backups — settings.json.bak-yas-* (delete by hand if you want)From tmck-code/yet-another-statusline, BSD-3-Clause.
More from tmck-code/yet-another-statusline
- 0.753score
yas-pr-screenshots
tmck-code
Generate before/after PNG screenshots for a YAS branch's rendering changes, push them to the yas-pr-screenshots repo, and hand back a markdown before/after…
SkillBFreshness: B★ 244Claude Code +9 - 0.695score
yas-demo-text
tmck-code
Convert `make demo/img` statusline snapshots into ANSI-stripped plain text for diffing and PR embedding.
SkillCFreshness: C★ 244Claude Code +9 - 0.690score
tmck-code-statusline
tmck-code
Edit the Claude Code statusline renderer safely.
SkillCFreshness: C★ 244Claude Code +9 - 0.690score
yas-pr
tmck-code
Assemble a pull request that follows this repo's PR template, then open it as a draft.
SkillCFreshness: C★ 244Claude Code +9 - 0.690score
config
tmck-code
Reconfigure yet-another-statusline — re-runs the interactive install wizard (glyph mode, theme, labels, token soft-limit, and Python version) against the…
SkillCFreshness: C★ 244Claude Code +9 - 0.680score
init
tmck-code
Wire yet-another-statusline into Claude Code — writes statusLine.command to settings.json in CLAUDE_CONFIG_DIR (default ~/.claude/).
SkillCFreshness: C★ 244Claude Code +9
Signals
- Stars
- 244
- Forks
- 26
- Open issues
- 3
- Last commit (this folder)
- Aug 16, 2026 (2 months ago)
- Last release
- Jul 17, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- BSD-3-Clause
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from tmck-code
- 0.753score
yas-pr-screenshots
tmck-code
Generate before/after PNG screenshots for a YAS branch's rendering changes, push them to the yas-pr-screenshots repo, and hand back a markdown before/after…
SkillBFreshness: B★ 244Claude Code +9 - 0.695score
yas-demo-text
tmck-code
Convert `make demo/img` statusline snapshots into ANSI-stripped plain text for diffing and PR embedding.
SkillCFreshness: C★ 244Claude Code +9 - 0.690score
tmck-code-statusline
tmck-code
Edit the Claude Code statusline renderer safely.
SkillCFreshness: C★ 244Claude Code +9 - 0.690score
yas-pr
tmck-code
Assemble a pull request that follows this repo's PR template, then open it as a draft.
SkillCFreshness: C★ 244Claude Code +9 - 0.690score
config
tmck-code
Reconfigure yet-another-statusline — re-runs the interactive install wizard (glyph mode, theme, labels, token soft-limit, and Python version) against the…
SkillCFreshness: C★ 244Claude Code +9 - 0.680score
init
tmck-code
Wire yet-another-statusline into Claude Code — writes statusLine.command to settings.json in CLAUDE_CONFIG_DIR (default ~/.claude/).
SkillCFreshness: C★ 244Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get uninstall running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
uninstall skill. Agent Mart. https://agentmart.dev/skills/tmck-code-uninstall (last updated 2026-10-24)