Files
hyperguild/brain/schema.md
Mathias Bergqvist 537aebc302 feat(pipeline): update system prompt for new LLM JSON contract (no slugs)
- Change prompt to reflect new output format: title, type, subtype, domain, content
- Remove slug/path generation responsibility from LLM — pipeline now handles it
- Wikilinks change from [[slug|Display Name]] to [[Display Name]] only
- LLM no longer includes frontmatter or paths in output

docs(schema): update LLM output format and wikilink convention for Level 3

- Specify JSON schema: title, type, subtype, domain, content fields
- Remove frontmatter requirements from schema output (handled by pipeline)
- Simplify wikilink format to [[Display Name]] — no slug or pipe
- Pipeline now responsible for slug generation and frontmatter construction

These changes shift slug/frontmatter generation from LLM to pipeline,
reducing cognitive load on the model and improving control over output.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-23 19:45:21 +02:00

3.6 KiB
Raw Blame History

Brain Wiki Schema

This document defines the three page types in the brain wiki. The LLM must follow this schema exactly when generating wiki pages.

Output Format

Return a JSON array. Each element:

{
  "title":   "exact page title",
  "type":    "source | concept | entity",
  "subtype": "see below — omit for concept",
  "domain":  "see domains — omit if none fits",
  "content": "Markdown body only — no frontmatter, no path"
}
  • subtype for source: article | pdf | book | video | note | project
  • subtype for entity: person | company | tool | model | framework | technology
  • The pipeline computes slugs and frontmatter — never include them in output.

All cross-references use [[Display Name]] — just the display name, no slug, no pipe.

Rules:

  • Only link to pages in the inventory or pages you are creating in this response
  • The pipeline converts [[Display Name]] to [[slug|Display Name]] automatically
  • Section links must match their section type (Related Concepts → concept pages only, etc.)

Examples: [[Domain Driven Design]], [[Ryan Singer]], [[Shape Up]]

Domains

Use one of: ai-llm, software-engineering, product-strategy, finance-markets, personal, consulting, climate, infrastructure, security


Source Pages — wiki/sources/.md

One page per ingested source. Books are NEVER split across multiple source pages — update the existing one.

Body sections (in this order):

Summary

23 sentences. Core argument or finding.

Key Claims

Bulleted list. Paraphrase — no verbatim quotes or code.

Concepts Introduced or Reinforced

Wikilinks to concept pages ONLY. One per line.

Entities Mentioned

Wikilinks to entity pages ONLY. One per line.

Open Questions Raised

Gaps or follow-up questions from this source.

For books only, also add:

Chapters

One bullet per chapter with 12 sentence summary.

Argument Arc

Overall narrative as it becomes clear across chapters.

Updates

Dated entries appended on re-ingestion. NEVER rewrite — only append.


Concept Pages — wiki/concepts/.md

One page per idea, framework, methodology, or pattern.

Body sections (in this order):

Definition

One-paragraph plain-language explanation.

Why It Matters

Practical significance. Why should anyone care?

Wikilinks to concept pages ONLY.

Wikilinks to entity pages ONLY.

Sources

Wikilinks to source pages ONLY.

Evolving Notes

Updated as new sources arrive. Append, do not rewrite.


Entity Pages — wiki/entities/.md

One page per person, tool, organisation, technology, or product.

Body sections (in this order):

Description

One-line description.

Relevance

Why this entity matters to this knowledge base.

Key Positions, Products, or Claims

With dates where known.

Wikilinks to concept pages ONLY.

Wikilinks to entity pages ONLY.

Sources

Wikilinks to source pages ONLY.


Non-Negotiable Rules

  1. Output ONLY a valid JSON array — no markdown fences, no prose before or after
  2. Each element: {"title": "...", "type": "...", "subtype": "...", "domain": "...", "content": "..."}
  3. Never include slugs, paths, or frontmatter in output — the pipeline handles these
  4. Wikilinks: [[Display Name]] only — no pipe, no slug
  5. Dates always YYYY-MM-DD (used only in content body where contextually relevant)
  6. Never reproduce verbatim code — describe the pattern or technique
  7. Section links must match their section type
  8. One source page per book — if inventory shows it exists, include it as an UPDATE