Overnight agents leave a pile of "please decide" behind. Nightgate keeps the asks only you can settle, and re-checks claims like "tests pass" before you believe them.
MITgit clone https://github.com/woorichicken/nightgateNeeds Node 22.18+. Then:cd nightgate && pnpm install
# Copy the example cards in
node src/cli.ts seed
# Judge them. With no model running,
# every non-rule ask goes to you
node src/cli.ts review
# Read the morning page
node src/cli.ts morning
# Or open the console on port 4777
node src/cli.ts serveThe videos show the real console judging the two example cards from the repository, live on Muse Glimmer. The wait for the model is sped up.
A rule floor catches git push, production deploys, migrations, and payments with no model call. Muse Glimmer judges the rest against six kinds of human decision. A model can add work for you but never remove a rule hit, and anything unsure ends with you.
How the judge works →Agents say the work is done. Nightgate checks HTTP status and files every time. It re-runs commands only from an allowlist and only when you turn that on, because agents write the cards.
The report card format →Every "this needed me" or "agent could have decided" is saved as a labelled row for a LoRA on Glimmer. Only cards written by Meta models can train it, and other vendors' cards are evaluation only. The training script is in the repo, but the LoRA has not been trained yet.
What may train the judge →Node 22.18+ and any OpenAI-compatible endpoint serving Muse Glimmer, for example Ollama. We run the 19.7 GB GGUF on a DGX Spark at about 30 seconds per ask. The README has the setup commands.
Nothing is dropped. Rule hits still apply, and every other ask goes to you, marked as a fallback. You just lose the filtering.
No. Agents write a report card when they stop, and Nightgate reads it. It can also show live terminals from CLI Manager through that app's local API, read-only.
The asks stay local by default. If you set META_API_KEY, asks Glimmer is unsure about go to Muse Spark through the Meta Model API, but asks marked sensitive never do. HTTP evidence checks do call the URLs written in a card. The console listens on 127.0.0.1 and needs a token on any other address.
v0.1.0, measured on example cards: 2 cards and 6 asks took about 100 seconds, 4 asks went to the human, 2 were folded away, and 1 failed claim was caught. The Meta Model API tier has not been called, the LoRA has not been trained, and the evaluation set from real nights is not labelled yet.
MIT. You can use it commercially, modify it, and redistribute it, as long as you keep the copyright notice.
Open an issue at https://github.com/woorichicken/nightgate/issues with your Node version, the command you ran, and its output. Remove anything private from report cards first.
No signup and no account. It runs on your machine, and the source is short enough to read first.
git clone https://github.com/woorichicken/nightgateNeeds Node 22.18+. Then:cd nightgate && pnpm install