Skip to main content
The fimo CLI is the developer and agent surface for Fimo. It handles project creation, all content / forms / media / labels / locale workflows, deploys, environments, domains, analytics, collaboration, and AI-agent setup. Everything the CLI does is also editable by non-developers in Fimo Studio — same project, two surfaces.

Search public websites with Firecrawl

Enable Firecrawl when you need sourced research from public websites. Search returns query-relevant excerpts with their source URLs, so you can answer straightforward questions without fetching every result page.
Narrow a search with source type, category, domain, freshness, or geography:
Use --json for agent workflows. Fetch an individual page with scrape when you need full context, exact wording, or implementation details. Firecrawl is for public websites, not private or logged-in content.

Install and run

Run every command as npx fimo@latest <command>. It always fetches the latest CLI — no install, nothing to keep up to date. Do not install fimo globally. For brevity the docs write fimo <command> — mentally prefix npx fimo@latest.

Sign in

fimo login uses a browser loopback flow — there’s nothing to copy or paste. Credentials are stored per backend under ~/.config/fimo/credentials/. Never hardcode tokens in command flags. A Fimo project is identified by .fimo.settings.json at its root, written once by fimo init. It connects the local directory to the remote project, and most commands read it from the cwd to know which project they operate on.
.fimo.settings.json is read-only — treat it as generated. Never edit it manually to switch projects or environments.

JSON output for agents

Every command accepts a global --json flag (or FIMO_OUTPUT=json) and emits one structured envelope on stdout:
Branch on error.code (UPPER_SNAKE_CASE), never on error.message. The envelope is versioned (schema_version: 1). JSON mode disables interactive prompts, so pass every required argument (--yes, --org, …) on the command line.
Project-scoped commands (deploy, status, entries, …) target the environment of your current git branch, and print a one-line banner saying which. Override for one command with the global --env <name> flag. See Environments.

What’s next

Projects & onboarding

fimo init, clone, login, and orgs.

Content & CMS

Schemas and entries.

CLI reference

Every command, grouped by area.