Skip to main content

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 .md files.
  • 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.yaml has a clear title, description, and unique_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:

FlagDescription
--name <name>Name for the new agent
--path <path>Target directory
--template <name>Template to use
--id <id>Unique identifier
--description <text>Description
--skip-installSkip npm install after creation
--frameworkUse the framework agent template
--remixInteractive remix of an existing agent

codebolt agent publish

Publish an agent to the CodeBolt registry:

codebolt agent publish --path /path/to/agent
FlagDescription
--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
FlagDescription
--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:

  1. Fetches the agent list from the CodeBolt API.
  2. Prompts you to select an agent to remix.
  3. Asks for a name, description, and custom instructions.
  4. Writes a .md file 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