Skip to content

0.6.0 "Shujimi"

Choose a tag to compare

@javierigaciorm javierigaciorm released this 07 Jun 22:26

Yamlink 0.6.0 — Shujimi

Shujimi is the headless and depth release. The vault is now a data platform.

The Big Story

  • Yamlink now runs without VS Code — the CLI gives full headless vault access.
  • The intelligence system is fundamentally different: vault-first, no hardcoded rules, learns from how you actually work.
  • The Home panel gives the vault a front door — activity stream, pulse, continue working.
  • Natural language queries let you describe what you want in plain English.

What's New

Yamlink CLI

Run Yamlink from a terminal, CI pipeline, or build script. No VS Code required.

yamlink build    # index vault, report broken links — exits 1 in CI
yamlink health   # lifecycle state, type distribution, drift
yamlink validate # schema conformance — exits 1 if required fields missing
yamlink query "where type = contact and status = active"
yamlink report rico   # full note report in the terminal
yamlink links rico    # all inbound and outbound links
yamlink serve         # local HTTP API: /api/nodes, /api/query, /api/graph
yamlink export        # dump vault to JSON or CSV

yamlink serve exposes the vault as a local REST API. Any website framework such as Next.js, Astro, or Eleventy can read your vault at build time. Notes become pages, frontmatter becomes metadata, and wikilinks resolve to URLs. Vault as CMS, files stay plain Markdown.

Intelligence Overhaul — Four Phases

The intelligence layer is now fully vault-first. No static field-name lists. No hardcoded type lookups. No global archetype tables.

Phase 1 — Cold-Start Awareness

One typed [[wikilink]] in a field is enough to classify it as a relation. Vault maturity scales confidence thresholds, so a 3-note vault gets useful suggestions from day one.

Phase 2 — Sticky Knowledge

The mutation log records every wikilink assignment. A field used as a relation before stays classified as relational even after vault restructuring — the system doesn't forget.

Phase 3 — Vault-First Classification

Field names are the last resort, not the first.

  • status: [[rico]] becomes a relation.
  • disposition with values like active and standby becomes workflow state, detected from your vocabulary, not a global list.
  • Note roles are inferred from field-bundle topology.

Phase 4 — Outcome Calibration

Every relation completion you accept with Enter or Tab on a [[ candidate is persisted as a training signal. Confirmed fields get a confidence boost next time. The vault trains the system from use.

Note Arc Prediction

Yamlink now answers: "what does this note need next?"

The Note Report Overview tab shows a Likely missing section: fields that appear on 60%+ of same-type notes that this note doesn't have yet, ranked by vault frequency and calibration history.

Each row has a + button. Click it to insert the field stub and trigger completion in one step.

Arc-predicted fields also appear in frontmatter completion with a badge like:

in 80% of contact notes · likely missing

Home Panel

Yamlink: Open Home — the vault's front door.

  • Pulse bar — note count, type count, broken link count
  • Activity feed — last 15 mutation events as a human-readable timeline; each entry opens the note
  • Continue working — 5 most recently touched notes, one click to open
  • Quick actions — New note, Today (daily note), and per-vault type buttons

The Home panel auto-opens on first vault activation and shows an onboarding welcome on new vaults.

Natural Language Queries

Yamlink: Query in Plain English — describe what you want, get a !view block.

Type:

active contacts I haven't updated in 30 days

Get:

!view contact where status = active and file.modified < days-ago(30)

This is powered by 16 sentence templates with full vault vocabulary injection — your types, fields, workflow values, and IDs. The generated query is previewed before insertion.

Daily Notes

Ctrl+Alt+J opens or creates today's journal note. It uses _templates/journal.md if it exists.

Journal notes are first-class:

  • queryable
  • linkable
  • visible in the Calendar

Unlinked References

The Note Report Links tab now surfaces body-text mentions of the current note's name or ID from other notes, even without a formal [[wikilink]].

This is the Roam Research discovery pattern: organic mentions appear before you formalize the link.

Note Splitting

Yamlink: Extract Selection to New Note

Select body text and run the command.

  • The selection becomes the body of a new note.
  • The original is replaced with ![[new-id]].
  • source: [[original-id]] is written into the new note automatically.

Smart Templates

_templates/*.md files now act as live schema definitions.

When you save a template with new fields, Yamlink scans the vault and asks:

Template 'contact' has new fields. Apply to N notes?

Notes missing template fields get a yellow squiggle on the type: line with a lightbulb fix such as:

Yamlink: Add missing "contact" fields (company, status)

Schema Conformance in Vault Health

  • Coverage — what percentage of notes of each type have all required fields
  • Non-conformant notes — which notes are missing required fields, and which fields
  • Advisories — types with notes but no schema, as an invitation to formalize, never a gate
  • Dangling relations — relation fields targeting a type with no vault notes

file.created and file.modified Virtual Fields

Two implicit fields are now available in any query — no frontmatter required.

!view contact
where file.modified < days-ago(30)
select name, status, file.modified
sort file.modified desc

Matrix View

Toggle any !view table into a two-axis relation grid.

  • Rows = query results
  • Columns = all vault notes of a type you pick
  • Cells show where a connection exists
  • Bidirectional edge detection included

Git History Import

Yamlink: Import Git History reconstructs full mutation history for git-tracked vaults from commit history.

It populates the Note Report History tab and strengthens arc prediction going back to the first commit. It runs once and is guarded by .yamlink/git-history-import.done.

QOL

  • Callout blocks now render as styled panels in note preview and PDF exports — [!SOURCE], [!WARNING], [!NOTE], and all supported callout types, each with a distinct Yamlink Apollo palette color
  • Compact status bar — ◈ 31 ⚠ 104 instead of the wordier previous format; a permanent $(home) button opens the Home panel from anywhere
  • Broken wikilinks are decorated with amber brackets and faded text — readable signal, no disruptive squiggle
  • Template-guided note creation — the Create note quick fix on a broken wikilink now walks through the template picker, with type-matched templates at the top

Who Shujimi Is For

Working Without VS Code

The CLI gives you full vault access for scripting, CI pipelines, and publishing.

Managing Structured Vaults

The intelligence overhaul means the system adapts to your vocabulary. Schema conformance and template drift give you operational quality control without making schema a prerequisite.

Capturing Faster

Home panel, daily notes, natural language queries, and note splitting reduce friction between having a thought and having it in the vault.

Long-Time Users

The feedback loop means the system gets more accurate the more you use it. The vault trains the system from use.