Unofficial community tool — not affiliated with, endorsed by, or supported by Conductor.
A CLI for Conductor — query workspaces, sessions, and launch deep links from your terminal.
Reads directly from Conductor's local SQLite database and triggers actions via conductor:// deep links.
Requires Bun (uses bun:sqlite for zero-dependency SQLite access).
# run directly
bunx condcli status
# or install globally
bun install -g condcli# overview + recent activity
conductorcli status
# list repositories
conductorcli repos
# list workspaces (active by default)
conductorcli ws
conductorcli ws -f all
conductorcli ws -f archived
# workspace detail (supports partial IDs)
conductorcli workspace 7d4e
# list sessions
conductorcli ss
conductorcli ss -w 7d4e # filter by workspace
# session detail + message history
conductorcli session f969
conductorcli session f969 -m 10 # show last 10 messages
# search by branch, title, PR, or repo name
conductorcli search auth# new workspace with a prompt
conductorcli prompt "Fix the login bug"
# target a specific repo
conductorcli prompt -r my-repo "Add dark mode"
conductorcli prompt -d /path/to/repo "Add dark mode"
# new workspace from a Linear issue
conductorcli linear ENG-123
conductorcli linear ENG-123 "Implement with full test coverage"
conductorcli linear -r my-repo ENG-123
# new workspace from a plan file
conductorcli plan my-repo plan.md
echo "Fix all the bugs" | conductorcli plan my-repo -Expose everything as a REST API:
# start on default port 3141
conductorcli serve
# custom port
conductorcli serve -p 8080Query endpoints:
curl localhost:3141/status
curl localhost:3141/repos
curl localhost:3141/workspaces?filter=all&limit=10
curl localhost:3141/workspaces/7d4e
curl localhost:3141/sessions?workspace=7d4e&limit=5
curl localhost:3141/sessions/f969
curl localhost:3141/sessions/f969/messages?limit=10
curl localhost:3141/search?q=authAction endpoints:
# new workspace with prompt
curl -X POST localhost:3141/prompt \
-H 'Content-Type: application/json' \
-d '{"message": "Fix the login bug", "repo": "my-repo"}'
# new workspace from Linear issue
curl -X POST localhost:3141/linear \
-H 'Content-Type: application/json' \
-d '{"issueId": "ENG-123", "prompt": "Implement with tests", "repo": "my-repo"}'
# new workspace from plan
curl -X POST localhost:3141/plan \
-H 'Content-Type: application/json' \
-d '{"repo": "my-repo", "plan": "## Plan\n\n- Fix all the bugs"}'Read operations query Conductor's SQLite database at:
~/Library/Application Support/com.conductor.app/conductor.db
Create operations trigger conductor:// deep links via open, which Conductor.app handles natively:
| Deep link | Action |
|---|---|
conductor://prompt=...&path=... |
New workspace with prompt |
conductor://linear_id=... |
New workspace from Linear issue |
conductor://async?repo=...&plan=... |
New workspace from base64 plan |
- macOS (Conductor.app is macOS-only)
- Bun >= 1.0
- Conductor.app installed and signed in
These features aren't currently possible because Conductor doesn't expose public APIs or deep links for them. If Conductor adds official support (or if someone finds a clean way to do it), we'd love to add them:
- Send follow-up messages — send a prompt to an existing workspace/session without creating a new one
- Create PR — trigger the "Create PR" workflow on a workspace from the CLI
- Approve/reject plans — respond to pending plan reviews programmatically
- Workspace management — archive, pin, rename branches, or change session config from outside the app
Today, Conductor's sidecar communicates over an internal Unix socket using an undocumented JSON-RPC protocol. Until there's a stable way to interact with running sessions, these will remain on the wishlist.
Feel free to open issues and PRs — contributions are welcome.
If you found a new deep link, found a way to talk to the sidecar, or just want to improve the CLI, go for it.
This is an unofficial, community-built tool. It is not created, maintained, endorsed, or supported by the Conductor team or any of its affiliates.
- No warranty. This software is provided "as is", without warranty of any kind, express or implied. Use at your own risk.
- May break at any time. This tool relies on Conductor's internal SQLite schema and undocumented
conductor://deep link protocol, both of which may change without notice in any Conductor update. - Read-only database access. The CLI opens the database in read-only mode and never writes to it. Create operations work exclusively through deep links handled by Conductor.app itself.
- "Conductor" might be a trademark of its respective owner. This project uses the name solely to describe compatibility.
MIT