Knowledge base operating system — AI agents compile raw sources into persistent, cross-linked Markdown wikis
Project description
LLM Wiki Monorepo
pip install baissarienterprises-llm-wiki
A production-grade knowledge base operating system. AI agents compile raw sources into persistent, cross-linked Markdown wikis. Knowledge compounds over time. No database. No API lock-in. Just files.
Instead of re-retrieving raw documents on every query (RAG), this system compiles sources into a living wiki that agents maintain automatically. Clone anywhere, run with any AI agent, pull on any machine.
Features
| Area | Capabilities |
|---|---|
| Ingestion | Two-stage chain-of-thought ingest with SHA256 caching. Multi-step agent loop. Batch processing. Deep research (web search → fetch → ingest → synthesize). |
| Quality | 15-pass automated lint: dead links, orphans, frontmatter validation, contradictions, source drift, page size, log rotation. New: stale page detection when raw sources change. |
| Graph | Knowledge graph engine (TypeScript): Louvain community detection, 4-signal relevance model, surprising connections, knowledge gaps. Pure Python fallback. |
| Backup | Snapshot, restore, integrity verification, automatic pruning. One-command --auto for safe state. |
| Link Suggestions | Entity extraction from frontmatter/headings/bold terms. 4-signal scoring. Automatic wikilink insertion (--apply). |
| Search | BM25 full-text search (TypeScript, zero deps). Web viewer search bar with ranked results. Graph search. |
| MCP Server | 8 stdio tools for programmatic access. New: serve multiple wikis from one server (--projects). Integrates with Claude Desktop, Codex, Cursor. |
| Templates | 19 domain-specific wiki scaffolds with consistent schemas. Research, codebase, finance, ML, cybersecurity, medicine, and more. |
| Web Viewer | Local preview with KaTeX, mermaid, wikilink resolution. New: search bar, graph insights panel. |
| Browser Extension | Chrome web clipper with Readability + Turndown. New: auto-trigger ingest after clip. |
| CI/CD | GitHub Actions: Python syntax checks, TypeScript builds, full integration test (scaffold → lint → graph build → insights). |
Quick Start
# Install from PyPI
pip install baissarienterprises-llm-wiki
# Or install from source (for development)
git clone https://github.com/JeanBaissari/llm-wiki-monorepo.git
cd llm-wiki-monorepo
bash install.sh
# Scaffold a wiki
llm-wiki scaffold ~/my-wiki "My Research" --template research
# Ingest a source (two-step agent loop)
llm-wiki ingest ~/my-wiki raw/articles/my-source.md
# Check quality
llm-wiki lint ~/my-wiki
# Discover connections
llm-wiki insights ~/my-wiki
# Start MCP server (for Claude Desktop, Codex, etc.)
llm-wiki serve ~/my-wiki
Architecture
wiki/ directory ← shared state (Markdown files)
│
├── Agent Skill + Python Scripts → 12 scripts: scaffold, ingest, lint,
│ insights, backup, link-suggest,
│ deep-research, audit, benchmark,
│ migrate-log, test-e2e, test-blocks
├── MCP Server (stdio) → programmatic access, 8 tools,
│ single or multi-wiki mode
├── Graph Engine (Node.js) → relevance model, Louvain, insights
├── Web Viewer + Obsidian Plugin → human browsing + feedback
├── Browser Extension → web clipping + auto-ingest
└── templates/ → 19 domain schemas
Packages
| Package | Language | Purpose |
|---|---|---|
skill/ |
Python + Markdown | Agent skill (8 operations) + 12 Python scripts + 11 reference docs |
mcp-server/ |
TypeScript | MCP server — 8 tools, single or multi-wiki mode |
graph-engine/ |
TypeScript | Knowledge graph — relevance, Louvain communities, insights |
templates/ |
Markdown + JSON | 19 domain-specific project templates (audited, consistent) |
web-viewer/ |
TypeScript | Preview server with search + graph insights panel |
extension/ |
JavaScript | Chrome web clipper with auto-ingest |
audit-shared/ |
TypeScript | Shared audit file format library |
plugins/obsidian-audit/ |
TypeScript | Obsidian plugin — file feedback from vault |
Templates (19 domains)
research codebase finance algorithmic-trading cybersecurity machine-learning prompt-engineering copywriting marketing design-systems architecture crypto commodities decompilers medicine developer-tools personal-growth reading business
Every template provides: PURPOSE.md (scope + goals), SCHEMA.md → CLAUDE.md (page types, conventions, frontmatter, cross-referencing, contradiction handling), extra-dirs.json (domain directories).
Documentation
| File | What it covers |
|---|---|
README.md |
You are here |
QUICKGUIDE.md |
Every command with real examples |
AGENTS.md |
Architecture, conventions, build/test commands |
INDEX.md |
Complete file tree with descriptions |
VERSIONING.md |
Semantic versioning policy and release process |
PURPOSE.md |
Why this system exists |
skill/references/ |
11 detailed reference guides |
Requirements
- Python 3.10+ — for all skill scripts
- Node.js 18+ — for MCP server, graph engine, web viewer
- npm — for package management
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file baissarienterprises_llm_wiki-0.1.1.tar.gz.
File metadata
- Download URL: baissarienterprises_llm_wiki-0.1.1.tar.gz
- Upload date:
- Size: 41.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cf79adbb8e1548ad7cf3222a6d458fac878ccc713216f623be629ed993b12892
|
|
| MD5 |
901323025d6d3d2a4073646f9d28caf4
|
|
| BLAKE2b-256 |
4c9046e485b83f685f37fc599d88057ec669b37643775b55e1557ef4e163b69e
|
Provenance
The following attestation bundles were made for baissarienterprises_llm_wiki-0.1.1.tar.gz:
Publisher:
release.yml on JeanBaissari/llm-wiki-monorepo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
baissarienterprises_llm_wiki-0.1.1.tar.gz -
Subject digest:
cf79adbb8e1548ad7cf3222a6d458fac878ccc713216f623be629ed993b12892 - Sigstore transparency entry: 1932792803
- Sigstore integration time:
-
Permalink:
JeanBaissari/llm-wiki-monorepo@234d19e65da131a3024d9fb65caa3b96b8d591fe -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/JeanBaissari
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@234d19e65da131a3024d9fb65caa3b96b8d591fe -
Trigger Event:
push
-
Statement type:
File details
Details for the file baissarienterprises_llm_wiki-0.1.1-py3-none-any.whl.
File metadata
- Download URL: baissarienterprises_llm_wiki-0.1.1-py3-none-any.whl
- Upload date:
- Size: 49.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dcab254bf7b0abbc1563381afc382ab7f41bca1d6f8f8faf19cf715ba93d262b
|
|
| MD5 |
ff79f554593f27ed01c56c68c7b6ce93
|
|
| BLAKE2b-256 |
2d2586e54742d290aace9d1a35efb6a84892b8f7d4bdedd179e6a3a227e5d6a0
|
Provenance
The following attestation bundles were made for baissarienterprises_llm_wiki-0.1.1-py3-none-any.whl:
Publisher:
release.yml on JeanBaissari/llm-wiki-monorepo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
baissarienterprises_llm_wiki-0.1.1-py3-none-any.whl -
Subject digest:
dcab254bf7b0abbc1563381afc382ab7f41bca1d6f8f8faf19cf715ba93d262b - Sigstore transparency entry: 1932792892
- Sigstore integration time:
-
Permalink:
JeanBaissari/llm-wiki-monorepo@234d19e65da131a3024d9fb65caa3b96b8d591fe -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/JeanBaissari
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@234d19e65da131a3024d9fb65caa3b96b8d591fe -
Trigger Event:
push
-
Statement type: