Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.charmos.io/llms.txt

Use this file to discover all available pages before exploring further.

Use this guide to set up the Charm repository for local development.

Prerequisites

  • Python 3.10 or newer.
  • Git.
  • uv.
  • Docker Desktop or Docker Engine for runner and sandbox testing.

Clone the Repository

git clone https://github.com/CharmAIOS/Charm.git
cd Charm
If you plan to submit a pull request, fork the repository first and clone your fork.

Create a Virtual Environment

uv venv
Activate it:
source .venv/bin/activate
On Windows PowerShell:
.\.venv\Scripts\Activate.ps1

Install Development Dependencies

uv pip install -e ".[runner,dev]"

Build the Local Runner Base Image

Some runner tests and Docker sandbox flows require the base image:
docker build -f Dockerfile.base -t charm-runner-base:latest .

Run Tests

pytest

Validate a Template

charm init /tmp/my-agent --template python
charm validate /tmp/my-agent

Before Opening a PR

  • Run relevant tests.
  • Update docs when behavior changes.
  • Avoid committing secrets or local environment files.
  • Fill out the PR template with test evidence and release notes.