Changelog
Every release of inkcap, newest first. Versions follow Semantic Versioning and match the git tags.
The canonical file is CHANGELOG.md in the repository; this page is rendered from it.
Unreleased
0.4.0 — 2026-11-01
Pictures. A manual can show the thing it documents, the way GitHub already shows it, and the page stays as still and as light as before.
Added
- Images. An image alone in its paragraph is a figure: sized from the file's
header (PNG, JPEG, GIF, WebP, SVG) so the page never jumps, copied to its
path on the site, linked to the full-size file, and captioned by its title.
A
name.phone.extbeside it is served on small screens. A figure in the hero loads at once; the rest load lazily. A missing file is named in the build output. Images inside a sentence stay inline. - inkcap.io: inkcap's own manual, printed by the code in this repository from this README, in the default ink.
0.3.0 — 2026-09-21
The manuscript is the API. inkcap build reads what is in the repository and
prints everything it can from it; nothing is required beyond one Markdown
file, and every feature appears when what it needs is present. The four
family sites build unchanged: what they gain is invisible on the page.
Added
- Zero requirements:
inkcap buildwith no config finds./MANUAL.md,../MANUAL.mdor./README.md(or the file named on the command line), takes the name from the#heading, the description from the first paragraph, the repository fromgit remote, the version fromgit describe, and prints the page in the default ink. A plain Markdown file with no sections is a clean page. Every config key is now optional. - Presence rules: a root
CHANGELOG.mdis rendered at/changelog/without being named in the config; a rootLICENSEnames the licence in the footer; rootinstall.sh,install.ps1,uninstall.shanduninstall.ps1are served at/install,/install.sh,/install.ps1,/uninstall.shand/uninstall.ps1;public/CNAMEsupplies the url; a file inpublic/wins over anything the build would write at the same path. - Guides: one Markdown file each in
guides/beside the manual, withtitle,description, optionalclusterandreviewedfrontmatter. Each is printed at/guides/<slug>/in the manual's shell, served verbatim at/guides/<slug>.md, listed at/guides/and in the masthead, and carries TechArticle and FAQPage JSON-LD. - Captures: a
```console captureblock is refreshed by the build. Prompt lines whose first word is the tool's name run in document order in a fresh sandbox at a fixed path with its ownHOME, seeded fromfixture/; the output under each prompt is replaced, with→ exit Non a non-zero exit; the manual is rewritten in place andgit diffis the review. Nothing runs when the tool is not onPATH.--frozennever writes and exits non-zero on drift, for release workflows. Thecapturesconfig adds setup commands, environment, aPATHentry, masks and a timeout. - Agent editions:
manifest.json(the site as one object: name, tagline, install command and scripts, agent prompt, sections and commands with anchors and one-line summaries, guides, questions),sitemap.xml,robots.txtnaming the AI crawlers, JSON-LD on every page (SoftwareApplication, TechArticle, FAQPage), and arel="alternate" type="text/markdown"link to each page's Markdown twin.robots,sitemap,manifest,jsonldandeditionsswitch each off. - A
## Questionssection's####rows become FAQPage JSON-LD. - Disclosures carry ids (the slug of their name, section-prefixed on a collision), and a link to one opens it.
llms.txtnow carries the install command near the top and a one-line summary for every section and guide, in the llmstxt.org link shape.og:site_nameand atwitter:cardon every page.
Changed
llms.txtsection entries are- [Label](url): summaryrather than- Label: url.- The footer's licence line comes from
LICENSE(or thelicensekey) instead of being printed as MIT for every site; the masthead's install link appears only when the manual has an Install section. - The build is split into modules: render, repo, capture, guides, machine.
Fixed
- Text in
llms.txt, meta descriptions and JSON-LD is decoded rather than HTML-escaped (a quoted phrase in the lede no longer prints as").
0.2.0 — 2026-09-20
Added
- Live star count: the masthead asks GitHub for the repo's current star count
on each visit and falls back to the baked
stars.jsonvalue. Counts of a thousand or more print as1.2k, as ketch.run did before the port.
Changed
- The README and package description lead with GitHub Pages as the intended host; other static hosts remain supported.
0.1.0 — 2026-09-20
Added
- First release, extracted from the builds behind ketch.run, cymbal.sh and brainfile.md so the three sites share one implementation instead of three copies.
inkcap buildrenders../MANUAL.mdintodist/: the manual page, a generatedllms.txt, the manual itself asllms-full.txt, an optional404.htmlcarrying a map of retired URLs, an optional_redirectsfile, and an optional/changelog/rendered from the repo'sCHANGELOG.md.inkcap starsrefreshes the star count shown in the masthead.- The accent colour is the one thing a site sets; everything else in the house style is shared.
- Every page carries the imprint: a
generatormeta tag and a "Published with inkcap" line in the footer.