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:

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:

flowchart LR classDef cfg fill:#dbeafe,stroke:#3b82f6,color:#1e3a5f; classDef inj fill:#fef3c7,stroke:#d97706,color:#7c4a03; classDef doc fill:#f3f4f6,stroke:#9ca3af,color:#374151; classDef proc fill:#ecfeff,stroke:#0891b2,color:#0e3a44; classDef llm fill:#ede9fe,stroke:#7c3aed,color:#4c1d95; IN["## Input"]:::cfg JS["## Journal style"]:::cfg JR["## Journal rules (BuJo)"]:::cfg COMP["## Composition"]:::cfg NA["### Notes for the assistant"]:::inj COL["## Collections"]:::cfg AI["## Action items"]:::cfg PR["## Prioritization"]:::cfg NP["### Notes for the prioritizer"]:::inj BOARD["## Board"]:::cfg OUT["## Output"]:::cfg LANG["## Languages"]:::cfg DOCS["Purpose / Wiki conventions / Ingest / Query / Audit rules"]:::doc PING(["Ingest pipeline: auto extract + process"]):::proc POCR(["Reading + glyph normalization"]):::proc PTASK(["Task extraction: BuJo parser"]):::proc PCOMP(["Task composition: kind"]):::proc PWIKI(["Wiki processing — LLM"]):::llm PCOLL(["Collections maintenance"]):::proc PAI(["Action items to board tasks"]):::proc PPRIO(["Prioritization — LLM + hard-rule clamp"]):::llm PBOARD(["Board layout"]):::proc PEXP(["Export"]):::proc HUMAN(["You (the author)"]):::doc IN --> PING JS --> PTASK JR --> POCR JR --> PTASK LANG --> POCR LANG --> PWIKI COMP --> PCOMP COMP -->|signifier-kind| PTASK NA --> PWIKI COL --> PCOLL COL -->|canonical names| PWIKI AI --> PAI AI -->|guidance| PWIKI PR --> PPRIO NP --> PPRIO BOARD --> PBOARD OUT --> PEXP DOCS -.-> HUMAN

Three channels:

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:

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.

## Composition

How journal entries become board items. Four optional sub-blocks:

### 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 ## Collections to keep the defaults (auto-create on, cap 12, no aliases). Omit just the Aliases: 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 of Source 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.

© 2026 anthracite.co Next: Settings & local models →