The Stigg AI Terminal is currently in public beta. Feedback and bug reports are welcome.
--headless mode so an AI agent or CI job can run it for you. Supported clients: Claude Code, Cursor, VS Code, Codex, and Claude Desktop.
Requirements & install
Requires Node.js 22+. No install needed: run it directly withnpx, or install globally to get the stiggt command:
Two ways to run it
The AI Terminal works the same whether a human drives it or an agent does. The difference is interactive vs. non-interactive. Interactive (you, in a terminal). Runnpx @stigg/terminal with no arguments. It opens a full-screen TUI that signs you in through the browser, lets you pick the account, environment, and API key, and choose which clients to configure, then writes everything and shows a summary. When setup succeeds it also offers to launch your coding agent (Claude Code, Codex, or Cursor) right there, seeded with a starter prompt so you can begin building immediately. Best for first-time, hands-on setup.
Headless (an AI agent or CI). Pass --headless (or use the mcp add / skills add subcommands) for a fully non-interactive run, with optional JSON output. Best when you want your coding agent to set itself up, or when running in a pipeline. See Headless usage.
Interactive
init requires a real terminal (TTY). In a non-interactive context, pass --headless; otherwise the command exits with an error telling you to.Command reference
Runstiggt <command> --help for the flags on any command.
stiggt
With no arguments in an interactive terminal, launches the setup TUI: sign in → pick account / environment / API key → pick clients → write MCP and install skills → summary. When setup succeeds, it offers to launch your coding agent (Claude Code, Codex, or Cursor), seeded with a starter prompt. With no TTY, it prints help instead.
stiggt init
Runs the full setup: authenticate, write MCP, install skills. Interactive by default; add --headless to run without the TUI. In headless mode it runs in two phases.
stiggt mcp add
Writes the Stigg MCP entry into one or more client configs, without authenticating or installing skills. Requires an API key (--api-key or STIGG_API_KEY) and one of --client / --all.
stiggt skills add
Installs the Stigg agent skills for one or more clients, without touching MCP config. No API key required. Requires one of --client / --all.
stiggt env
Opens an interactive picker to switch the active Stigg environment, then rewrites the MCP config for the clients in your saved setup.
stiggt dash
Opens the Stigg dashboard in your default browser.
Global flags
Clients
Pass these IDs to-c, --client. A client must be installed and detected to be configured, and --client and --all are mutually exclusive.
What it writes
For each selected client, the AI Terminal adds a server namedstigg pointing at the Stigg MCP server (https://mcp.stigg.io), authenticated with your environment API key via the X-API-KEY header. Existing config files are merged, not overwritten, and backed up to <path>.bak.<timestamp> before any change.
- Claude Code
- Cursor
- VS Code
- Claude Desktop
- Codex
Uses the
claude CLI (no file is edited). The server is added at user scope, idempotently, so re-running removes and re-adds it:Agent skills it installs
Unless you pass--no-skills, the Terminal also installs the Stigg agent skills: domain knowledge that helps your assistant use the MCP tools well. It uses the right channel per client:
-
Claude Code registers the marketplace and installs the plugin:
-
Other clients install via the agent-skills CLI:
Headless usage
--headless makes init fully non-interactive (no TUI, no prompts), so an AI agent or CI pipeline can run it. Add --json for machine-readable output.
Let your coding agent set itself up
If you’re already working inside an AI coding assistant, just ask it to run the Terminal. It detects its host (Claude Code, Cursor, Codex, and VS Code are auto-detected via environment variables the host sets) and configures that client by default:
“Connect this project to Stigg: run npx @stigg/terminal init --headless to install the MCP server and skills, then confirm it worked by listing my Stigg plans.”
Override the target with -c/--client or --all. To force or disable detection, set STIGG_HOST_AGENT (a client ID, or none).
The two-phase init
Because an account can have multiple environments and API keys, headlessinit runs in two phases. (If you have exactly one account, one environment, and one API key, it auto-selects them and completes in a single run.)
1
Phase 1: authenticate and list
Run With
init --headless with no ID flags. It reuses your cached session (or opens a browser to sign in the first time), then lists your accounts, environments, and API keys.--json, you get a structured listing to parse:2
Phase 2: provision
Pass the chosen IDs back; all three are required together. The Terminal writes the MCP config and installs skills for the selected clients:
init --json emits a single object describing what happened:
No-browser path (CI)
The simplest non-interactive setup skips OAuth entirely: create an API key in the Stigg dashboard, then write the MCP config (and optionally skills) directly. No TTY and no browser required, which is ideal for CI, Dockerfiles, and provisioning scripts.Exit codes
Authentication & stored files
Interactive and phase-1 headless runs sign you in through your browser. The Terminal starts a local listener onhttp://127.0.0.1:57166/callback to receive the redirect; if that port is taken or isn’t whitelisted, pass a different one with --callback-port (or set STIGG_CALLBACK_PORT). If the browser doesn’t open automatically, the sign-in URL is printed so you can open it manually.
Your session is cached so you don’t sign in every time:
Both honor
$XDG_CONFIG_HOME and are written with restrictive (owner-only) permissions. Pass --force-login to re-authenticate even when a valid session is cached. mcp add and skills add don’t sign in at all; mcp add takes the API key directly.
Environment variables
Telemetry
The AI Terminal sends anonymous usage analytics (via Segment) to help us improve the tool — which commands you run, whether setup succeeds, and basic environment info (CLI version, OS, and whether it’s running in CI or under an AI agent). It never collects your code, API keys, or project contents.Telemetry is on by default. To opt out, set
STIGG_DO_NOT_TRACK=1 (the standard DO_NOT_TRACK=1 is also honored). A one-time notice is printed on first run.Security
- Use scoped API keys when available. Create a dedicated, least-privilege key per client rather than reusing a full-access key (scoped keys are available on the Scale plan).
- Keys are environment-bound. The key you select determines exactly which Stigg environment the agent operates on.
- Never commit API keys or share them in chat. Treat them like passwords.
MCP Server
What the Terminal connects you to, and how to set it up by hand.
Agent Skills
The domain knowledge the Terminal installs. See all skills and manual install steps.
CLI vs MCP server
Not sure which tool to use? See the side-by-side comparison.
