Skip to content

Contributing

Khiip is live on PyPI (base khiip 0.2.2, AGPL-3.0) with the MCP server and the Obsidian plugin released. The authoritative contributor guide is CONTRIBUTING.md in the repo — this page is an orientation.

Get set up

Terminal window
git clone https://github.com/KhiipAI/khiip.git ~/projects/khiip
cd ~/projects/khiip
pip install -e ".[dev]"

Running tests

Terminal window
make test # hermetic pytest suite
make smoke # full live round-trip against fxtwitter + the bundled embedder

Where things go

Khiip is built around capability registries, so most contributions slot in without touching the core:

  • A new source → an extractor that emits a typed payload (see Typed payloads)
  • A new output shape → a renderer behind the Renderer Protocol (see Substrate overview)
  • A new media channel → a fetcher in the media-fetcher registry

Each registry entry declares what it supports; the first match wins. This is what keeps the substrate extensible without coupling.

Ways to help