u/FruitCultural4632

My laptop runs Docker, IntelliJ, a test database, and a build server all at once. When I wanted to try AI coding assistants, there was nothing left for a 14b model. I tried opencode, aider, nanocoder, pi — they all refused to work reliably with anything smaller than 8b. So I built my own approach. Not an autonomous agent. Not vibe-coding. A human-directed CLI assistant designed specifically to work with 1B–4B models on large, real-world codebases. You do the strategy and context management. The model handles one small, well-defined task at a time. It runs on any machine with Python — desktop, laptop, or Android via Termux if your workstation is busy with Docker and builds. Also useful when your project keeps source code away from cloud AI — everything stays local, nothing leaves your machine.


The tools:

1bcoder — human-directed CLI assistant for 1B models. The key insight: small models fail at open-ended tasks but work well at bounded ones. 1bcoder externalizes navigation and planning so the model only handles one small, well-defined subtask at a time. Has /agent mode, step-by-step scripts, context managment tools, postprocessors, offline translator, project map, file search, MCP support, parallel queries to multiple 1b models.

simargl (Semantic Index: Map Artifacts, Retrieve from Git Log) — given a task description like "fix author field in Book class", finds which files are actually affected using semantic similarity over git history. Works on codebases 1GB+. Based on my PhD research in MSR — I ran experiments on MAP/MRR/Recall@K across different embedding architectures and aggregation strategies.

svitovyd — project structure scanner. Produces a map of definitions and cross-file dependencies. Has MCP server (stdio + HTTP/SSE for LAN) and Gradio web UI. Works with 1bcoder, opencode, aider, Claude Code, Cursor — anything MCP-compatible.

yasna — indexes sessions from all your AI agents (Claude Code, opencode, aider, continue.dev, 1bcoder) into one searchable store. yasna find "auth middleware" shows every session where you discussed it, with resume commands.


Install:

pip install 1bcoder
pip install simargl
pip install svitovyd
pip install yasna

simargl downloads bge-small (~130MB) once. yasna is stdlib only.


Termux setup (Android):

pkg install python ollama
ollama pull qwen2.5-coder:1b
ollama pull nomic-embed-text
pip install 1bcoder simargl svitovyd yasna

# Start MCP servers on LAN
svitovyd-mcp --http --port 8766
simargl-mcp --http --port 8765

Laptop connects to phone over WiFi. Phone does the indexing, laptop does the editing.


GitHub: github.com/szholobetsky/1bcoder github.com/szholobetsky/simargl github.com/szholobetsky/svitovyd github.com/szholobetsky/yasna

Happy to answer questions. Especially interested in feedback from anyone else running local LLMs on constrained hardware.

reddit.com
u/FruitCultural4632 — 20 days ago