coinbase/cds-docs
| installation, theming, tokens, and per-component APIs/examples. Use this skill whenever the task involves CDS components, design-system rules, theming, or choosing between web and mobile CDS packages, even if the user only says "use CDS" or names a component. Always start from the docs route index, then fetch only the pages you need to reason and implement correctly. Prefer the CDS MCP server (`list-cds-routes`, `get-cds-doc`); if MCP is unavailable, use curl against
npx skills add https://github.com/coinbase/cds --skill cds-docs
Goal: Pull CDS documentation into the session so your next edits, recommendations, and
API usage are grounded in current docs—not to produce a documentation handout for the user.
Treat fetched pages as source material you have read: internalize props, patterns, imports, and
setup constraints, then act (code, refactors, answers) from that understanding. Quote or
summarize for the user only when it helps. Keep the actual doc page contents to yourself
and only share their contents directly to the user if they ask.
Whether you use the CDS MCP server or fetch the pages yourself with curl is an implementation detail.
The use does not need to know your methodology unless they indicated they are debugging this skill.
Ambiguous product requests (e.g. “turn this into tabs,” “make it a card”) after you’ve read the
index: if several CDS components could be relevant (e.g. underline Tabs vs pill SegmentedTabs vs
TabNavigation), it is acceptable and often better to ask one short, concrete question (e.g.
which visual pattern matches their spec) while briefly naming the options and how they differ per
the docs. Do not pick one arbitrarily just to avoid asking.
Decide whether the work targets web (React, @coinbase/cds-web) or mobile (React Native,
@coinbase/cds-mobile). If unclear, infer from the repo (e.g. package.json dependencies, apps/*
layout) or ask a single clarifying question.
Pass web or mobile to list-cds-routes and when building curl URLs.
mcp-docs in @coinbase/cds-mcp-server / packages/mcp-server):list-cds-routes with platform: "web" | "mobile".get-cds-doc with route: path including the platform, ending in .txt (e.g.web/getting-started/installation.txt). Paths must come from the index.
https://cds.coinbase.com/llms/web/routes.txt orhttps://cds.coinbase.com/llms/mobile/routes.txt
https://cds.coinbase.com/llms/<route> where <route> matches the index (e.g.web/getting-started/theming.txt).
Use curl -fsSL '<url>'. Prefer targeted fetches (the pages you need for this task) over
loading everything; the index is for routing, not for echoing back wholesale.
web or mobile).list-cds-routes or routes.txt) and use it as thecanonical map of .txt paths.
you learned (imports, props, patterns)—do not stop at regurgitating the file.
.txt from MCP or HTTP..txt files are optional to share with the user; your priority iscorrect implementation, not reproducing the doc site in the reply.
stay implicit unless the user needs them.
clarifying question** when the product spec is under-specified.
where memory would be risky—not a dump of documentation for its own sake.
Take coinbase/cds-docs from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.