Rust source code analysis service using Tree-sitter, served over JSON-RPC sockets.
Find a file
2026-06-10 21:22:20 +00:00
.forgejo/workflows ci: canonical lab-release (cargo check + multi-arch + hero.releaser) 2026-06-10 19:56:10 +02:00
.hero chore: rename FORGEJO_TOKEN→FORGE_TOKEN, HERO_SOCKET_DIR→PATH_SOCKET, drop RUST_LOG and HERO_CODE_INDEXER_DB env declarations 2026-05-26 12:30:44 +02:00
crates chore: pin Rust toolchain to 1.96 and propagate rust-version to all crates 2026-06-01 09:30:45 +02:00
schema chore: migrate service.toml to canonical field names, move hero_lifecycle to hero_lib, add oschema 2026-05-31 22:52:02 +02:00
.gitignore Add .gitignore to exclude Rust build artifacts 2026-04-06 13:42:18 +02:00
Cargo.lock chore: update Cargo.lock to latest hero_lib, hero_proc, and unicode-segmentation 2026-06-01 20:04:19 +02:00
Cargo.toml chore: downgrade rust-version to 1.95.0 2026-06-01 13:01:04 +02:00
Cargo.toml.hero_builder_backup feat: add --info/--help startup conventions and bump dependency versions 2026-05-10 13:26:33 +02:00
PURPOSE.md chore: rename FORGEJO_TOKEN→FORGE_TOKEN, HERO_SOCKET_DIR→PATH_SOCKET, drop RUST_LOG and HERO_CODE_INDEXER_DB env declarations 2026-05-26 12:30:44 +02:00
README.md fix: rename hero_code_indexer_ui to hero_code_indexer_admin, add PURPOSE.md 2026-05-07 09:37:42 +02:00
rust-toolchain.toml chore: pin Rust toolchain to 1.96 and propagate rust-version to all crates 2026-06-01 09:30:45 +02:00

hero_code_indexer

Rust code analysis service — indexes Rust source code with Tree-sitter and serves a JSON-RPC 2.0 API over Unix sockets.

Quick start

service code_indexer start --update --reset
service code_indexer stop
service code_indexer status

Components

Binary Socket Role
hero_code_indexer_server rpc.sock Core RPC daemon (Tree-sitter + SQLite)
hero_code_indexer_admin admin.sock Bootstrap HTML admin dashboard
hero_code_indexer CLI client and service lifecycle manager

CLI usage

# Scan a project
hero_code_indexer scan --name myproject --path /path/to/rust/repo

# Search for a symbol
hero_code_indexer search --name myproject Indexer

# Find where a symbol is defined
hero_code_indexer where-is --name myproject handle_scan

# Show call graph
hero_code_indexer graph --name myproject scan_project --depth 3

See PURPOSE.md for full details.