For creators who work with AI agents

You’re not short of ideas. You forgot what you did.

The best thing you did this week happened mid-session, in chat with your agent. momentry reads your Claude Code, Codex, pi, omp and Antigravity sessions after they end and writes each moment worth telling into your repo as a markdown file: a number that moved, a root cause nobody suspected, a decision you reversed. Then it ranks them, so on Friday you start from a list.

One-time license, updates through 1.x included. Not on sale yet: Get notified opens an email to us, and we write back once it is. Runs through your own claude CLI: about 1 USD per 150k-token window. A session that compacts pays once per window. Needs Claude Code installed and logged in, even if you work in Codex, pi, omp or Antigravity. Stories and CLI messages are in Vietnamese for now.

your-repomomentry 0.2.0
$ momentry list --rankhook                                                     tension          stakesOne way of writing Unicode cut search scores 8x          nho_ma_to        3A machine drafted the test questions, a human reviewed   it_ma_nhieu      3How bad is Vietnamese search in Obsidian? I measured it  tuong_ma_hoa_ra  3Adding an abbreviation dictionary made search worse      giup_ma_hai      3Hybrid search buried the semantic hit                    giup_ma_hai      2
nho_ma_to small cause, big effect it_ma_nhieu little in, a lot out tuong_ma_hoa_ra expected X, found Y giup_ma_hai meant to help, made it worse

The top 5 of 38 stories from a recorded run on one of the author's sessions (2026-11-04). Hooks translated from Vietnamese. Tension and stakes reconstructed; the raw output of that run wasn't kept.

Friday comes and you’re trying to remember what was worth telling.

A benchmark jumped. A bug turned out to be one invisible character. You threw away a day's approach, for a good reason. All of it happened in the chat with your agent, and by the end of the session it was gone.

The transcript is still on disk: thousands of lines of JSONL nobody reads again.

So the weekly post says "shipped some fixes". The report gets written from git log, which shows what changed and never why it was interesting. And the things that would make a good post feel normal to you, because you were there.

Memory

keeps what felt hard. Readers want what was surprising.

Scrolling transcripts

takes longer than the work did.

A devlog file

works on the days you remember to stop and write.

Buy once, turn it on per repo, keep working

  1. Buy and install

    Your license key and the install command arrive by email. The installer checks the sha256, tries the new version before switching to it, and puts momentry on your PATH. Activate with your key.

    The exact command arrives with your key.

  2. Turn it on for a repo

    init creates the story box, installs the hooks and the /bip command for every agent it finds, in every profile, and backs up each file first. Then you list the names that must never reach the repo.

    cd your-repo
    momentry init
    momentry config privacy-add "Client Name" "secret-project"
  3. Keep working. Read the list when you write.

    Hooks harvest in the background after every session and before every compaction. When it's time to write:

    momentry list --rank

    Saw something worth telling? Type /bip and a short note. The agent saves two to four sentences to the box right away, through the same privacy check.

    /bip p95 went from 800ms to 90ms after swapping the Map for an LRU

Want a result right now? momentry scan --max-sessions 1 --quiet-minutes 0 harvests your latest session on demand.

One markdown file per moment, ranked

Each story is a plain markdown file in your repo. Grep it, link it, commit it. Nothing is deleted. You move a story along by editing its status: raw, picked, drafted, published or dropped.

A real story from the author's box. The first tab is translated for this page; momentry writes it in Vietnamese today, as in the second tab.

2026-11-02-mot-ky-tu-unicode.md
---
date: 2026-11-02
status: raw
signals: [surprising root cause]
source: chat Claude, V15
links: [2026-11-02-do-tim-kiem-tieng-viet]
threads: [obsidian-hieu-tieng-viet]
---

# One way of writing Unicode cut search scores 8x

**Context:** The letter "ệ" can be stored two ways: as one character (NFC),
or as "e" plus combining marks (NFD). The human eye can't tell them apart.

**What happened:** The first measurement came out at nDCG 0.075, absurdly low.
The root cause: the search engine stored paths as NFD, the hand-written golden
set used NFC, so the string comparison never matched. Normalizing both to one
form brought the score back to 0.6.

