DocumentationConfiguration

Configuration

Complete configuration guide for CCCC. Learn how to customize agents, integrate with IM platforms, manage POR files, and fine-tune orchestration behavior.

Configuration Overview

CCCC is designed to be lightweight yet deeply customizable. This guide covers all configuration options from basic setup to advanced tuning.

Configuration File Structure

After running cccc init, you'll have a .cccc/config.yaml file in your repository:

version: 1.0

# Agent configuration
agents:
  primary_a: claude-code
  primary_b: codex-cli
  auxiliary: gemini-cli

# tmux session management
tmux:
  session_name: cccc-orchestrator
  window_layout: tiled
  auto_attach: false

# Git behavior
git:
  auto_commit: true
  commit_prefix: "[CCCC]"
  branch_strategy: current

# IM integration
im:
  telegram:
    enabled: false
    bot_token: ""
  slack:
    enabled: false
    webhook_url: ""
  discord:
    enabled: false
    webhook_url: ""

# Orchestration behavior
orchestration:
  max_rounds: 10
  consensus_threshold: 0.8
  evidence_verbosity: medium

Agent Configuration

Selecting Agents

CCCC supports multiple AI agents. Configure your preferred agents:

agents:
  primary_a: claude-code    # First peer
  primary_b: codex-cli      # Second peer
  auxiliary: gemini-cli     # Optional third agent

Available agents:

  • claude-code: Anthropic's Claude via CLI
  • codex-cli: OpenAI's Codex/ChatGPT via CLI
  • gemini-cli: Google's Gemini via CLI

Agent Roles

  • Primary A & B: Co-equal peers that propose, challenge, and refine collaboratively
  • Auxiliary: Optional agent for complex tasks requiring third perspective

Agent Behavior Tuning

Fine-tune agent behavior:

agents:
  primary_a:
    name: claude-code
    temperature: 0.7
    max_tokens: 4000
    role: analytical

  primary_b:
    name: codex-cli
    temperature: 0.8
    max_tokens: 4000
    role: creative

  auxiliary:
    name: gemini-cli
    temperature: 0.6
    enabled_for: complex_tasks

POR and SUBPOR Management

POR.md (Plan of Record)

Strategic board configuration:

por:
  file: POR.md
  auto_update: true
  update_frequency: after_milestone

  sections:
    - goals
    - milestones
    - strategic_decisions
    - blockers

Customizing POR template:

Create .cccc/templates/por_template.md:

# {{ project_name }} - Plan of Record

## Current Phase
{{ current_phase }}

## Goals
{{ goals }}

## Milestones
{{ milestones }}

## Strategic Decisions
{{ decisions }}

## Blockers
{{ blockers }}

SUBPOR.md (Sub-Plan of Record)

Per-task tracking configuration:

subpor:
  file: SUBPOR.md
  auto_update: true
  update_frequency: after_consensus

  evidence_detail: medium  # low | medium | high
  include_debate: true
  include_alternatives: true

IM Integration

Telegram Setup

Connect CCCC to Telegram for mobile monitoring:

Step 1: Create Telegram Bot

  1. Message @BotFather on Telegram
  2. Send /newbot and follow prompts
  3. Save your bot token

Step 2: Configure CCCC

cccc telegram setup

Or manually edit config:

im:
  telegram:
    enabled: true
    bot_token: "YOUR_BOT_TOKEN"
    chat_id: "YOUR_CHAT_ID"
    notifications:
      milestone_reached: true
      consensus_reached: true
      blocker_detected: true
      daily_summary: true

Step 3: Test Connection

cccc telegram test

Slack Integration

Connect to Slack workspace:

im:
  slack:
    enabled: true
    webhook_url: "https://hooks.slack.com/services/YOUR/WEBHOOK/URL"
    channel: "#cccc-updates"
    notifications:
      milestone_reached: true
      consensus_reached: true

Setup:

  1. Create Slack incoming webhook
  2. Add webhook URL to config
  3. Test: cccc slack test

Discord Integration

Connect to Discord server:

im:
  discord:
    enabled: true
    webhook_url: "https://discord.com/api/webhooks/YOUR_WEBHOOK"
    notifications:
      milestone_reached: true
      consensus_reached: true

tmux Session Management

Session Configuration

Control how CCCC manages tmux sessions:

