An LLM-maintained knowledge base for software development.
Stop losing knowledge between coding sessions. Dev Wiki is a structured, persistent wiki that your AI coding agent (Claude Code, Codex, Cursor, etc.) builds and maintains for you. Every session reads from it, every session writes back. Knowledge compounds instead of evaporating.
You fix a tricky bug on Monday. By Thursday, you've forgotten the root cause. Next month, you hit the same pattern and re-discover the solution from scratch.
Architecture decisions, deployment gotchas, coding conventions, sprint progress — they scatter across chat histories, commit messages, and your memory.
RAG retrieves. Dev Wiki accumulates.
You: "Fix the inventory page — it's stuck loading"
Agent (session start):
1. Reads SPRINT.md → sees current tasks
2. Reads learnings.md → recalls known gotchas
3. Reads log.md → understands recent context
Agent (works):
4. Finds the bug, fixes it
Agent (session end):
5. Updates SPRINT.md → marks task done
6. Appends to log.md → records what happened
7. Adds to learnings.md → "plan gate check goes in useEffect, not useCallback"
Next session:
Agent reads learnings → never makes that mistake again
The wiki gets richer with every session. Gotchas accumulate. Decisions are recorded. Sprint progress is tracked. No bookkeeping effort from you — the agent handles all of it.
# Clone this repo
git clone https://github.com/vatevstoil/dev-wiki.git
# Copy to your Claude Code skills directory
cp -r dev-wiki/skill ~/.claude/skills/dev-wikiAdd this to ~/.claude/CLAUDE.md (or equivalent for your AI agent):
## Dev Wiki Protocol
Projects may have a wiki. On session start (skip for trivial tasks):
1. Read `{wiki}/wiki/SPRINT.md` — current tasks
2. Read `{wiki}/wiki/sources/learnings.md` — gotchas
3. Read `{wiki}/wiki/log.md` — last ~30 lines
On session end: Update SPRINT.md + log.md. New gotcha → learnings.python skill/scripts/init_dev_wiki.py "./my-project-wiki" "My Project" --lang enDone. Open the wiki folder in Obsidian to browse it visually, or let the agent manage it entirely.
Tell your agent "new project" or "I want to build X". It will:
- Interview you — Problem, users, competitors, business model, tech stack, MVP scope
- Generate a concept doc — Features, architecture, data model, risks, timeline
- Initialize the wiki — Pre-populated SPRINT, DEVELOPMENT_PLAN, DECISIONS
- Track from day one — Every session builds on the last
For existing projects, the agent follows a lightweight protocol:
| Phase | What happens | Time |
|---|---|---|
| Start | Read SPRINT + learnings + log | ~1 min |
| Work | Normal development | — |
| End | Update SPRINT + log + learnings | ~30 sec |
| File | Answers | Updated |
|---|---|---|
| SPRINT.md | What am I working on NOW? | Every session |
| DEVELOPMENT_PLAN.md | What's the full roadmap? | Task added/completed |
| DECISIONS.md | WHY did we choose X over Y? | Architecture choice |
| log.md | What happened and when? | Every session |
| learnings.md | What mistakes to never repeat? | New gotcha found |
my-project-wiki/
├── AGENTS.md # Agent configuration
├── wiki/
│ ├── SPRINT.md # ← Active sprint
│ ├── DEVELOPMENT_PLAN.md # ← Full roadmap
│ ├── DECISIONS.md # ← Architecture Decision Records
│ ├── CLAUDE_CODE_INSTRUCTIONS.md
│ ├── index.md # Page catalog
│ ├── log.md # Chronological log (append-only)
│ ├── overview.md # Living synthesis
│ ├── entities/ # Companies, products, people
│ ├── concepts/ # Technical/business concepts
│ └── sources/ # Document summaries + learnings
└── raw/ # Original documents (read-only)
| Workflow | When | Key actions |
|---|---|---|
| FEATURE | Building new functionality | Spec → plan → SPRINT → implement → DONE + log |
| BUGFIX | Fixing a bug | Fix → plan section H → learnings if new pattern → log |
| DEPLOY | Shipping to production | Deploy → verify (curl) → log with status codes |
| INGEST | New research/document | Read → source page → update concepts → index + log |
| PLAN | Sprint planning | Review priorities → select 3-5 tasks → update SPRINT |
| LINT | Wiki health check | Stale tasks? Drift? Missing learnings? Orphan pages? |
For teams or developers with multiple projects:
wiki-root/
├── _shared/ # Cross-project knowledge (read on-demand)
│ ├── patterns.md # Universal patterns
│ ├── antipatterns.md # Mistakes from real projects
│ └── projects.md # Project registry
├── project-a/ # Project-specific wiki
└── project-b/
Rule: _shared/ is on-demand only. A gotcha goes there only if it applies to 2+ projects. This keeps per-session token cost near zero.
The system is designed to minimize AI token usage:
| What | Tokens | When |
|---|---|---|
| Session start (SPRINT + learnings + log) | ~1,800 | Every non-trivial session |
_shared/ patterns |
~800 | On-demand only |
| Full API/DB reference | ~3,000+ | On-demand only |
| Trivial task (typo fix) | 0 | Skipped entirely |
Works with any LLM coding agent that can read/write files:
- ✅ Claude Code (primary target — uses as a skill)
- ✅ OpenAI Codex (add AGENTS.md to context)
- ✅ Cursor (add wiki path to project context)
- ✅ Windsurf / Continue / Cline (similar setup)
- ✅ Any agent with file access (the wiki is just markdown files)
For non-Claude agents, skip the skill installation and just run the init script + add the protocol to your agent's system prompt.
- LLM Wiki — The original pattern for research knowledge bases
- Vannevar Bush's Memex (1945) — Personal knowledge store with associative trails
- Architecture Decision Records — Documenting architecture decisions
The key insight from LLM Wiki: the tedious part of knowledge management is bookkeeping, not thinking. LLMs don't get bored, don't forget cross-references, and can update 15 files in one pass. The wiki stays maintained because maintenance costs near zero.
MIT — Use it, fork it, adapt it.
⭐ If this saves you time, star the repo. It helps others find it.