Eidos

The discussion stays on the line it’s about.

Start a thread on a heading or a requirement, and it stays there as the text around it changes. People and agents reply under their own names. Every thread is saved in the file as plain markdown, so it shows in the diff and in what your agent reads.

Free for macOS, Windows, and Linux. No account, no subscription.

Comment threads at the foot of the Resume Playback blueprint. One is on Functional › REQ3: Tomás Reyes asks whether every film carries a credits marker, Claude answers and offers to add a requirement, and Maya Okafor says yes. Each message has reactions, and each thread has Close and Reply.
On REQ3: a question, the agent’s answer, and the owner’s call, each signed.

Everywhere

One list of every open thread

Threads sit on blueprints, top-level docs, tasks, and canvas pages. The Comments activity lists every open one: what it’s on, who started it, and the last word. Click one to open the page at the thread. For me shows the threads you wrote in or are mentioned in.

  • Filter by status, host, author, mention, or anchor
  • Closed and orphaned threads one click away
The Comments activity: four open threads in a table, three on the Resume Playback blueprint (at REQ3, Out of Scope, and Open Questions), each with who started it, the last message, and its count. The sidebar lists the threads for me.

In the file

Readable in the file, and in git

Each file keeps its threads at the foot, open and closed, between two markers the plugin maintains. A reviewer sees the discussion in the diff. An agent reading the blueprint reads what was asked about it. A comment is a save, so it lands in history like any other change.

$ tail -n 11 specs/playback/resume-playback.md
### Functional › REQ3 (t-nx5dwq)
- **Tomás Reyes** (developer) · 2026-10-07 05:31 UTC
  Does every film carry a credits marker, or only the ones ingested since the new pipeline?
- **Claude** · 2026-10-07 05:31 UTC
  Only films ingested since August carry one, about 60% of the catalogue. For the rest, T-R08 can treat the last five minutes as finished. Want me to add that as REQ5?
- **Maya Okafor** (project-manager) · 2026-10-07 05:31 UTC
  Yes, add it. Five minutes is fine for now.
- **Claude** · 2026-10-07 05:39 UTC
  Added as REQ5.
<!-- /comments:threads -->

Anchored to content, not line numbers

A + beside a heading or a requirement starts a thread there. The thread points at that text, not a line, so edits above it move nothing. If the text is deleted, the thread shows as orphaned for you to re-anchor, close, or delete. It never quietly attaches to something else.

Reactions and @mentions

React with as many emoji as you like. Each shows its count, and hovering shows who reacted. Type @ to mention a project user, and the thread waits for them under For me.

Agents sign as themselves

An agent replies under its own name, never as the person it works for. The AI Agent signs as its own user. From a terminal, an agent passes --as with its alias, and a name that isn’t a project user is refused.

How it connects

A thread can sit on anything a plugin shows.

  • Blueprints

    A thread points at a blueprint by its permanent id and at a section by its heading, so renaming the file never strands it.

  • Backlog

    Threads at the foot of any task.

  • Canvas

    Comment pins on a node or a page move with the node.

  • AI Agent

    The agent reads a blueprint’s threads along with it and replies as itself, never as you.

  • Git

    Each message is signed with the git identity matched to a project user, and every thread is in the file’s history.

From the shell

Threads, from a terminal

How an agent reads a blueprint’s threads before it edits, then replies as itself.

$ eidos comments @B-V63
blueprint B-V63  (3 threads)
  t-7pk5cv  Out of Scope
    Tomás Reyes (developer) · 2026-10-07 03:50
      Do we need to say anything about a film the viewer removed from their history? Right now it would still resume.
      👍 1
    Maya Okafor (project-manager) · 2026-10-07 03:50
      Good catch. Removed history stays removed; I added it to Out of Scope.
  t-nx5dwq  Functional › REQ3
    Tomás Reyes (developer) · 2026-10-07 05:31
      Does every film carry a credits marker, or only the ones ingested since the new pipeline?
…
$ eidos comments add @B-V63 "Added as REQ5." --reply t-nx5dwq --as claude
✓ replied on t-nx5dwq (blueprint B-V63) as Claude
Read the Comments docs

Write down what you’re making.

Download Eidos MD, open a folder, and start from the framework closest to your work. You can reshape it all later.

Free for macOS, Windows, and Linux. Your files stay plain text in a folder you own.