Files
claude-code-conduit/CLAUDE.md
mikael-lovqvists-claude-agent dd7743501a Add runtime policy overrides and TUI policy management view
- server/policy_overrides.mjs: persistent group/action override store
- Group toggle: disabling a group forces all its actions to auto-deny without
  touching individual overrides; re-enabling restores them intact
- Action overrides: cycle auto-accept/queue/auto-deny/clear per action
- Effective policy resolution in index.mjs: group > action override > hardcoded default
- auth.mjs: add check_can_manage_policies (requires canApprove.length > 0)
- Three new endpoints: GET /policies, POST /policies/group/:group, POST /policies/action/:action
- client/conduit.mjs: get_policies, set_group_policy, set_action_policy
- ccc-queue.mjs: policy view (Tab to switch); group/action panel with space/e/←/→
- actions.mjs: group fields on desktop/email/calendar actions; list-actions includes group
- config.example.json: add policy_overrides key
- Bump version to 1.3.0

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-21 16:01:45 +00:00

1.6 KiB

claude-code-conduit

Supervised action bridge between Claude Code (in a Docker container) and the host system. Claude sends structured action requests; the server applies per-action policies and optionally holds them for human approval via a TUI queue manager.

Quick orientation

  • Server runs on the host (bin/ccc-server.mjs), listens on port 3015
  • Client runs in the container (bin/ccc-client.mjs), sends signed JSON action requests
  • Actions are defined in server/actions.mjs — this is the main place to add new capabilities
  • Auth is HMAC-SHA256; secrets live in a JSON file, never env vars
  • Policies: auto-accept (runs immediately), queue (held for human approval), auto-deny

Adding a new action

Edit server/actions.mjs. Each action needs description, params, policy, and handler. The handler receives (params, ctx) where ctx has { caller, users, mail_perm_store, exec, mailer_send }.

See claude-info/architecture.md for full details. See claude-info/contributing.md for the checklist when adding features.

Active / planned work

Running

ccc-server --config config.json
ccc-client '{"action": "list-actions"}'

Shell helpers (ccc-open-terminal, ccc-edit-file, ccc-open-browser) are available in the container via ~/.bashrc.