The Go90 Scale of Doomed Streaming Services
1# Agents 2 3This is a starter kit for building apps on the Atmosphere with Quickslice. 4 5## Project Structure 6 7- `index.html` - Main frontend with OAuth login flow 8- `docker-compose.yml` - Quickslice server configuration 9- `lexicons/` - AT Protocol lexicon schemas 10- `favicon.svg` - Slices logo 11 12## Key Technologies 13 14- **Quickslice** - Backend server for AT Protocol apps 15- **AT Protocol** - Decentralized social protocol (Bluesky) 16- **OAuth** - Authentication via Bluesky accounts 17- **Web Components** - `<qs-actor-autocomplete>` for handle input 18 19## Configuration 20 21In `index.html`: 22- `SERVER_URL` - Quickslice server (default: `http://127.0.0.1:8080`) 23- `CLIENT_ID` - OAuth client ID from Quickslice settings 24 25## Development 26 27```bash 28docker compose up # Start Quickslice server 29make serve # Serve frontend 30make format # Format HTML with Prettier 31make zip # Create lexicons.zip 32``` 33 34## MCP Server 35 36Quickslice exposes an MCP server at `http://127.0.0.1:8080/mcp`. Add it to your AI assistant: 37 38```bash 39claude mcp add --scope user quickslice http://127.0.0.1:8080/mcp 40``` 41 42Use MCP tools to: 43- Query the GraphQL API 44- Explore available lexicon schemas 45- Generate GraphQL queries/mutations 46- Understand record structures 47 48## Lexicons 49 50Custom lexicons go in `/lexicons` following AT Protocol naming conventions (e.g., `com/example/myrecord.json`). Run `make zip` and upload via the Quickslice settings page. 51 52See the [Lexicon Style Guide](https://github.com/bluesky-social/atproto/discussions/4245) for best practices. 53 54## Common Tasks 55 56**Add a new feature**: Ask the Quickslice MCP about relevant lexicons, then update `index.html` with new GraphQL queries and UI. 57 58**Add custom lexicons**: Create JSON schemas in `/lexicons`, run `make zip`, upload via settings page. If the lexicon already has published records across multiple PDSes, click "Trigger Backfill" on the Quickslice dashboard to sync existing data. Note: Avoid backfilling well-known lexicons like `app.bsky.*` as this will take days and require large amounts of disk space. 59 60**Style the app**: CSS variables are defined in `:root` - modify colors, spacing as needed.