llm-wiki-go
Health Gecti
- License — License: GPL-3.0
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Community trust — 11 GitHub stars
Code Gecti
- Code scan — Scanned 6 files during light audit, no dangerous patterns found
Permissions Gecti
- Permissions — No dangerous permissions requested
This tool is a "Karpathy-style" knowledge management system designed for LLM agents like Claude Code. It uses a Go-based linter to enforce structural rules on a compiled wiki, ensuring that markdown knowledge entries properly trace back to immutable source documents.
Security Assessment
The overall risk is Low. The code scan of 6 files found no dangerous patterns, no hardcoded secrets, and the tool does not request any dangerous system permissions. It is essentially a local file parser and linter that reads raw files and validates Markdown structure. It does not appear to execute arbitrary shell commands, make external network requests, or access sensitive system data.
Quality Assessment
The project is active and healthy, receiving its last push today. It uses the standard GPL-3.0 license and has clear, comprehensive documentation. While the community footprint is relatively small (11 GitHub stars), the codebase is straightforward and utilizes standard GitHub Actions for Go testing and CodeQL security analysis.
Verdict
Safe to use.
Karpathy-style LLM Wiki — raw/ holds immutable source material, wiki/ is the compiled knowledge layer, wikilint enforces structure.
llm-wiki-go
A Karpathy-style "LLM Wiki" — a repo designed around
the idea that the interesting knowledge artifact is a living, compiled
wiki, not the raw source material it was distilled from.
The repo has two data layers and a small amount of Go tooling that keeps
them honest:
raw/holds immutable source material: documents, transcripts,
notes, captures. Nothing inraw/is ever rewritten, summarized in
place, or deleted.wiki/is the canonical compiled knowledge layer, in
Obsidian-friendly Markdown. Entities, topics, and sources each get
their own page. Every substantive claim traces back toraw/through
a## Sourcessection.
Claude Code (and any other coding agent operating in this repo) acts as
the compiler and editor: it reads from raw/, compiles knowledge intowiki/, and keeps the wiki internally consistent. The rules the agent
follows are in CLAUDE.md and AGENTS.md.
How the compiled knowledge is enforced
The Go CLI wikilint enforces the structural invariants so the wiki
stays well-formed as it grows. It checks that every page has a single# title, that substantive pages have a non-empty ## Sources
section, that Markdown links and Obsidian-style [[wikilinks]] all
resolve, that no two pages collide on a normalized title slug, and that
no page is an orphan unreachable from wiki/index.md.
File layout
llm-wiki-go/
├── .claude/ # Claude Code skills, agents, shared submodule
│ ├── agents/ # focused sub-agent definitions
│ ├── shared/ # git submodule: claude-code-support-tools
│ └── skills/ # workflow skills (ingest, answer, lint, reconcile)
├── cmd/
│ └── wikilint/ # linter CLI entry point
├── internal/
│ ├── wiki/ # helpers for ingest / answer / reconcile workflows
│ └── wikilint/ # linter implementation, tested in-package
├── raw/ # immutable source material (read-only for agents)
├── wiki/ # canonical compiled knowledge layer (Markdown)
│ ├── entities/
│ ├── topics/
│ ├── sources/
│ ├── index.md # entry point; every page must be reachable from here
│ └── log.md # append-only record of substantive wiki changes
├── AGENTS.md # agent guidelines
├── CLAUDE.md # Claude Code guidelines (imports AGENTS.md)
├── Makefile # convenience wrapper around go + wikilint
├── README.md
└── go.mod
No go.sum file ships with the scaffold: the project currently depends
only on the Go standard library, and Go does not emit a go.sum until
external modules are required.
Getting started
raw/ and wiki/ are tracked in git and ship with the repo. The
default example uses raw/ocms-go.core/, a directory of symlinks into a
sibling ../ocms-go.core checkout. wiki/ ships as the compiled
Markdown.
For the default example, clone ocms-go.core as a sibling of this repo
and you're ready to go — no make setup needed:
cd ..
git clone https://github.com/olegiv/ocms-go.core.git
cd llm-wiki-go
make setup remains available for bootstrapping against a different
source repo. It creates the directory structure (raw/,wiki/entities/, wiki/topics/, wiki/sources/) and seedswiki/index.md and wiki/log.md if they don't already exist.
Commands
All common tasks go through the Makefile. Run make help to list the
available targets:
make help # list every target with a one-line description
make setup # create raw/ and wiki/ directory structure
make build # compile bin/wikilint
make test # run the Go test suite
make lint # run wikilint against ./wiki
make check # full pre-commit chain: fmt-check + vet + test + lint
make fmt # format all Go files in-place
make clean # remove build artifacts (bin/)
make install # install wikilint into $(GOBIN) or $(GOPATH)/bin
Under the hood these invoke the standard Go toolchain. If you prefer,
you can drive it directly:
go build ./...
go test ./...
go run ./cmd/wikilint -wiki ./wiki
On success the linter prints exactly wikilint: OK. On failure it
prints one issue per line to stderr in the form<relative-path>: <message> and exits with a non-zero status.
Claude Code workflow
The intended workflow when Claude Code (or any capable coding agent) is
driving the wiki looks like this:
- Ingest — the
ingest-sourceskill reads files inraw/, extracts
entities, topics, and claims, creates or updates pages underwiki/,
refresheswiki/index.md, and appends an entry towiki/log.md. - Answer — the
answer-from-wikiskill answers user questions fromwiki/first, consultingraw/only when the wiki does not already
contain the answer. Anything new learned fromraw/is compiled
back intowiki/. - Reconcile — the
reconcile-conflictsskill records disagreements
between sources in a page's## Contradictionssection instead of
silently merging them. - Lint — the
lint-wikiskill runswikilintand fixes whatever it
reports, in the wiki rather than in the linter.
Focused sub-agents back each workflow: a read-only source-analyst for
extraction from raw/, a wiki-editor that creates and refines wiki
pages, and a contradiction-reviewer that proposes explicit
contradiction notes instead of papering over disagreements.
Submodule: .claude/shared
The .claude/shared/ directory is a Git submodule pointing atolegiv/claude-code-support-tools.
It contains shared Claude Code tooling — stacks, hooks, and helpers —
that is reused across multiple projects. After cloning the repo, run:
git submodule update --init --recursive
to populate .claude/shared/. (raw/ and wiki/ are already tracked
in git and do not need to be created.)
License
llm-wiki-go is released under the GNU General Public License v3.0.
See LICENSE for the full text.
Copyright (C) 2026 Oleg Ivanchenko
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi