Getting started.
blk/txt reads notes you already have, then reads them back in the app. The trial needs no account. Once you are inside, the in-app help covers importing, the letter, instruments, and export.
Quickstart.
- Open the trial. There is nothing to fill in.
- Paste or drop text you already have. A date on its own line dates everything after it until the next date line, and blank lines separate blocks.
- Read what it found: blocks, entities, metrics, and the patterns it noticed but has no rule for yet. Open a worked example and the trial opens on the letter those notes would produce, which you read in the app. Keep the sandbox for 48 hours, or export it.
FAQ.
Do I need an account?
Not for the trial. The trial needs no login at all: paste text and read what it found, in a sandbox that clears itself after 48 hours of inactivity.
Permanent logins are open to existing accounts only for now, and each account's notes are isolated from every other account's. A version you run on your own machine is not available yet.
Where is my data stored?
In your account's index, compiled from the text you pasted, dropped, or sent through the API. The index is always derived and rebuildable, your text is the source of truth, and everything exports to JSON, CSV, or Markdown whenever you ask.
Is my data private?
Your account's notes are scoped to you only. No other account can read or write them, and no language model reads them.
What can it parse?
Markdown, notes, ticket text, and CSV or YAML-like text: anything text-shaped and roughly dated. Web server access logs (Apache or nginx), syslog, and JSON lines roll up by the hour into the same entities as your notes, and the raw lines are kept for 30 days by default. See About for how parsing and entity extraction work, or the exact rules on the file format page.
The letter.
blk/txt reads your notes back in the app without being asked. It names which subjects went quiet, which subjects appeared for the first time, which numbers moved, which loose ends opened, and which subjects carried from the week before. Saved letters stay in an archive you can open later. Every number opens onto the exact blocks behind it.
Subjects listed together share a window. The letter never says one thing caused another. A loose end appears only when a phrase you teach, such as workaround or TODO, is in the opening note, and no later note closes it.
Statements, logs, and files.
You can write a live statement in a note, such as {{ count ticket:INC-9021 in 30d }}, {{ last host:vpn.internal.example }}, or {{ latest p95 }}. Each one shows its current value and opens onto the blocks behind it. p95 has to be a metric you defined, and host has to be a type you track.
A workaround, a TODO, or a note that says waiting on, with no later closing note, shows as a loose end, with the opening block as evidence. Loose ends only know the phrases you teach.
You can teach a counterexample, such as "this is not a ticket", limit a type to certain sources, and preview what a change would match across your whole history before you save it. Taught examples stay as tests a later change must pass. The latest value of a setting keeps every change, and a phrase such as try, deployed, or reverted suggests a label you confirm. Those labels, like loose ends, only know the phrases you teach.
Web server access logs (Apache or nginx), syslog, and JSON lines sit beside the notes, summarised by the hour into counts and the same entities. Each hour opens onto its raw lines. Those lines are not stored as individual notes past the retention window: the raw lines are kept for 30 days by default. A source that stops sending shows as no lines received since a date.
You can export the types, aliases, metrics, and examples you taught as a file with no note content, and import someone else's after a preview. You can also pick blocks and download one self-contained file anyone can open offline, with the interpretation those blocks need and each instrument's value frozen.