raycast-ai-extensions

star 0

Build Raycast AI extensions — expose tools that Raycast AI can call to read and act on behalf of the user. Covers the tools[] manifest, tool function shape, AI instructions, confirmations for side-effecting tools, and evals. USE WHEN making an extension AI-callable or building tools for Raycast AI. Defer exact API to developers.raycast.com/ai.

Sheshiyer By Sheshiyer schedule Updated 6/4/2026

name: raycast-ai-extensions description: "Build Raycast AI extensions — expose tools that Raycast AI can call to read and act on behalf of the user. Covers the tools[] manifest, tool function shape, AI instructions, confirmations for side-effecting tools, and evals. USE WHEN making an extension AI-callable or building tools for Raycast AI. Defer exact API to developers.raycast.com/ai." cluster: raycast version: 1.0.0

Raycast AI Extensions

AI extensions let Raycast AI call your extension's tools to answer questions and take actions ("@your-extension create an issue titled …"). You provide the tools; the model decides when to call them. Build on raycast-core (manifest + command model); this spoke covers the AI surface. Confirm current signatures at developers.raycast.com/ai.

Mental model

  • A tool is a typed function the AI may invoke: it receives validated input and returns data the model uses to continue. Tools are the AI analog of commands.
  • Declare tools in package.jsontools[] (each with a name, title, and description the model reads to decide relevance), with a matching implementation file that default-exports the tool function.
  • The extension's description and any AI instructions steer when/how the AI uses your tools — write them for the model, not the user.

Designing good tools

  • One clear job per tool. Prefer getIssues + createIssue over a mega-tool with a mode arg — the model routes better to focused tools.
  • Strong descriptions. The tool/param descriptions are the model's only routing signal; say what it does, when to use it, and what each argument means.
  • Typed inputs. Validate every argument; never trust the model's input blindly (same boundary discipline as user input).
  • Read vs write. Mark/structure side-effecting tools so they require confirmation before mutating (create/delete/send). Read tools can run freely.

Confirmations & safety

  • Any tool that changes state, spends money, or sends something should request explicit user confirmation before executing (Raycast surfaces a confirmation UI).
  • Return concise, structured results; don't dump secrets or huge payloads into the model context.

Evals

  • Raycast supports evals (in package.json) that assert the AI calls the right tool with the right args for representative prompts. Add evals for your core flows so model/prompt changes don't silently regress routing.

Build & ship

  • Develop with ray develop and test via the AI Chat / @extension mentions.
  • Ships through the same Store flow → raycast-store-publishing.

Guardrails

  • Tool/param descriptions are the routing brain — invest in them.
  • Validate inputs; gate every side-effecting tool behind confirmation.
  • Keep tools small and single-purpose; cover them with evals.
  • Never leak preference secrets into tool results or the model context.
  • Verify exact tools[] schema, function signature, and eval format against developers.raycast.com/ai (this is the model, not a frozen API).
Install via CLI
npx skills add https://github.com/Sheshiyer/skill-clusters --skill raycast-ai-extensions
Repository Details
star Stars 0
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator