LABSCO SUMMARY
Zero cloud egress by default, and citations that go back to the source.
Two design choices carry this. First, evidence: the pipeline ranks citations across at least two distinct sources, so a paragraph in a weekly report points at the PR or conversation behind it rather than being a summary of a summary. Second, egress: cloud LLM calls require the instance, project and task switches all on, and paired with Ollama the whole pipeline runs with no cloud keys at all. Most of the deep documentation is in Chinese, which is the project's working language.
What it is
A local-first system that watches where your AI pair-programming actually happens — Claude Code, Codex, Cursor, VS Code, GitHub PRs and commits, local docs — and turns those events into structured documents. Its MCP server is how an assistant submits events and pulls the resulting assets back.
What you get
- A path for the assistant to push session events into the store and trigger distillation —
submit_session_events,distill_document - Retrieval of the produced assets: list them, open one, and walk a long-form document chapter by chapter —
list_assets,get_asset,get_asset_chapters - Entity lookup across the knowledge graph built from those sessions —
search_entity - Slash commands alongside the tools, including
/tokenknows:weeklyand/tokenknows:adr - Seven asset types out of the pipeline: weekly reports, tech designs, ADRs, incident reviews, long-form books, reusable agent skills, and the entity graph
Requirements
The backend running at http://localhost:8001 and the web UI at http://localhost:5173, plus uv — the plugin pulls the MCP server from PyPI via uvx. All plugin environment variables have working local defaults; set TOKENKNOWS_API_BASE, TOKENKNOWS_API_TOKEN, TOKENKNOWS_DEFAULT_PROJECT or TOKENKNOWS_WEB_BASE only for non-default setups, and create an API token in the web UI if your backend requires auth. macOS gets the full experience with collectors auto-starting under launchd; on Linux backend, frontend and collectors are all run manually; Windows is untested, with WSL2 recommended.
Setup effort
Build from source — git clone https://github.com/johnnywuj81/tokenknows.git
USE CASES
01
Writing the weekly update from what actually happened
Let the collectors capture the week's sessions, then distill a weekly report whose claims link back to the commits and conversations behind them.
02
Recovering the reasoning behind a decision
Search the entity graph for the component or the person, then open the ADR that came out of the session where it was decided.
03
Turning an outage into a review nobody has to write
Distill an incident review from the session events around the incident, with the evidence trail attached.
04
Reading a long-form asset without loading all of it
Pull the chapter list for a book-length document and fetch only the section you need.
BEFORE YOU INSTALL
What to know first
Requires
- The TokenKnows backend running at http://localhost:8001 and the web UI at http://localhost:5173
- uv on PATH
INSTALLATION
Connect your client
Server setup
TERMINAL
git clone https://github.com/johnnywuj81/tokenknows.git
cd tokenknows/code/tokenknows-api
python3 -m venv .venv && .venv/bin/pip install -e ".[dev]"
cp .env.local.example .env.local
.venv/bin/uvicorn app.main:app --host 127.0.0.1 --port 8001In a second terminal, from the repository root:
TERMINAL
cd code/tokenknows-web
npm install
npm run devMCP Clients
Claude Code
CLAUDE CODE · IN CLIENT
/plugin marketplace add johnnywuj81/tokenknows
/plugin install tokenknows@tokenknows