CAMI Documentation

Workspace Files Reference

Complete specifications for CAMI configuration and tracking files.

config.yaml

Location: ~/cami-workspace/config.yaml

Purpose: Defines agent sources and workspace settings

yaml
# Full config.yaml specification
agent_sources:
- name: string # Required: Unique identifier
type: local # Required: Currently only "local" supported
path: string # Required: Absolute path to source directory
priority: number # Required: Lower = higher precedence (1-1000)
git: # Optional: Git configuration
enabled: boolean # Enable git operations
remote: string # Git remote URL
branch: string # Branch to track (default: main)
# Example
agent_sources:
- name: official-agents
type: local
path: ~/cami-workspace/sources/official-agents
priority: 100
git:
enabled: true
remote: git@github.com:lando-labs/official-agents.git
branch: main
- name: my-agents
type: local
path: ~/cami-workspace/sources/my-agents
priority: 10
git:
enabled: false

deployments.yaml

Location: ~/cami-workspace/deployments.yaml

Purpose: Central tracking of all agent deployments

yaml
# deployments.yaml specification
version: "1" # Schema version
deploy_locations:
- name: string # Project name (derived from path)
path: string # Absolute path to project
agents: # List of deployed agents
- name: string # Agent name
source: string # Source it came from
version: string # Deployed version
# Example
version: "1"
deploy_locations:
- name: my-web-app
path: /Users/you/projects/my-web-app
agents:
- name: frontend
source: official-agents
version: "1.1.0"
- name: backend
source: official-agents
version: "2.0.0"
- name: devops-tools
path: /Users/you/projects/devops-tools
agents:
- name: k8s-pod-health-checker
source: my-agents
version: "1.0.0"

cami-manifest.yaml (Project)

Location: your-project/.claude/cami-manifest.yaml

Purpose: Tracks deployed agents in a specific project

yaml
# cami-manifest.yaml specification
version: "1" # Schema version
agents:
- name: string # Agent name
version: string # Semantic version
source: string # Source name
hash: string # SHA256 content hash
deployed_at: string # ISO 8601 timestamp
custom_override: boolean # Optional: Skip auto-updates
# Example
version: "1"
agents:
- name: frontend
version: "1.1.0"
source: official-agents
hash: sha256:a1b2c3d4e5f6...
deployed_at: "2025-11-23T10:30:00Z"
- name: custom-helper
version: "1.0.0"
source: my-agents
hash: sha256:g7h8i9j0k1l2...
deployed_at: "2025-11-23T10:35:00Z"
custom_override: true

Hash-Based Update Detection

CAMI compares the hash field with the current source agent to detect updates. If hashes differ, an update is available.

STRATEGIES.yaml

Location: your-project/STRATEGIES.yaml or your-project/.claude/STRATEGIES.yaml

Purpose: Provides tech stack context to agents

yaml
# STRATEGIES.yaml specification
stack:
frontend: # Frontend configuration
framework: string # react, vue, angular, svelte, etc.
version: string # Framework version
language: string # javascript, typescript
styling: string # tailwind, css-modules, styled-components, etc.
backend: # Backend configuration
runtime: string # node, python, go, java, etc.
version: string # Runtime version
framework: string # express, fastapi, gin, spring, etc.
database: # Database configuration
type: string # postgres, mysql, mongodb, etc.
orm: string # prisma, drizzle, sqlalchemy, etc.
conventions: # Project conventions
testing: string # jest, vitest, pytest, etc.
formatting: string # prettier, black, gofmt, etc.
linting: string # eslint, ruff, golangci-lint, etc.
# Example
stack:
frontend:
framework: react
version: "19"
language: typescript
styling: tailwind
backend:
runtime: node
version: "20"
framework: express
database:
type: postgres
orm: prisma
conventions:
testing: vitest
formatting: prettier
linting: eslint

.camiignore

Location: your-project/.camiignore

Purpose: Exclude files/directories from CAMI operations

typescript
# .camiignore uses gitignore syntax
# Directories
node_modules/
vendor/
legacy/
.git/
# File patterns
*.generated.js
*.min.js
*.map
# Specific files
secrets.yaml
.env.local
# Negation(include despite earlier rules)
!important-legacy/

Pattern Syntax

PatternMatches
folder/Directory and all contents
*.extAll files with extension
**/fileFile in any directory
!patternNegate (include) previous exclusion

.mcp.json

Location: ~/cami-workspace/.mcp.json

Purpose: Configures CAMI's MCP server for Claude Code

json
{
"mcpServers": {
"cami": {
"command": "cami",
"args": ["--mcp"]
}
}
}

This file is created during installation. For global CAMI access, add to ~/.claude/settings.json instead.

See Also