# Contributing Keep changes focused. Open an issue before adding a major feature or dependency. Semantic search, dashboards, remote syncing and background services are outside the project's scope. ## Checks Requires Rust, a C compiler and Python 3 for the terminal tests. ```sh cargo fmt --check cargo clippy --locked --all-targets -- -D warnings cargo test --locked cargo build --release --locked python3 tests/pty_smoke.py target/release/cont ``` Tests use fictional data. Terminal tests launch stub executables in place of real agents. ## Bug reports and fixes Include steps to reproduce and the relevant agent version. For parser bugs, provide a minimal fictional JSONL or SQLite fixture. Add a regression test with bug fixes where practical. Do not commit real session histories, caches, credentials or screenshots of private work. ## Code structure - `src/parse.rs`: Pi, Claude Code, Codex and OMP JSONL parsing. - `src/opencode.rs`: OpenCode SQLite reader. - `src/index.rs`: session discovery and caching. - `src/search.rs`: title and human-message search. - `src/session.rs`: session metadata and agent launch commands. - `src/ui.rs`: terminal UI.