Command reference
Muaz — a modular LLM agent platform.
Running bare muaz opens the web UI in your browser (the primary surface);
use muaz chat for the terminal REPL, muaz run "<prompt>" for one-shot
scripted turns, or a subcommand below.
Usage: muaz [COMMAND]
Subcommands:
Section titled “Subcommands:”chat— Start an interactive chat sessionrun— Run one non-interactive turn and print the result (scriptable)pipeline— Run or list multi-agent pipelines without entering the REPLagents— Manage agentsskills— Manage Agent Skillsconfig— View and edit global configurationmodels— Manage models: provider profiles, the default, and per-agent bindings (all in models.yaml)auth— Store a provider profile’s API key securely (hidden prompt). Use this to authenticate before starting chat when the key isn’t set yetmcp— Manage MCP server registrationsruntime— Manage the bundled MCP runtimes (Node.js, uv) muaz downloads on demandplugins— Install and manage plugins (bundled agents, skills, pipelines, prompts)doctor— Diagnose the installation: config, runtimes, and MCP server healthaudit— Inspect the append-only security audit log (~/.muaz/audit/audit.jsonl)gateway— Start the web gateway server with a browser-based UI
muaz chat
Section titled “muaz chat”Start an interactive chat session
Usage: muaz chat [OPTIONS]
Options:
Section titled “Options:”-a,--agent <AGENT>— Agent to load (default: value in config.yaml)--incognito— Do not save session to disk--session <SESSION>— Resume an existing session by ID--remember-approvals— Persist “approve for session” grants into the session file and restore them when this session is resumed
muaz run
Section titled “muaz run”Run one non-interactive turn and print the result (scriptable)
Reads additional input from stdin when piped, e.g.: git diff | muaz run “review this change” Approval policy applies, but anything that would prompt is denied.
Usage: muaz run [OPTIONS] [PROMPT]
Arguments:
Section titled “Arguments:”<PROMPT>— The prompt (combined with piped stdin, if any)
Options:
Section titled “Options:”-
-a,--agent <AGENT>— Agent to use (default: value in config.yaml) -
--session <SESSION>— Resume an existing session by ID (the turn is appended to it) -
--output <OUTPUT>— Output format: text (final response only) or json (response, session id, usage, and tool calls)Default value:
textPossible values:
text: Print only the final response textjson: Print a JSON object with text, session id, usage, and tool calls
-
--incognito— Do not save the session
muaz pipeline
Section titled “muaz pipeline”Run or list multi-agent pipelines without entering the REPL
Usage: muaz pipeline <COMMAND>
Subcommands:
Section titled “Subcommands:”run— Run a pipeline with the given inputlist— List available pipelines
muaz pipeline run
Section titled “muaz pipeline run”Run a pipeline with the given input
Usage: muaz pipeline run <NAME> [INPUT]
Arguments:
Section titled “Arguments:”<NAME>— Pipeline name (file stem in ~/.muaz/plugins/local/pipelines)<INPUT>— Input message (read from stdin when omitted and piped)
muaz pipeline list
Section titled “muaz pipeline list”List available pipelines
Usage: muaz pipeline list
muaz agents
Section titled “muaz agents”Manage agents
Usage: muaz agents <COMMAND>
Subcommands:
Section titled “Subcommands:”list— List all available agentscreate— Create a new agent interactivelyshow— Show the full config of an agentedit— Open an agent config in $EDITOR
muaz agents list
Section titled “muaz agents list”List all available agents
Usage: muaz agents list
muaz agents create
Section titled “muaz agents create”Create a new agent interactively
Usage: muaz agents create
muaz agents show
Section titled “muaz agents show”Show the full config of an agent
Usage: muaz agents show <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Agent name
muaz agents edit
Section titled “muaz agents edit”Open an agent config in $EDITOR
Usage: muaz agents edit <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Agent name
muaz skills
Section titled “muaz skills”Manage Agent Skills
Usage: muaz skills <COMMAND>
Subcommands:
Section titled “Subcommands:”list— List all discovered skillscreate— Create a new skill interactivelyshow— Show the SKILL.md of a skilledit— Open a skill’s SKILL.md in $EDITOR
muaz skills list
Section titled “muaz skills list”List all discovered skills
Usage: muaz skills list
muaz skills create
Section titled “muaz skills create”Create a new skill interactively
Usage: muaz skills create
muaz skills show
Section titled “muaz skills show”Show the SKILL.md of a skill
Usage: muaz skills show <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Skill name
muaz skills edit
Section titled “muaz skills edit”Open a skill’s SKILL.md in $EDITOR
Usage: muaz skills edit <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Skill name
muaz config
Section titled “muaz config”View and edit global configuration
Usage: muaz config [COMMAND]
Subcommands:
Section titled “Subcommands:”show— Show the current config.yamledit— Edit config fields interactivelyvalidate— Check config.yaml, agents, mcp.json, and pipelines for problems
muaz config show
Section titled “muaz config show”Show the current config.yaml
Usage: muaz config show
muaz config edit
Section titled “muaz config edit”Edit config fields interactively
Usage: muaz config edit
muaz config validate
Section titled “muaz config validate”Check config.yaml, agents, mcp.json, and pipelines for problems
Usage: muaz config validate
muaz models
Section titled “muaz models”Manage models: provider profiles, the default, and per-agent bindings (all in models.yaml)
Usage: muaz models [COMMAND]
Subcommands:
Section titled “Subcommands:”list— List profiles, the default, and per-agent bindingsshow— Show a profile’s full config (secrets stay as ${ENV_VAR})set— Create or replace a provider profileset-model— Change just the default model of an existing profileremove— Remove a provider profiledefault— Set the global default provider profile (use —clear to unset)bind— Bind an agent to a profile and/or a specific modelunbind— Remove an agent’s binding (it falls back to the default)
muaz models list
Section titled “muaz models list”List profiles, the default, and per-agent bindings
Usage: muaz models list
muaz models show
Section titled “muaz models show”Show a profile’s full config (secrets stay as ${ENV_VAR})
Usage: muaz models show <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Profile name
muaz models set
Section titled “muaz models set”Create or replace a provider profile
Usage: muaz models set [OPTIONS] --type <TYPE> --model <MODEL> <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Profile name
Options:
Section titled “Options:”--type <TYPE>— Provider type: anthropic | openai-compatible | gemini | bedrock | ollama--model <MODEL>— Default model identifier (required)--base-url <BASE_URL>— Base URL (openai-compatible / ollama)--api-key <API_KEY>— API key, literal or ${ENV_VAR} (anthropic / openai-compatible / gemini)--region <REGION>— AWS region (bedrock)--aws-profile <AWS_PROFILE>— AWS credentials profile (bedrock)--timeout-secs <TIMEOUT_SECS>— Request timeout in seconds
muaz models set-model
Section titled “muaz models set-model”Change just the default model of an existing profile
Usage: muaz models set-model <NAME> <MODEL>
Arguments:
Section titled “Arguments:”<NAME>— Profile name<MODEL>— New default model identifier
muaz models remove
Section titled “muaz models remove”Remove a provider profile
Usage: muaz models remove <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Profile name
muaz models default
Section titled “muaz models default”Set the global default provider profile (use —clear to unset)
Usage: muaz models default [OPTIONS] [PROFILE]
Arguments:
Section titled “Arguments:”<PROFILE>— Profile name (from models.yaml)
Options:
Section titled “Options:”--clear— Clear the default instead of setting it
muaz models bind
Section titled “muaz models bind”Bind an agent to a profile and/or a specific model
Usage: muaz models bind [OPTIONS] <AGENT>
Arguments:
Section titled “Arguments:”<AGENT>— Agent name (or @plugin/agent)
Options:
Section titled “Options:”--profile <PROFILE>— Provider profile to bind (from models.yaml)--model <MODEL>— Model override applied on top of the resolved profile
muaz models unbind
Section titled “muaz models unbind”Remove an agent’s binding (it falls back to the default)
Usage: muaz models unbind <AGENT>
Arguments:
Section titled “Arguments:”<AGENT>— Agent name (or @plugin/agent)
muaz auth
Section titled “muaz auth”Store a provider profile’s API key securely (hidden prompt). Use this to authenticate before starting chat when the key isn’t set yet
Usage: muaz auth [PROFILE]
Arguments:
Section titled “Arguments:”<PROFILE>— Provider profile to authenticate (defaults to the default binding)
muaz mcp
Section titled “muaz mcp”Manage MCP server registrations
Usage: muaz mcp <COMMAND>
Subcommands:
Section titled “Subcommands:”install— Register an MCP server (npm package, uvx package, or HTTP URL)add-config— Import one or more servers from a pasted/standard MCP config ({ "mcpServers": { … } }). Reads from a file, or stdin when PATH is-list— List all registered MCP serversremove— Remove a registered MCP server by nameconnectors— Browse or search the connector catalog (built-in + registry + overlay)add— Add a catalog connector to mcp.json by id (thenconnectif it’s OAuth)connect— Authorize an OAuth MCP server in the browser and store its tokenslogout— Clear stored OAuth tokens for a server
muaz mcp install
Section titled “muaz mcp install”Register an MCP server (npm package, uvx package, or HTTP URL)
Usage: muaz mcp install [OPTIONS] <SPEC> [ARGS]...
Arguments:
Section titled “Arguments:”<SPEC>— Package name (@scope/pkg, mcp-server-*) or http(s):// URL<ARGS>— Extra arguments passed to the server process (stdio only)
Options:
Section titled “Options:”--name <NAME>— Override the derived server name--uvx— Use uvx (uv tool run) instead of npx--env <KEY=VALUE>— Environment variable for the server, as KEY=VALUE (repeatable). Values may be literals or ${VAR} references resolved at connect time--header <KEY=VALUE>— HTTP header for an http server, as KEY=VALUE (repeatable). Values may be literals or ${VAR} references resolved at connect time
muaz mcp add-config
Section titled “muaz mcp add-config”Import one or more servers from a pasted/standard MCP config ({ "mcpServers": { … } }). Reads from a file, or stdin when PATH is -
Usage: muaz mcp add-config <PATH>
Arguments:
Section titled “Arguments:”<PATH>— Path to a JSON config file, or-to read from stdin
muaz mcp list
Section titled “muaz mcp list”List all registered MCP servers
Usage: muaz mcp list
muaz mcp remove
Section titled “muaz mcp remove”Remove a registered MCP server by name
Usage: muaz mcp remove <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Logical name of the server to remove
muaz mcp connectors
Section titled “muaz mcp connectors”Browse or search the connector catalog (built-in + registry + overlay)
Usage: muaz mcp connectors [QUERY]
Arguments:
Section titled “Arguments:”<QUERY>— Optional search query over connector id, name, and description
muaz mcp add
Section titled “muaz mcp add”Add a catalog connector to mcp.json by id (then connect if it’s OAuth)
Usage: muaz mcp add [OPTIONS] <CONNECTOR_ID>
Arguments:
Section titled “Arguments:”<CONNECTOR_ID>— Connector id frommuaz mcp connectors
Options:
Section titled “Options:”--name <NAME>— Override the registered server name (defaults to the connector id)
muaz mcp connect
Section titled “muaz mcp connect”Authorize an OAuth MCP server in the browser and store its tokens
Usage: muaz mcp connect [OPTIONS] <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Logical name of the registeredhttp+oauthserver
Options:
Section titled “Options:”--client-id <CLIENT_ID>— Pre-registered OAuth client id (required for providers without dynamic client registration, e.g. Google, Slack)--client-secret <CLIENT_SECRET>— Pre-registered OAuth client secret, if the provider issues one
muaz mcp logout
Section titled “muaz mcp logout”Clear stored OAuth tokens for a server
Usage: muaz mcp logout <NAME>
Arguments:
Section titled “Arguments:”<NAME>— Logical name of the server to sign out
muaz runtime
Section titled “muaz runtime”Manage the bundled MCP runtimes (Node.js, uv) muaz downloads on demand
Usage: muaz runtime <COMMAND>
Subcommands:
Section titled “Subcommands:”list— Show managed runtime status (installed / pinned versions)install— Download a runtime now (node | uv; default: those your MCP servers need)update— Re-download installed runtimes (refresh pinned versions after upgrading muaz)clean— Remove all downloaded runtimes
muaz runtime list
Section titled “muaz runtime list”Show managed runtime status (installed / pinned versions)
Usage: muaz runtime list
muaz runtime install
Section titled “muaz runtime install”Download a runtime now (node | uv; default: those your MCP servers need)
Usage: muaz runtime install [NAME]
Arguments:
Section titled “Arguments:”<NAME>— Runtime to install:nodeoruv(omit to install what’s needed)
muaz runtime update
Section titled “muaz runtime update”Re-download installed runtimes (refresh pinned versions after upgrading muaz)
Usage: muaz runtime update
muaz runtime clean
Section titled “muaz runtime clean”Remove all downloaded runtimes
Usage: muaz runtime clean
muaz plugins
Section titled “muaz plugins”Install and manage plugins (bundled agents, skills, pipelines, prompts)
Usage: muaz plugins <COMMAND>
Subcommands:
Section titled “Subcommands:”install— Install a plugin from a local .zip path, or by name from the registry (optionally pinned asname@version)search— Search the remote plugin registrylist— List installed plugins (enabled/disabled, trusted)show— Show a plugin’s manifest and contentsenable— Enable a disabled plugindisable— Disable a plugin without uninstalling ituninstall— Uninstall a plugin (deletes its directory)update— Check for and apply plugin updates from the registry
muaz plugins install
Section titled “muaz plugins install”Install a plugin from a local .zip path, or by name from the registry (optionally pinned as name@version)
Usage: muaz plugins install [OPTIONS] <TARGET>
Arguments:
Section titled “Arguments:”<TARGET>— Path to a .zip, or a registry plugin name (nameorname@version)
Options:
Section titled “Options:”--force— Overwrite an existing plugin with the same id
muaz plugins search
Section titled “muaz plugins search”Search the remote plugin registry
Usage: muaz plugins search <QUERY>
Arguments:
Section titled “Arguments:”<QUERY>— Substring to match against plugin names and descriptions
muaz plugins list
Section titled “muaz plugins list”List installed plugins (enabled/disabled, trusted)
Usage: muaz plugins list
muaz plugins show
Section titled “muaz plugins show”Show a plugin’s manifest and contents
Usage: muaz plugins show <ID>
Arguments:
Section titled “Arguments:”<ID>— Plugin id
muaz plugins enable
Section titled “muaz plugins enable”Enable a disabled plugin
Usage: muaz plugins enable <ID>
Arguments:
Section titled “Arguments:”<ID>— Plugin id
muaz plugins disable
Section titled “muaz plugins disable”Disable a plugin without uninstalling it
Usage: muaz plugins disable <ID>
Arguments:
Section titled “Arguments:”<ID>— Plugin id
muaz plugins uninstall
Section titled “muaz plugins uninstall”Uninstall a plugin (deletes its directory)
Usage: muaz plugins uninstall <ID>
Arguments:
Section titled “Arguments:”<ID>— Plugin id
muaz plugins update
Section titled “muaz plugins update”Check for and apply plugin updates from the registry
Usage: muaz plugins update [OPTIONS] [ID]
Arguments:
Section titled “Arguments:”<ID>— Plugin id to update; omit to update all with available updates
Options:
Section titled “Options:”--check— Only report available updates without installing them
muaz doctor
Section titled “muaz doctor”Diagnose the installation: config, runtimes, and MCP server health
Usage: muaz doctor
muaz audit
Section titled “muaz audit”Inspect the append-only security audit log (~/.muaz/audit/audit.jsonl)
Usage: muaz audit <COMMAND>
Subcommands:
Section titled “Subcommands:”tail— Show the most recent audit eventsexport— Print the entire audit log (raw JSON Lines) to stdout
muaz audit tail
Section titled “muaz audit tail”Show the most recent audit events
Usage: muaz audit tail [OPTIONS]
Options:
Section titled “Options:”-
-c,--count <COUNT>— How many events to show (default 20)Default value:
20 -
--json— Emit raw JSON Lines instead of a formatted table
muaz audit export
Section titled “muaz audit export”Print the entire audit log (raw JSON Lines) to stdout
Usage: muaz audit export
muaz gateway
Section titled “muaz gateway”Start the web gateway server with a browser-based UI
Usage: muaz gateway [OPTIONS]
Options:
Section titled “Options:”-
-p,--port <PORT>— Port to listen on (default: 7878)Default value:
7878 -
--host <HOST>— Address to bind. Defaults to loopback (127.0.0.1); pass 0.0.0.0 to expose the agent runtime to the network (prints a warning)Default value:
127.0.0.1 -
--token <TOKEN>— Shared secret required on every request. Defaults to $MUAZ_GATEWAY_TOKEN, else a freshly generated token printed at startup -
--readonly— Read-only mode: serve the UI and all reads, but refuse every state-changing request (no chat turns, no config/plugin/connector edits). For auditors and demos