Publishing an Agent
Share your agent with others by publishing it to the CodeBolt registry, or keep it local to your project.
Three ways to share an agent
1. Local to your project
No publishing needed. The agent lives in .codebolt/agents/ and is committed to your repo. Anyone who opens the project gets the agent automatically.
- Remix agents go in
.codebolt/agents/remix/as.mdfiles. - Framework agents go in
.codebolt/agents/<agent-name>/as full packages.
2. Publish to the CodeBolt registry
codebolt agent publish --path /path/to/your/agent
This publishes the agent folder to the public CodeBolt registry. If --path is omitted, the current directory is used.
On success, you get a unique ID:
Publishing agent from /path/to/your/agent...
Published successfully! ID: my-agent-unique-id
3. Create a remote agent
For agents that run outside of Codebolt's process manager:
# Self-executed: you start the process yourself
codebolt agent create-remote \
--name "My Remote Agent" \
--execution-mode selfExecuted \
--description "An agent I run from my own terminal"
# CodeBolt-executed: Codebolt starts the process from a path you provide
codebolt agent create-remote \
--name "My Remote Agent" \
--execution-mode codeboltExecuted \
--remote-path /absolute/path/to/agent
--remote-path is required when using codeboltExecuted mode.
Before you publish
Checklist:
-
codeboltagent.yamlhas a cleartitle,description, andunique_id. - Version is set in
codeboltagent.yaml. - The agent builds cleanly (
npm run build). - The agent has been tested against a real project.
-
dist/contains the compiled output (most agents bundle with webpack). - No secrets or credentials in the published files.
CLI reference
codebolt agent create
Scaffold a new agent from a template:
# Create from the default template
codebolt agent create --name my-agent
# Create a framework agent (uses the Agent template)
codebolt agent create --name my-agent --framework
# Create a remix interactively (select an agent to remix)
codebolt agent create --remix
Options:
| Flag | Description |
|---|---|
--name <name> | Name for the new agent |
--path <path> | Target directory |
--template <name> | Template to use |
--id <id> | Unique identifier |
--description <text> | Description |
--skip-install | Skip npm install after creation |
--framework | Use the framework agent template |
--remix | Interactive remix of an existing agent |
codebolt agent publish
Publish an agent to the CodeBolt registry:
codebolt agent publish --path /path/to/agent
| Flag | Description |
|---|---|
--path <path> | Path to agent directory (default: current directory) |
codebolt agent list
List all published agents:
codebolt agent list
codebolt agent create-remote
Create a remote agent:
codebolt agent create-remote --name "Agent Name" --execution-mode selfExecuted
| Flag | Description |
|---|---|
--name <name> | Name for the remote agent (required) |
--execution-mode <mode> | selfExecuted or codeboltExecuted (required) |
--remote-path <path> | Absolute path to the agent (required for codeboltExecuted) |
--description <text> | Description |
Creating a remix via CLI
The --remix flag launches an interactive flow:
- Fetches the agent list from the CodeBolt API.
- Prompts you to select an agent to remix.
- Asks for a name, description, and custom instructions.
- Writes a
.mdfile to.codebolt/agents/remix/in your project.
codebolt agent create --remix --project /path/to/project
The resulting file looks like:
---
name: My Custom Reviewer
description: Reviews PRs for our conventions.
remixedFromId: reviewer
remixedFromTitle: Reviewer
version: 1.0.0
type: remix
createdAt: '2025-01-15T10:00:00.000Z'
updatedAt: '2025-01-15T10:00:00.000Z'
---
You are a code reviewer for the Acme project.
Focus on runtime bugs and convention violations.
See also
- agent.yaml — manifest reference
- Testing and debugging
- Level 0 — Remix
- Level 1 — Framework