okf

v0.9.2

Generates and maintains an Open Knowledge Format (OKF v0.1) knowledge bundle from a source-code repository. Mines git history for the rationale behind the code, parks what it cannot establish as open questions rather than guessing, and verifies that the bundle's claims are actually supported by the repository.

Community extension — Independently maintained. Use at your own discretion. Learn more

OKF knowledge bundles for Spec Kit

A Spec Kit extension that turns your AI coding agent into an Open Knowledge Format (OKF v0.1) enrichment agent. It builds a knowledge/ directory of cross-linked markdown concepts from your source code and git history, and keeps it current.

It is catalogify packaged as slash commands: the same scripts and the same workflow, built from the same source. You do not need to install catalogify to use it.

Install

# From a catalogify release
specify extension add okf --from https://github.com/alexcpn/catalogify/releases/download/v<version>/speckit-okf-<version>.zip

# From a catalogify checkout (dev mode)
python3 integrations/speckit/build.py
specify extension add --dev build/speckit-okf

Usage

/speckit.okf.generate   # 1. bootstrap the bundle from code and git history
/speckit.okf.clarify    # 2. answer what the agent parked instead of guessing
/speckit.okf.update     # 3. after code changes, refresh incrementally
/speckit.okf.validate   # 4. OKF conformance: is the bundle well-formed?
/speckit.okf.verify     # 5. are its claims supported by the repository?

Output lands in knowledge/ (configurable), ready to commit alongside your code.

Command names by agent

Spec Kit names commands after your agent integration. In Claude Code and Codex they are skills with hyphens: /speckit-okf-generate, /speckit-okf-clarify, /speckit-okf-update, /speckit-okf-validate and /speckit-okf-verify. Other agents get the dotted names above.

If a command is missing, check where it was registered. For Claude Code that is .claude/skills/speckit-okf-*; for Codex, .agents/skills/speckit-okf-*. Extensions are registered for the integrations that exist at install time, so an integration added afterwards does not get them. Reinstall with --force:

specify extension add okf --force --from <the same URL>

Restart the agent afterwards so it picks up the new skills.

Configuration

Copy okf-config.template.yml to .specify/extensions/okf/okf-config.yml to change the bundle directory, excludes, type mappings, layout or detail mode. Defaults work without any config.

The okf.detail knob is default unless configured otherwise. Set it to detailed for deeper interfaces, dependencies, history, gotchas, open questions, and explanatory prose without changing concept coverage. Existing concept-coverage behavior is preserved.

For a single command, include an explicit override in its arguments, such as /speckit.okf.generate detail: detailed. The override does not change the config file. During update, the existing bundle structure and clarified content are preserved.

For maintainers

Nothing in the installed extension is edited by hand. build.py assembles it from src/catalogify/_scripts and src/catalogify/_skill_assets; only extension.yml, commands/verify.md and this README live here. See the docstring of build.py for how the workflow documents become commands and what stops a build.

Stats

2 stars

Version

0.9.2release
Updated 10 days ago

Install

Using the Specify CLI

specify extension add okf --from https://github.com/alexcpn/catalogify/releases/download/v0.9.2/speckit-okf-0.9.2.zip

Owners

License

MIT