Embridge

Embridge

Markdown task files that people can edit, agents can update, and apps can import without taking ownership of the data.

Use Embridge when a list needs to stay readable as plain Markdown and still survive machine parsing, stable IDs, metadata, sync, and round trips through different tools.

ADOPTION MOMENT

When ordinary checkboxes stop being enough.

You want the file to remain comfortable for humans, but you also need agents and apps to know what changed, which item is which, and how to preserve unknown fields.

FILE PATH
  1. humanWrites tasks in a normal .md file.
  2. agentUpdates the same list without corrupting prose.
  3. appImports IDs, metadata, comments, and sections.
  4. fileRemains portable, diffable, and owned by you.

When to use Embridge

Agent-edited backlogs

A coding agent can add, complete, split, or annotate tasks while preserving stable item IDs and human-written context.

Git-reviewable tasks

Keep project work in files that are easy to diff, review, branch, merge, and archive without asking a database for permission.

App import and export

Give a GUI a predictable Markdown shape instead of inventing a private schema that only one tool understands.

More than checkboxes, less than JSON

Use Markdown lists for the human layer, then add due dates, status, tags, comments, attachments, and document metadata as needed.

Why another task format?

Strict formats (JSON, YAML)
  • Machines parse perfectly
  • One typo can break the file
Embridge
Free-form text (notes, prose)
  • Easy to write and read
  • Machines have to guess

Embridge is Markdown with just enough structure: forgiving while you type, deterministic when a parser imports it.

Start simple, add structure when needed

BASIC EMBRIDGE

Start as ordinary Markdown.

- apples
- pears
- oranges

A plain list is valid enough for capture, notes, and low-ceremony tasks.

SYNC-READY EMBRIDGE

Add structure when tools need round trips.

# To-do
- [ ] Fix login timeout bug
"repro in auth flow", prio: high, due: 2025-01-20, id: abc123d

# Done
- [x] Set up CI pipeline
id: ghi789a

IDs, metadata, comments, sections, and document hints appear when apps and agents need reliable references.

  • Markdown you know. Standard list markers, checkboxes, headings, links, and quoted descriptions.
  • Metadata on the next line. Comma-separated key: value pairs like prio: high, due: 2025-01-20, id: abc123d.
  • Stable IDs. Per-item id fields enable reliable automation, syncing, and merge conflict resolution.
  • Parser-friendly by design. The conformance fixtures define the expected parse tree for common and edge cases.
  • Everything optional. A task can be one line. Add structure only where it pays for itself.
  • Plain text ownership. Works in any editor, any OS, any git host. No database lock-in.

The bridge workflow

01 / HUMAN Edit the list

Write tasks in a normal Markdown file from any editor.

02 / AGENT Update by ID

The agent changes the intended item and keeps context intact.

03 / APP Import structure

A GUI reads sections, status, due dates, tags, and comments.

04 / FILE Stay portable

The .md file remains the source of truth.

# Sprint
- [ ] Add password timeout warning
prio: high, due: 2025-01-20, id: auth7kd
> @agent: found failing path in session renewal

- [x] Set up CI pipeline
id: ci92mqa
# Sprint
- [ ] Add password timeout warning {auth7kd} - 2 fields, 1 comment
- [x] Set up CI pipeline {ci92mqa}

That is the core bridge: human-readable text on one side, parser-readable structure on the other, with the file staying in the middle.

Validate a file

Paste or edit Embridge Markdown. The browser-side validator checks structure, reports warnings, and shows the parse outline it inferred. No server receives the file.

Valid Embridge
Examples
Mode marker
Lists 0
Items 0
IDs 0

Diagnostics

  • No diagnostics.

Parse outline

[]

Builder path

Read the spec

Use the v0.1.1 reference for syntax, metadata, comments, blank-lines mode, and sync-ready expectations.

Specification

Inspect examples

Compare minimal lists, full sync-ready output, document metadata, attachments, and edge cases.

Example output

Run parser checks

The repository includes a JavaScript reference parser and conformance fixtures for expected parse behavior.

Reference parser

Preserve the file

Apps should keep UI-only state outside the file and preserve unknown fields for forward compatibility.

Conformance tests

Compared with nearby formats

Markdown checkboxes

Excellent for human capture, but weak conventions for stable IDs, metadata, comments, and app round trips.

todo.txt

Portable and proven, but flat and symbol-heavy. Embridge stays sectioned, nested, and Markdown-native.

JSON or YAML

Easy for machines, less comfortable for daily task editing. Embridge keeps the human layer first.

Hosted task tools

Useful interfaces, but the app often owns the model. Embridge lets many tools share one plain file.

Start with a file

1

Create a Markdown file

Name it for the list: todo.md, shopping.md, packing.md, project.md, or anything else that belongs in plain text.

2

Add structure when needed

Use checkboxes, metadata lines, IDs, comments, and sections when tooling needs them.

3

Validate before integrating

Use the validator, fixtures, and reference parser before trusting an import/export workflow.

Markdown-native Agent-editable App-importable Git-friendly
Coming soon!