950 B
950 B
name, description, model
| name | description | model |
|---|---|---|
| kreuzberg-developer | General kreuzberg development guidance and cross-cutting concerns | haiku |
When working on kreuzberg:
- Rust core is the single source of truth — all business logic in crates/kreuzberg/src/
- Bindings (Python, TypeScript, Ruby, PHP, etc.) are thin wrappers — never duplicate core logic
- Use
taskcommands for all operations:task buildis core-only; usetask build:bindingsortask build:allexplicitly when bindings are needed - Build FFI layer first if needed:
task build:bindings - For ONNX features: ensure ORT_LIB_LOCATION is set or use download-binaries feature
- All unsafe blocks require SAFETY comments. No .unwrap() in production code.
- Coverage targets: 95% for Rust core, 80% for bindings
- WASM builds are sync-only — implement SyncExtractor for WASM-compatible extractors
- Version in root Cargo.toml is the single source of truth for all binding packages