Claude Skill

fresh-library-docs

Use before writing code against a library, SDK, API, or framework whose current version you are not certain of — especially fast-moving ones. Trigger when an import fails, a method does not exist, a config key is rejected, a deprecation warning appears, or the user says the code

LLM Mart · 0 points · 0 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download onewave-ai-claude-skills-fresh-library-docs-97b5147.zip · 1 KB
Part of onewave-ai/claude-skills — 67 skills

Install

skills CLI npx skills add https://github.com/OneWave-AI/claude-skills/tree/main/fresh-library-docs
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install onewave-ai-claude-skills@llmmart
Git git clone https://github.com/OneWave-AI/claude-skills.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole onewave-ai/claude-skills collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

Fresh Library Docs

Training data has a cutoff; libraries do not. Most "the AI hallucinated an API" bugs are really the model writing correct code for a version that shipped two years ago. This skill checks reality first.

Core Behavior

Before writing non-trivial code against a dependency, establish two facts: which version this project actually has, and what that version's API looks like. In that order.

Step 1 — What Is Installed

The installed version beats the latest version and beats your memory. Read it from the project:

cat package.json | grep -A30 '"dependencies"'
npm ls <pkg> --depth=0 2>/dev/null
pip show <pkg> 2>/dev/null | head -3
cat requirements.txt pyproject.toml 2>/dev/null | grep -i <pkg>

Step 2 — Read the Real Source

The most reliable documentation is the code on disk. It cannot be out of date, because it is what will run.

ls node_modules/<pkg>/dist/*.d.ts
grep -rn "export function <name>\|export declare" node_modules/<pkg>/dist/index.d.ts | head -20
python -c "import <pkg>, inspect; print(inspect.signature(<pkg>.<fn>))"

For a TypeScript project, the .d.ts file answers the question definitively. Read it before searching the web.

Step 3 — Then the Docs

When the source is unreadable or you need usage patterns rather than signatures:

  • Official docs for that exact version, not the "latest" URL, which silently redirects.
  • The repo's CHANGELOG or migration guide — the fastest way to learn what moved between your mental model and reality.
  • GitHub issues for the specific error string, when behavior contradicts the docs.

Blog posts and forum answers are the last resort and always carry a date. A 2023 tutorial for a library that had a major release last year is a trap.

Step 4 — Confirm Before Committing

For anything non-obvious, run the smallest possible check rather than trusting the read:

node -e "const x=require('<pkg>'); console.log(Object.keys(x).slice(0,30))"
npx tsc --noEmit 2>&1 | head -20

Type-check output is the cheapest proof that an API call exists.

Rules

  • Never call a method you have not seen defined somewhere real.
  • Pin what you learn into the code as a comment only when the behavior is genuinely surprising — not as a version diary.
  • When installed and latest differ significantly, say so in one line and let the user decide whether to upgrade. Do not upgrade a dependency to make your snippet work.
  • If the answer is genuinely uncertain, say which part is uncertain instead of writing confident code around it.

Highest-Risk Dependencies

Verify these every time; they move fastest and break most: AI SDKs and model identifiers, auth libraries, ORMs and database clients, build tooling and bundler config, meta-framework routing and data-fetching conventions, payment SDKs. For model names, pricing, and parameters specifically, check the provider's current model list rather than recalling one.

Files (claude-skills)
  • SKILL.md 3.3 KB
    ---
    name: fresh-library-docs
    description: Use before writing code against a library, SDK, API, or framework whose current version you are not certain of — especially fast-moving ones. Trigger when an import fails, a method does not exist, a config key is rejected, a deprecation warning appears, or the user says the code was written against an old version.
    tools: Read, Glob, Grep, Bash, WebFetch, WebSearch
    ---
    
    # Fresh Library Docs
    
    Training data has a cutoff; libraries do not. Most "the AI hallucinated an API" bugs are really the model writing correct code for a version that shipped two years ago. This skill checks reality first.
    
    ## Core Behavior
    
    Before writing non-trivial code against a dependency, establish two facts: which version this project actually has, and what that version's API looks like. In that order.
    
    ## Step 1 — What Is Installed
    
    The installed version beats the latest version and beats your memory. Read it from the project:
    
    ```bash
    cat package.json | grep -A30 '"dependencies"'
    npm ls <pkg> --depth=0 2>/dev/null
    pip show <pkg> 2>/dev/null | head -3
    cat requirements.txt pyproject.toml 2>/dev/null | grep -i <pkg>
    ```
    
    ## Step 2 — Read the Real Source
    
    The most reliable documentation is the code on disk. It cannot be out of date, because it is what will run.
    
    ```bash
    ls node_modules/<pkg>/dist/*.d.ts
    grep -rn "export function <name>\|export declare" node_modules/<pkg>/dist/index.d.ts | head -20
    python -c "import <pkg>, inspect; print(inspect.signature(<pkg>.<fn>))"
    ```
    
    For a TypeScript project, the `.d.ts` file answers the question definitively. Read it before searching the web.
    
    ## Step 3 — Then the Docs
    
    When the source is unreadable or you need usage patterns rather than signatures:
    
    - Official docs for that exact version, not the "latest" URL, which silently redirects.
    - The repo's CHANGELOG or migration guide — the fastest way to learn what moved between your mental model and reality.
    - GitHub issues for the specific error string, when behavior contradicts the docs.
    
    Blog posts and forum answers are the last resort and always carry a date. A 2023 tutorial for a library that had a major release last year is a trap.
    
    ## Step 4 — Confirm Before Committing
    
    For anything non-obvious, run the smallest possible check rather than trusting the read:
    
    ```bash
    node -e "const x=require('<pkg>'); console.log(Object.keys(x).slice(0,30))"
    npx tsc --noEmit 2>&1 | head -20
    ```
    
    Type-check output is the cheapest proof that an API call exists.
    
    ## Rules
    
    - Never call a method you have not seen defined somewhere real.
    - Pin what you learn into the code as a comment only when the behavior is genuinely surprising — not as a version diary.
    - When installed and latest differ significantly, say so in one line and let the user decide whether to upgrade. Do not upgrade a dependency to make your snippet work.
    - If the answer is genuinely uncertain, say which part is uncertain instead of writing confident code around it.
    
    ## Highest-Risk Dependencies
    
    Verify these every time; they move fastest and break most: AI SDKs and model identifiers, auth libraries, ORMs and database clients, build tooling and bundler config, meta-framework routing and data-fetching conventions, payment SDKs. For model names, pricing, and parameters specifically, check the provider's current model list rather than recalling one.
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related