AT Protocol (Bluesky) skills for Claude Code
npx claudepluginhub zentered/atproto-skillsSkills for building on the AT Protocol (Bluesky) — OAuth, identity, and more.
A Claude Code plugin with skills for building on the AT Protocol (Bluesky).
AT Protocol fundamentals — identity resolution, DIDs, handle lookups, PDS discovery, XRPC endpoints, and scopes.
Triggers on: "resolve a Bluesky handle", "look up a DID", "find a PDS endpoint", "how does ATProto identity work", etc.
Lexicon schema language — schema structure, type system, NSID naming, record types, XRPC endpoints, evolution rules, publishing, and codegen (goat, @atproto/lex).
Triggers on: "define a lexicon", "create a lexicon schema", "design an XRPC endpoint", "generate types from a lexicon", "publish a lexicon", "how do lexicon types work", etc.
OAuth implementation guide — PAR, DPoP, PKCE, client metadata, token exchange, and common pitfalls (including the base64url padding trap).
Triggers on: "implement ATProto OAuth", "add Bluesky login", "debug DPoP proofs", "fix ATProto OAuth errors", etc.
From your terminal:
claude plugin marketplace add https://github.com/zentered/atproto-skills
claude plugin install atproto-skills
Or from within a Claude Code session:
/plugins marketplace add https://github.com/zentered/atproto-skills
/plugins install atproto-skills
30 test prompts evaluated against skill descriptions to verify correct skill triggers. See tests/trigger-evals.yaml for cases and tests/trigger-eval-results.md for full results.
| Skill | Cases | Pass Rate |
|---|---|---|
| atproto-oauth | 10 | 100% |
| atproto-domain | 10 | 100% |
| atproto-lexicon | 10 | 100% |
| Total | 30 | 100% |
6 prompts answered by a baseline LLM (no skills) then compared against skill content. Measures whether skills prevent real developer harm. See tests/quality-eval-results.md for full analysis.
| Prompt | Skill | Risk Without Skill | Key Gap |
|---|---|---|---|
| "required a client_assertion" error | atproto-oauth | HIGH | Misdiagnoses — real issue is base64url padding |
| Local dev OAuth setup | atproto-oauth | HIGH | Recommends ngrok; wrong client_id format |
| Handle→DID in CF Workers | atproto-domain | HIGH | cloudflare-dns.com unreachable in Workers |
| Store handles or DIDs? | atproto-domain | LOW | Baseline gets it right |
| enum vs knownValues | atproto-lexicon | LOW-MED | Directionally correct, soft on breaking contract |
| Publishing a lexicon | atproto-lexicon | HIGH | Wrong model — no path to publication |
4 of 6 prompts are high-risk without skills (67%) — the skills prevent real debugging dead-ends and broken implementations.
Last evaluated: 2026-03-30 with claude-sonnet-4-6.
Add a new skill:
mkdir -p skills/skill-name/referencesSKILL.md with YAML frontmatter (name, description with trigger phrases)references/tests/trigger-evals.yaml./tests/validate-skills.sh to verifyMIT
Built by Zentered
Harness-native ECC skills, hooks, rules, MCP conventions, and operator workflows
Claude Code marketplace entries for the plugin-safe Antigravity Awesome Skills library and its compatible editorial bundles.
Production-ready workflow orchestration with 84 marketplace plugins, 192 local specialized agents, and 156 local skills - optimized for granular installation and minimal token usage