**Lesson:** When a measurement is unusually bad, suspect the ruler before the
thing you're measuring. With Vietnamese text, suspect Unicode first.

**Artefact:** two strings that look identical but differ in bytes (build your
own example; don't use real note names).

Ranked by what makes a story worth reading

Hook
A one-line opener under 15 words, with a number when there is one.
Tension
The gap between what you expected and what happened: a tiny cause with a big effect, a fix that made things worse, a guard something slipped past. Stories with no tension sink. They stay in the list.
Stakes
How much the moment mattered to what the session was about. momentry works out the session's main goal and scores each story 0 to 3 against it.

Checked once against hand labels: on the session it was tuned on, 7 of the 8 stories the author had marked worth telling landed in the top half of 38.

  • raw
  • picked
  • drafted
  • published
  • dropped
Under the hood

Before any model reads the transcript, four plain scripts mark hotspots: failed commands, before/after numbers, git resets and reverts, and edits to agent config. Your /bip marks count too. The harvest must give a verdict on every hotspot, and a script checks none were skipped. Recorded run: 28 of 28 answered.

Client names stay out of your repo

You list the names that must never reach the repo: people, clients, codenames.

Every story is checked before it's written: every field, the filename, and every line added to an older story. Matching also catches the name with accents stripped and typed in Telex, because that's how one leaked in the author's own repo, through a test fixture.

A story that matches goes to quarantine in momentry's cache folder (momentry paths shows it), outside the repo, where you read it and decide. With no block list set, stories go to quarantine too. Add momentry check --staged to your pre-commit hook for a last check.

momentry config privacy-add "Jane Doe" "secret-project"

Each story goes through the check. With no match it is written to the box in your repo; with a match, or with no block list set, it goes to quarantine outside the repo.

momentry sends the transcript to Anthropic through your own claude -p, with your settings, tools and MCP servers off for that call. For Claude Code sessions that is the provider that already saw it; for Codex and the other hosts it is a second one. Transcripts go to Anthropic only, through your own claude -p. momentry's own network calls are the license check and update downloads; they carry no session content. The block list controls what is written into your repo, not what Claude reads.

You could write the script. This is the rest of it.

Piping one transcript to Claude takes an afternoon. Making it run after every session, on every agent you use, without leaking a name or breaking your config, took the rest.

Five hosts, every profile.

Claude Code, Codex, pi, omp and Antigravity. init installs into every profile it finds (~/.codex-*, pi accounts, omp profiles, Antigravity homes) and doctor flags new ones.

Each host’s quirks.

Codex silently ignores the wrong event-key case. On Windows, Claude Code runs hooks in Git Bash, Codex in PowerShell, Antigravity in cmd. momentry writes the command each one expects.

A privacy gate that knows Vietnamese typing.

Exact, accent-stripped and Telex matching on every field and filename, quarantine outside the repo, and quarantine --release all once you've fixed the list.

Windows and WSL.

A native PowerShell installer, no admin rights, correct %APPDATA% paths. WSL keeps its own config.

doctor and checked updates.

doctor checks Node, git, claude, config, hooks and install, and prints a command for every failure. update verifies the sha256, tries the new version first and keeps the old one if anything fails.

Ranking checked against hand labels.

Ranking checked once against hand labels: on the session it was tuned on, 7 of 8 landed in the top half. Not yet checked on other projects.

Pay once. Run it on your own Claude account.

Use it forever. Updates through 1.x included.

license.mdstatus: yours

momentry, lifetime license

29 USDone-time

  • The momentry CLI for Linux, macOS, WSL and Windows
  • Hooks and /bip for Claude Code, Codex, pi, omp and Antigravity
  • The privacy gate, quarantine and pre-commit check
  • Ranking by hook, tension and stakes
  • doctor, checked updates and clean uninstall
  • Updates for v0.x and 1.x
Get notified at launch

Not on sale yet. We email you once when it is, nothing else.

What it costs to run

momentry calls models through your own logged-in claude CLI, so you pay Anthropic directly at their price. About 1 USD per 150k-token window. A session that compacts pays once per window. The recorded run cost 1.01 USD. The biggest piece is the outsider pass, about 0.65 USD, which rewrites a story from the angle of what others want to learn. Turn it off with outsider.enabled = false.

No subscription and no markup on tokens.

Requirements

  • Node 20 or newer
  • git
  • A logged-in claude CLI (every host needs it)
  • Linux, macOS, WSL or Windows

Stories and CLI messages are in Vietnamese for now. Not for you yet if you need English stories today, want finished posts, or can't send transcripts to Anthropic.

Version 0.2, honestly

  • Version 0.2.0, released 2026-11-03.
  • Hooks run with the real agents: Claude Code, Codex, pi and omp on Linux and Windows; Antigravity on Linux, Windows still to check.
  • The pipeline has been run for real and recorded: 28/28 hotspots answered, 7 of 8 hand-labelled stories in the top half, 1.01 USD.
  • macOS: install and tests run in CI; hooks not yet checked with real agents on a Mac.
  • Not checked yet: the ranking on sessions from other kinds of projects.
  • Stories and CLI messages are in Vietnamese for now.

Questions

Why pay for what looks like a script?

The part that sends one transcript to Claude is small. What you pay for is everything around it: hooks for five agents in every profile, the right command for each Windows shell, a privacy gate that catches Telex and accent-stripped names, quarantine, doctor, checked updates, and ranking checked once against hand labels.

It’s closed source. Can I trust hooks in my agent config?

You can see every change before and after. momentry hooks --print --claude prints what it would add. init backs up each file, touches only momentry's own entries and refuses to edit broken JSON. Hooks fire in every session but do nothing outside repos where you ran init. momentry uninstall --dry-run lists what removal would undo; uninstall --yes removes it and keeps your stories.

I already pay Anthropic. Why pay again?

You pay Anthropic for the model calls, through the account you already have. The 29 USD buys the tool, once. There's no momentry subscription and no markup on tokens.

What does a harvest cost?

About 1 USD per 150k-token window, billed by Anthropic through your own claude. A session that compacts pays once per window. Turning off the outsider pass cuts about 0.65 USD of that.

Is it billed per token if I’m on a Pro or Max plan?

claude -p uses whatever your claude login uses. On a subscription, harvests count toward your plan's usage limits instead of costing dollars.

Does my transcript leave my machine?

Yes, to Anthropic, through your own claude -p. For Claude Code sessions that's the provider that already saw it; for other hosts it's a second one. Transcripts go to Anthropic only, through your own claude -p. momentry's own network calls are the license check and update downloads; they carry no session content. The block list controls what is written into your repo.

Does it write my posts?

No. It finds and ranks the material. You pick the stories and write.

Will it slow down my sessions?

No. Hooks exit right away and start the harvest in the background. No model call happens inside your session.

Why is the output in Vietnamese?

momentry was built inside a Vietnamese-language project, and its prompts ask for Vietnamese titles and hooks. That's the state today.

I use Codex, pi, omp or Antigravity. Does it work?

Yes. init installs their hooks and /bip. You still need a logged-in claude CLI, since that's what reads the sessions. Antigravity hooks have run on Linux; Windows is not checked yet. If a hook doesn't fire, momentry scan --codex (or --pi, --omp, --agy) harvests by hand.

How do I get it after paying?

You get a license key and the install command by email. Run the command, activate with your key, then momentry init in a repo.

What updates are included?

Every release in v0.x and 1.x. momentry update checks for a new version and installs it.

What if it doesn’t work for me?

Run momentry doctor first: every failing check prints the command that fixes it.

How do I remove it?

momentry uninstall --yes removes the hooks, /bip and the install, and keeps your stories and config.

Get last week back.

Buy once and run momentry init in a repo. Once you've added your block list, your next session ends with stories in the box.

One-time license, updates through 1.x. Model calls about 1 USD per 150k-token window, through your own claude; a session that compacts pays once per window. Stories and CLI messages are in Vietnamese for now.