Eidos

Screenshots and PDFs that know where they belong.

The diagram, the mockup, the signed-off PDF: kept in an assets/ folder in your root and linked to the blueprints and tasks they serve, so the screenshot from last month is one click from the spec it explains, not lost in a downloads folder.

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

The Assets page for a streaming app: six files (a flow diagram, three screen designs, a PDF of plans, and a CSV), each with its title, type, size, the blueprints and tasks it is linked to, and how many places reference it.
Every file with what it is linked to and how many pages use it.

In the editor

Paste it where it belongs

Paste a screenshot into a blueprint and it lands in the asset folder and in the text, scaled down on the way in. Pick Image or File from the block menu to embed one you already have. It is plain markdown underneath, ![…](…), so it reads the same on GitHub.

  • Pasted images scaled to 2000 pixels on the longest side, by default
  • Attached assets beside every blueprint, with a count
  • Quick Open finds a file by its name
A spec with a flow diagram embedded under its Intent, and Attached assets beside it listing the three files linked to it: the diagram, the TV resume prompt, and a CSV of watch sessions.
The diagram in the spec, and every file the spec uses beside it.

A page per file

Links you set, references it finds

Every file has a page: an image shown, a PDF read in place, anything else with its type and size and a button to open it. You link it to blueprints, tasks, or a URL, and Eidos finds every blueprint and task whose text refers to it, so you know what you would break before you touch it.

The page for a TV screen design: the image, its title and description, links to the Resume Playback spec and a design task, and the two places that reference it.

Rename

Rename a file, keep every link

Rename a file on its page or with eidos assets set --name, and every blueprint and task that named the old path is rewritten. With Git on, the move is a git mv, so the history comes with it.

$ eidos assets show assets/resume-flow.png
assets/resume-flow.png  image/png  42.7 KB  modified 2026-10-07
title: How a position travels
links:
  blueprint B-V63  Resume Playback
referenced by:
  blueprint B-V63  specs/playback/resume-playback.md
$ eidos assets set assets/resume-flow.png --name resume-position-flow.png
✓ assets/resume-position-flow.png  42.7 KB  "How a position travels"  →  @B-V63  ·  1 reference
$ git status --short
R  assets/resume-flow.png -> assets/resume-position-flow.png
 M specs/playback/resume-playback.md

Folders the way you file things

Screens in one folder, contracts in another: any folder your framework gives the plugin is an asset folder, nested as deep as you like. The Assets view lists each folder with its own upload and filters by type, and a file with no link yet is still listed.

Images nobody uses, cleaned up

Delete the last blueprint that showed an image and the image is flagged, then removed a few minutes later, with a notice naming it. The Assets page lists what is waiting, with Delete now and Keep, and with Git on it can be brought back from history. One setting turns the sweep off.

How it connects

Files that point at the work, and back.

  • Blueprints

    A link names a blueprint by its permanent id, so renaming the blueprint never strands its files.

  • Backlog

    Link a design or a bug’s screenshot to the task it belongs to, and it shows in the task’s text and on the file’s page.

  • AI Agent

    Type @ in the chat and your assets are offered beside blueprints and tasks, so the agent reads the file you mean.

  • Git

    Renames and removals go through git, so a file’s history survives and a removed one can be restored.

From the shell

Your files, from a terminal

Add, link, list, rename, and remove from the shell, with --json for scripts and agents.

$ eidos assets add ~/Desktop/plans-2027.pdf --to @B-H51
✓ assets/plans-2027.pdf  31.9 KB  →  @B-H51
$ eidos assets link assets/tv-resume-prompt.png --to task:t-d71-resume-prompt-on-the-tv-player
✓ assets/tv-resume-prompt.png  147.8 KB  →  @B-V63, task:t-d71-resume-prompt-on-the-tv-player
$ eidos assets --for B-V63
assets/ (3)
  assets/resume-position-flow.png  42.7 KB  "How a position travels"  →  @B-V63  ·  1 reference
  assets/tv-resume-prompt.png  147.8 KB  "TV resume prompt"  →  @B-V63, task:t-d71-resume-prompt-on-the-tv-player  ·  2 references
  assets/watch-sessions.csv  196 B  →  @B-V63
Read the Assets docs

Write down what you’re making.

Download Eidos MD, open a folder, and start from the framework closest to your work. Everything it gives you can be reshaped later.

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