Skip to content

Introduce Rust port of Mini Coding Agent (mini-coding-agent-rs)#13

Open
parssky wants to merge 6 commits into
rasbt:mainfrom
parssky:main
Open

Introduce Rust port of Mini Coding Agent (mini-coding-agent-rs)#13
parssky wants to merge 6 commits into
rasbt:mainfrom
parssky:main

Conversation

@parssky

@parssky parssky commented Jun 28, 2026

Copy link
Copy Markdown

Summary

This PR introduces mini-coding-agent-rs , a 1:1 Rust port of the existing Python mini-coding-agent . It brings the exact same robust feature set—including advanced context-reduction, tool sandboxing, and LLM hallucination recovery—while leveraging Rust's performance, safety, and single-binary portability!

Key Implementations & Parity Features:

  • Workspace Context ( workspace.rs ): Dynamically captures cwd , branch state, git status, and local docs via process execution to feed context to the LLM immediately.
  • Token-Efficient Memory ( session.rs ): Replicates the Python SessionStore JSON architecture, utilizing aggressive clip() strategies and rolling chat history to prevent the LLM context window from overflowing.
  • Robust Parsing Engine ( agent.rs ): Implements dual JSON and regex-based XML fallback parsing. If smaller Ollama models generate malformed payloads, the agent intercepts the error and loops back to ask the model to retry.
  • Sandboxed Tool Execution ( tools.rs ): Ports all tools ( list_files , read_file , search , write_file , patch_file , run_shell ) with the exact same [y/N] ApprovalPolicy loop to prevent destructive actions from running unchecked.
  • CLI & UX ( main.rs ): Fully replicates the /help , /memory , /session , and /reset slash commands alongside the signature ASCII welcome art using clap for identical flag configuration ( --model , --cwd , --approval , etc.).

How to Test

  1. Navigate to the mini-coding-agent-rs directory.
  2. Run cargo build --release
  3. Install globally via cargo install --path .
  4. Run mini-coding-agent-rs --model in any project directory and test a /memory or file read prompt!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant