Sia Code
Local-first codebase intelligence for CLI workflows.
Sia Code helps you:
- search and research code with lexical, semantic, or hybrid retrieval
- run multi-hop architecture research across files, symbols, and repos
- trace historical file and behavior changes (
memory trace,memory git-context) - inspect blast radius before refactors
- work across big repos, multi-repo workspaces, and git worktrees
Why use it
- Local index. No hosted service required.
- Works well on big repos (think ~5,000 files, not only small projects).
- Aggregates
search,research, andstatusacross multiple repos in one workspace. - Handles both architecture questions and history-aware change questions.
- Good fit for MCP clients and skill-based CLI agents.
Install
# MCP + CLI
uv tool install "sia-code[mcp]"
# CLI only
uv tool install sia-code
If you prefer pip, pip install sia-code and pip install "sia-code[mcp]" also work.
Quick start
1) Skill first
Source skill file:
skills/sia-code/SKILL.md
Ask your agent to install from the file link.
2) MCP
uv tool install "sia-code[mcp]"
sia-code-mcp
Simple JSON reference:
{
"mcpServers": {
"sia-code": {
"command": "uvx",
"args": ["--from", "sia-code[mcp]", "sia-code-mcp"]
}
}
}
Then point your MCP client at sia-code-mcp.
See docs/MCP_INTEGRATION.md and docs/LLM_CLI_INTEGRATION.md.
3) Direct CLI
# initialize + index
uvx sia-code init
uvx sia-code index .
# lexical search for exact symbols
uvx sia-code search --regex "AuthService|token"
# hybrid / semantic-style research
uvx sia-code research "how does authentication work?"
# historical change research
uvx sia-code memory trace "why did auth behavior change" --format table
uvx sia-code memory git-context src/auth.py
Big repos, multiple repos, worktrees
- Big repo: built for real codebases with thousands of files, including ~5,000-file projects
- Multi-repo workspace: run
index .from parent folder; Sia Code auto-detects git sub-repos, indexes each, then aggregatessearch,research, andstatus - Git worktrees / multi-agent sessions: use shared or isolated indexes with
SIA_CODE_INDEX_SCOPE=shared|worktree
# shared index across worktrees/agents
export SIA_CODE_INDEX_SCOPE=shared
# isolated index per worktree
export SIA_CODE_INDEX_SCOPE=worktree
History-aware understanding
Use Sia Code for both code lookup and change understanding:
search-> lexical, semantic, or hybrid retrievalresearch-> multi-hop architecture tracing across related files and symbolsmemory sync-git-> imports merges/tags as searchable timeline + changelog contextmemory trace-> explains likely causal history for behavior or symbol changesmemory git-context <file>-> shows effective file history, likely owners, reverts, evolution narrative, and co-change blast radiusmemory working-set "query"-> emits compact shared JSON context for agent handoff
More docs
docs/CLI_FEATURES.mddocs/INDEXING.mddocs/QUERYING.mddocs/MEMORY_FEATURES.mddocs/MCP_INTEGRATION.mddocs/LLM_CLI_INTEGRATION.mddocs/ARCHITECTURE.md
License
MIT
Metadata
Release files for sia-code 0.8.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| sia_code-0.8.2.tar.gz | 167.9 kB | With provenance | Details for sia_code-0.8.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| sia_code-0.8.2-py3-none-any.whl | Python 3 | none | any | Details for sia_code-0.8.2-py3-none-any.whl |
Total release size: 343.5 kB
Release files / sia_code-0.8.2.tar.gz
| Download URL | sia_code-0.8.2.tar.gz |
|---|---|
| Size | 167.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0c64d35fad81c6452b474fbc0d72f32eb0b57b82cb3e758d3e11a806ff6f9eca
|
|
BLAKE2b-256 checksum How to use checksums |
976660364b82fd589e47f56255e36c335af3ab105f06a65a6714bb3b508a0b18
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 14, 2026.
Transparency logRelease files / sia_code-0.8.2-py3-none-any.whl
| Download URL | sia_code-0.8.2-py3-none-any.whl |
|---|---|
| Size | 175.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f39bf08c7bc87fc9a9d23580f30480416e2799efae16eb74dd53dbc418c4e028
|
|
BLAKE2b-256 checksum How to use checksums |
3530126326feb459c1644ba48d99f2e61773691e43ab47e62d2ce5d310c0a76a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 14, 2026.
Transparency logSecurity for sia-code 0.8.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 2 files in this release have been uploaded with provenance metadata.
Attestation for sia_code-0.8.2.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jul 14, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.