Skip to content

Slash Commands

Slash commands are shortcuts that help you work faster with Tarsk. Type / in the chat to bring up a menu of commands, then select one to insert a pre-written prompt or instruction.

Think of slash commands like text snippets or templates that save you from typing the same requests over and over.

  1. Type / in the chat input
  2. Select a command from the dropdown menu
  3. The command text is inserted into your message
  4. Customize and send your message
  1. Click in the chat input.
  2. Type / — an autocomplete dropdown appears listing all available commands.
  3. Continue typing to filter by name (e.g. /review narrows to commands with “review” in the name).
  4. Click a command or press Enter to insert it.

The command’s content is inserted into the input. You can edit it before sending, or send it immediately if no modification is needed.

Slash commands can be created from within Tarsk or by creating files manually.

  1. Select a project and thread, then open Settings → Slash Commands.
  2. Browse the marketplace to install community commands, or click Add Command to create your own.
  3. Set a name (becomes the /name trigger).
  4. Add an optional description and argument hint.
  5. Choose Default or Plan mode and click Continue.
  6. Edit the new Markdown file in .agents/commands/ to add the command body.

Commands you create or install from this settings page belong to the selected thread. To share a command across projects, create its file in ~/.agents/commands/.

Slash commands are Markdown files with YAML frontmatter stored at:

ScopeLocation
Global~/.agents/commands/
Project<threadPath>/.agents/commands/

Example: ~/.agents/commands/review.md

---
description: Review the latest changes and suggest improvements
argument-hint: focus area (optional)
mode: default
---
Please review the recent changes in this thread. Look for:
- Logic errors or edge cases
- Missing error handling
- Performance concerns
- Code style inconsistencies
Summarise findings and suggest specific improvements.
FieldRequiredDescription
descriptionNoShort description shown in the autocomplete dropdown
argument-hintNoHint text shown after the command name, suggesting what the user might type (e.g. “branch name”)
modeNodefault (standard chat), plan, ralph, or orchestrate (activates that chat mode when this command is used)

Built-in commands include /ralph, /orchestrate, /compact, /send-event, /workspace, and /chat-title. /orchestrate keeps the /orchestrate token in the prompt and switches to Orchestrate mode (requires a Cheap model alias). /workspace is recognised only as a standalone word — at the start of the message or between spaces (/workspace implement login, implement login in a new /workspace). A /workspace glued to other characters is plain text, so paths and URLs such as app/workspace.ts, ~/workspace/tarsk, or http://host/workspace stay in this chat instead of forking it; a real command creates an isolated clone and branch, then runs the leftover prompt there. If the current chat already has history, Tarsk writes a silent handoff brief so the new workspace still knows what “login” means. /chat-title can also appear anywhere in the message: it asks the agent to title this chat from the task (Set /chat-title to the title of the task), and the agent names both the chat pane you sent from and its conversation in the Chats list.

---
description: Structured code review of recent changes
---
Review the changes made in this thread. For each file modified, evaluate:
1. Correctness and logic
2. Error handling completeness
3. Test coverage
4. Naming and readability
List any issues with line references and suggested fixes.
---
description: Generate tests for the current implementation
argument-hint: file or function name
---
Write comprehensive tests for the implementation. Include:
- Happy path tests
- Edge cases and boundary conditions
- Error/exception scenarios
- Use the existing test framework and conventions in this project.
---
description: Commit changes and create a pull request
---
1. Review the current git diff.
2. Generate a clear, conventional commit message.
3. Commit all staged changes.
4. Push to the remote branch.
5. Create a pull request with a descriptive title and summary.
GlobalProject
Available inAll projects, all threadsThe thread containing the file
Stored at~/.agents/commands/<threadPath>/.agents/commands/
OverrideProject commands override global commands with the same name—

Use global commands for workflows that apply everywhere (review, test, commit). Use project commands for project-specific instructions that reference internal modules, APIs, or conventions.

In the slash command UI:

  • Open (Open /<name> in Files) — opens the command file in the Files explorer, where you can edit its frontmatter and body
  • Delete — removes the file from disk; the command disappears from autocomplete immediately

Changes take effect in the next message — no restart required.