Skip to content

IGRE Overview

IGRE stands for Intent-Grounded Reversible Execution.

It is a protocol for command-line tools and agents that touch real systems. IGRE does not try to make every action safe. Instead, it makes a tool’s grounding, intent, risk, mutation, and verification visible before and after execution.

IGRE separates observation, intent, and mutation:

lfetch / fetch -> intend -> laction / action

The verbs have distinct jobs:

  • lfetch observes local true state and records a fetch artifact.
  • fetch observes remote true state and records a fetch artifact.
  • intend create-* records an immutable proposed intervention.
  • intend list and intend status inspect the CLI-owned intent repository.
  • laction mutates local true state under an intent.
  • action mutates remote true state under an intent.

Fetches observe source systems the CLI does not control. A local SQLite cache, a local file, and a remote SaaS API can all be true systems for a workflow.

Intents are different. They are records owned by the CLI: proposed, attempted, or completed interventions. Reading those records is not a fetch. That is why an IGRE CLI has commands such as:

Terminal window
tool intend list time-entry
tool intend status intend_...

An intent answers:

  1. Where do I think I am?
  2. How sure am I about that?
  3. What action am I about to take?
  4. What is the risk of taking that action on this grounding?
  5. What rollback truth applies?

This turns “please do the thing” into a durable manifest that can be linted, inspected, executed, and audited.

IGRE promises that a tool says what it observed, what it intended, what it mutated, what it could verify, what it could not verify, and what actually happened.

It does not promise that the outcome was good, that rollback exists, or that the remote system behaved correctly.