| name | staying-current |
| description | Use whenever answering anything version-sensitive — library/framework/SDK APIs, package versions, model IDs, pricing, CLI flags, config, or "latest/newest" anything. Verify against current sources instead of training data. |
| allowed-tools | Bash, Read, WebSearch, WebFetch |
Staying Current
Training data has a cutoff. Libraries ship breaking changes, prices change, model IDs get renamed, and APIs get deprecated after that cutoff. Answering version-sensitive questions from memory is the single most common way an otherwise-correct agent ships wrong code. This skill is the standing rule for not doing that.
The Ultraship Currency Guard hook (UserPromptSubmit) already fires on every prompt and injects a reminder when it detects version-sensitive language. This skill is what you do when that fires — or any time you're about to state a fact whose correct answer changes over time.
The rule
Before stating any of the following, verify it against a current source. Never answer from training data alone:
- Library / framework / SDK API signatures, imports, hooks, options
- Package versions, compatibility, and what's deprecated
- CLI flags and config file schemas
- Model IDs, model names, context windows, and capabilities
- Pricing, rate limits, free-tier limits, quotas
- "Latest", "newest", "current", "recommended" anything
- Release notes, changelogs, migration steps
Where to verify
| Source | Use for |
|---|
context7 MCP (resolve-library-id → query-docs) | Library/framework/SDK documentation and API syntax. This is the primary source for code. Use it even when you think you know the answer. |
| WebSearch / WebFetch | Versions, pricing, model IDs, release notes, deprecations, anything not in a library's docs. The current month is the search context — say "2026" in queries when recency matters. |
The project's lockfile (package-lock.json, pnpm-lock.yaml, requirements.txt, go.sum, Cargo.lock) | The exact version actually installed here — always check this before assuming a version. |
How to apply
- Detect. If the question touches anything in the rule above, do not answer yet.
- Check what's installed. Read the lockfile/manifest to learn the real version in this project.
- Pull current docs. Resolve the library on context7 and query the specific API. For non-library facts (pricing, model IDs), WebSearch then WebFetch the authoritative page.
- Answer from the source, and cite it. Quote the version/date you verified against.
- If you can't verify, say so. "I couldn't confirm this against a current source" is correct. A confident wrong API is not.
Anti-patterns
- ❌ Writing an
import or hook call from memory for a library you haven't checked this session.
- ❌ Quoting a price or model ID without fetching the current page.
- ❌ Assuming the latest major version — projects pin old ones; read the lockfile.
- ❌ Treating a recalled Ultraship memory as current — memories are point-in-time; re-verify file paths, flags, and versions before acting on them.
Note on Claude/Anthropic specifically
When the task involves Claude, the Anthropic API, model IDs, or pricing, the same rule applies with extra force — these change frequently. Verify model IDs and pricing against current Anthropic docs before quoting them.