gsp-update

gsp-update is a skill for Claude Code, Codex from jubscodes/get-shit-pretty. It costs 11 tokens per session (1,078 once invoked), scanned A, original, MIT.

A maintenance workflow for checking an installed GSP version, comparing it with the latest npm release, and updating it when needed. GSP is the get-shit-pretty package used by several coding-agent runtimes.

In plain words
What is it for?
Use it to inspect Claude Code, OpenCode, Gemini, or Codex installations, check the current release, and follow the update procedure.
Why use it?
It helps determine whether GSP is installed and up to date across local or global runtime directories. It also explains what to do when the version check or installation search fails.

Skill for Claude CodeCodex

Written for Claude Code and Codex: allowed-tools in frontmatter, but also reads ~/.codex or $CODEX_HOME. Also seen: reads .claude/ paths; names the AskUserQuestion tool; mentions Claude Code.

Good fit Use it to inspect Claude Code, OpenCode, Gemini, or Codex installations, check the current release, and follow the update procedure.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/jubscodes/get-shit-pretty/gsp-update
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add jubscodes/get-shit-pretty --skill gsp-update
Clone the repo
git clone --depth 1 https://github.com/jubscodes/get-shit-pretty

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for gsp-update

README.md
[![agentmods](https://agentmods.dev/badge/skills/jubscodes/get-shit-pretty/gsp-update/github.svg)](https://agentmods.dev/skills/jubscodes/get-shit-pretty/gsp-update)
Your own site
<a href="https://agentmods.dev/skills/jubscodes/get-shit-pretty/gsp-update"><img src="https://agentmods.dev/badge/skills/jubscodes/get-shit-pretty/gsp-update/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for gsp-update

Your own site · 80×15
<a href="https://agentmods.dev/skills/jubscodes/get-shit-pretty/gsp-update"><img src="https://agentmods.dev/badge/skills/jubscodes/get-shit-pretty/gsp-update.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 11 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,078 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 1 finding. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00011 $0.01078
Opus 5 $0.00005 $0.00539
Sonnet 5 $0.00002 $0.00216
Haiku 4.5 $0.00001 $0.00108

Measured 8d ago against content hash 05389202877e, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

gsp-update scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

curl -sf https://raw.githubusercontent.com/jubscodes/get-shit-pretty/main/CHANGELOG.md
gsp/skills/gsp-update/SKILL.md · 143 lines

How it starts

The opening of the file, as written. The whole thing — 143 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Step 1 — Detect installation

Determine the runtime by checking which config directory exists. Check local first, then global:

Runtime Local dir Global dir
Claude Code .claude/ ~/.claude/
OpenCode .opencode/ ~/.config/opencode/
Gemini .gemini/ ~/.gemini/
Codex .codex/ ~/.codex/

For each runtime, look for the VERSION file in two paths (current layout first, legacy fallback):

  1. {runtime-dir}/VERSION (v0.5.0+)
  2. {runtime-dir}/get-shit-pretty/VERSION (legacy v0.4.x)

Record which runtime(s) and install type (local/global) were found.

If no VERSION file exists anywhere, tell the user GSP doesn't appear to be installed and suggest:

pnpm dlx get-shit-pretty
# or with bun
bunx get-shit-pretty

Then stop.

Read the VERSION file to get the installed version.

Step 2 — Check latest version

npm view get-shit-pretty version

If the command fails, tell the user the version check failed (they may be offline or npm is unavailable) and stop.

Step 3 — Compare versions

If installed version >= latest version:

GSP v{installed} is already up to date.

Then stop.

Step 4 — Show what's new

Update available: v{installed} → v{latest}

Fetch the changelog:

curl -sf https://raw.githubusercontent.com/jubscodes/get-shit-pretty/main/CHANGELOG.md

If the fetch succeeds, extract and display the section(s) between the installed and latest versions. If it fails, skip — changelog display is optional.

Step 5 — Warn about clean install

The update replaces:
  • skills/gsp-*          (all GSP skills + sibling files)
  • templates/            (config, state, brief templates)
  • references/           (shared reference material)
  • agents/gsp-*          (all GSP agents)

Custom files outside these prefixes are preserved.

Read the full file on GitHub · 143 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 143 lines · 11 tokens per session scan A 05389202877e

Subscribe to this mod's changes

gsp-update is a skill published in the GitHub repository jubscodes/get-shit-pretty (53 stars, last pushed 3mo ago), licensed MIT. It adds 11 tokens to every session and 1,078 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.

Related

Other skills, from other repositories

alive:system-cleanup

The world feels messy. Stale tasks, orphan folders, v2 remnants, unsaved sessions — entropy is accumulating and needs to be addressed before it compounds. Scans across all walnuts, then surfaces issues one at a time.

alivecontext/alive · 52 tokens

tokf-discover

Find missed token savings by scanning AI coding session files for commands that ran without tokf filtering.

mpecan/tokf · 24 tokens

alive:world

The human doesn't know what to work on, or wants to see everything at once. They need the big picture — what's active, what's stale, what needs attention. Renders a live world view grouped by ALIVE domain, then routes to open, tidy, find, history, or map.

alivecontext/alive · 63 tokens

slackcli

Read, send, search, and manage Slack workspaces with the slackcli binary. Installs slackcli if missing and checks or proposes authentication first. Use whenever the user mentions Slack or pastes a slack.com link.

shaharia-lab/slackcli · 48 tokens

alive:bundle

Create, share, and graduate bundles — the unit of focused work within a walnut. Manages the full bundle lifecycle from creation through sharing to graduation.

alivecontext/alive · 34 tokens

alive:settings

The human wants to adjust how the system behaves — not what it contains, but how it feels. Voice, rhythm, preferences, walnut-level config, full permissions toggleable, named squirrel config, action logging toggle. The system adapting to them. Routes to preferences.yaml or walnut config.yaml depending on scope. For…

alivecontext/alive · 84 tokens