ship

ship is a skill for Claude Code from ucsandman/marketing-studio. It costs 52 tokens per session (1,225 once invoked), scanned A, original, MIT.

A release checklist for finishing software work and sending it to a shared Git repository. It covers verification, documentation, version updates, security checks, and committing and pushing changes.

In plain words
What is it for?
Use it when asked to ship work, update docs and push changes, or check what still needs updating before a release or at the end of a work session.
Why use it?
It helps prevent unfinished, undocumented, or failing changes from being sent out. It also checks related published materials for inconsistencies.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin. Also seen: reads .claude/ paths; mentions CLAUDE.md.

Part of the marketing-studio plugin — 15 skills shipped together

Good fit Use it when asked to ship work, update docs and push changes, or check what still needs updating before a release or at the end of a work session.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/ucsandman/marketing-studio/ship
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 ucsandman/marketing-studio --skill ship
Clone the repo
git clone --depth 1 https://github.com/ucsandman/marketing-studio

Made for: Claude Code.

Or install marketing-studio, the plugin that ships this one along with the rest of its 15 skills.

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 ship

README.md
[![agentmods](https://agentmods.dev/badge/skills/ucsandman/marketing-studio/ship.svg)](https://agentmods.dev/skills/ucsandman/marketing-studio/ship)
Your own site
<a href="https://agentmods.dev/skills/ucsandman/marketing-studio/ship"><img src="https://agentmods.dev/badge/skills/ucsandman/marketing-studio/ship.svg" alt="Measured on agentmods" height="20"></a>
Per session 52 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,225 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector warn 7 Sept 2026
SkillSpector: 1 finding, up to medium

These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →

  • medium Rogue Agent · line 19
    Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.
    Fix: Remove any persistence mechanisms (cron jobs, startup scripts, state files). Skills should not maintain state across sessions without explicit user consent.
How audits are shown
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.00052 $0.01225
Opus 5 $0.00026 $0.00613
Sonnet 5 $0.00010 $0.00245
Haiku 4.5 $0.00005 $0.00122

Measured 3d ago against content hash e933445e2535, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

ship scanned grade A with 0 findings 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 3d 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/ship/SKILL.md · 40 lines

How it starts

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

Ship

Every ship is the same ritual: verify → docs → marketing site → sync surfaces → knowledge → version → secrets → de-vibe spot-check → self-check → commit → push. Work through the checklist in order; report what shipped and what was skipped.

If the repo has its own ship skill (e.g. /dashclaw-ship), use that instead.

Checklist

  1. Scope check. git status. If other agents are working in this repo or a scope lock is active, stage only files you changed this session — never git add -A blindly.
  2. Verify. Run the repo's test/lint/build (discover from package.json / pyproject / CI config). Read the output. Failures block the ship — fix first, don't push red.
  3. Docs. Update every doc the change touches, in this commit and not a later sweep: README run steps, changelog, and internal docs (docs/, ADRs, runbooks, architecture notes, the repo's own CLAUDE.md if a convention changed). New env vars → .env.example + docs. New scripts and APIs get request/response examples.
  4. Marketing site. If a public surface exists — a site/, web/, www/, or landing/ dir here, a separate site repo, or a URL in the README — open the pages this change affects and fix drift: feature lists, screenshots, pricing, version numbers, docs pages, changelog/release page. Rendered proof, not a grep. Say "no public site" out loud when there isn't one; never leave it unstated.
  5. Sync other surfaces. Anything else this repo publishes beyond the code: SDK/CLI version references, skills/plugins/MCP manifests, generated docs, dashboards, package registry metadata. List each surface as checked or n/a.
  6. Knowledge capture. Write down what this session learned, before it evaporates:
    • Durable architecture/product/stack decision → docs/DECISIONS.md.
    • Failure or lesson → docs/ERRORS.md. Full entry (symptom, root cause, fix, date) when debugging took multiple attempts; one line every time you broke something or Wes corrected you, even if the fix was instant. First occurrences must be logged or repeats are never countable.
    • Fact a future session needs and cannot derive from the code → a memory file in ~/.claude/projects/<project-slug>/memory/ plus its one-line pointer in that dir's MEMORY.md. That is a different repo, so it gets its own commit.
    • A lesson that has now repeated → promote it to a rule in this repo's CLAUDE.md.
    • Nothing durable this session? Say that explicitly.
  7. Version bump. If a publishable package changed behavior, bump the version and changelog. Print the publish command for the user to run — never publish without explicit approval.
  8. Secrets scan. Review the staged diff for secrets, tokens, private paths, .env files. Anything sensitive → unstage and flag.
  9. De-vibe spot-check. Run the CRITICAL security greps and repo/git-tell checks from the de-vibe skill (~/.claude/skills/de-vibe/references/code-tells.md §1 and §5) against the staged diff and tracked files — committed .env, wildcard CORS, hardcoded keys, tracked AI artifacts (.claude/, CLAUDE.md, .cursorrules), attribution trailers not disabled, default title/favicon on web apps. Hits block the ship like a failed test. This is the spot-check only — for a project's first ship, or when the diff touches UI/marketing copy, suggest a full /de-vibe instead (audit + identity pass) and let the user decide.
  10. Assumption self-check. NEVER QUIZ WES (his explicit order, 2026-08-14). Ask yourself the 3–5 questions a reviewer would probe — invariants relied on, rollback path, surfaces affected — and ANSWER THEM YOURSELF from the diff. Anything you cannot answer, investigate until you can. State the load-bearing assumptions as facts in the post-ship report, never as blocking questions. The only pre-ship questions allowed are the CLAUDE.md hard-stop categories (auth, billing, prod infra, prod-data migrations, destructive actions).
  11. Commit and push. Message follows repo convention. Push, then confirm CI kicked off (and passes, if it's fast). Memory-dir changes get their own commit in ~/.claude.
  12. Report. State what shipped, docs updated, the marketing site verdict, surfaces synced, what you logged to DECISIONS/ERRORS/memory, version state, the assumptions you self-checked, and anything intentionally skipped.

Read the full file on GitHub · 40 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. 3d ago Changed · +10 lines e933445e2535
  2. 8d ago First seen · 30 lines · 52 tokens per session scan A 466390400b88

Subscribe to this mod's changes

ship is a skill published in the GitHub repository ucsandman/marketing-studio (227 stars, last pushed 2d ago), licensed MIT. It adds 52 tokens to every session and 1,225 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.