Skip to main content

Megillah

Megillah is a planning technology for sustained, nonlinear work conducted with AI collaborators. It keeps purposeful work — its framing, requirements, commentary, evidence, and history — in one durable record that any client can pick up cold.

The product argument and the domain that supports it are documented separately:

Reference for each surface, and for working on Megillah itself:

Attribution and provenance

Operations record the contributing Client, read from options or the environment:

Variable Meaning
MEGILLAH_STORE Path to the Workspace store
MEGILLAH_CLIENT The Client recorded as provenance
MEGILLAH_PROJECT The Project a command acting in one Project as a whole acts in
MEGILLAH_HOST Interface megillah serve binds
MEGILLAH_PORT Port megillah serve listens on
MEGILLAH_ALLOWED_HOSTS Hostnames the instance answers to, comma separated
MEGILLAH_LISTENER_URL Where megillah mcp reaches the boundary
MEGILLAH_SHARED_SECRET The secret guarding the boundary, which megillah mcp presents

megillah mcp takes no session Client. One server serves many conversations across many Assignments, so each contribution is attributed to the Client its connection negotiated. Nor does it take MEGILLAH_PROJECT: a tool acting in one Project as a whole names it. Starting it with that configured says so rather than quietly ignoring it.

Versioning

Megillah's release is derived, not written down. It is read from the commit a checkout is on: the UTC day that commit was made, and where it falls among that day's commits — 2026.9.10 for the first, 2026.9.10.1 for the next, and so on. The build stamps it into the distribution's metadata, and installed processes report that.

Every merge adds a commit and changes the release, without a manual version edit. An installed distribution keeps the release stamped at build time, even when its source checkout advances. Reinstalling updates that metadata.

Building needs the whole history. A shallow checkout holds only the commits it was given, so it would count fewer of the day's commits than exist and derive a release another commit already carries; the build refuses that rather than answer it. Continuous integration must check out with full depth, and a source archive carries the release already stamped into it, so building from one needs no history at all.

uv run python -m megillah.versioning, run in a checkout, prints the release that checkout derives.

Publishing a release

Every merge to main whose Verify run passes is published to PyPI under its release. Nothing is tagged or chosen by hand. Verify builds the source archive and wheel, installs the wheel alone, and serves the browser from it. Once every job has passed on main, it uploads that same wheel. The source archive is built and checked but not published, which keeps each release small.

Releases are unique along main's first-parent line: each commit there descends from every earlier one, so a later commit made the same day always counts more of that day's commits. Every commit on that line gets its own Verify run, and runs on main are never cancelled, so no merge is skipped. A merge whose run fails is not published, and the next one that passes is.

The upload uses PyPI's trusted publishing: PyPI accepts a job running in this repository's pypi environment by its GitHub identity, so no credential is stored. That environment admits only main, so pull requests and other branches never publish. A published release cannot be replaced, only yanked.

This release identifies artifacts built from this repository. It is not the Workspace schema version and not an outside-process protocol version: the MCP protocol revisions the server speaks are negotiated with each client and move on their own schedule.

License

Megillah is free software under the GNU Affero General Public License, version 3 or later. See LICENSE. Anyone may run, study, change, and share it; anyone who offers a modified Megillah to others over a network must offer them its source under the same terms.

Release files for megillah 2026.9.18.36

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

Built distribution (wheel)

Table of built distributions (wheels) for megillah 2026.9.18.36
File Interpreter ABI Platform
megillah-2026.9.18.36-py3-none-any.whl Python 3 none any Details

Release files / megillah-2026.9.18.36-py3-none-any.whl

Download URL megillah-2026.9.18.36-py3-none-any.whl
Size 989.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
67d4670a13652f6d4f13337fe850e10ce592672a03452a96a00cf3c54014de15
BLAKE2b-256 checksum
How to use checksums
82dee09f1b1165976e76a61dabff7f4d159a20f0fd70fd791f544080c6f4bb8a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

This release

2026.9.18.36 This release

1 release file

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