Thanks for helping make the cave bigger. PRs are welcome: new compressors, integrations, agent recipes, bug fixes, docs.
A new content-type compressor can add support for CSV, HTML, SQL dumps, notebook
output, or OpenAPI specs. Each one makes Caveman
useful to a whole new slice of payloads. Start from an existing one under
engine/ and copy its shape.
This project uses the Developer Certificate of Origin. It's a one-line promise that you wrote the code (or have the right to contribute it). Add a sign-off to every commit:
git commit -s -m "your message"That appends a Signed-off-by: Your Name <your@email> trailer. No CLA, no forms.
Whole repo is Apache-2.0 (see LICENSING.md). Contributions are inbound = outbound: you license your change under the same Apache-2.0 terms. Simple.
Open a pull request against this repository. A maintainer checks license scope,
tests, generated artifacts, and security boundaries for affected directory.
Profile-only changes follow narrower process in
docs/CONTRIBUTING_PROFILES.md.
Keep generated files in same pull request as their source and retain commit authorship and DCO sign-off.
- Build and test the package you touched (
go test ./...,pnpm test, orpytest, depending on the directory). - Keep it byte-safe: compressors must round-trip or degrade gracefully. Never silently corrupt a payload. On any parse problem, pass the bytes through untouched.
- Match the surrounding style. Small, focused PRs review fastest.
Questions → open a discussion or ping us at hello@caveman.so.