Overview
Roark publishes 15 Agent Skills: short, focused guides that teach a coding agent how to use Roark. The MCP Server gives an agent the tools to reach the Roark API; the skills give it the workflow and the judgment. Which testing template fits the goal, which metrics to attach, how to select flow variants without accidentally placing hundreds of calls. They use the open Agent Skills format (aSKILL.md file plus an optional references/ folder), so they are not tied to one vendor. Claude Code, Codex, Cursor, Gemini CLI and GitHub Copilot all read them.
Skills and the MCP server are independent. Skills work on their own and make an agent better at reasoning about Roark, but an agent still needs the MCP server, the CLI or an SDK to actually call the API.
Install
- Any agent (recommended)
- Claude Code
- Manual
The This installs all 15 skills into the current project. The files land in Add
skills CLI installs straight from the Roark repository:.agents/skills/, and the CLI additionally links them into the directory of whichever agent it detects, so seeing both .agents/skills/ and (for example) .claude/skills/ afterwards is expected rather than a duplicate install.To choose targets explicitly, repeat the -a flag once per agent:-g to install for your user account rather than the current project, and -a '*' to install for every agent the CLI knows.Supported agents
Theskills CLI writes one shared tree and every agent below reads it, so there is nothing to convert per vendor.
Windsurf, Zed, Cline, Goose, Warp, opencode and others are supported by the same command. Run
npx skills add roarkhq/mcp-roark-analytics -a '*' to install for every agent the CLI detects.
The skills
Agents load skills on demand, so having all 15 installed costs nothing until one is relevant to what you asked for.
Concepts versus skills
roark-concepts is generated rather than hand-written. It is synced from Roark’s own source repository, and the same corpus composes the in-product assistant’s prompt, so your coding agent and the assistant in the Roark dashboard cannot describe the product differently.
The division of labour is deliberate. A concept says what a thing is and which choice is right. A skill says which call to make and what the API will reject, including the places where the public vocabulary differs from the internal one. A flow’s mode: 'UNSCRIPTED' is type: 'IMPROV' over the API, for example.
Using them
Once installed, the agent picks the right skill from what you ask. You do not name skills explicitly:Build a regression suite
Build a regression suite
“Create a saved run plan covering our three billing flows with the frustrated-caller persona, attach task-completion and empathy metrics, and add a pass/fail check at 0.8.”The agent uses
build-run-plan and configure-metrics to assemble the plan, then reports the call count before it starts anything.Gate a deploy on a simulation
Gate a deploy on a simulation
“Add a GitHub Actions job that runs our nightly Roark plan and fails the build if any check fails.”The agent uses
gate-ci, which composes start, wait and assert, and warns you if the plan has no checks attached, since that would pass forever.Grade production traffic
Grade production traffic
“Score every real call our support agent takes this week for task completion, and alert me when it drops below 0.7.”The agent uses
monitor-live-calls to set up a standing metric collector over live traffic instead of a simulation.Keeping them current
The skills are versioned with the SDK surface they describe. Update them with:skills-lock.json records a content hash for each installed skill, so skills update can tell which ones actually changed and leave the rest alone. Commit that file to keep the set consistent across a team.
Additional Resources
MCP Server
Give your agent access to the Roark API
GitHub Repository
Read the skills source
CLI
Drive Roark from your terminal and CI
Config as Code
Define agents, personas, flows and metrics as YAML
Node.js SDK
The TypeScript SDK the skills write against
API Reference
Explore the full API documentation