Agents are specialized AI assistants configured for your team's stack and standards. crewkit syncs agents to .claude/agents/ so every developer uses the same configuration.
Use role modifiers (coaching, collaborative, autonomous) to control how much guidance an agent provides based on the developer's experience level.
Create an agent
The fastest way to create an agent is through the dashboard.
- Go to Resources in the sidebar
- Click New Resource and select Agent
- Give it a name and slug (e.g.,
rails-expert) - Write the agent prompt in markdown
- Click Create
The agent is now available at the organization level. Run crewkit code in any project to sync it.
Agent file format
Agents are markdown files with optional YAML frontmatter:
---
name: rails-expert
description: Expert Ruby on Rails developer
---
You are an expert Ruby on Rails developer working on a production application.
## Standards
- Follow Rails conventions (RESTful routes, thin controllers, fat models)
- Use MiniTest for testing
- Extract business logic into services
## Project Context
This is a Rails API application using MySQL and Sidekiq.The frontmatter is optional but helps with display and discovery in the dashboard.
Role modifiers
Each organization role can have a coaching mode that modifies agent behavior:
- Coaching — Agent explains decisions, suggests alternatives, asks before acting. For junior developers.
- Collaborative — Agent discusses trade-offs but acts with more autonomy. For mid-level developers.
- Autonomous — Agent acts independently, only explains when asked. For senior developers.
Role modifiers are injected as a prefix to the agent prompt during sync. The agent file itself doesn't change.
Agent tiers
Agents can exist at three levels:
| Tier | Scope | Example |
|---|---|---|
| Platform | All crewkit users | rails-expert (crewkit-provided) |
| Organization | Your team | acme-rails-expert (team customizations) |
| Project | One project | customer-portal-agent (project-specific) |
See Inheritance for how these tiers merge.
Sync behavior
When you run crewkit code, the CLI:
- Fetches effective agent configs from the API (platform + org + project merged)
- Writes them to
.claude/agents/in your project - Uses SHA-256 checksums to avoid overwriting local changes
- Backs up modified files to
.claude/.backups/
If you've edited an agent locally and the server has a newer version, crewkit preserves your local copy and writes the server version alongside it.
Import local agents
Already have agent files? Import them to crewkit:
crewkit resources import # Interactive import
crewkit resources import --auto-import # Import all without prompting
crewkit resources import --dry-run # Preview what would importCLAUDE.md
The CLAUDE.md file in your project root is not an agent — it's project-level instructions that Claude Code reads automatically, and crewkit never edits it.
crewkit does create and maintain a second one at .claude/CLAUDE.md. Two blocks go in there, neither of them a synced resource:
- a Team Playbooks & Conventions pointer to
.claude/playbooks.md, appended when playbook conventions sync (and skipped if a reference is already present); - a Verification Requirements block, appended alongside
.claude/verification.md— and removed again, with its reference, once the project has no verification requirements.
Both writes go through the same guarded writer as every other synced file, so passive mode suppresses them rather than writing silently.