Discovery
Use `--help` at every level to walk from the top of the CLI down to a single operation.
godmode is self-describing. There is no separate doc tree to memorize — --help works at every nesting level and prints exactly what's available at that scope. New extension? Run --help. Forgot a flag? Run --help.
The four-step ladder
godmode --help # top level: built-ins + installed extensions
godmode <extension> --help # the extension's interfaces, auth, version
godmode <extension> <interface> --help # methods, resources, options
godmode <extension> <interface> <resource> --help # operations on that resourceEach step narrows the scope. Output at each level only shows what's reachable from there — no noise from siblings.
-h is an accepted alias for --help everywhere. Both work at every level, in any position — godmode --help stripe and godmode stripe --help print the same page.
A real walk-through
Stripe, top to bottom:
$ godmode stripe --help
stripe — Interact with Stripe (auth: STRIPE_API_KEY)
Interfaces:
api REST (OpenAPI v3) spec: openapi.spec3.yaml @ 2024-12-18
mcp Serve as MCP over stdio derived from api
Run godmode stripe <interface> --help for details.$ godmode stripe api --help
stripe api — REST interface
Resources:
accounts Account management
balance Balance retrieval
charges Payment charges
customers Customer records
invoices Invoices and line items
... (108 resources total — pipe to less)
Usage:
godmode stripe api <METHOD> <resource> [args...]
Run godmode stripe api <resource> --help for operations.$ godmode stripe api customers --help
stripe api customers — operations
Methods:
GET /v1/customers List customers (paginated)
GET /v1/customers/{id} Retrieve a customer
POST /v1/customers Create a customer
POST /v1/customers/{id} Update a customer
DELETE /v1/customers/{id} Delete a customer
Sub-resources:
customers balance_transactions
customers cash_balance
customers payment_methods
...
Examples:
godmode stripe api GET customers limit==10
godmode stripe api POST customers email=a@b.com
godmode stripe api GET customers cus_123The same pattern works for any installed extension — slack, openai, github graphql, context7 mcp. Same four steps.
Versioning
--version is parsed at the same levels and reports the spec version actually in use, not just godmode's:
$ godmode --version
godmode 0.4.2
$ godmode stripe --version
stripe extension: cached spec from 2024-12-18 (api)
godmode core: 0.4.2Useful when an upstream API changes shape and you need to confirm whether your local cache is stale. Re-fetch with godmode ext update <name>.
What --help will not tell you
- Required env vars beyond auth. Some extensions read additional env (region, account ID). Those are documented in the extension's README, not in
--help. - Permissions denials. If a call is blocked by
settings.yaml,--helpstill lists the resource — discovery is independent of policy. See Permissions. - Rate limits. Upstream-specific. The extension passes them through verbatim in error messages.