Skip to main content

OKF Knowledge Navigator — search, audit, fix, and export Open Knowledge Format bundles

Project description

okf-nav 🧭

OKF Knowledge Navigator — search, audit, fix, and export Open Knowledge Format bundles from your terminal.

uv tool install okf-nav        # or: pip install okf-nav
okf-nav search "agent memory"   # full-text search
okf-nav audit --fix             # detect + auto-repair
okf-nav export --json           # dump as JSON

Why

OKF bundles are directories of Markdown files with YAML frontmatter — simple, git-friendly, agent-ready. But once you have a bundle, you need tooling to:

  • Search across concepts (full-text + semantic TF-IDF)
  • Audit quality (missing descriptions, tags, stale entries)
  • Fix issues automatically
  • Export to JSON for pipelines and integrations

okflint validates. Kiso publishes. okf-nav helps you navigate and maintain.


Install

# Recommended — uv (fast, isolated)
uv tool install okf-nav

# Or pip
pip install okf-nav

# With semantic search (TF-IDF)
uv tool install 'okf-nav[semantic]'

Requires: Python 3.10+


Usage

Search

# Full-text search
okf-nav search "agent memory retrieval"

# TF-IDF semantic search (requires scikit-learn)
okf-nav search --semantic "related concepts"

# Show all results including duplicates
okf-nav search --all "database"

Explore

# List all bundles
okf-nav topics

# Bundle overview
okf-nav status

# Show a specific concept
okf-nav show my-bundle/concepts/foo.md

Health & Fix

# Check bundle quality
okf-nav health

# Check + auto-fix missing descriptions and tags
okf-nav audit --fix

Auto-fix repairs:

  • Missing description → extracts from body text
  • Missing tags → infers from type and path
  • Stale entries (≥90d) → archives to .archive/

Export

# All bundles as JSON
okf-nav export --json

# Single bundle, minified
okf-nav export --json --bundle my-bundle --minify

Edit

# Set frontmatter fields
okf-nav update my-bundle/concepts/foo.md --set description="New desc"

# Manage tags
okf-nav update foo.md --add-tag python --remove-tag legacy

Stale

# List entries not updated in 90+ days
okf-nav stale

# Archive stale entries
okf-nav stale --archive

# Custom threshold
okf-nav stale --older 30

Agent Integration

# Auto-context hook: returns relevant pointers for a prompt
okf-nav context "How do I configure the memory system?"

This outputs a compact pointer block with inline snippet — designed for agent context injection (<!-- okf-nav:context -->).


Environment

Variable Default Description
OKF_BUNDLES_DIR ./okf-bundles Directory containing OKF bundles
OKF_CACHE_DIR ~/.cache/okf-nav Cache location for search indices

Point to your bundle:

OKF_BUNDLES_DIR=/path/to/your/bundles okf-nav status

Comparison

Feature okf-nav okflint superops/okf Kiso
Search (full-text)
Search (semantic)
Validate ✅ basic ✅ deep (18 rules) ✅ 10 rules ✅ check
Auto-fix
JSON export ✅ (diagnostics)
Static site
Git integration
CI gate

okf-nav fills the gap: okflint validates, okf-nav fixes + searches + exports.


Project Status

Alpha. Active development. The CLI is functional and used daily by the author.


License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

okf_nav-0.1.0.tar.gz (13.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

okf_nav-0.1.0-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file okf_nav-0.1.0.tar.gz.

File metadata

  • Download URL: okf_nav-0.1.0.tar.gz
  • Upload date:
  • Size: 13.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.22 {"installer":{"name":"uv","version":"0.11.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for okf_nav-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e76b7d690723a780d8015f03fa8c4d07bc2e3783a9449bfb85a62844117e2f60
MD5 95c57acf49edf8f04ba061978da85dd4
BLAKE2b-256 ea89c76a6ee9d272393ede7048b3cb7be854441f5c76da6413b59559d5a164e7

See more details on using hashes here.

File details

Details for the file okf_nav-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: okf_nav-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 14.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.22 {"installer":{"name":"uv","version":"0.11.22","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

File hashes

Hashes for okf_nav-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b0dc4e04a12a6cc41e7a756f55bf9c69d7ec6897a7e212a3f755dd64fd509748
MD5 be24efdc95f1d210ff0b8fc0d9ad1eec
BLAKE2b-256 7d1bbf8465b9b1a4d415b5e166b4e9f42e8a732c01d8749dd5597699280b512b

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page