> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cekura.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Cekura Skills

> Reference for Cekura Skills, install paths, slash commands, updates, and compatibility.

export const CopyPageButton = () => {
  if (typeof window !== 'undefined') {
    setTimeout(function () {
      if (document.getElementById('ck-tools')) return;
      var anchor = document.getElementById('content-area') || document.querySelector('.mdx-content');
      if (!anchor) return;
      if (!document.getElementById('ck-style')) {
        var s = document.createElement('style');
        s.id = 'ck-style';
        s.textContent = '#ck-tools{position:absolute;top:6px;right:0;z-index:100;font-family:inherit;}' + '.ck-row{display:inline-flex;align-items:stretch;border:1px solid rgba(0,0,0,0.15);border-radius:8px;overflow:hidden;background:#fff;}' + ':root.dark .ck-row{background:rgba(255,255,255,0.06);border-color:rgba(255,255,255,0.12);}' + '.ck-btn{padding:5px 12px;border:none;background:none;cursor:pointer;font-size:13px;font-weight:500;font-family:inherit;color:#374151;}' + ':root.dark .ck-btn{color:#d1d5db;}' + '.ck-btn:hover{background:rgba(0,0,0,0.04);}' + ':root.dark .ck-btn:hover{background:rgba(255,255,255,0.06);}' + '.ck-chevron{padding:5px 8px;border:none;background:none;cursor:pointer;font-size:14px;font-family:inherit;color:#374151;}' + ':root.dark .ck-chevron{color:#d1d5db;}' + '.ck-chevron:hover{background:rgba(0,0,0,0.04);}' + ':root.dark .ck-chevron:hover{background:rgba(255,255,255,0.06);}' + '.ck-divider{width:1px;background:rgba(0,0,0,0.12);flex-shrink:0;}' + ':root.dark .ck-divider{background:rgba(255,255,255,0.12);}' + '.ck-dd{position:absolute;top:calc(100% + 4px);right:0;min-width:180px;background:#fff;border:1px solid rgba(0,0,0,0.12);border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,0.1);padding:4px;display:none;z-index:200;}' + ':root.dark .ck-dd{background:#1f2937;border-color:rgba(255,255,255,0.1);box-shadow:0 4px 16px rgba(0,0,0,0.35);}' + '.ck-item{display:block;width:100%;padding:7px 12px;border:none;background:none;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;text-align:left;color:#374151;}' + ':root.dark .ck-item{color:#d1d5db;}' + '.ck-item:hover{background:rgba(0,0,0,0.05);}' + ':root.dark .ck-item:hover{background:rgba(255,255,255,0.07);}';
        document.head.appendChild(s);
      }
      var wrap = document.createElement('div');
      wrap.id = 'ck-tools';
      var row = document.createElement('div');
      row.className = 'ck-row';
      var mainBtn = document.createElement('button');
      mainBtn.className = 'ck-btn';
      mainBtn.textContent = 'Copy page';
      var divider = document.createElement('span');
      divider.className = 'ck-divider';
      var chevron = document.createElement('button');
      chevron.className = 'ck-chevron';
      chevron.textContent = '▾';
      var dd = document.createElement('div');
      dd.className = 'ck-dd';
      function closeDD() {
        dd.style.display = 'none';
      }
      function openDD() {
        dd.style.display = 'block';
      }
      chevron.onclick = function (e) {
        e.stopPropagation();
        if (dd.style.display === 'block') {
          closeDD();
        } else {
          openDD();
        }
      };
      document.addEventListener('click', function (e) {
        if (!e.target.closest('#ck-tools')) {
          closeDD();
        }
      });
      document.addEventListener('keydown', function (e) {
        if (e.key === 'Escape') {
          closeDD();
        }
      });
      function makeItem(label, fn) {
        var b = document.createElement('button');
        b.className = 'ck-item';
        b.textContent = label;
        b.onclick = function () {
          fn();
          closeDD();
        };
        return b;
      }
      function getMarkdown() {
        var walk = function (node) {
          if (!node) return '';
          if (node.nodeType === 3) return node.textContent || '';
          if (node.nodeType !== 1) return '';
          var tag = node.tagName.toLowerCase();
          var skip = ['script', 'style', 'svg', 'noscript', 'button', 'iframe'];
          if (skip.indexOf(tag) !== -1) return '';
          if (node.id === 'ck-tools') return '';
          var ch = Array.from(node.childNodes).map(walk).join('');
          if (tag === 'h1') return '\n# ' + ch.trim() + '\n\n';
          if (tag === 'h2') return '\n## ' + ch.trim() + '\n\n';
          if (tag === 'h3') return '\n### ' + ch.trim() + '\n\n';
          if (tag === 'p') return '\n' + ch.trim() + '\n\n';
          if (tag === 'pre') return '\n```\n' + node.textContent.trim() + '\n```\n\n';
          if (tag === 'li') return '- ' + ch.trim() + '\n';
          if (tag === 'code') return '`' + ch.trim() + '`';
          return ch;
        };
        var content = document.querySelector('.mdx-content') || document.getElementById('content-area') || document.body;
        return walk(content).replace(/\n\n\n+/g, '\n\n').trim();
      }
      function copyMd() {
        var md = getMarkdown();
        navigator.clipboard.writeText(md).then(function () {
          mainBtn.textContent = 'Copied!';
          setTimeout(function () {
            mainBtn.textContent = 'Copy page';
          }, 2000);
        });
      }
      function viewMd() {
        var md = getMarkdown();
        var safe = md.split('&').join('&amp;').split('<').join('&lt;').split('>').join('&gt;');
        var html = '<!DOCTYPE html><html><head><meta charset="utf-8"><style>body{font-family:monospace;max-width:860px;margin:40px auto;padding:0 24px;line-height:1.7;white-space:pre-wrap;word-wrap:break-word}</style></head><body>' + safe + '</body></html>';
        window.open(URL.createObjectURL(new Blob([html], {
          type: 'text/html'
        })), '_blank');
      }
      function openClaude() {
        var prompt = 'Can you read this Cekura docs page ' + window.location.href + ' so I can ask you questions?';
        window.open('https://claude.ai/new?q=' + encodeURIComponent(prompt), '_blank');
      }
      mainBtn.onclick = copyMd;
      dd.appendChild(makeItem('Copy page', copyMd));
      dd.appendChild(makeItem('View as Markdown', viewMd));
      dd.appendChild(makeItem('Open in Claude', openClaude));
      row.appendChild(mainBtn);
      row.appendChild(divider);
      row.appendChild(chevron);
      wrap.appendChild(row);
      wrap.appendChild(dd);
      anchor.style.position = 'relative';
      anchor.insertBefore(wrap, anchor.firstChild);
    }, 50);
  }
  return null;
};

