Skip to main content

Fable Mode

Fable Mode

Agents that think before they write.


Python 3.10+   MIT   MCP   Zero Dependencies   490 tests passing





Fable Mode is an open-source control plane for AI coding agents.

It makes an agent deliberate, produce evidence, and survive adversarial review before it earns permission to write to your workspace. The gates are mechanical, not prompt advice: no timer, no proof, no write access.


Think → Prove → Attack → Write

https://github.com/user-attachments/assets/27f4f8a2-b1bb-4398-a08c-bc9fd93d69d7


See it work

A session starts locked. Confidence does not unlock it.

>>> session = create_session('demo-refactor', budget='2 min')
    state=INIT  execution_locked=True  can_execute_code=False

>>> session.unlock_execution('the plan looks fine, let me write code now')
    PermissionError: HARD TIME-LOCK VIOLATION: Execution unlock rejected!
    The immutable 2.0m authority budget has not elapsed yet
    (Remaining: 1m 59s / 120.0s).

The same gates guard every phase: evidence receipts for claims, a five-vector red-team swarm for code, and a sealed record of what was verified.


Install

pip install fable-engine

Or install the MCP server in your editor:

Install MCP server in VS Code Add to Cursor

These links configure Fable Engine for AI agents in VS Code Chat or Cursor. They do not install a standalone editor extension. Both use uvx, which downloads and runs the pinned PyPI release in an isolated environment.

Point your agent at the MCP server manually:

// Claude Code: claude mcp add fable-engine -- uvx --from fable-engine==1.3.5 fable-engine
// Cursor: ~/.cursor/mcp.json
{
  "mcpServers": {
    "fable-engine": {
      "command": "uvx",
      "args": ["--from", "fable-engine==1.3.5", "fable-engine"]
    }
  }
}

Python 3.10+, zero runtime dependencies. Published on PyPI as fable-engine.


Optional: the Agent Skill

Installing fable-engine gives your agent the MCP tools. It does not install or activate the Fable Mode Agent Skill - the prompt-side workflow in skills/fable-mode. Nothing in the package activates those instructions on its own; the skill is always a separate, explicit opt-in.

The complete skill tree ships inside the wheel. To install it into your project's skills directory (the cross-client .agents/skills/ convention):

uvx --from fable-engine==1.3.5 fable-mode install-skill --yes

This copies the skill to .agents/skills/fable-mode. Preview first with --dry-run, choose another location with --target <dir>, and reload your agent afterwards so it picks up the skill.


How it works

  1. Think — Time-locked deliberation. The agent cannot write until the timer ends.
  2. Prove — Claims need real evidence (tool receipts, hashes, invariants).
  3. Attack — A red-team swarm tries to break the code.
  4. Write — Only then is the workspace unlocked.

What it is not

  • Not a claim of flawless code. It is a checkable workflow, not a guarantee.
  • Not a bigger prompt. The locks are enforced by the engine, not by wording.
  • Not a framework lock-in. It speaks MCP and runs beside your current agent.

Docs


Contributing

Issues and pull requests are welcome. See CONTRIBUTING.md.



MIT License · Built by REX

Release files for fable-engine 1.3.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fable-engine 1.3.5
File Size Uploaded
fable_engine-1.3.5.tar.gz 562.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for fable-engine 1.3.5
File Interpreter ABI Platform
fable_engine-1.3.5-py3-none-any.whl Python 3 none any Details

Total release size: 1.2 MB

Release files / fable_engine-1.3.5.tar.gz

Download URL fable_engine-1.3.5.tar.gz
Size 562.7 kB
Tags Source
SHA-256 checksum
How to use checksums
615a45c4cdd27ebc0f26f374c7cdaf737ba4a9e6f6db0cd507a305ff53edf1d9
BLAKE2b-256 checksum
How to use checksums
72aa5a4e019e76c8bec4d32eaf2b90846dce76d6a8b7ac1b8dedf93b34d876e0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 16, 2026.

Transparency log

Release files / fable_engine-1.3.5-py3-none-any.whl

Download URL fable_engine-1.3.5-py3-none-any.whl
Size 626.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2fe3cc24d9a1800085c8ac533194b7d037ead6548ed816f7103c0e0af9cc834c
BLAKE2b-256 checksum
How to use checksums
5f61eb3b1512ebc9883c48f5175acc4a8f1bd9fb24944f7261a6731cb96fa7f5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 16, 2026.

Transparency log

Release history Release notifications | RSS feed

1.3.9

2 release files

1.3.8

2 release files

1.3.7

2 release files

1.3.6

2 release files

This release

1.3.5 This release

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page