The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the Conduct AI listing page.
Official CLI for Conduct AI — install AI agents, manage projects, run end-to-end tests, and enforce team AI policies with ConductGuard.
Runs on Linux, macOS, and Windows. Python 3.9–3.12.

| Command | Description |
|---|---|
conduct login | Save connection config to ~/.conduct/config.json |
conduct projects | List all projects |
conduct create project <name> | Create a project |
conduct delete project <name> | Delete a project and all its agents |
conduct reset project <name> | Delete all agents in a project (clean slate) |
conduct playbooks | Browse available playbooks |
conduct playbooks <slug> | Show required inputs for a playbook |
conduct install <slug> | Install one agent from a playbook |
conduct install-all | Install all 12 playbooks into a project |
conduct agents | List all installed agents |
conduct test <name> | Fire test trigger on an agent and stream results |
conduct test --all | Test every playbook-based agent |
Generate an agent token from Settings → Agents → Issue token in the Conduct AI dashboard. Tokens start with cond_agt_ and are stored as SHA-256 hashes — the plaintext is shown only once.
If the project doesn't exist it's created automatically. Use --input key=value to override any playbook input.
Exit code is 0 if all pass, 1 if any fail — works in CI.
ConductGuard is AI tool fleet management — your security team sets policies once and they're enforced automatically across every developer's Claude Code, Cursor, and Windsurf session.
That's it. Policy enforcement is active from the next tool call.
| Command | Description |
|---|---|
conduct guard sync | Pull latest policy, write hook to ~/.conductguard/hook.py, register hook + MCP |
conduct guard status | Show today's spend, session count, and violations |
conduct guard audit [--since 7d] | Print recent guard events in a table |
conduct verify [--evidence FILE] [--strict] [--format json] | Map guard events to OWASP Agentic Top 10; exit 1 in CI if blocked events (--strict) |
conduct guard discover | Scan local environment for AI agents; report Guard coverage % |
conduct guard discover --register | Register discovered agents under Guard |
When advisory mode is enabled by your security admin, all policy violations are logged as "audited" instead of blocked — the developer sees a note but the tool call proceeds. The hook still posts every event to the audit log.
To check if advisory mode is active:
OWASP mapping: no-rm-rf → A04 Excessive Agency, no-sudo → A09 Privilege Escalation, policy_signature_invalid → A07 Insufficient Monitoring, etc. All 10 categories covered.
When you run conduct guard sync, the CLI writes a Python script to ~/.conductguard/hook.py and registers it as a PreToolUse hook in ~/.claude/settings.json:
Before every tool call, Claude Code runs the hook. The hook:
tool_name and tool_input from stdin (JSON)~/.conductguard/policy.json (the team ruleset)match_tool, match_pattern, match_path_pattern)block — prints the policy message, exits with code 2 (Claude Code aborts the tool call)warn — prints the message, exits 0 (tool call proceeds, developer is notified)audit — posts an event silently, exits 0POST /guard/events asynchronously (fire-and-forget, never slows the tool call)conduct guard sync also registers an MCP server entry in ~/.claude/settings.json:
Claude Code starts conductguard-mcp as a subprocess on launch and keeps it running. It communicates via JSON-RPC 2.0 over stdin/stdout (MCP stdio transport).
The MCP server exposes three tools that Claude can call proactively:
| Tool | Description |
|---|---|
guard_status | Returns team name, your email, number of active rules, and policy version |
guard_check | Checks whether a specific tool + input would be blocked before Claude acts |
guard_sync | Fetches the latest policy from the ConductGuard API and saves it locally |
guard_check example — Claude can self-check before a sensitive action:
guard_sync example — after your security team pushes new rules:
Policy is stored at ~/.conductguard/policy.json and synced from the server:
Run conduct guard sync after your security team updates rules in the ConductGuard dashboard. The sync command pulls the latest policy, rewrites the hook, and re-registers the MCP entry in any newly detected AI tool configs.
Add to ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows):
Run conduct login first — conduct-mcp reads credentials from ~/.conduct/config.json. Get your agent token from Settings → Agents → Issue token in the Conduct AI dashboard.
Install from the MCP registry directly in VS Code:
Or add to .vscode/mcp.json in your repo:
Once wired, GitHub Copilot can list your agents, trigger workflows, and check Guard policies — the same tools available in Claude Code and Cursor.
Prerequisites: pip install conduct-cli + conduct login