# Use a Claude wrapper such as claude-router

> Mark a wrapper command like ccr code as claude, so crystl starts, resumes and prompts it like claude.

**Goal:** run a command that wraps Claude Code, such as claude-router's `ccr code`, and get full crystl handling for it.

## What you need

- The wrapper installed and working in a shell.
- Nothing else. Setting this is **free on every tier**.

crystl does not know `ccr code`. Without a hint, it treats the command as an unknown agent. You tell it that the command runs claude.

## Steps

1. **Set the default command.** Open settings, **agents > defaults**, and type `ccr code` as the command.

2. **Mark it as claude:**

   ```bash
   crystl agent profile set --agent 'ccr code' --as claude
   ```

   You can also type `claude` in the **HARNESS** field on the `ccr code` row in settings, **agents > agents**.

3. **Check it:**

   ```bash
   crystl agent list
   ```

   The row for `ccr code` says `harness claude`.

## What you'll see when it works

crystl starts, resumes and prompts `ccr code` the same way as claude. Heroes, quests and new shards all use it. The first prompt reaches the wrapper as one quoted argument, so apostrophes, quotes and `$` in your task arrive as you typed them. crystl picks the model the same way it does for claude.

To undo it, run `crystl agent profile set --agent 'ccr code' --as none`.

## Go deeper

- [CLI reference](/docs/cli/#agent-profile) for every flag.
- [model sizes](/docs/model-sizes/) for how sizes resolve.

---
Source: https://crystl.dev/docs/scenario-claude-wrapper/
