A Claude Code plugin for maintaining configurable project-local wiki knowledge bases.
This plugin packages wiki-focused skills plus a SessionStart hook that injects wiki context into Claude Code sessions.
wiki-schema— define the wiki directory structure, templates, and conventions.wiki-ingest— transform source material into structured wiki entries.wiki-query— answer questions from the wiki and file insights back as analyses.wiki-lint— health-check the wiki for orphan pages, broken links, and stale claims.
hooks/wiki-context.sh— onstartup,clear, andcompact, injectsNWIKI_DIR, the resolved wiki path, a wiki summary, the wiki index, and available wiki skills into session context.
jqmust be available onPATHfor the hook to emit Claude Code hook JSON.- The target project should store its wiki under
$NWIKI_DIR/wiki. - If
NWIKI_DIRis not set, the hook defaults it to$CLAUDE_PROJECT_DIR/docs, so the default wiki path remains$CLAUDE_PROJECT_DIR/docs/wiki.
nwiki-skills/
├── .claude-plugin/
│ ├── marketplace.json
│ └── plugin.json
├── bin/
│ └── nwiki-doctor
├── hooks/
│ ├── hooks.json
│ └── wiki-context.sh
├── skills/
│ ├── wiki-ingest/
│ │ └── SKILL.md
│ ├── wiki-lint/
│ │ └── SKILL.md
│ ├── wiki-query/
│ │ └── SKILL.md
│ └── wiki-schema/
│ └── SKILL.md
└── README.md
/plugin marketplace add https://github.com/BestNathan/nwiki-skills
/plugin install nwiki-skills@nwiki-skills-dev
/reload-plugins
/reload-skills
For local development before publishing:
/plugin marketplace add /Users/admin/Documents/learn/nwiki-skills
/plugin install nwiki-skills@nwiki-skills-dev
The base wiki directory is configurable through the plugin's NWIKI_DIR user option. Claude Code passes that value to hooks as NWIKI_DIR.
Set NWIKI_DIR to the base directory, not the wiki directory itself:
NWIKI_DIR=/path/to/your/wiki-root
The plugin stores wiki pages under $NWIKI_DIR/wiki, so skills should create and update files like:
$NWIKI_DIR/wiki/sources/example-source.md
$NWIKI_DIR/wiki/concepts/example-concept.md
$NWIKI_DIR/wiki/entities/example-entity.md
$NWIKI_DIR/wiki/analyses/example-analysis.md
The hook tells Claude the resolved NWIKI_DIR and reminds it to use paths as $NWIKI_DIR/wiki/<category>/<slug>.md.
If NWIKI_DIR is unset, the default is $CLAUDE_PROJECT_DIR/docs, making the default wiki path $CLAUDE_PROJECT_DIR/docs/wiki.
To diagnose the current configuration after installing the plugin, run:
nwiki-doctorThe hook looks for wiki files under $NWIKI_DIR/wiki:
$NWIKI_DIR/wiki/
├── index.md
├── log.md
├── concepts/
├── entities/
├── sources/
└── analyses/