Editing ANTHRACITE.md
ANTHRACITE.md at your vault root is the policy spine: a plain Markdown file
that tells Anthracite how to interpret what you capture. It ships with sensible
built-in defaults, so you only edit it when you want to change a behaviour.
This page is the practical, section-by-section guide. For where it sits in the bigger picture, see Core concepts → ANTHRACITE.md.
When (and why) to edit it
Edit ANTHRACITE.md when you want to change interpretation — task kinds, board
lanes, how collections are named, whether prose to-dos become tasks, your
languages. You do not edit it for endpoints, models, or API keys; those live
in .anthracite/config.json and the system keychain.
The golden rule: omit a section to keep its defaults. Nothing breaks. Every section is optional. A near-empty file behaves exactly like the full template. Anthracite never errors on a missing or even a garbled section — it falls back to the built-in default for that section only.
How to edit it
It's just a Markdown file, so either:
- In-app: open it from ⌘K → Vault files → ANTHRACITE.md, from the schema-stale banner, or from Settings → Vault. The editor validates as you type.
- On disk: edit it in any text editor / Obsidian.
Saving triggers a recompose — instant and free, with no LLM calls: Anthracite
re-parses your existing text and rewrites the board and tasks/. Your manual
board edits (completed, retitled, re-prioritized tasks) survive because each task
has a stable id. Processing sources again in full (re-reading pages + rebuilding
the wiki via the LLM) is a separate, on-demand step — the app offers a
Process now button in a banner when a change warrants it.
Which section drives which process
ANTHRACITE.md does three jobs at once, and most sections are config the engine
reads — not text sent to the model. This map shows what feeds what:
Three channels:
- config (blue) — parsed into structured settings; drives the engine deterministically. You can rely on these exactly.
- LLM-injected (amber) — the only text actually inserted into an LLM prompt
(and only a trimmed slice):
### Notes for the assistant→ the wiki processing,### Notes for the prioritizer→ the prioritizer pass. - docs only (grey) — for you to read; never parsed, never sent to the model.
Some sections do both: ## Collections and ## Action items are parsed for
their rules (aliases, caps, gating) and a short summary is added to the
processing prompt as guidance.
| Section | Feeds | What it changes |
|---|---|---|
## Input |
Ingest pipeline | which connectors auto-extract / auto-process |
## Journal style |
Task extraction | which journal parser runs |
## Journal rules (BuJo) |
Reading + Task extraction | signifier legend (glyph → meaning) |
## Composition + ### Notes for the assistant |
Task composition; wiki processing | entry → kind; signifier-kind; prose steering |
## Collections |
Collections maintenance; wiki processing | aliases / caps + canonical names injected as guidance |
## Action items |
Action items → tasks; wiki processing | enable / source-types / cap + injected guidance |
## Prioritization + ### Notes for the prioritizer |
Prioritization | weight/threshold baseline + hard-rule clamp; prose steering |
## Board |
Board layout | views / lanes |
## Languages |
Reading · wiki processing · query answers | reading languages + output / answer language |
## Output |
Export | declared export targets |
## Purpose, ## Wiki conventions, ## Ingest / Query / Audit rules |
— | human reference only; not parsed, not sent to the model |
Takeaway: trimming the documentary sections only declutters the file for you — it changes nothing the engine or the model does (the processing prompt already receives just a trimmed slice). Keep every config section whose non-default value you rely on.
Section-by-section walkthrough
Each subsection lists what it controls, the built-in default, and any
safe-edit notes. The canonical commented example is
vault-template/ANTHRACITE.md.
## How I take notes
The one place to describe how your notes look — in plain language. Works for
Apple Notes, reMarkable, BuJo, or no system at all. Anthracite translates this
into task markers, journal parsing, and wiki collection buckets behind the
scenes. You do not need to edit Journal rules, Composition, or structured
## Collections unless you want power-user overrides.
Examples the translator understands:
- "I use Bullet Journal" → standard BuJo signifiers (see table below)
- "Open tasks start with a circle (O or ○)" → circle = open task on the board
- "My events are marked with a rectangle" → □ = event
- "Group into Work, Private, Health" + synonym lines → wiki collection aliases
Standard BuJo defaults (applied when you mention Bullet Journal / BuJo — plain-language lines in this section override matching rows):
| Mark | Meaning | On board |
|---|---|---|
. • |
incomplete bullet | Tasks (matrix) |
x |
completed | — |
> |
migrated | — |
< |
scheduled | — |
o ○ |
timed entry | yes — timeline |
- |
note line | — |
* |
priority flag | — |
! |
inspiration | — |
Variants (e.g. ✓ for done, → for migrated) are recognized too. For a fully custom
legend, add ## Journal rules (BuJo) — it overrides whatever was derived from this section.
## Notes for the assistant is for wiki-only edge cases (what never becomes a
concept page, invoice wording, etc.).
## Notes for the prioritizer (same idea for the board): plain-language
steering for Eisenhower scoring — urgent vs important, #health, #someday,
clinic rules, etc. No weights or thresholds required; those stay on built-in
defaults unless you add an advanced ## Prioritization section.
## Wiki conventions
Human-readable map of the wiki folder layout under wiki/. Not parsed; not
sent to the model. Edit it when you want the template to document your vault's
page kinds for yourself (or for agents reading the file on disk).
The shipped template lists five page kinds:
| Kind | Path | Who creates it |
|---|---|---|
| Source | wiki/sources/<slug>.md |
processing — one per ingested note |
| Concept | wiki/concepts/<slug>.md |
processing — durable themes worth reusing |
| Entity | wiki/entities/<slug>.md |
processing — orgs, products, projects, places |
| People | wiki/people/<slug>.md |
processing — named individuals |
| Collection | wiki/collections/<slug>.md |
system — auto-maintained groupings from processing |
Collection pages are different from the other four: membership is assigned during
processing and the page body is maintained by Anthracite (see ## Collections
for aliases, caps, and Auto-create). The bujo Collection: <name> header in
journal pages is a separate concept — see the two meanings of "collection".
## Journal style
The journal format Anthracite assumes when extracting tasks. One value: auto,
bujo, gratitude, morning-pages, free-writing, one-line-a-day,
cornell, freeform, or none.
- Default:
none(no journal task extraction). The shipped template setsauto(let the LLM classify each source).
## Composition
How journal entries become board items. Four optional sub-blocks:
- Kinds — the task categories. Default:
action,goal,habit,event,idea,value. - Signifier kind — override a bullet signifier → kind (e.g.
`o` -> event). - Collection kind — map a bullet-journal collection name to a task kind
(e.g. anything matching
goal|vision|2026→goal). This is the bujo collection-kind hint — see the two meanings of "collection" below. - Phrase cues — extra words that hint a kind (e.g.
habit: daily, täglich). These augment the rich built-in cues rather than replacing them.
### Notes for the assistant
Free-form prose injected verbatim into the LLM during processing. Use it for steering that isn't a hard rule, e.g. "Treat anything mentioning an invoice as a Finanzen action item." Default: empty.
## Board
The task board: its name, subtitle, and views. Each view is
- Label [matrix|list|timeline]: kind1, kind2. Kinds not listed fall back to the
first list view. Default: Tasks (matrix: action), Goals (list: goal, value,
idea), Habits (list: habit), Events (timeline: event).
## Languages
Five optional lines: Primary, Secondary, Default OCR, Compile output
(match-source / de / en), Query answers (match-question /
match-source / de / en) — the line names are literal keys. Default:
primary de, secondary en, Default OCR de+en, Compile output
match-source, Query answers match-question.
## Input
Which connectors auto-extract and auto-ingest, and the master Auto-ingest
toggle. Default: Auto-ingest: false; all built-in connectors listed for
extract/ingest. Operational note: unlike other sections, the desktop
Process automatically setting (stored in config.json) wins over this when
set — ## Input only supplies the fallback.
## Output
Declared export targets (adapters built in later phases). Default: none.
## Collections (NEW — wiki grouping pages)
Auto-maintained wiki/collections/<slug>.md pages that group the sources
assigned to a category. Each processing run names 0–N broad categories for a source;
each becomes a page listing its member sources, and the source links back.
| Key | Controls | Built-in default |
|---|---|---|
Auto-create: |
Create/maintain the grouping pages. false still records membership in frontmatter (so re-enabling rebuilds them) but writes no pages. |
true |
Max per source: |
Cap on categories one source may join. Must be a positive whole number; a value of 0 or less is ignored (the default is kept). To stop building grouping pages, set Auto-create: false instead. |
12 |
Aliases: |
Fold synonyms and cross-language equivalents onto ONE canonical page. Lines read - Canonical = alias1, alias2. |
none |
Aliases are the headline feature: - Finanzen = Finance, Money, Geld makes every
one of Finance, Money, Geld (and Finanzen itself) land on the single
collections/finanzen page instead of fragmenting into four. The left-hand side
is the canonical name and the page title.
Safe-edit: omit
## Collectionsto keep the defaults (auto-create on, cap 12, no aliases). Omit just theAliases:sub-block to keep names exactly as the model writes them.
## Action items (NEW — prose to-dos → board tasks)
Turns genuine to-dos the model finds in prose/notes (bills, deadlines, follow-ups that carry no bullet-journal checkbox) into real board tasks.
| Key | Controls | Built-in default |
|---|---|---|
Enabled: |
Master switch. false = never extract prose action items. |
true |
Max per source: |
Cap on items materialized per source. 0 disables. |
20 |
Source types: |
Which effective source types may yield tasks: any of tasks, mixed, note. |
tasks, mixed, note |
Due dates: |
keep (human text ok) · iso-only (only YYYY-MM-DD) · off (none). |
keep |
An explicit
note-typed source always suppresses action-item tasks, regardless ofSource types:— that's a stronger, separate per-source choice. Steer the wording of extracted items via### Notes for the assistant.
The two meanings of "collection"
Anthracite uses the word "collection" for two unrelated things. They never share config keys:
| bujo collection-kind hint | wiki Collections grouping pages | |
|---|---|---|
| Edited in | ## Composition → Collection kind: |
## Collections |
| What it does | maps a journal collection NAME → a task KIND for the board | builds wiki/collections/<slug>.md pages that group member sources |
| Example | goal\|vision\|2026 -> goal |
- Finanzen = Finance, Money |
A Collection: <name> heading inside a journal page can feed both at once —
it hints the task kind and may surface as a grouping-page category.
Worked examples
Copy-paste any of these snippets. The runnable example vaults live under
examples/vaults/.
1. Finance collections with cross-language aliases
## Collections
Auto-create: true
Max per source: 3
Aliases:
- Finanzen = Finance, Money, Geld
Result: a source the model tags as Finance, Money, Geld, or Finanzen
all join one collections/finanzen page (titled "Finanzen"). Each source joins
at most 3 collections.
2. Disable prose action items, keep everything else
## Action items
Enabled: false
Result: checkbox/bujo tasks still flow to the board as usual, but the model no longer turns prose bills/deadlines into tasks. Every other behaviour is unchanged (defaults).
3. Tighten action items: tasks-only, ISO dates, small cap
## Action items
Enabled: true
Max per source: 3
Source types: tasks, mixed
Due dates: iso-only
Result: at most 3 action items per source; only tasks- and mixed-typed
sources yield them (a prose note is excluded); a due date is kept only when an
explicit YYYY-MM-DD is present, otherwise dropped.