First CHToolsFree web tools

FIRST CH TOOLS / Text / 80 WIKI DOC LINT

Wiki Duplicate, Orphan & Term Checker

Load a whole folder of pages exported from Notion, Backlog Wiki, Confluence and similar tools, and check it in one go. The tool finds near-duplicate pages, pages nothing links to, and inconsistent or outdated terms, and tells you in plain text how to fix each one — a useful clean-up before you let an AI assistant answer from your internal docs. Files are only read inside your browser; nothing is uploaded or stored.

Drag & drop a folder or files here or click to select a folder (.md / .html / .txt, subfolders included)

Files are only read inside this browser — never uploaded or stored. Unzip an export before selecting it.

How to Use

  1. Export your pagesExport a Notion workspace or page as "Markdown & CSV", or a Confluence space as HTML. If the export arrives as a ZIP, unzip it first.
  2. Load the whole folderClick "Select folder" or drag the folder in, and the duplicate, orphan, term and broken-link results appear straight away. Add old product or team names to the dictionary and they are flagged as outdated terms.
  3. Use the suggested fixes"Copy report" gives you the fixes as Markdown to paste into a request or a ticket. The edits themselves are made in the original wiki.

About This Tool

Internal wikis drift: an old and a new version of the same procedure sit side by side, new pages never get linked from anywhere, and a renamed service lives on under its old name. People learn to skip past these, but an AI assistant answering from your docs will happily quote the stale page. This tool reads your exported files and lists (1) pairs of pages with nearly the same content (with the similarity and the lines only one of them has), (2) pages that no other page links to (with the line to add to a contents page), (3) inconsistent and outdated terms from your dictionary, plus Japanese katakana words spelled both with and without the long-vowel mark (suggesting the more common form), and (4) links whose target is not among the loaded files. For each duplicate pair it suggests keeping the page with more incoming links (or, if they tie, the longer one).

Similarity is measured by stripping symbols and spaces, cutting the text into overlapping four-character fragments and taking the share of fragments two pages have in common (the Jaccard index). Links are read from Markdown [text](path), [[Page name]] and HTML anchors, and matched by relative path, page title, Notion file names with their 32-character IDs, and the page name at the end of Notion and Confluence URLs. Pages that sit under a parent only by folder, with no link to them, show up as orphans. Terms are only checked in body text — code blocks, inline code, URLs and HTML tags are skipped — and a variant is never matched inside a longer word, so "Javascript" is not found inside "Javascripts" and ユーザ is not found inside ユーザビリティ.

Everything runs in your browser; files are never uploaded or stored (only the dictionary is kept in this browser). ZIP files cannot be read directly, so select the unzipped folder. Up to 3,000 files and 60 MB in total can be checked at once, and UTF-8 and Shift_JIS are detected automatically. To compare a page before and after editing, use the Diff Checker; to turn an HTML export into Markdown, use HTML → Markdown. AI agents can run the same check through wiki_doc_lint on our MCP server (For AI agents).

Other Tools