Skip to content

MarkBackComments for anything.

In plain text. In git. MarkBack is a tiny text format for leaving feedback on any file — text, code, images, PDFs. Lints, diffs, and lives next to the work.

MarkBack

Try it without installing

The browser editor below uses the same markbackjs lint engine the CLI uses. Paste your own content, leave comments with <<<, and watch the diagnostics update as you type.

Open the live editor →

How it works in 30 seconds

Three ways to capture a comment. One delimiter. All lint to the same shape.

┌──────────────────┐    ┌──────────────────┐    ┌──────────────────┐
│  inline          │    │  compact         │    │  sidecar         │
│                  │    │                  │    │                  │
│  the lazy fox    │    │  @file ./img.jpg │    │  report.pdf      │
│  <<< awkward     │    │  <<< approved    │    │  report.pdf.mb   │
└────────┬─────────┘    └────────┬─────────┘    └────────┬─────────┘
         │                       │                       │
         └───────────────────────▼───────────────────────┘
                        ┌────────────────┐
                        │   mb --lint    │   parse · validate
                        │   mb --normalize │ canonicalize
                        └────────────────┘

Inline records keep the comment next to the content. Compact records put @file and <<< on one line — great for batch labeling. Sidecar files (report.pdf.mb) let you comment on anything, even binary files.

Quick example

mb
%markback 2

@id prompt-001
@tag training

# API Design Task

Create an endpoint that:

- **GET** `/users/{id}`
- Returns JSON with `name`, `email`
- Handle 404 for missing users
<<< approved; clarity=high; needs=error examples

The content (Markdown) stays readable. The <<< line captures feedback that lints, diffs, and survives a git blame. Try it live →

What problem it solves

Prompt iteration usually scatters content, labels, and reviewer notes across JSON, spreadsheets, and ad-hoc scripts. MarkBack standardizes the feedback loop in a text format that works in Git, can be linted, and scales from a single prompt to thousands of records.

Common questions

  • FAQ — "How is this different from JSONL?" / "Why two packages?" / "Can I annotate images?"
  • Comparison — MarkBack vs JSONL labels, Label Studio, doccano, Argilla.