Install the CLI
Install the spore command line from npm, point it at a key, and write the spore index into your agent's instructions with spore init.
The spore CLI is the on-ramp for a Harness: every Operation of the v1 surface is a command
named by its Operation id, with its flags, accepted values and price in its help. An agent that
can run a shell can drive spore with it.
Install
The CLI is published on npm as @spore-ee/cli, from its first release, 0.1.0 (cli-v0.1.0),
and needs Node.js 24 (24.15 or later). Until that release is out, npm i answers 404:
npm i -g @spore-ee/cliWith pnpm, pnpm add -g @spore-ee/cli does the same. Check the install:
spore --versionIt prints the CLI's version and the revision of the Operation surface it speaks. The CLI is released at the Operation contract's version, so a CLI never offers a command its Service lacks. To upgrade, run the install command again.
Point it at spore
Mint an organization key for the agent with its own spend bounds, as Getting started and Authentication and keys describe, then give it to the CLI:
export SPORE_SERVICE_URL=https://www.spore.ee
export SPORE_API_KEY=spore_sk_...
spore walletspore wallet is free: it answers with the balance and this key's bounds, which proves the key
works. Every answer is JSON on stdout; a refusal is JSON on stderr, and its error names what to
change.
A key carries its organization's credits. Give each agent its own bounded key rather than sharing an unbounded one.
Write the index into your agent's instructions
In the folder your agent works in, run:
spore initspore init writes a short index of rules, Recipes and doc pages into AGENTS.md and
CLAUDE.md there, between <!-- BEGIN spore index … --> and <!-- END spore index -->
marker lines, so the agent keeps it loaded in every session. A missing file is created, and a
file without the markers gets the index appended. Running it again, after an upgrade, replaces
only what is between the markers and leaves the rest of each file alone. A CLAUDE.md that
links to AGENTS.md is written once, through the link, and stays a link.
It decides both files before it writes either, and writes each whole or not at all. Markers edited into something other than one BEGIN line followed by one END line, a file it cannot read or write, or a name that is a folder change neither file: it exits 1 with a JSON refusal naming the file. Fix what it names and run it again.
Find your way around
spore --help
spore search --help
spore --skillspore --help lists every Operation. spore <operation> --help prints its flags, accepted
values and price. spore --skill prints the longer agent guide, with whole command lines, as a
SKILL.md for Harnesses that load skills.