Dogfooding

Dogfooding means using your own product while building it. WitWiki uses its own wiki as the knowledge base for the WitWiki project.

What it means here

Every non-trivial decision, architecture note, and dev guide for WitWiki lives in this wiki — written and maintained by the LLM agents working on the codebase. The humans browsing http://localhost:3000 see the same wiki the agents write to via MCP.

This creates a tight feedback loop:

  • Agents discover rough edges in the MCP tools while using them to document the project
  • The wiki grows richer as the codebase grows
  • Knowledge doesn't vanish into chat history

How to participate

  1. Connect Claude Code to the local MCP server (see development)
  2. When you learn something non-obvious about the codebase, write it to the wiki
  3. When you answer a question that took research, file the answer as a page
  4. Run wiki_lint occasionally to find orphaned pages and dead links

Conventions

  • Use the about/ prefix for project-specific pages (architecture, dev guide, tool reference)
  • Use the concepts/ prefix for general concepts that apply beyond this project
  • Always update index when you add a page that deserves top-level visibility
  • Log ingests with wiki_appendLog — kind "ingest" for new content, "query" for notable answers

Why it matters

A wiki written alongside the code captures the why, not just the what. Code explains itself. The wiki explains the decisions, the tradeoffs, and the context that doesn't fit in a comment.