en un clic
Cobalt
Cobalt contient 26 skills collectées depuis Cobalt-Money, avec une couverture métier par dépôt et des pages de détail sur le site.
Skills dans ce dépôt
Guides Rocicorp Zero sync (schema, ZQL, queries, mutators, zero-cache, Postgres providers, deployment, debugging, React). Use when working with Zero, real-time sync, ZQL, zero-cache, mutators, query sync, connection issues, Supabase/PlanetScale Postgres, or troubleshooting Zero.
How to lay out a new REST endpoint in Cobalt — folder structure, schema naming, Drizzle query patterns, ownership checks, response drift validation. Load when adding/restructuring routes in `apps/server/src/api/internal/<feature>/` + their data layer in `packages/server-data/src/<feature>/`.
Monorepo-specific conventions for the Cobalt stack (web, server, Zero, TanStack). Use when implementing features in this repo, choosing data layers, or aligning with established patterns.
When to annotate function return types vs let TS infer, and when to derive types from zod schemas vs hand-declare interfaces. Load when writing or reviewing TS in this monorepo so signatures stay consistent across packages.
Write and run LLM evaluations using the evalite TypeScript library (built on Vitest). Use when creating .eval.ts files, writing scorers, tracing LLM calls, comparing model variants, configuring evalite, running evals in CI, or when the user mentions "evalite", "evals", "LLM evaluation", "scoring LLM output", or "eval runner". Also trigger when you see imports from "evalite", "evalite/traces", "evalite/ai-sdk", "evalite/config", "evalite/runner", or "autoevals".
Master error handling patterns across languages including exceptions, Result types, error propagation, and graceful degradation to build resilient applications. Use when implementing error handling, designing APIs, or improving application reliability.
Build Raycast extensions with React and TypeScript. Use when the user asks to create a Raycast extension, command, or tool.
Creates isolated Linux MicroVMs using Vercel Sandbox SDK. Use when building code execution environments, running untrusted code, spinning up dev servers, testing in isolation, or when the user mentions "sandbox", "microvm", "isolated execution", or "@vercel/sandbox".
Implement, configure, and customize Streamdown — a streaming-optimized React Markdown renderer with syntax highlighting, Mermaid diagrams, math rendering, and CJK support. Use when working with Streamdown setup, configuration, plugins, styling, security, or integration with AI streaming (e.g., Vercel AI SDK). Triggers on: (1) Installing or setting up Streamdown, (2) Configuring plugins (code, mermaid, math, cjk), (3) Styling or theming Streamdown output, (4) Integrating with AI chat/streaming, (5) Configuring security, link safety, or custom HTML tags, (6) Using carets, static mode, or custom components, (7) Troubleshooting Tailwind, Shiki, or Vite issues.
Where unit and integration tests live, what to mock vs run for real, how to verify DB-shape drift, and how the server-based integration harness works. Load when adding tests, refactoring test infra, or debugging a flaky integration run.
How Cobalt handles writes — when to use a Zero custom mutator vs a REST (Hono RPC) endpoint, how to structure ownership checks, cascade behavior, client invocation (optimistic vs pessimistic), and when both paths need to exist side-by-side. Load when adding a feature that modifies data (create / update / delete).
How to structure provider webhook handlers in apps/server/src/webhooks — thin HTTP transport, verification + SDK work in server-data, business logic in a workflow. Load when adding or refactoring a webhook receiver (Stripe, Plaid, SnapTrade, App Store, …).
How to structure Vercel Workflow (WDK) features in apps/server — thin workflow.ts, one concern per "use step", server-data for DB only, colocated lib mappers. Load when adding or refactoring durable workflows, Plaid/SnapTrade sync, or webhook-driven jobs.
Vercel AI Gateway expert guidance. Use when configuring model routing, provider failover, cost tracking, or managing multiple AI providers through a unified API.
Migrate shadcn components and custom Radix UI primitives to Base UI with a manual, low-risk workflow. Use when users ask to move from Radix UI to Base UI, replace asChild patterns, fix migration TypeScript errors, update renamed props/types, or adapt dropdown/popover/dialog positioning to Base UI positioner patterns.
Answer questions about the AI SDK and help build AI-powered features. Use when developers: (1) Ask about AI SDK functions like generateText, streamText, ToolLoopAgent, embed, or tools, (2) Want to build AI agents, chatbots, RAG systems, or text generation features, (3) Have questions about AI providers (OpenAI, Anthropic, Google, etc.), streaming, tool calling, structured output, or embeddings, (4) Use React hooks like useChat or useCompletion. Triggers on: "AI SDK", "Vercel AI SDK", "generateText", "streamText", "add AI to my app", "build an agent", "tool calling", "structured output", "useChat".
Creates durable, resumable workflows using Vercel's Workflow SDK. Use when building workflows that need to survive restarts, pause for external events, retry on failure, or coordinate multi-step operations over time. Triggers on mentions of "workflow", "durable functions", "resumable", "workflow sdk", "queue", "event", "push", "subscribe", or step-based orchestration.
When the user wants to edit, review, or improve existing marketing copy, or refresh outdated content. Also use when the user mentions 'edit this copy,' 'review my copy,' 'copy feedback,' 'proofread,' 'polish this,' 'make this better,' 'copy sweep,' 'tighten this up,' 'this reads awkwardly,' 'clean up this text,' 'too wordy,' 'sharpen the messaging,' 'refresh this content,' 'update this page,' 'this content is outdated,' or 'content audit.' Use this when the user already has copy and wants it improved or refreshed rather than rewritten from scratch. For writing new copy, see copywriting.
Build AI chat interfaces using ai-elements components — conversations, messages, tool displays, prompt inputs, and more. Use when the user wants to build a chatbot, AI assistant UI, or any AI-powered chat interface.
This skill encodes Emil Kowalski's philosophy on UI polish, component design, animation decisions, and the invisible details that make software feel great.
Guide for creating high-quality MCP (Model Context Protocol) servers that enable LLMs to interact with external services through well-designed tools. Use when building MCP servers to integrate external APIs or services, whether in Python (FastMCP) or Node/TypeScript (MCP SDK).
Build scalable design systems with Tailwind CSS v4, design tokens, component libraries, and responsive patterns. Use when creating component libraries, implementing design systems, or standardizing UI patterns.
Vitest testing framework patterns for test setup, async testing, mocking with vi.*, snapshots, and test performance (formerly test-vitest). This skill should be used when writing or debugging Vitest tests. This skill does NOT cover TDD methodology (use test-tdd skill), API mocking with MSW (use test-msw skill), or Jest-specific APIs.
Add Agentation visual feedback toolbar to a Next.js project
Core FP concepts including pure functions, currying, composition, and pointfree style - the foundation for mastering functional TypeScript
Type-safe SQL ORM for TypeScript with zero runtime overhead