aiwg
Version:
Deployment tool and support utility for AI context. Copies agents, skills, commands, rules, and behaviors into the paths each AI platform reads (Claude Code, Codex, Copilot, Cursor, Warp, OpenClaw, and 6 more) so one source of truth works across 10 platfo
151 lines (137 loc) • 3.51 kB
YAML
# Manager / Local Orchestrator — Daemon Starter Profile
#
# The default daemon profile. Handles interactive requests, scheduled tasks,
# and optional self-directed (autonomous) thinking. This is the base config
# that many future daemon profiles will build upon.
#
# Usage:
# aiwg daemon init # scaffolds .aiwg/daemon.yaml from this profile
# aiwg daemon init manager # same, explicit
#
# After scaffolding, edit .aiwg/daemon.yaml to set tokens and room IDs.
name: manager
description: >
Manager/Local Orchestrator — handles user requests, scheduled tasks,
and optional autonomous thinking.
version: "1.0.0"
daemon:
heartbeat_interval_seconds: 30
max_parallel_actions: 4
action_timeout_minutes: 120
log:
max_size_mb: 50
max_files: 5
level: info
# Three operational modes
modes:
interactive:
enabled: true
# Chat messages get higher priority than scheduled/autonomous work
chat_priority: 5
scheduled:
enabled: true
jobs:
- id: health-check
cron: "0 */6 * * *"
action: doctor
description: "Run health check every 6 hours"
priority: 2
- id: artifact-audit
cron: "0 9 * * 1"
action: validate-metadata
description: "Audit artifact metadata weekly on Monday 9am"
priority: 1
autonomous:
enabled: false
thinking_interval_minutes: 30
max_daily_tasks: 10
budget_cap_usd: 5.00
require_approval: false
allowed_actions:
- self-review
- doc-sync
- test-sync
- cleanup-audit
blocked_actions:
- deploy
- release
- git-push
- git-force-push
# Watch configuration
watch:
enabled: true
paths:
- path: ".aiwg/"
events: [create, modify, delete]
ignore: ["*.tmp", "working/**", "daemon/**"]
- path: "src/"
events: [modify]
extensions: [".ts", ".js", ".mjs"]
- path: "test/"
events: [modify]
extensions: [".test.ts", ".test.js"]
debounce_ms: 2000
# Messaging — multi-room support for Telegram and Discord
messaging:
telegram:
enabled: false
# Set via AIWG_TELEGRAM_TOKEN env var or here
token: "${AIWG_TELEGRAM_TOKEN}"
rooms: []
# Example rooms:
# - chat_id: "-1001234567890"
# label: "ops-alerts"
# is_default: true
# purpose: interactive
# - chat_id: "-1009876543210"
# label: "dev-tasks"
# is_default: false
# purpose: notifications
dynamic_join: true
polling_enabled: true
discord:
enabled: false
# Set via AIWG_DISCORD_TOKEN env var or here
token: "${AIWG_DISCORD_TOKEN}"
rooms: []
# Example rooms:
# - channel_id: "1234567890"
# label: "aiwg-ops"
# is_default: true
# purpose: interactive
dynamic_join: true
slack:
enabled: false
rooms: []
# Supervisor governance
supervisor:
max_concurrent: 4
max_queue_depth: 20
restart_intensity:
max_restarts: 3
window_seconds: 300
circuit_breaker:
failure_threshold: 5
cooldown_ms: 120000
daily_budget_usd: 0
behaviors:
- ops-toolset
# Web UI
interface:
web:
enabled: true
port: 7474
host: "127.0.0.1"
# Docker containerization (optional)
docker:
enabled: false
image: "aiwg-daemon:latest"
workdir: /workspace
volumes:
- source: "."
target: /workspace
mode: rw
env_file: .env
network: host
# Automation rules (empty by default — user adds as needed)
rules: []