Agent skill

Plugin API Docs

by concord-consortium in concord-consortium/codap

A skill your agent uses when regenerating, checking, or auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages, the quick-reference tables, the JSON inventory, or…

MITAuto-check passedDevelopment

Install Plugin API Docs

skills CLI
$ npx skills add concord-consortium/codap --skill plugin-api-docs -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install concord-consortium/codap plugin-api-docs --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/concord-consortium/codap.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/plugin-api-docs .claude/skills/plugin-api-docs && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
plugin-api-docs
GitHub stars
106
Token cost
~1.4k tokens
SKILL.md length
739 words
Files
1
Skills in repo
4
Repo updated
First seen
Licence
MIT

At a glance

A skill your agent uses when regenerating, checking, or auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages, the quick-reference tables, the JSON inventory, or…

  • Auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages
  • SKILL.md covers The scripts, When to use which, What is generated and what is… and The undocumented baseline, plus 2 more sections
  • Calls npm
  • The quick-reference tables

What it does

Plugin API Docs is an agent skill from concord-consortium/codap. Use when regenerating, checking, or auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages, the quick-reference tables, the JSON inventory, or the request schema. Also use to check whether the Data Interactive code and its documentation have drifted, and before a v3 release.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Technical documentation. It works with npm. The repository describes itself as: CODAP (Common Online Data Analysis Platform). The licence is MIT.

When your agent uses it

  • Auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages
  • The quick-reference tables
  • The JSON inventory
  • The request schema

Example prompts

  • “/plugin-api-docs”

What it can do on your machine

Read from SKILL.md and the folder at commit b85f7a4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npm

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use npm, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Plugin API Docs loads about 1.4k tokens when it runs. Until then it costs about 82 tokens; SKILL.md has 739 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~82
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from concord-consortium/codap at commit b85f7a4, republished under its MIT licence (© concord-consortium). 739 words, ~1,417 tokens.