<CopyPageButton />

<Note>
  If you are setting up Cekura for the first time, start with the [MCP & Skills setup](/mcp/overview). This page is the Skills catalog and maintenance reference.
</Note>

Cekura Skills give your AI assistant the playbook for designing evaluators, creating metrics, running tests, improving prompts, and triaging production failures on Cekura.

## Install paths

| Install path     | Best for                                   |       Skills |   Slash commands | MCP config |            Hooks |
| ---------------- | ------------------------------------------ | -----------: | ---------------: | ---------: | ---------------: |
| Native plugin    | Claude Code, Cursor, Codex, Claude Desktop |          Yes | Claude Code only |        Yes | Claude Code only |
| Native extension | Gemini CLI                                 | Context file |               No |        Yes |               No |
| `npx skills add` | Any Agent Skills client                    |          Yes |               No |         No |               No |
| Behavior preset  | Assistants without a plugin                |   Rules only |               No |         No |               No |
| MCP only         | Direct API/tool access                     |           No |               No |        Yes |               No |

The native plugin is the preferred route on every client that has one — it bundles Skills and the MCP server (no separate MCP setup), and on Claude Code it adds slash commands, update support, and the MCP failure hook. See your [assistant's guide](/mcp/overview#set-up) for the exact install.

## Install

<Tabs>
  <Tab title="Claude Code plugin">
    Use this for Claude Code in the terminal or VS Code.

    **Terminal:**

    1. Run `/plugin` inside a Claude Code session.
    2. Open **Marketplaces > Add Marketplace**.
    3. Paste `cekura-ai/cekura-skills` and confirm.
    4. Open **Discover**, search `cekura`, and install the `cekura` plugin.
    5. Run `/setup-mcp` and complete the OAuth sign-in.

    **VS Code:**

    1. Open the Claude Code chat panel.
    2. Open **Manage Plugins > Marketplaces**.
    3. Add `cekura-ai/cekura-skills`.
    4. Install the `cekura` plugin.
    5. Restart VS Code, then run `/setup-mcp`.
  </Tab>

  <Tab title="Agent Skills">
    Use this for Agent Skills-compatible clients when you do not need Claude Code slash commands.

    ```bash theme={null}
    npx skills add cekura-ai/cekura-skills --all
    ```

    This installs Skills only. Pair it with [manual MCP setup](/mcp/mcp-only) if you want live Cekura workspace access.
  </Tab>

  <Tab title="Behavior preset fallback">
    Use this when your assistant does not load Agent Skills yet, or when you want a portable project-level rules file.

    ```bash theme={null}
    curl -L https://raw.githubusercontent.com/cekura-ai/cekura-skills/main/codex/AGENTS.md -o AGENTS.md
    ```

    For Cursor project rules:

    ```bash theme={null}
    mkdir -p .cursor/rules && curl -L https://raw.githubusercontent.com/cekura-ai/cekura-skills/main/codex/AGENTS.md -o .cursor/rules/cekura.md
    ```
  </Tab>
</Tabs>

## Skills catalog

<Note>
  The [cekura-skills repo](https://github.com/cekura-ai/cekura-skills) is the canonical, always-current list. The catalog below may lag when new skills ship.
</Note>

| Skill                         | Use when                                                                                    |
| ----------------------------- | ------------------------------------------------------------------------------------------- |
| `cekura-coordinator`          | The user asks what Cekura can do or which workflow to use                                   |
| `cekura-onboarding`           | First-time setup, testing path, observability path, and platform walkthroughs               |
| `cekura-create-agent`         | Connecting a voice agent, provider setup, mock tools, knowledge base, and dynamic variables |
| `cekura-self-improving-agent` | Improving an agent from evaluation results and re-validating changes                        |
| `cekura-metric-design`        | Designing new metrics or choosing the right metric type                                     |
| `cekura-metric-improvement`   | Improving metric accuracy with feedback, labs, and iteration                                |
| `cekura-predefined-metrics`   | Understanding built-in metrics, configuration, cost, and constraints                        |
| `cekura-eval-design`          | Designing evaluator coverage, test profiles, conditional actions, and regression suites     |
| `cekura-fixing-prod-issues`   | Turning a production failure into a reproduced, fixed, and regression-tested issue          |
| `cekura-infra-test-suite`     | Creating CI/CD infrastructure tests for voice pipelines and local bots                      |
| `cekura-generate-scenarios`   | Converting production call failures into reproducible evaluator scenarios                   |

## Claude Code slash commands

Slash commands are available only through the Claude Code plugin install.

| Command                      | What it does                                                   |
| ---------------------------- | -------------------------------------------------------------- |
| `/cekura-onboarding`         | Guided end-to-end setup with state-aware resume                |
| `/setup-mcp`                 | Configure the Cekura MCP server                                |
| `/upgrade-skills`            | Pull the latest plugin and skill updates                       |
| `/report-bug`                | Report a setup, MCP, skill, or command issue                   |
| `/create-metric`             | Create or update a metric                                      |
| `/list-metrics`              | List metrics for an agent or project                           |
| `/evaluate-calls`            | Run metrics on selected production calls                       |
| `/improve-metric`            | Improve metric accuracy through feedback and lab workflows     |
| `/autogen-eval`              | Generate evaluators or bulk-create from structured input       |
| `/manual-create-update-eval` | Create or update one evaluator with a guided field walkthrough |
| `/list-evals`                | List evaluators for an agent or project                        |
| `/run-evals`                 | Run evaluator suites                                           |
| `/eval-results`              | Review a test run's results                                    |
| `/cekura-report`             | Generate, run, and summarize an end-to-end quality report      |

## Update

<Tabs>
  <Tab title="Claude Code plugin">
    Run this in Claude Code:

    ```plaintext theme={null}
    /upgrade-skills
    ```

    You can also enable marketplace auto-update from the Claude Code plugin manager so new skill versions are picked up automatically on startup.
  </Tab>

  <Tab title="Agent Skills">
    <Note>
      Auto-update is not available for `npx skills` installs. Unlike the Claude Code marketplace, Codex, Cursor, Windsurf, and other agents have no background refresh option. Run the commands below manually whenever you want the latest skills.
    </Note>

    Refresh existing skills:

    ```bash theme={null}
    npx skills update
    ```

    Refresh existing skills and pick up newly added skills:

    ```bash theme={null}
    npx skills add cekura-ai/cekura-skills --all
    ```
  </Tab>

  <Tab title="Behavior preset">
    Re-download the preset:

    ```bash theme={null}
    curl -L https://raw.githubusercontent.com/cekura-ai/cekura-skills/main/codex/AGENTS.md -o AGENTS.md
    ```
  </Tab>
</Tabs>

## Remove

For `npx skills` installs:

```bash theme={null}
npx skills remove cekura-coordinator   # one skill
npx skills remove --all                 # everything
```

For the Claude Code plugin, remove the marketplace entry with `/plugin marketplace remove cekura-skills` (see [Reinstall](#reinstall-claude-code-plugin) for the full sequence).

## Reinstall Claude Code plugin

If plugin install or upgrade reports stale entries, run these in Claude Code, in order:

```plaintext theme={null}
/plugin marketplace remove cekura-skills
/plugin marketplace add cekura-ai/cekura-skills
/plugin marketplace update cekura-skills
/plugin install cekura@cekura-skills
```

After reinstalling, `claude plugin list` should show one `cekura@cekura-skills` entry and the Cekura slash commands should resolve.

## Compatibility

| Client                     | Recommended path                    | Notes                                                                                                          |
| -------------------------- | ----------------------------------- | -------------------------------------------------------------------------------------------------------------- |
| Claude Code                | Plugin + `/setup-mcp`               | Full Skills, slash commands, MCP config, update support, and hooks                                             |
| Cursor                     | Native plugin                       | Skills + MCP via the marketplace plugin; `npx skills add` / `.cursor/rules` are no-MCP fallbacks               |
| Codex                      | Native plugin                       | Skills + MCP via `codex plugin add` + `codex mcp login`; no slash commands                                     |
| Gemini CLI                 | Native extension                    | MCP + `GEMINI.md` context via `gemini extensions install`; no Skills bundling yet                              |
| Claude Desktop             | Native plugin                       | Customize → Plugins gives Skills + MCP (Skills in Chat & Cowork); the connector UI is the MCP-only alternative |
| Windsurf, other assistants | `npx skills add` or behavior preset | Skills (no MCP) or portable `AGENTS.md`; add MCP manually if supported                                         |

### Why didn't `/plugin marketplace add` install the plugin automatically?

Marketplaces and plugins are separate concerns in Claude Code. `marketplace add` registers where to find plugins; `plugin install <name>@<marketplace>` installs a specific plugin from a registered marketplace. Adding a marketplace does not auto-install everything in it. See [Reinstall Claude Code plugin](#reinstall-claude-code-plugin) for the full clean-install sequence.

## Links

<CardGroup cols={2}>
  <Card title="MCP & Skills Setup" icon="sparkles" href="/mcp/overview">
    Choose the right install path for your assistant.
  </Card>

  <Card title="Claude Code Guide" icon="code" href="/mcp/claude-code-guide">
    Recommended plugin-based setup.
  </Card>

  <Card title="Manual setup" icon="wrench" href="/mcp/mcp-only">
    Install Skills, then connect MCP — for clients without a plugin.
  </Card>

  <Card title="GitHub" icon="github" href="https://github.com/cekura-ai/cekura-skills">
    Source, issues, and changelog.
  </Card>
</CardGroup>