tmux:
  session_name: cccc-orchestrator
  window_layout: tiled          # tiled | horizontal | vertical
  auto_attach: false            # Auto-attach to session
  auto_detach: true             # Auto-detach when done

  windows:
    - name: peer-a
      panes: 1
    - name: peer-b
      panes: 1
    - name: auxiliary
      panes: 1
    - name: monitor
      panes: 2

Manual Session Control

# List CCCC sessions
tmux ls | grep cccc

# Attach to session
tmux attach -t cccc-orchestrator

# Detach from session
# Press: Ctrl+B, then D

# Kill session
tmux kill-session -t cccc-orchestrator

Git Behavior

Commit Strategy

Configure how CCCC commits changes:

git:
  auto_commit: true
  commit_prefix: "[CCCC]"
  commit_style: conventional     # conventional | simple

  # Conventional commit format
  commit_types:
    - feat      # New features
    - fix       # Bug fixes
    - refactor  # Code refactoring
    - docs      # Documentation
    - test      # Tests

  branch_strategy: current       # current | feature-branch

  # Feature branch strategy
  feature_branch:
    prefix: cccc/
    auto_create: true
    auto_merge: false

Commit Size

Control commit granularity:

git:
  commit_granularity: small      # small | medium | large

  small:
    max_files: 3
    max_lines: 100

  medium:
    max_files: 10
    max_lines: 500

  large:
    max_files: 50
    max_lines: 2000

Orchestration Behavior

Consensus Mechanism

Configure how agents reach consensus:

orchestration:
  consensus_threshold: 0.8       # 0.0 to 1.0
  max_debate_rounds: 5

  # Consensus strategies
  strategy: majority              # majority | unanimous | weighted

  weighted:
    primary_a: 0.4
    primary_b: 0.4
    auxiliary: 0.2

Evidence Verbosity

Control detail level in POR/SUBPOR:

orchestration:
  evidence_verbosity: medium     # low | medium | high

  low:
    include_proposals: false
    include_debates: false
    include_reasoning: true

  medium:
    include_proposals: true
    include_debates: true
    include_reasoning: true

  high:
    include_proposals: true
    include_debates: true
    include_alternatives: true
    include_reasoning: true
    include_full_context: true

Task Prioritization

Configure how tasks are prioritized:

orchestration:
  prioritization: auto           # auto | manual | hybrid

  auto:
    strategy: impact              # impact | effort | urgency
    reorder_frequency: hourly

  hybrid:
    allow_manual_override: true
    suggestion_weight: 0.7

Advanced Configuration

Resource Limits

Control computational resources:

resources:
  max_concurrent_agents: 3
  agent_timeout: 3600             # seconds
  max_memory_per_agent: 2048      # MB

  rate_limits:
    requests_per_minute: 60
    tokens_per_hour: 100000

Context Management

Configure how context is preserved:

context:
  max_context_size: 50000         # tokens
  context_refresh: smart          # smart | periodic | manual

  smart:
    refresh_on_drift: true
    drift_threshold: 0.3

  checkpointing:
    enabled: true
    frequency: 30                 # minutes
    location: .cccc/checkpoints

Custom Commands

Define custom CCCC commands:

custom_commands:
  - name: deploy
    description: Deploy to staging
    script: scripts/deploy.sh

  - name: test-full
    description: Run full test suite
    script: pytest tests/ --cov

Usage:

cccc run-custom deploy
cccc run-custom test-full

Environment Variables

Override configuration with environment variables:

export CCCC_AGENT_PRIMARY_A=claude-code
export CCCC_AGENT_PRIMARY_B=codex-cli
export CCCC_TELEGRAM_TOKEN=your_token
export CCCC_GIT_AUTO_COMMIT=true
export CCCC_EVIDENCE_VERBOSITY=high

cccc run

Configuration Validation

Validate your configuration:

cccc config validate

Example output:

✅ Configuration syntax valid
✅ All agent types supported
✅ IM webhooks reachable
⚠️  Consensus threshold low (0.5 < 0.7 recommended)
✅ Git repository detected

Configuration Profiles

Maintain multiple configuration profiles:

# Use development profile
cccc run --profile dev

# Use production profile
cccc run --profile prod

Create profiles in .cccc/profiles/:

  • dev.yaml: Aggressive, high verbosity
  • prod.yaml: Conservative, low verbosity
  • research.yaml: Exploratory, high evidence detail

Next Steps

Now that you've configured CCCC:

Need Help?

  • Check GitHub Issues
  • Review configuration examples in the repository
  • Join community discussions
Updated 10 months ago
Did this page help you?