Download SKILL.mdSave it as .claude/skills/plugin-api-docs/SKILL.md (or your agent's skills folder).
name
plugin-api-docs
description
Use when regenerating, checking, or auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages, the quick-reference tables, the JSON inventory, or the request schema. Also use to check whether the Data Interactive code and its documentation have drifted, and before a v3 release.

Plugin API reference tooling

Keeps v3/doc/plugin-api/ honest about v3/src/data-interactive/. Three scripts under v3/scripts/plugin-api/, each runnable on its own; npm scripts wrap them.

This solves the same problem as generate-log-events-csv does for log events, and is built the same way: a deterministic compiler-API extractor, a merge step that rewrites only machine-owned content, and a checker.

The scripts

npm scriptWhat it does
npm run plugin-api:extractPrints the inventory as JSON to stdout (the generator is what writes the file)
npm run plugin-api:generateRewrites generated blocks in the docs, writes the request schema, reports drift
npm run plugin-api:lintChecks the docs against the code and the conventions
npm run plugin-api:checkBoth of the above in report-only mode — what CI runs

markers.mjs and inventory.mjs are shared helpers, not entry points: the first defines a well-formed generated-block marker, the second is the one way both scripts run the extractor. The generator consults markers.mjs before rewriting a page and skips any page whose markers it cannot prove safe; that file explains what a rewrite would otherwise destroy.

Run them from v3/.

When to use which

Before a release, or after touching src/data-interactive/:

npm run plugin-api:generate && npm run plugin-api:lint

Then read the drift report. CHANGED means a table was stale and has been rewritten — review the diff. NEW means a resource exists in code that nothing documents and that is not in the baseline; either document it or add it to the baseline deliberately.

To see whether anything has drifted, without writing: npm run plugin-api:check.

What is generated and what is not

Generated blocks are delimited in the markdown:

<!-- BEGIN GENERATED: actions -->
...
<!-- END GENERATED: actions -->

The generator writes actions, scope, adornment-types, the three quick-reference.md tables, and a values block only when it declares its source interface:

<!-- BEGIN GENERATED: values source=DIAttribute -->

Everything else it leaves alone and reports. That is deliberate: resources do not map to value interfaces by name, so a block the tool cannot fill completely is better hand-written than half-generated. The lint checks those instead.

A marker declares a block machine-owned even before the tool can fill it. Content hand-written inside one is provisional: it stands until the generator learns that block, then is replaced — reported as CHANGED, and as a --check failure, not silently. Never hand-edit a block the generator already writes — run npm run plugin-api:generate and read the "Hand-maintained (left alone)" list to see which is which. See v3/doc/plugin-api/conventions.md for the full rules.

The undocumented baseline

doc/plugin-api/undocumented-baseline.txt lists resources with no page yet. The drift check reports a resource only if it is undocumented and absent from the baseline, so the check is meaningful while resources still lack pages instead of permanently red.

When a page lands, delete its line. The check reports stale entries, so the file cannot quietly rot.

Show full SKILL.md (296 more words)Show less

What the extractor deliberately does not know

It reports facts, not judgment. It cannot produce, and will never overwrite:

  • why a resource exists, or when a plugin would reach for it
  • the condition that produces an error — only the string is derivable
  • worked examples
  • per-adornment measure-data shapes, assembled at runtime by each handler's getAdditionalData

If one of those is wrong in the docs, a human wrote it and a human fixes it.

Gotchas

  • The extractor resolves one level of factory indirection — several adornments get their handler from univariateMeasureAdornmentBaseHandler. Anything deeper is reported as unresolved rather than guessed; if you see built by …() in the inventory, the actions are unknown, not absent.
  • Value interfaces are resolved through extends, including extends Partial<X> (which makes the inherited members optional) and the alias forms type X = Y / type X = Partial<Y>. Members carry inherited naming the interface they came from. This matters more than it sounds: every component type extends V2Component, and DIAttribute declares 2 members and inherits 22. A base the walker cannot find is listed in unresolvedBases rather than dropped. Unions and MST Partial<SnapshotIn<typeof Model>> aliases denote no single member list and are skipped, not approximated.
  • "Documented" has one definition, in coverage.mjs, used by both the generator and the lint: a page's generated actions header names every resource that page covers, falling back to the filename for a single-resource page. A mention in prose never counts.
  • scope derives from two signals: whether the parser exempts the resource from #default defaulting, and whether the handler actually reads a data context. The exemption list alone is misleading — adornment has a context resolved and ignores it.
  • Error strings reach the docs with CODAP's %@ i18n notation replaced by neutral <value> placeholders. A resource page may name them meaningfully in its own hand-written table.

© concord-consortium, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .claude/skills/plugin-api-docs of concord-consortium/codap.

Open the folder on GitHubat commit b85f7a4

Compare with similar skills

Plugin API Docs next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Plugin API Docs compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Plugin API Docs this skillconcord-consortium/codap106—~1.4kAutomated safety check: PassMIT
Get API Docs with chubandrewyng/context-hub14k1 repos~775Automated safety check: PassMIT
Update .NET Supported OS Matrixdotnet/core22k—~4.1kAutomated safety check: PassMIT
Ccb GitHubSeemSeam/claude_codex_bridge3.6k—~4.9kAutomated safety check: PassCustom licence
README Badges and Headersjal-co/shieldcn919—~4.3kAutomated safety check: PassMIT
Release Managerukorvl/lightweight-charts-react-components137—~1.7kAutomated safety check: PassCustom licence

Similar skills

  • Get API Docs with chub

    andrewyng/context-hub

    Fetches current documentation for third-party APIs and SDKs with the chub CLI before the agent writes code against them, instead of relying on remembered API shapes.

    14k GitHub starsUsed in 1 repo~775 tokens
    DevelopmentAuto-check passed
  • Official

    Audits and updates the supported-os.json files for .NET releases, checking them against upstream lifecycle data and regenerating the markdown with the release-notes tool.

    22k GitHub stars~4.1k tokensUpdated yesterday
    DevelopmentAuto-check passed
  • Ccb GitHub

    SeemSeam/claude_codex_bridge

    Maintain this CCB project's GitHub-facing release and npm publication surface.

    3.6k GitHub stars~4.9k tokensUpdated today
    DevelopmentAuto-check passed
  • Adds shadcn/ui-styled README badges, badge groups, download charts, header banners and sponsor or contributor grids using the shieldcn service.

    919 GitHub stars~4.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Release Manager

    ukorvl/lightweight-charts-react-components

    Prepare or finalize semver releases for this repository. An agent skill from ukorvl/lightweight-charts-react-components.

    137 GitHub stars~1.7k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Verify New Sample PR

    pnp/sp-dev-fx-aces

    Verify a "new sample" PR in pnp/sp-dev-fx-aces builds successfully, then produce a deployment + testing checklist from the sample README so it can be manually deployed and tested before merging.

    139 GitHub stars~2k tokensUpdated 12 days ago
    DevelopmentAuto-check passed

More from concord-consortium/codap

  • Codap Resources

    concord-consortium/codap

    A skill your agent uses when deploying, updating, or syncing assets to the codap-resources S3 bucket - plugins, example documents, boundary files, banners, or notification configs

    106 GitHub stars~4.4k tokensUpdated today
    Auto-check passed
  • Generate Log Events CSV

    concord-consortium/codap

    A skill your agent uses when regenerating, updating, or auditing the CODAP v3 log-events dictionary CSV (the list of every log event the v3 app can emit, with placeholders/parameters/descriptions).

    106 GitHub stars~1.4k tokensUpdated today
    Auto-check passed
  • Codap V3 Build

    concord-consortium/codap

    A skill your agent uses when preparing a CODAP v3 release, creating release notes, updating version files, creating release PRs, tagging releases, or deploying to staging/production.

    106 GitHub stars~15k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Plugin API Docs

What does Plugin API Docs do?

A skill your agent uses when regenerating, checking, or auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages, the quick-reference tables, the JSON inventory, or…. Plugin API Docs is an agent skill from concord-consortium/codap. Use when regenerating, checking, or auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages, the quick-reference tables, the JSON inventory, or the request schema.

When should I use Plugin API Docs?

Plugin API Docs fits situations like: auditing the CODAP v3 Plugin API reference in v3/doc/plugin-api/ — the per-resource pages; the quick-reference tables; the JSON inventory; the request schema.

How do I install Plugin API Docs in Claude Code?

Run `npx skills add concord-consortium/codap --skill plugin-api-docs -a claude-code`. Or copy the skill folder (.claude/skills/plugin-api-docs in concord-consortium/codap) into .claude/skills/plugin-api-docs in your project. Claude Code loads it when a task matches its description.

How do I install Plugin API Docs in Codex?

Run `npx skills add concord-consortium/codap --skill plugin-api-docs -a codex`. Or copy the skill folder (.claude/skills/plugin-api-docs in concord-consortium/codap) into .agents/skills/plugin-api-docs in your project. Codex loads it when a task matches its description.

Can I use Plugin API Docs in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add concord-consortium/codap --skill plugin-api-docs -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/plugin-api-docs, .gemini/skills/plugin-api-docs, .github/skills/plugin-api-docs and .opencode/skills/plugin-api-docs in your project.

What does Plugin API Docs need to run?

Going by SKILL.md and its folder, Plugin API Docs needs the command-line tools its instructions call (npm).

Does Plugin API Docs access the network?

SKILL.md contains no URLs. Its commands use npm, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Plugin API Docs safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Plugin API Docs use?

Plugin API Docs is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Plugin API Docs use?

About 1.4k tokens (SKILL.md is roughly 5.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Plugin API Docs?

Skills that share tags, products or a category with Plugin API Docs: Get API Docs with chub (andrewyng/context-hub, 14k stars), Update .NET Supported OS Matrix (dotnet/core, 22k stars), Ccb GitHub (SeemSeam/claude_codex_bridge, 3.6k stars) and README Badges and Headers (jal-co/shieldcn, 919 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Plugin API Docs?

concord-consortium (a GitHub organization) maintains it in concord-consortium/codap, which has 106 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 9, 2026.

Source: concord-consortium/codap on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.