From upfront
Use when the user says "check for updates", "is everything up to date", "upgrade", or at the start of a project to verify tooling is current. Checks plugin version, project guardrails, and instruction file health.
How this skill is triggered — by the user, by Claude, or both
Slash command
/upfront:upgradeThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
You are checking that Upfront and the project's tooling are current and healthy. Run through each check, report status, and offer to fix anything that's out of date or missing.
You are checking that Upfront and the project's tooling are current and healthy. Run through each check, report status, and offer to fix anything that's out of date or missing.
Check the latest Upfront release:
curl -sf --max-time 5 https://api.github.com/repos/ThinkUpfront/Upfront/releases/latest | grep tag_name
Compare with the installed version. Read the installed version from the plugin.json in the plugin cache:
cat ~/.claude/plugins/cache/thinkupfront/upfront/*/.claude-plugin/plugin.json 2>/dev/null | grep version
Report:
[installed version]v[X.Y.Z]If an update is available, tell the user:
Run this in your terminal to update:
upfront update
Then restart Claude Code.
Check what's installed on this machine and in this project:
| Tool | Check | Purpose |
|---|---|---|
| sloppy-joe | which sloppy-joe | Supply chain protection — blocks hallucinated package names |
| gitleaks | which gitleaks | Secret detection — catches API keys in commits |
| Test runner | Detect from project (go test, npm test, pytest, etc.) | Verify it runs cleanly |
| Linter | Detect from project (golangci-lint, eslint, ruff, etc.) | Verify it's configured |
| Formatter | Detect from project (gofmt, prettier, black, etc.) | Verify it's configured |
| Pre-commit hooks | Check .pre-commit-config.yaml or .husky/ or .git/hooks/ | Verify hooks are installed |
For each tool, report:
brew install brennhill/tap/sloppy-joe"Run the test runner and linter to verify they pass. If they fail, report the failure — don't fix it, just flag it.
Check for CLAUDE.md or AGENTS.md in the project root.
If missing: "No AI instruction file found. Want me to create one? It makes every AI interaction in this repo better." If they confirm, immediately launch /upfront:enlighten.
If exists: Quick audit — does it have:
@specs/ARCHITECTURE.md)?Report how many of the 4 checks pass. If less than 3: "Your instruction file is thin. Want me to improve it?" If they confirm, immediately launch /upfront:enlighten.
Check specs/ARCHITECTURE.md:
/upfront:explore./upfront:architect to review."Check if specs/DEBT.md exists. If it does, count open items by severity:
Include in the summary below.
Present a clean report:
Upfront Health Check
====================
Plugin: 0.3.7 ✓ (latest)
sloppy-joe: installed ✓
gitleaks: MISSING — brew install gitleaks
Test runner: npm test ✓ (passing)
Linter: eslint ✓ (configured)
Formatter: prettier ✓ (configured)
Pre-commit: MISSING — recommend husky + lint-staged
CLAUDE.md: exists, 2/4 checks pass — run /upfront:enlighten
ARCHITECTURE: exists, reviewed 12 days ago ✓
Tech debt: 3 open items (1 severity 3, 2 severity 2)
Action needed:
1. Install gitleaks: brew install gitleaks
2. Set up pre-commit hooks
3. Improve CLAUDE.md: /upfront:enlighten
Ask: "Want me to fix any of these?"
If they say yes, handle what you can directly (install tools, set up hooks). For things that need their own workflow (enlighten, explore, architect), tell them which command to run.
npx claudepluginhub thinkupfront/upfront --plugin upfrontAudits enabled Claude Code plugins against detected project tech stack from files like package.json, Cargo.toml, pyproject.toml; recommends additions/removals.
Audits Claude Code project health: verifies CLAUDE.md accuracy against codebase, checks memory hygiene, audits settings and plans, discovers patterns, proposes cleanups.
Assesses codebase for AI agent readiness by detecting stacks, monorepos, git setup, and evaluating style, testing, code quality, secrets, and file sizes.