claude up some atproto stuff

add atproto orientation skill, wisp subpath gotcha

new atproto skill triggers on any atproto work and shows
what tools are available. wisp skill now warns about subpath
serving and framework path requirements.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

+45 -1
+1
README.md
··· 27 27 28 28 | skill | what it does | 29 29 |-------|-------------| 30 + | `/protopack:atproto` | orientation — what's available, when to use what | 30 31 | `/protopack:constellation` | query the global backlink index (likes, reposts, follows, replies, quotes) | 31 32 | `/protopack:spacedust` | real-time interaction streaming via WebSocket | 32 33 | `/protopack:slingshot` | fast record fetching and identity resolution |
+1 -1
skills/app-patterns/SKILL.md
··· 1 1 --- 2 2 name: app-patterns 3 - description: Common patterns for building AT Protocol applications with Microcosm services. Use when scaffolding a new atproto app, adding engagement features, or combining Microcosm services together. 3 + description: Common patterns for building AT Protocol applications with Microcosm services. Use when building or architecting an atproto app that needs engagement data, real-time updates, or record hydration. Covers how to compose Constellation, Slingshot, and Spacedust together. 4 4 user-invocable: true 5 5 --- 6 6
+34
skills/atproto/SKILL.md
··· 1 + --- 2 + name: atproto 3 + description: Orientation for building on the AT Protocol. Use this skill whenever the task involves AT Protocol, atproto, Bluesky, decentralized social, or any app that reads/writes atproto records. Even if the user doesn't mention it explicitly, use this skill if they're working with DIDs, AT-URIs, lexicons, or PDS records. 4 + user-invocable: true 5 + --- 6 + 7 + # atproto — building on the AT Protocol 8 + 9 + **Learn the fundamentals:** https://atproto.com — covers DIDs, AT-URIs, lexicons, PDS, and the data model. 10 + 11 + ## what's available to you 12 + 13 + This plugin gives you several complementary tools. Use what fits the task. 14 + 15 + **Microcosm services** — free, unauthenticated infrastructure that indexes the entire AT Protocol network (not just Bluesky): 16 + 17 + - **Slingshot** — fast record fetching and identity resolution. Invoke `/protopack:slingshot`. 18 + - **Constellation** — backlink index for engagement data (likes, reposts, follows, replies). Invoke `/protopack:constellation`. 19 + - **Spacedust** — real-time WebSocket firehose of interactions. Invoke `/protopack:spacedust`. 20 + - **UFOs** — discover what lexicons/apps exist in the network. Invoke `/protopack:ufos`. 21 + 22 + **MCP tools** — available directly in your tool list: 23 + 24 + - **pdsx** — AT Protocol record CRUD (list, get, create, update, delete) 25 + - **atproto-mcp** — search atproto docs, lexicon schemas, cookbook examples (search_atproto_docs, get_lexicon, etc.) 26 + - **pub-search** — search published writing across Leaflet, Whitewind, and other atmosphere platforms. Invoke `/protopack:pub-search`. 27 + 28 + **Deployment:** 29 + 30 + - **wisp.place** — deploy static sites to the AT Protocol. Invoke `/protopack:wisp`. 31 + 32 + ## combining services 33 + 34 + Invoke `/protopack:app-patterns` for common patterns — e.g. using Constellation for historical data + Slingshot to hydrate records + Spacedust for live updates.
+9
skills/wisp/SKILL.md
··· 19 19 20 20 Use `--spa` for single-page apps. Redeployments only upload changed files. Sites go live at `https://sites.wisp.place/{did}/{site-name}`. 21 21 22 + ## critical: subpath serving 23 + 24 + Wisp serves sites at `/{did}/{site-name}/`, not at root. This means: 25 + 26 + - **Frameworks must use relative paths.** Absolute paths like `/_app/...` will break. 27 + - **SvelteKit**: set `paths.relative = true` in `svelte.config.js`. Avoid SPA fallback — prerender instead. 28 + - **Wisp rewrites HTML `href`/`src` attributes but not JS string literals** in inline `<script>` tags. If your framework emits `import("/_app/...")` in inline scripts, those paths will break. 29 + - When in doubt, prerender everything and use relative paths throughout. 30 + 22 31 ## domains 23 32 24 33 ```bash