meepagateway CLI manages your gateway from the terminal. Management commands talk to a running gateway instance via the Captain API.
Global flags
These flags apply to all commands.| Flag | Env var | Default | Description |
|---|---|---|---|
--config <PATH> | — | ~/.meepagateway/config.yaml | Config file path (used by start and setup only) |
--url <URL> | MEEPA_URL | auto-detected from config | Gateway URL for management commands |
--json | — | false | Output as JSON instead of human-readable text |
-y, --yes | — | false | Skip confirmation prompts |
Authentication
Management commands require an API key. Set it via environment variable:meepagateway api-key create.
Interactive mode
Commands that accept an agent ID will open a TUI picker when the ID is omitted. Commands that accept flags will prompt interactively when flags are omitted.Server commands
start
Start the gateway. Default when no command is given.
| Flag | Description |
|---|---|
--port <PORT> | Server port (overrides config) |
--bind <ADDR> | Bind address (overrides config) |
setup
Run the setup wizard. Works even when a config already exists.
stop
Stop a running gateway (SIGTERM, then SIGKILL after timeout).
restart
Stop and re-launch with the same arguments.
status
Show gateway status. No authentication required.
update
Check for updates and self-update the binary.
uninstall
Remove the binary and skills catalog.
Config commands
config show
Show current configuration (secrets redacted).
config raw
Show the raw config file contents.
config edit
Open config in $EDITOR, then save changes to the gateway.
config validate
Validate config without saving.
config reload
Reload config from disk.
config reset
Reset config to defaults (preserves authentication settings).
Agent commands
agent list
List all agents.
agent show [ID]
Show details for an agent.
agent create
Create a new agent. Run without flags for interactive mode.
| Flag | Description |
|---|---|
--name <NAME> | Display name |
--id <ID> | Agent ID (auto-generated from name if omitted) |
--provider <NAME> | LLM provider override |
--model <MODEL> | Model override |
--max-iterations <N> | Max tool call iterations per message |
--default | Set as the default agent |
agent update [ID]
Update agent settings. Run without flags for interactive mode.
agent delete [ID]
Delete an agent.
Soul commands
The soul is an agent’s personality and system prompt — a Markdown file (SOUL.md).
agent soul show [ID]
agent soul edit [ID]
Open soul in $EDITOR.
agent soul set [ID]
Set soul from a local file.
Memory and user profile commands
agent memory show/edit/set [ID]
Manage an agent’s MEMORY.md (long-term notes).
agent user show/edit/set [ID]
Manage an agent’s USER.md (user profile).
Skill commands
agent skill list [ID]
List skills for an agent.
agent skill show [ID] <NAME>
Show a skill’s content.
agent skill add [ID] <NAME>
Add or update a skill from a file.
agent skill remove [ID] <NAME>
Remove a skill.
agent skill catalog
List skills available in the bundled catalog.
agent skill install [ID] <NAME>
Install a skill from the bundled catalog.
agent skill install-url [ID] <URL>
Install a skill from a GitHub repository.
Connector commands
agent connector list [ID]
List connectors for an agent.
agent connector add [ID]
Add a connector. Run without flags for interactive mode.
| Flag | Description |
|---|---|
--name <NAME> | Connector name |
--type <TYPE> | Platform: meepachat, discord, telegram, slack, whatsapp |
--connector-url <URL> | Server URL (meepachat) |
--bot-token <TOKEN> | Bot token |
--app-token <TOKEN> | App-level token (Slack Socket Mode) |
--guild-ids <IDS> | Comma-separated guild IDs (Discord) |
agent connector edit [ID] [NAME]
Edit a connector interactively.
agent connector remove [ID] <NAME>
Remove a connector.
agent connector test
Test a connector connection without saving.
MCP command
agent mcp [ID]
Open an agent’s .mcp.json in $EDITOR. MCP servers are not configured in the main config file — they live at ~/.meepagateway/agents/{id}/.mcp.json.
Cron commands
agent cron list [ID]
List cron jobs for an agent.
agent cron show [ID] [JOB_ID]
Show cron job details.
agent cron create [ID]
Create a scheduled job. Run without flags for interactive mode. Exactly one of --every, --cron, or --at is required in non-interactive mode.
| Flag | Description |
|---|---|
--name <NAME> | Job name |
--message <MSG> | Prompt injected when the job fires |
--every <INTERVAL> | Interval (e.g. 30m, 1h, 24h) |
--cron <EXPR> | 7-field cron expression |
--at <DATETIME> | One-shot ISO 8601 datetime |
--delivery-connector <NAME> | Target connector for output |
--delivery-channel <ID> | Target channel for output |
--model <MODEL> | Model override for this job |
--max-iterations <N> | Max iterations for this job |
--disabled | Create in disabled state |
--delete-after-run | Delete after successful execution |
agent cron update [ID] [JOB_ID]
Update a cron job.
agent cron delete [ID] [JOB_ID]
Delete a cron job.
agent cron run [ID] [JOB_ID]
Trigger a cron job immediately.
Credentials and secrets commands
agent credentials [ID]
Launch the interactive credentials setup wizard for an agent.
agent secrets [ID]
Manage SOPS-encrypted secrets for an agent via a TUI.
secrets list
List gateway-level secret keys.
secrets set/get/remove
Manage gateway-level secrets.
API key commands
api-key list
List all Captain API keys.
api-key create <NAME>
Create a new API key. The full key is shown once and cannot be retrieved later.
api-key revoke <ID>
Revoke an API key.
Sandbox commands
sandbox status
Show sandbox configuration and image status.
sandbox build
Build the sandbox image.
sandbox list
List sandbox images.
sandbox remove <TAG> / sandbox clean
Remove a specific image or all sandbox images.
Webhook commands
webhook setup
Run the interactive webhook setup wizard for incoming webhooks (Telegram, WhatsApp).
cloudflare_tunnel, reverse_proxy, tailscale.
