The Choir command-line interface. A stateless admin client that communicates with choird over UDS or HTTP.

Command Groups

choirctl init                              # first-time setup
choirctl daemon start|stop|restart|enable|disable|status|logs

choirctl agent init|list|start|stop|restart|status|build|update|update-all
choirctl session list|events|cancel|compact
choirctl model list|get|set
choirctl voice list|get|set
choirctl config load|diff|apply|show
choirctl approval list|show|approve|reject
choirctl workspace list|reset
choirctl secret list|set|delete|apply
choirctl logs <source>
choirctl status

Agent Start Flags

Every agent default is overridable at start time:

--workspace=<name>       --llm=<name>
--voice-profile=<name>   --git-identity=<name>
--notion=<name>          --email=<name>
--dm=<name>              (required for choirctl start)

Connection

# UDS (default)
choirctl --socket=~/.choir.d/socks/choird.sock agent list

# HTTP
choirctl --endpoint=https://localhost:9400 agent list