Every top-level command, with a one-line purpose and a link to its docs.
| Command | Purpose | Docs |
|---|
marmot <prompt> | Text generation (default verb, alias for marmot run) | Text |
marmot run [prompt] | Text generation, explicit | Text |
marmot image <prompt> | Image generation | Image |
marmot speak <text> | Text-to-speech | Speech |
marmot transcribe <audio> | Speech-to-text | Transcription |
| Command | Purpose | Docs |
|---|
marmot search <query> | Web search | Search |
marmot scrape <url...> | URL(s) → markdown | Scrape |
marmot answer <query> | Answer with citations | Answer |
marmot map <url> | Enumerate URLs on a domain | Map |
marmot crawl <url> | Walk a domain, return pages | Crawl |
marmot research <query> | Async deep research with optional schema | Research |
marmot findall <objective> | Async list-of-entities builder | Findall |
marmot get <id> | Poll/retrieve an async task | Async tasks |
marmot tasks list/show/remove/prune | Manage the local async-task index | Async tasks |
marmot enrich --type person|org [identifiers…] | Identifier → full record (Apollo, Hunter, PDL, Tomba, Datagma) | Enrich |
marmot lookup --type person|org|email [filters…] | Filters → list of entities (Apollo, PDL, Tomba; Hunter/Tomba for emails) | Lookup |
marmot verify <email> | Email deliverability (Hunter, Tomba, Bouncer, Datagma, ZeroBounce, Kickbox) | Verify |
| Command | Purpose | Docs |
|---|
marmot setup | Interactive default-provider picker for every verb | Installation |
marmot config show | Print the resolved config (human-readable; --json for envelope) | Configuration |
marmot config path | Print the config file path | Configuration |
marmot config init | Create an empty config (--force to overwrite) | Configuration |
marmot config set <key> <val> | Set a dotted-path config key | Configuration |
marmot config unset <key> | Remove a config key | Configuration |
marmot providers list | Show every supported provider, env-var status, defaults | Providers |
marmot cache refresh [target] | Refresh provider model catalogs (one provider or all) | Caching |
marmot cache stats [--provider X] | Show response cache size and entry count per provider | Caching |
marmot cache clear [--provider X | --all] [--query "..."] [--older-than N] | Invalidate response cache entries | Caching |
marmot about | Banner + provider summary | — |
| Command | Purpose | Docs |
|---|
marmot preset create <name> | Save a named bundle of provider/model/flags | Presets |
marmot preset update <name> | Patch fields on an existing preset | Presets |
marmot preset delete <name> | Remove a preset | Presets |
marmot preset list | List all presets | Presets |
marmot preset show <name> | Show full settings for one preset | Presets |
marmot @<preset> … | Sigil shorthand for --preset <preset> on any verb | Presets |
| Command | Purpose | Docs |
|---|
marmot session create <name> | Create a named session (mode: stateless or chat) | Sessions |
marmot session use <name> | Set the global current-session pointer | Sessions |
marmot session current | Print the active session | Sessions |
marmot session end | Clear the current-session pointer | Sessions |
marmot session list | List all sessions | Sessions |
marmot session show <name> | Show metadata, totals, window usage | Sessions |
marmot session delete <name> | Delete a session (--keep-log to preserve log.jsonl) | Sessions |
marmot session log <name> | Print log records | Sessions |
marmot session tail <name> | Follow log output | Sessions |
marmot session stats <name> | Token totals and cache hit rate | Sessions |
marmot session context <name> | Print accumulated chat history (chat mode) | Sessions |
marmot session reset <name> | Clear messages, keep log + meta | Sessions |
marmot session fork <src> <new> | Branch a session from current state | Sessions |
marmot session export <name> | Export a session as JSONL or Markdown | Sessions |
marmot session mark <name> "label" | Watermark for compaction boundaries | Sessions |
marmot session compact <name> | Summarize older messages | Sessions |
For provider-specific endpoints that don't fit marmot's normalized verbs, use marmot api <provider> <subcommand>. The response is returned in the provider's native shape, not marmot's envelope.
marmot api brave summarizer --key <k> (Brave Pro plan)
marmot api exa find-similar <url>
marmot api firecrawl llmstxt --url <url> / marmot api firecrawl llmstxt-status <id> / marmot api firecrawl usage
marmot api tavily usage
For cross-cutting flags every verb shares, see Common flags.