Squirro CLI#

Squirro CLI manages a Squirro instance from a configuration directory that you keep in version control. It pulls the configuration of an instance into JSON files, applies your local edits back to the instance, and provides direct access to the Squirro APIs, search, chat, and instance logs.

Because that configuration lives in files rather than only inside the instance, you can review a change in a pull request, promote it from one environment to the next, and rebuild the same setup on a new instance.

Installing Squirro CLI places a squirro command on your system path, so everything described here is something you run from a terminal. Start with the built-in help, which lists the command groups available on your build.

squirro --help

The command runs the tool inside a Docker container for you. For more information, see the Installation page.

Note

Squirro CLI is distributed through the Squirro Registry, and access is granted to selected customers and partners. For more information, see the Installation page.

What Squirro CLI Manages#

Server-level configuration, shared by every project on the instance:

  • Server configuration service settings, groups, and users.

  • Local data loader plugins, GenAI plugins, Studio plugins, and legacy custom widgets.

  • Project templates.

Project-level configuration, held separately for each project the configuration directory manages:

  • Project metadata, members, project configuration service settings, support contacts, and theme.

  • Labels and facets, data sources, and pipeline workflows.

  • Agents and dashboards.

  • Graphite schemes, concepts, and templates, for projects that use a knowledge graph.

For the authoritative list on the build you have installed, run the squirro config list command. It prints each supported type with the path it maps to.

Supported Configuration Types:
────────────────────────────────────────────────────────────
Type                 File Path
────────────────────────────────────────────────────────────
AgentsConfig         projects/{ProjectsConfig}/agents/*.json
DashboardsConfig     projects/{ProjectsConfig}/dashboards/*.json
GroupsConfig         genai/groups.json
LabelsConfig         projects/{ProjectsConfig}/connectors/labels.json
ProjectInfo          projects/{ProjectsConfig}/platform/info.json
ServerConfigConfig   genai/config-server.json
SourcesConfig        projects/{ProjectsConfig}/connectors/sources/*.json
WorkflowsConfig      projects/{ProjectsConfig}/enrichments/workflows.json

That sample is shortened. The full output lists every supported type and adds a description for each. The {ProjectsConfig} segment stands for the name of a project directory under projects/.

Requirements#

  • A Squirro instance running version 3.16.4 or later. Against an older instance, commands still run, but a warning reports that some of them may not work as expected.

  • Docker, and a Squirro Registry account. For more information, see the Installation page.

Designed for AI Assistants#

Running the commands by hand works, and the Main Commands page documents them so that you can follow along, check a result, or investigate a failure.

Squirro CLI is nonetheless built to be operated by an AI coding assistant rather than typed command by command. You describe the outcome you want in natural language, and the assistant chooses the commands, reads the configuration schema, edits the JSON files, and previews the change before applying it.

Three parts of the tool exist to make that work:

  • A machine-readable schema

    squirro config schema emits JSON schema for any configuration file, so an assistant can check field names and valid values instead of guessing them.

  • Assistant assets in the configuration directory

    squirro init writes a CLAUDE.md file and a .claude/ directory holding skills and tool definitions, which an assistant picks up automatically when it starts in that directory.

  • A preview before every change

    squirro config apply shows the difference it intends to make and asks for confirmation, so a wrong instruction is caught before it reaches the instance.

Claude Code is the assistant Squirro recommends and supports. The assets that squirro init writes are specific to it, so another assistant with command line access can run the commands but starts without that context, and you have to supply the equivalent yourself.

Where to Start#

  1. Install the tool

    Squirro Registry access, Docker, the squirro wrapper script, and how to move to a newer build. Learn more

  2. Create a configuration directory

    What squirro init creates, which configuration lives where, and which files are safe to commit. Learn more

  3. Work with the commands

    The command groups, the configuration pull and apply cycle, and API, search, chat, and log access. Learn more

  4. Promote configuration between environments

    How mirror profiles keep one set of tracked files and replicate it to a second and third instance. Learn more

The Prompt Library page sits alongside those steps rather than after them. It collects prompts for common delivery tasks, grouped by the part of the platform they configure, and is worth keeping to hand throughout.

Support#

For questions, issues, or enhancements, visit the Squirro Support website and submit a technical support request.