llm-ingestion-okf/llms.txt
Kjell Tore Guttormsen b6c54e9495 chore(release): 0.8.2
The version moves to 0.8.2 in pyproject.toml, __init__.__version__ and
uv.lock (one line; `uv lock` touched no other package). CHANGELOG's
[Unreleased] becomes [0.8.2] -- 2026-09-11 with the entries K3-15, K3-17
and K3-18 wrote, unedited. The five install lines (README x4, llms.txt)
point at @v0.8.2; the guard pairing prose names v0.8.2, whose own
[tool.uv.sources] still pins guard v1.3.0; the tag history gains a v0.8.2
row and v0.8.1 stops being "the current tag". Test count re-measured on
2026-09-11: 1603 collected, 1602 passed, 1 skipped.

What the release delivers to a consumer on a tag: `okf check`'s sixteenth
rule (bundle_mismatch), which v0.8.1 does not carry, the --title-covered
stop beneath a title that answers more, and the regenerated
skills/okf-consume/. No behaviour change in src/ beyond the version string.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-11 02:34:12 +02:00

34 lines
1.5 KiB
Text

# llm-ingestion-okf
> Turn a folder of documents (PDF, DOCX, XLSX, PPTX, MD) into a bundle a model can answer from with a source on every claim. Offline and deterministic: no model call anywhere in the run path. Security is delegated to llm-ingestion-guard.
Requires Python 3.10+ and [uv](https://docs.astral.sh/uv/). Neither this package
nor the guard it depends on is on a package index yet; one command resolves both:
```sh
uv tool install "llm-ingestion-okf[extract] @ git+https://git.fromaitochitta.com/open/llm-ingestion-okf.git@v0.8.2"
```
Then, in the folder you want to work from:
```sh
okf project ~/my-documents
claude
```
`okf project` writes the bundle to `.okf/<id>/` and a Claude Code skill to
`.claude/skills/<id>-consume/` in the current directory. Start `claude` there
and ask in plain language. Three shapes of request are supported and the
generated skill states the rules for each: a **question**, a **hypothesis**
(answered per premise as `confirmed` / `refuted` / `undecidable-from-bundle`),
and a **task whose answer is a document** (every claim in the written file
carries its source; an ungrounded paragraph is written and marked, never
dropped).
## Docs
- [Consume in Claude Code](README.md#consume-in-claude-code): the same thing in
steps, several bundles in one project, and what was measured.
- [README](README.md): the pip-only fallback if uv is unavailable, the guard
pairing per tag, the build flags, phase status, and the upstream OKF version
policy.