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.

Run a Charm agent locally. Use charm run while developing agent logic, testing input schemas, and checking runtime compatibility before publishing.

Usage

charm run [path] [--input <text>] [--json <payload>] [--input-file <file>] [--docker]

Simple Text Input

charm run . --input "Write a short welcome message"

JSON Input

Use JSON when your interface.input defines multiple fields:
charm run . --json '{"message": "Hello", "tone": "friendly"}'

Input File

Use --input-file for repeatable test cases:
charm run . --input-file test-cases.json
Example test file:
[
  {
    "name": "Basic greeting",
    "input": {
      "message": "Hello"
    }
  }
]

Docker Sandbox

Run inside a container to better match the cloud runtime:
charm run . --input "Hello" --docker
Docker mode requires charmos[runner] and a running Docker daemon.

Mocked Integrations

For agents that require OAuth or skills, local mocks can speed up testing:
charm run . --json '{"message": "Check my calendar"}' --mock-oauth
charm run . --json '{"message": "Use a skill"}' --mock-skills

Debugging

Add --debug for extra logs:
charm run . --input "Hello" --debug