egregore-artifacts
v0.29.0
Published
Generate branded HTML artifacts from Egregore data
Downloads
993
Maintainers
Readme
egregore-artifacts
Generate branded, self-contained HTML artifacts from Egregore data, in the Egregore Design Convention (the Meridian lineage — role tokens, the vellum/nocturne theme pair, a built-in light/auto/dark theme engine). Every artifact ships as one file with the design system inlined; nothing phones home.
npx egregore-artifacts@latest document path/to/paper.md --output paper.htmlTypes
quest · handoff · emissary · activity · board · network ·
decision-surface · composed · document (longform markdown — papers,
reports, notes).
egregore-artifacts <type> <file.md> # explicit type
egregore-artifacts <file.md> # auto-detects (quests/, handoffs/, else document)
egregore-artifacts document paper.md --output paper.htmlCharts & diagrams in document (v0.17+)
A document can draw token-themed charts and diagrams from fenced code blocks.
The fence info-string selects the kind; the fence body is JSON. Colors are design
tokens (--series-1..5, --t1, --ink, --line, --chart-grid, --chart-axis),
so charts flip with the theme — no hardcoded colors. An unknown or malformed fence
degrades gracefully to a normal <pre> code block.
| Fence | Kind | Body |
|---|---|---|
| ```chart:bar | grouped/single vertical bars | {title,sub?,max?,series?,groups:[{label,values}],emphasis?} |
| ```chart:hbars | horizontal bars | {title,rows:[{label,value,tone?,max?}]} |
| ```chart:dumbbell | change A→B per row | {title,sub?,max?,aLabel?,bLabel?,rows:[{label,a,b}]} |
| ```chart:line | line over ordered x | {title,max?,x:[…],lines:[{label,values,tone?}]} |
| ```chart:stat | headline stat cards | {title?,note?,cards:[{n,l}]} |
| ```chart:spectrum | 2–4 progression panels | {title?,panels:[{tag?,name,desc?,win?}]} |
| ```diagram:flow | process nodes A→B→C | {title?,rows:[{label?,gloss?,win?,nodes:[{t,d?}]}]} |
| ```diagram:schema | box-and-arrow structure | {width?,height?,boxes:[{x,y,w,h,title,sub?,focus?}],arrows:[{x1,y1,x2,y2}]} |
Aliases: bars/hbar→hbars, slope→dumbbell, cards/stats→stat. A bare
chart:bar may be written bar. tone is one of t1/t2/t3/series-1…5;
emphasis (bar) recolors one series to the accent.
Example:
## Results
```chart:bar
{ "title":"Accuracy by condition", "series":["baseline","ours"],
"groups":[{"label":"task A","values":[0.22,0.90]},{"label":"task B","values":[0.31,0.84]}],
"emphasis":1 }
```Flags
--output <file>— write to a path (no browser open)--no-open— write to a tmp file and print the path--org-slug <slug>/--view-base <url>— rewritememory/…links to published views--verify-fidelity— fail when a handoff section is unmapped or loses content--source <handoff.md>— canonical Markdown source for fidelity-checking acomposedhandoff
Rich handoffs use Markdown as the canonical record and JSON only as a
presentation map. Give each composed section an id, then map every authored
## heading to its destination:
{
"sourceMap": {
"Briefing": "briefing",
"Next Steps": "next-steps"
},
"sections": [
{"id":"briefing","component":"prose","body":"Complete briefing text"},
{"id":"next-steps","component":"prose","body":"Complete next-step text"}
]
}egregore-artifacts composed handoff.json \
--source handoff.md --verify-fidelity --output handoff.htmlDesign system
The palette/role-token + theme layer is the vendored
@curve-labs/design-system (Meridian lineage). A version bump
there reaches every future render; already-delivered artifacts keep the version
stamped into them.
