raycast-extension

Develop and optimize Raycast extensions with React and TypeScript.

7|Updated Mar 15, 2026
One-click install
npx skills add https://github.com/Cobalt-Money/Cobalt --skill raycast-extension-cobalt-money
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: raycast-extension
Source: https://github.com/Cobalt-Money/Cobalt/tree/main/.agents/skills/raycast-extension
Command: npx skills add https://github.com/Cobalt-Money/Cobalt --skill raycast-extension-cobalt-money

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @raycast/api, @raycast/utils, typescript, eslint, prettier, and includes assets (resource) components.

What problem does it solve?

This Skill streamlines the development lifecycle of Raycast extensions, helping developers scaffold, configure, and optimize commands without getting lost in boilerplate or performance pitfalls.

Core Features & Use Cases

  • Scaffolding & Configuration: Provides templates for package.json, tsconfig, and command structures to ensure standard compliance.
  • Performance Optimization: Offers patterns for caching, non-blocking I/O, and SQLite direct access to ensure extensions remain snappy and responsive.
  • Use Case: If you are building a productivity tool that queries a local database, use this Skill to implement the sidecar pattern for background syncing and SQLite URI mode for instant, non-blocking data retrieval.

Quick Start

Use the raycast-extension skill to generate a new project structure and configure the package.json manifest for a command named my-new-tool.

Frequently Asked Questions about raycast-extension

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I scaffold a new Raycast extension using TypeScript and React?

To scaffold a Raycast extension, generate a project structure with templates for package.json, tsconfig, and command components. This ensures standard compliance and provides the foundational React and TypeScript setup required for development.

What's the best way to handle non-blocking data fetching in Raycast extensions?

The best way to handle non-blocking data fetching in Raycast extensions is by implementing local caching, asynchronous I/O operations, and SQLite URI mode. These patterns ensure commands remain responsive and snappy during background tasks.

Can I use SQLite for local data caching in a Raycast extension?

Yes, you can use SQLite for local data caching in a Raycast extension. Direct SQLite access and URI mode provide instant, non-blocking data retrieval, which is ideal for productivity tools querying local databases.

Does building Raycast extensions require configuring a background sidecar process?

Building Raycast extensions supports configuring a background sidecar process for background syncing. This pattern separates heavy data fetching tasks from the UI, ensuring view-based commands maintain high performance.

Why does my Raycast extension lag when querying a local database?

A Raycast extension lags when querying a local database if it uses blocking I/O operations. To fix this, implement local caching, utilize the sidecar pattern for background syncing, and switch to SQLite URI mode for non-blocking data retrieval.