Skip to main content

INFINI — the open standard for agent loops. Write a Loopfile, run it on any engine.

Project description

INFINI CLI

The reference implementation of the infini command-line tool.

The CLI is the INFINI Reference Engine. It conforms to the same Loopfile spec as every other engine. The only asymmetry: it ships first with new spec features, since the spec is developed against it.


Install

pip install infini-cli

# With adapter extras
pip install infini-cli[hermes,openclaw]

# From source
git clone https://github.com/NickAiNYC/infini
cd infini/cli && pip install -e .

Requires Python 3.10+.


Commands

infini validate  [Loopfile]   # check spec compliance
infini run       [Loopfile]   # execute a loop (--mock for no API key)
infini inspect   [run_dir]    # inspect a trace (--web opens Observatory, coming soon)
infini replay    [run_dir]    # time-travel debug from any step
infini diff      [v1] [v2]    # semantic diff between loops or traces
infini ui        [trace]      # launch the Observatory web app
infini engines                # list detected adapters (reads adapter.yaml)
infini init      [--target]   # scaffold a minimal project (Loopfile, loops/, state/, runs/)
infini new       <name>       # create a new project scaffold
infini graph     [Loopfile]   # render a simple ASCII graph of steps
infini benchmark [Loopfile]   # preview benchmark estimate (real profiling needs a run)

Commands not yet implemented (planned)

infini install   [loop_ref]   # pull from registry (planned — registry not yet live)
infini publish   [Loopfile]   # push to registry (planned)
infini ci        [Loopfile]   # run loop against fixtures (GitHub Action)
infini search    [query]      # search the registry (planned)
infini migrate   [Loopfile]   # migrate a Loopfile between spec versions
infini keys generate           # generate a publisher signing keypair

Mock mode

infini run --mock simulates LLM calls so you can run any Loopfile without an API key. Useful for evaluation, CI, demos, and the conformance suite. Mock mode is deterministic: same Loopfile + same seed = same output.


Conformance

The CLI implements:

Capability Status
Parse Loopfile
Run Loop
Verify
Inspect Trace
Replay
Diff

This makes the CLI the canonical conformance reference. If your adapter disagrees with the CLI on a spec edge case, the CLI is right until an RFC says otherwise.


Architecture

cli/
├── README.md           # you are here
├── pyproject.toml      # package metadata
├── src/infini/
│   ├── __init__.py
│   ├── main.py         # entrypoint
│   ├── parse.py        # Loopfile parser
│   ├── validate.py     # JSON Schema validator
│   ├── run.py          # reference engine
│   ├── inspect.py      # trace inspector (Loop Observatory)
│   ├── replay.py       # time-travel debugger
│   ├── diff.py         # semantic diff
│   ├── registry.py     # publish/install/search
│   ├── ci.py           # CI mode
│   ├── migrate.py      # spec migration
│   └── keys.py         # signing key management
└── tests/
    ├── conformance/    # spec conformance suite
    ├── fixtures/       # example Loopfiles
    └── expected/       # expected trace shapes

The full source ships with the next CLI release. This README documents the contract.


The Loop Observatory

infini inspect <run_dir> opens the Loop Observatory — the signature feature.

The Observatory shows, for any run:

  • the graph of decisions taken,
  • every verification checkpoint and its verdict,
  • total runtime, token count, and dollar cost,
  • artifacts produced at each step,
  • where the loop failed (if it did), and what was retried,
  • what changed between iterations,
  • governance events (Hermes) and tool calls (OpenClaw) in a swimlane view.

The Inspector ships today. The full UI (annotated timeline, cost waterfall, artifact gallery, replay studio) is in preview.


License

MIT. See repository LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

infini_cli-0.1.1.tar.gz (21.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

infini_cli-0.1.1-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file infini_cli-0.1.1.tar.gz.

File metadata

  • Download URL: infini_cli-0.1.1.tar.gz
  • Upload date:
  • Size: 21.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for infini_cli-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e4f422c1d3efde068d5054c20121a84f67c0af20478bc70647ecbe8e41fa58db
MD5 04c414ce1acbfc57bd42328a2e143be4
BLAKE2b-256 5ecf3bdf2533be8ee863000b9787d8e347c185f1dc318e1fe9cf32ba41edc9a4

See more details on using hashes here.

File details

Details for the file infini_cli-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: infini_cli-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 24.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for infini_cli-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 74d9320305421ce8d2dc8148e57ec6c43a3aee247ba181da24bd018d5d70a61a
MD5 f8bf015e40f9516d4528f17550055048
BLAKE2b-256 40f68cd1c7a3d650f07d7a59100f5df047d7bca04837d4887b2cd5b222661a1f

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page