Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

59 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wiseman

Summon a project-specific LLM wiki — the Wiseman — and consult it before you code.

Wiseman analyzes your project (dependencies, installed versions, official docs, clean-code and language best practices, and your own conventions) and builds a codebase-specific knowledge base in .wiseman/wiki.db (SQLite). A bundled MCP server lets the agent ask the Wiseman before coding and file new findings back — so it compounds, getting smarter the more you use it.

The guiding rule: asking the Wiseman must beat the model's own internal knowledge — every page is version-pinned, sourced, project-specific, and non-obvious.

Install

Add this repo as a plugin marketplace, then install from it:

/plugin marketplace add TGoddessana/wiseman
/plugin install wiseman@wiseman

(For local development, point the marketplace at a checkout instead: /plugin marketplace add /path/to/wiseman.)

This registers the wiseman MCP server automatically (via uv, so uv must be installed) and the /wiseman-summon skill.

Use

  1. In a project, run /wiseman-summon to build the wiki.
  2. Run /wiseman any time for an at-a-glance hub: what the wiki covers, which library versions are pinned, what's stale, and the menu of things you can do (ask, open the dashboard, refresh). It's terminal-native — no web server.
  3. While coding, the agent consults it with the ask_wiseman tool (guided by the @.wiseman/schema.md manual injected into your CLAUDE.md).
  4. New, valuable, sourced findings are filed back with write_page (the compounding loop). Run the lint tool occasionally to spot stale/orphan pages.

Keeping the wiki alive (hooks)

Three bundled hooks make the loop deterministic (and visible) instead of relying on the model remembering the manual:

  • SessionStart injects a compact status blob (page coverage, pinned library versions, stale-page warnings) into every new/resumed/cleared/compacted session — so the agent always starts grounded in what the Wiseman already knows, without spending a tool call to find out.
  • Stop is a conditional nudge: if a session consulted the Wiseman (ask_wiseman) but filed nothing back with write_page, it forces one final turn asking the agent to record what it learned. It fires at most once per learning episode (loop-guarded via stop_hook_active + a last_nudge_at marker), so quiet read-only turns stay quiet.
  • PostToolUse (scoped to write_page) surfaces a 🧙 Wiseman learned: <title> line to you whenever a page is filed — so the compounding loop is visible instead of silent. Bulk ingest during /wiseman-summon runs in subagents, so this mostly lights up on the incremental "just learned this while coding" writes.

The SessionStart and Stop hooks are no-ops in projects without a .wiseman/wiki.db (they never create one). All three are backed by the same wiseman-mcp entrypoint (… context / … stop-check / … learned).

Dashboard

Explore the wiki visually in a browser — a graph of pages and their links, with page contents, search, and lint/log panels. It is read-only.

uv run --directory <plugin>/server wiseman-dash --db "$(pwd)/.wiseman/wiki.db"

--directory changes the process's cwd to the server directory, so a relative --db path (e.g. .wiseman/wiki.db) resolves against the server directory, not your project root — always pass an absolute path.

Inside a Claude Code session you can launch it with the ! prefix. Options: --host (default 127.0.0.1), --port (default 8765), --no-browser. The server binds to localhost only and uses no external network (graph/markdown libraries are vendored).

Architecture

  • server/ — generic Python FastMCP server (uv run wiseman-mcp --db <path>): tools ask_wiseman, wiki_index, get_page, write_page, lint.
  • server/ (dashboard) — wiseman-dash --db <path>: read-only local web UI (stdlib HTTP + vendored Cytoscape.js graph), /api/* over the same WikiRepo.
  • server/ (cli) — wiseman-mcp --db <path> [context|status|stop-check|learned]: one entrypoint also backs the /wiseman hub (status) and the three hooks (context = SessionStart blob, stop-check = Stop gate, learned = PostToolUse notice), all reading the wiki through WikiRepo.
  • hooks/hooks.json — SessionStart + Stop + PostToolUse hooks that keep the wiki alive and visible.
  • skills/wiseman/ — the /wiseman discoverability hub (status + action menu).
  • skills/wiseman-dashboard/ — launch the read-only browser dashboard.
  • skills/wiseman-summon/ — the build pipeline skill.
  • templates/schema.md — the wiki operating manual injected into CLAUDE.md.
  • .wiseman/wiki.db (per project) — SQLite single source of truth (pages/links/ log/meta + FTS5).

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages