Home / Release Notes
Release Notes
What changed in each Wikidown release, and where to get it. Newest first. For how to update an existing install, see Updating.
0.14.1 — 14 November 2026
The agent files that wikidown init installs now cover everything
Wikidown does, not just page editing. The wikidown skill adds
publishing (wikidown pages, export-html), site templates and _data/
files for docs and marketing sites, landing pages, PDF export, and
clickable image maps, and its description triggers on those tasks. The
Claude subagent and Copilot agent point to it for site work. To pick up
the new files in an existing repo, update the CLI and run
wikidown init --force.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.14.1 — dotnet tool update -g Wikidown.Cli |
Wikidown.Core library |
Wikidown.Core 0.14.1 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.14.1 — win/linux/osx, x64 and arm64; or re-run the install script |
No other changes from 0.14.0.
0.14.0 — 14 November 2026
Breaking: wikis publish only through a pipeline that runs
wikidown export-html. GitHub's built-in Jekyll builder ("Deploy from a
branch") is no longer supported, and wikidown pages now writes a GitHub
Actions workflow instead of a Jekyll site. A wiki that publishes with
"Deploy from a branch" needs a few minutes of changes: see Migrating from
Jekyll Publishing.
Sites already deployed by export-html (the wiki-pages.yml workflow,
GitLab Pages) only need to delete _data/navigation.yml.
One renderer means the site you preview locally is the site that deploys, and Site Templates features work on every site.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.14.0 — dotnet tool update -g Wikidown.Cli |
Wikidown.Core library |
Wikidown.Core 0.14.0 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.14.0 — win/linux/osx, x64 and arm64; or re-run the install script |
| GitHub Actions workflow | markdav-is/Wikidown/.github/workflows/wiki-pages.yml@main — see The workflow |
The web editor and the Visual Studio extension (1.6.0) are unchanged.
What changed
wikidown pagessets up a pipeline. It writes.github/workflows/pages.ymlat the root of the git checkout, which calls the reusablewiki-pages.ymlworkflow, plus a_config.ymlwith no Jekyll settings. The theme stays built in unless you pass the new--themeflag to copy it into the wiki for editing. It also lists Jekyll leftovers you can delete.- No more
_data/navigation.yml. The CLI no longer writes or refreshes it;export-htmlbuilds the nav from.orderfiles on every export and warns if the old file is still there. The stock layout's flat-list fallback for a missing nav file is gone. - Project sites need no
base-url. Thewiki-pages.ymlworkflow now takes the site's path from GitHub when neither thebase-urlinput norbaseurlin_config.ymlis set, as GitHub's Jekyll builder did. wikidown moveleaves code alone. Links inside fenced code blocks and inline code are examples, and are no longer rewritten when a page moves, matching whatcheck-linksalready ignored.- Docs. A new Site Templates section covers marketing-style sites: a step-by-step Building a Marketing Site how-to, data-driven template examples, and a Template Reference.
0.13.0 — 14 November 2026
export-html can now build data-driven sites: templates read _data/
files and other pages' bodies, and _config.yml picks a layout per page
and which page is the site root. See Data-Driven Sites.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.13.0 — dotnet tool update -g Wikidown.Cli |
Wikidown.Core library |
Wikidown.Core 0.13.0 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.13.0 — win/linux/osx, x64 and arm64; or re-run the install script |
| GitHub Actions workflow | markdav-is/Wikidown/.github/workflows/wiki-pages.yml@main — see Deploying with GitHub Actions |
The web editor and the Visual Studio extension (1.6.0) are unchanged.
What changed
_data/files. Every JSON and YAML file under_data/loads intosite.data, with subfolders as nested keys (_data/hops/2026-11.jsonissite.data.hops["2026-11"]). All_config.ymlkeys are also available assite.*.- Other pages in templates.
site.pagesentries carry their renderedcontent. The newwiki_bodyfilter shows another page's body without its breadcrumb (wiki_body: "strip_title"also drops its first heading), with links that work from any page;wiki_titlegives its title. - More Jekyll filters.
absolute_url,markdownify,jsonify,slugify,normalize_whitespace,xml_escape,cgi_escape, andnumber_of_words.sortnow orders numbers numerically. - Per-page layouts and site root.
wikidown.layoutsin_config.ymlmaps pages or/Folder/*subtrees to_layouts/<name>.html, andwikidown.root_pageserves a page asindex.html. Without it, the rootindex.htmlnow gets apageobject like other pages. - Deploy with GitHub Actions. A reusable workflow installs the CLI,
runs
export-html, and deploys to GitHub Pages.
0.12.0 — 21 October 2026
Links inside raw HTML and inline SVG, such as the clickable regions of a map, now publish, get checked, and follow page moves like markdown links.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.12.0 — dotnet tool update -g Wikidown.Cli |
Wikidown.Core library |
Wikidown.Core 0.12.0 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.12.0 — win/linux/osx, x64 and arm64; or re-run the install script |
| Web editor | Updated in place; Monaco editor pane with a Markdown toolbar, and a preview that matches the published site |
The Visual Studio extension is unchanged at 1.6.0.
What changed
- Links in raw HTML and inline SVG.
hrefon HTML and SVG<a>, SVG 1.1xlink:href, andhrefon SVG<image>are now treated as links (see Format § Raw HTML and inline SVG).export-htmlrewrites relative.mdhrefs to.html, keeping any#fragment;check-links(and--fix) reports broken ones, including a missing<image href>file; andwikidown moverewrites them when the page they point at moves. - Inline SVG survives blank lines.
export-htmlkeeps an<svg>…</svg>block whole even when it contains blank lines, instead of splitting the rest of the map into paragraphs.
0.11.0 — 30 September 2026
check-links --fix now pulls images and files from outside the wiki into it
and makes "/"-rooted links relative, and page titles come from each page's
# Heading instead of its file name.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.11.0 — dotnet tool update -g Wikidown.Cli |
Wikidown.Core library |
Wikidown.Core 0.11.0 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.11.0 — win/linux/osx, x64 and arm64; or re-run the install script |
| Web editor | Updated in place; its Export PDF table of contents uses page headings |
The Visual Studio extension is unchanged at 1.6.0.
What changed
- Images and files outside the wiki.
wikidown check-linksnow reports links and images that point at files outside the wiki folder (such as/assets/cards/duck.pngor../../assets/x.png), which no publishing route ships.wikidown check-links --fixcopies them into.attachments/from-repo/, mirroring their path from the repo root, and relinks them; re-running it refreshes copies whose source changed and removes copies no page uses.--fix --dry-runpreviews the changes. Raw<img src>tags and click-through links around images ([](full)) are now checked too. - "/"-rooted links become relative. Links like
/Cards/Movementor/.attachments/map.png404 on github.com and on GitHub Pages project sites;check-linksflags them and--fixrewrites them relative to the page (../Cards/Movement.md). - Titles come from the page's
# Heading. The site nav (Jekyll andexport-html), the PDF table of contents and bookmarks, andwikidown list/walknow show each page's first# Heading, so titles can contain&, hyphens and other characters a file name can't show. The file name is the fallback when a page has no heading. Jekyll sites:_data/navigation.ymlpicks up the new titles when you re-runwikidown pages(theme files you've edited are left alone); commit it. - Export warnings.
export-htmlandexport-pdfwarn about references to files outside the wiki and exit 1.export-pdfno longer resolves/assets/x.pngto the root of the drive.
0.10.0 — 29 September 2026
PDF exports are set in Atkinson Hyperlegible, a typeface designed by the Braille Institute for readers with low vision.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.10.0 — dotnet tool update -g Wikidown.Cli |
Wikidown.Core library |
Wikidown.Core 0.10.0 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.10.0 — win/linux/osx, x64 and arm64; or re-run the install script |
| Web editor | Updated in place; its Export PDF uses the same fonts |
The Visual Studio extension is unchanged at 1.6.0.
What changed
- New PDF fonts.
wikidown export-pdfand the web editor's PDF export set body text in Atkinson Hyperlegible Next and code in Atkinson Hyperlegible Mono (SIL Open Font License 1.1), both built into the tool as before. - Characters those fonts lack still print. Arrows, box-drawing lines, Greek and Cyrillic fall back to the DejaVu fonts the export used before, character by character, instead of coming out blank.
0.9.0 and Visual Studio extension 1.6.0 — 27 September 2026
Kanban boards made of ordinary wiki pages, a check-links that passes on
real wikis, and PDF exports that no longer drop content from lists. This CLI
release also carries the Windows fixes that shipped in extension 1.5.4.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.9.0 — dotnet tool update -g Wikidown.Cli |
Wikidown.Core library |
Wikidown.Core 0.9.0 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.9.0 — win/linux/osx, x64 and arm64; or re-run the install script |
| Visual Studio extension | Wikidown Wiki Project on the Marketplace — or let Visual Studio auto-update |
| VSIX download | GitHub Release vsix-v1.6.0 |
What changed
- Kanban.
wikidown kanban initcreates a dashboard page with To Do, Doing and Done sub-pages; each item is a sub-page of one of them, and moving an item is an ordinarywikidown move. See Kanban. - Headings written as links can be addressed by their text.
--section "To Do"and--after "To Do"find## [To Do](...). check-linksignores links inside code blocks and inline code. Example links in documentation no longer count as broken, and no longer count as a parent page linking its children.- PDF export keeps everything in a list item. A second paragraph, a code block, a quote or a table inside a list item used to be left out of the PDF without a word; it now appears under its bullet.
- Windows fixes from extension 1.5.4 (line endings left alone, UTF-8
console, portable page names, case-only renames,
edit --delete) now reach the NuGet tool and the standalone binaries.
Visual Studio extension 1.5.4 — 20 September 2026
A Windows-first pass. Most Wikidown users are on Windows, and a sweep of the code turned up several places that quietly assumed Unix. They are fixed in the extension and its bundled CLI now; the same fixes reach the NuGet tool and the standalone binaries with the next CLI release.
Where to get it
| Component | Link |
|---|---|
| Visual Studio extension | Wikidown Wiki Project on the Marketplace — or let Visual Studio auto-update |
| VSIX download | GitHub Release vsix-v1.5.4 |
What changed
- Line endings are left alone. The CLI and the extension used to write
LF into every file they touched —
.order, new pages, whole-page rewrites,initandpagesoutput — leaving a Windows checkout with mixed endings and a stream of git "LF will be replaced by CRLF" warnings. Now a rewritten file keeps the endings (and UTF-8 BOM) it already had, a new file matches the rest of the wiki, and a brand-new wiki uses the platform default. CRLF.orderfiles were always read correctly; agents are now told so, and told never to "fix" them. - UTF-8 in and out. The CLI sets the console to UTF-8, so
wikidown read > page.mdand piped--stdinno longer mangle accents, dashes, and arrows on a Windows console, and edit summaries stop showing?where an en dash should be. - Page names that Windows can't store are refused with a clear message —
Report: Q1used to vanish into an NTFS alternate data stream, andCONechoed the page to the terminal while reporting success. - Case-only renames work:
wikidown move --from guide --to Guideno longer fails with "Destination exists" on Windows. check-linksis case-exact on every platform, so a link that only resolves because Windows ignores case is caught before it 404s on GitHub Pages.edit --deleteremoves the matched text. The old spelling,--new "", never reached the CLI from Windows PowerShell 5.1.export-html --cleanempties the output folder instead of deleting it, which failed whenever Explorer or a terminal had it open.- Export to PDF from Visual Studio quotes its arguments by Windows rules, fixing wiki roots that end in a backslash (a drive root).
- Help, README, and agent instructions show shell-neutral commands
(
--file, slash-less page paths,.for the root) and PowerShell alongside bash. CI now runs the test suite on Windows as well as Linux.
0.8.0 — 15 September 2026
The MCP server is gone: the wikidown CLI is now the only surface AI
agents use. Wikidown.Mcp is no longer published, the wikidown-mcp
executable is retired, and the wiki_* tools go with it.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.8.0 — dotnet tool update -g Wikidown.Cli |
Wikidown.Core library |
Wikidown.Core 0.8.0 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.8.0 — win/linux/osx, x64 and arm64; or re-run the install script |
| Source | markdav-is/Wikidown |
The Visual Studio extension and the browser editor are unchanged in this release.
Why
Every wiki_* MCP tool was a thin wrapper over the same wikidown verb,
so the CLI has had full parity since 0.7.0. Shipping two surfaces meant two
things to keep correct, two things to document, and two version numbers that
had to move together. One surface is easier to keep correct, and an agent
that can run a shell loses nothing.
What to do
- Uninstall the old server:
dotnet tool uninstall -g Wikidown.Mcp. - Delete
.mcp.jsonand.vscode/mcp.jsonfrom downstream repos — they only wired upwikidown-mcp. - Re-run
wikidown init --agents all --forceto refresh the agent configs. The skill, the Claude Code subagent, and the Copilot agent and chat mode now instruct agents to run the CLI — see Agents.
The tool names map one-to-one onto CLI verbs, so prompts, notes, or scripts that mention them translate directly:
| MCP tool | CLI verb |
|---|---|
wiki_list |
wikidown list |
wiki_read (with section) |
wikidown read (with --section) |
wiki_write |
wikidown write |
wiki_edit |
wikidown edit |
wiki_write_section |
wikidown write-section |
wiki_append |
wikidown append |
wiki_new |
wikidown new |
wiki_move |
wikidown move |
wiki_delete |
wikidown delete |
wiki_reorder |
wikidown reorder |
wiki_search |
wikidown search |
wiki_walk |
wikidown walk |
Chat-only hosts that can't run a shell (Claude Desktop, a VS Code chat mode
without a terminal) can no longer edit a wiki directly. The skill gives them
the command list, so they can suggest the exact wikidown commands for you
to run instead.
0.7.0 — 12 September 2026
The small-change toolkit for agents. Until now the only way to change a page through the MCP server or CLI was to rewrite all of it; most of a long editing session on a large wiki was whole-page round-trips for one-line changes. This release adds four patching tools so an agent pays only for the text it changes.
Where to get it
| Component | Link |
|---|---|
wikidown CLI (NuGet global tool) |
Wikidown.Cli 0.7.0 — dotnet tool update -g Wikidown.Cli |
wikidown-mcp MCP server (NuGet global tool) |
Wikidown.Mcp 0.7.0 — dotnet tool update -g Wikidown.Mcp |
Wikidown.Core library |
Wikidown.Core 0.7.0 |
| Self-contained CLI binaries (no .NET needed) | GitHub Release cli-v0.7.0 — win/linux/osx, x64 and arm64; or re-run the install script |
| Source | markdav-is/Wikidown |
The Visual Studio extension and the browser editor are unchanged in this release.
New: patching tools
All four are in the MCP server and the CLI. They match the raw markdown
exactly, detect and preserve the file's line endings (CRLF or LF), never
touch the breadcrumb line or .order, never create a page, and fail with
a message that says what to do next — the page's headings on a section
miss, the match count on an ambiguous edit. See CLI § Commands
(the MCP Server page was retired with 0.8.0).
wiki_edit/wikidown edit— replace an exact substring in place, with the same contract as Claude Code'sEdittool:old,new, optionalreplaceAll. Returns the changed line numbers with two lines of context so the agent needn't re-read the page.wiki_readwithsection/wikidown read --section— return one heading plus everything under it up to the next heading of the same or higher level, so a##section includes its###children. Heading match is case-insensitive and ignores#s and whitespace; a miss lists every heading on the page.wiki_write_section/wikidown write-section— replace the body under one heading, keeping the heading line and the rest of the page.###children inside the section are replaced too. Exactly one blank line is kept around the new body, so repeated writes are idempotent.createIfMissingappends a new##section instead of failing.wiki_append/wikidown append— add a block at the end of a page, or at the end of one section withafterSection, always separated by exactly one blank line. Repeated appends never stack blank lines.
Agent guidance
The shared skill, the Claude Code subagent, the Copilot agent and chat
mode, and the CLAUDE.md snippet now say: prefer wiki_edit for small
changes, wiki_write_section for one section, wiki_append to add at
the end, and wiki_write only for new pages or full rewrites. Re-run
wikidown init --agents all --force in a downstream repo to pick these
up — see Agents.
Fixes
- MCP errors now say what went wrong. The MCP SDK reported every
failure as a bare
An error occurred invoking 'wiki_x', which hid messages such aspage already existsfromwiki_new. Every tool now returns its real message. - Concurrent tool calls no longer collide. Hosts such as Claude Code batch independent tool calls, and two edits to the same page in one batch raced on the file. Tool calls are now serialized.
wikidown --help/-hno longer demands a value or valid command arguments.
Upgrading
Follow Updating. One gotcha specific to the
MCP server: dotnet tool update -g Wikidown.Mcp fails with
Access to the path ... is denied while any Claude Code, Claude Desktop,
or VS Code session has wikidown-mcp running. Close those sessions (or
stop every wikidown-mcp process) first, update, then reopen them. To
confirm you are on the new version, dotnet tool list -g must show
0.7.0 for both tools, wikidown edit --help must print a usage block,
and the MCP tool list must show 12 tools including wiki_edit.
Pull requests
#23 wiki_edit ·
#24 wiki_read(section) ·
#25 wiki_write_section ·
#26 wiki_append ·
#27 landing + version bump.
Issues #19,
#20,
#21,
#22.
0.6.0 — 2 September 2026
wikidown export-html: render the wiki to a static site with the starter theme in .NET (Markdig + Fluid), no Jekyll or Ruby — the path for GitLab Pages, Azure Static Web Apps, and local preview.- wikidown.org merged into
/docs: the product site is now this wiki, published withexport-html. - Editor: GitLab provider.
- Fixes:
pagesandexport-htmlnav linked/HometoHome.htmlinstead of the site root.
Binaries: cli-v0.6.0.