Marvin Pilot
Your AI plans. You approve—or preauthorize a small limit. Marvin Pilot applies.
Why · Quick start · First plan · Safety · Full reference · Sponsors
Marvin Pilot is a local safety layer between an AI assistant and Amazing Marvin. The AI drafts an exact change plan; Pilot validates it against live state, shows you the result, applies only what you approve, and writes a receipt that can be reverted.
Your full-access Marvin credential stays on the Pilot side of the workflow instead of being placed in an AI prompt, plan, MCP configuration, command-line argument, or environment variable.
✨ Why Marvin Pilot?
- Review the whole change. Inspect a terminal summary or local before/after visualizer before anything is written.
- Catch stale plans. Account, title, hierarchy, timestamp, recurrence, and other locks are checked against live Marvin data.
- Keep an escape route. Every apply creates an integrity-checked receipt for conflict-aware full or selective revert.
- Choose the approval boundary. Confirm each normal apply, or explicitly preauthorize a small account-pinned impact limit for routine work.
- Keep private data local. Plans, backups, receipts, credentials, and the visualizer stay on your machine.
| AI / read-only MCP | Marvin Pilot | |
|---|---|---|
| Credential | Limited API_TOKEN |
FULL_ACCESS_TOKEN |
| Role | Understand work and draft a plan | Validate, review, apply, verify, recover |
| Mutations | None in the intended workflow | Interactive or locally preauthorized |
| Recovery | — | Receipt-backed revert |
🧭 How it works
Marvin context → AI draft → prepare + validate → review → apply
│
└─ receipt → revert
- An AI reads current work through a limited-access MCP, verified Pilot context, or a local Marvin backup.
- The AI writes a strict plan or compact draft.
preparefills verified locks and produces the exact review artifact. - You run offline and read-only live validation, then inspect the terminal or browser preview.
- Pilot rechecks current state immediately before each write, verifies the result, and journals a receipt.
🚀 Quick start
Marvin Pilot requires Python 3.11 or newer. Install the stable release from PyPI with pipx:
pipx install "marvin-pilot==1.0.1"
marvin-pilot --version
To install the current source checkout instead:
git clone https://github.com/rajpiskala/marvin-pilot.git
cd marvin-pilot
pipx install .
In Amazing Marvin, open Settings → API and create both credentials:
- Give the read/discovery MCP only the limited
API_TOKEN. - Store
FULL_ACCESS_TOKENfor Marvin Pilot, preferably in your operating system credential store.
marvin-pilot config set-credential-mode keyring
marvin-pilot config set-full-access-token
marvin-pilot doctor
doctor makes one read-only identity request and confirms which Marvin account the credential belongs to. See the setup reference for MCP launcher configuration, platform-specific commands, and stricter credential modes.
🛫 Your first plan
Start small. Ask your AI:
Read my Marvin tasks through the Amazing Marvin MCP. Draft a Marvin Pilot change plan with at most 10 low-risk operations and save it under
plans/. Do not use MCP mutation tools and do not runmarvin-pilot applyormarvin-pilot revert; I will review and run those myself.
Then review the same artifact at every stage:
marvin-pilot validate plans/first-plan.json
marvin-pilot validate plans/first-plan.json --live
marvin-pilot describe plans/first-plan.json
marvin-pilot visualize plans/first-plan.json
marvin-pilot apply plans/first-plan.json
If you need to undo it:
marvin-pilot revert path/to/applied-receipt.json
The full guide covers compact draft preparation, bounded unattended apply, backup-powered historical context, and dependent plan sets.
🧰 Core commands
| Command | Purpose |
|---|---|
marvin-pilot doctor |
Verify the configured account and full-token health |
marvin-pilot context … |
Read bounded live or backup-powered Marvin context |
marvin-pilot prepare INPUT … |
Compile a compact draft or safely refresh plan locks |
marvin-pilot validate PLAN [--live] |
Validate offline or collect read-only live diagnostics |
marvin-pilot describe PLAN |
Render a text, Markdown, or JSON review |
marvin-pilot visualize PLAN |
Open the local hierarchical before/after view |
marvin-pilot apply PLAN |
Preflight, approve, apply, verify, and write a receipt |
marvin-pilot revert RECEIPT |
Revert all or selected operations safely |
marvin-pilot history … |
Inspect, verify, and audit local receipts |
Run marvin-pilot --help, marvin-pilot COMMAND --help, or read the complete command reference.
🛡️ Safety at a glance
- Normal apply and every revert require an interactive terminal and explicit approval.
apply --yesskips only the final prompt after review; it does not skip validation or verification. - Optional unattended apply must be enabled by a human in advance and is pinned to one account and a maximum impact. It is an accident guard, not a security boundary against malicious local software.
- The full-access credential is loaded only for live commands and is never written to a plan or receipt.
- Pilot-managed deletion uses Marvin's document API, not Marvin's native Trash UI. Recovery depends on the private receipt snapshot, so keep receipts secure and backed up.
- Plans and receipts may contain personal task content.
plans/, local history, backups, and development artifacts should never be committed casually.
Read the full safety model and security policy before using Marvin Pilot on important workflows.
📚 Documentation
GitHub automatically provides an outline for this README. The compact links at the top cover the common path; detailed navigation lives in the reference guide.
💖 Sponsors
If Marvin Pilot saves you time, sponsor its continued development. Sponsorship helps fund maintenance, testing across Marvin workflows, and safer automation features.
🧑💻 Development
python -m venv .venv
python -m pip install -e ".[dev]"
python -m pytest --cov=marvin_pilot
python -m ruff format --check src tests
python -m ruff check src tests
See the development reference before running browser or live-account contract tests.
📌 Project status
Marvin Pilot is an independent community project and is not affiliated with or endorsed by Amazing Marvin. The repository, CLI command, import package, and PyPI distribution all use the Marvin Pilot name.
Released under the MIT License.
Release files for marvin-pilot 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| marvin_pilot-1.0.1.tar.gz | 1.7 MB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| marvin_pilot-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 3.3 MB
Release files / marvin_pilot-1.0.1.tar.gz
| Download URL | marvin_pilot-1.0.1.tar.gz |
|---|---|
| Size | 1.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
84adf19172ba115207143c69c46097bdffdfcde837f5322ac0c0fbf2a10cda27
|
|
BLAKE2b-256 checksum How to use checksums |
0073fdbc0c8ea1c1e238d7614c10b291811eaf33d22699862cecfd6aba407484
|
| 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 19, 2026.
Transparency logRelease files / marvin_pilot-1.0.1-py3-none-any.whl
| Download URL | marvin_pilot-1.0.1-py3-none-any.whl |
|---|---|
| Size | 1.6 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
862e706dc63d7d51602a8889e9702b358c6c1a8ef9e4ae8fb144d0d50b06e050
|
|
BLAKE2b-256 checksum How to use checksums |
1e696255a952803554c1cdfa5ac4957146858c605c1b9543f39d0d5c6b043044
|
| 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 19, 2026.
Transparency log