Hierarchical, semantic code chunking for AI systems
Project description
ChunkHive
Semantic, hierarchical code chunking for AI systems
ChunkHive is a production-grade code chunking engine designed for modern AI workflows such as code embeddings, retrieval-augmented generation (RAG), agentic systems, and dataset synthesis.
It converts raw repositories into clean, structured, semantically accurate chunks with byte-level precision and preserved hierarchy.
🚀 Why ChunkHive?
Modern AI systems need more than naive text splitting.
chunkhive provides:
- AST-first semantic correctness
- Hierarchical structure awareness
- Byte-accurate spans
- Robust parsing across real-world repositories
🧠 Core Principle
AST is the Authority, Tree-sitter is Enrichment
- Primary source of truth: Language AST (semantic accuracy)
- Fallback & enrichment: Tree-sitter (structural robustness)
- Result: Maximum parsing success across diverse codebases
✨ Features
- Semantic AST-first chunking (no filename-based chunks)
- Preserves hierarchy: Module → Class → Method / Function
- Accurate parent–child relationships
- Byte-level precision (
start_byte,end_byte) - Clean symbol naming (
ast.name) - Import & decorator capture
- Robust handling of edge cases (empty files,
__init__.py) - Supports documentation + code chunking flows
🗂 Supported Chunk Types
- module
- class
- method
- function
- documentation
📦 Installation
pip install chunkhive
[](https://pypi.org/project/chunkhive/)
[](https://pypi.org/project/chunkhive/)
[](https://pypi.org/project/chunkhive/)
---
## 📦 Output Schema (Simplified)
```json
{
"chunk_id": "ts_123_456",
"file_path": "src/example.py",
"chunk_type": "function",
"language": "python",
"code": "...",
"ast": {
"name": "my_function",
"parent": "MyClass"
},
"span": {
"start_byte": 123,
"end_byte": 456,
"start_line": 10,
"end_line": 25
},
"metadata": {
"byte_accuracy": "exact_bytes"
}
}
🛠 Use Cases
Code embedding model training
RAG pipelines
Agentic AI systems
Code search & navigation
QA dataset generation
Static analysis & tooling
📜 License
Apache License 2.0 — free to use, modify, and distribute, including commercial use.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file chunkhive-0.1.5.tar.gz.
File metadata
- Download URL: chunkhive-0.1.5.tar.gz
- Upload date:
- Size: 37.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
27222a7bb57c544848284959b36c1f111197c8b362c6d3c6b90f4508fa833abe
|
|
| MD5 |
63d1ded4cc1d4198620683d5ce633c5c
|
|
| BLAKE2b-256 |
5a5af7fc423176e0edf3569d6be0db9f6a106d80d7f174b7b6fec3c63a8d67f5
|
File details
Details for the file chunkhive-0.1.5-py3-none-any.whl.
File metadata
- Download URL: chunkhive-0.1.5-py3-none-any.whl
- Upload date:
- Size: 44.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e44482b0a8c890e9162815ca010fff31eeb731d9badaf7875244c8b4945529f8
|
|
| MD5 |
145405d1b11f6865706be4298b2531bf
|
|
| BLAKE2b-256 |
7769c73cfcb8dd3d8f0e736fd2a7a85d4f66fdfcb577c2d5bc42f132b43756a7
|