CommunityCodierung & Entwicklunggithub.com

fortunto2/rust-code

KI-gestützter Terminal-Coding-Agent in Rust – TUI, BAML-Agenten-Schleife, Fuzzy-Suche, tmux-Hintergrundaufgaben, Fähigkeiten, MCP-Unterstützung

Was ist rust-code?

Dieses Skill-Paket, genannt `/autoresearch`, implementiert das Karpathy-Autoresearch-Muster zur selbstverbessernden Prompt-Optimierung. Es besteht aus einem Rust-Kernmodul (`crates/sgr-agent/src/autoresearch.rs`), einem Python-Dashboard (`skills/autoresearch/dashboard.py`) und eingebetteten Testfällen. Der Prozess durchläuft Zyklen aus Generieren, Bewerten, Bewerten, Behalten/Verwerfen und Mutieren, um Prompts für verschiedene Ziele wie Tool-Auswahl, System-Prompts, Skills und Entscheidungsparser zu optimieren. Entwickler können es über die Rust-API oder die CLI (z. B. `cargo run -- autoresearch tool-selection --cycles 20`) steuern. Es unterstützt Modelle wie Gemini (zur Generierung) und Claude Sonnet (zur Bewertung) und bietet Kostentransparenz: Ein vollständiger Durchlauf von 20 Zyklen kostet je nach Ziel zwischen etwa 1 und 6 US-Dollar.

Funktioniert mit✓Claude Code~Codex CLI~Cursor✓Gemini CLI
npx skills add fortunto2/rust-code

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

/autoresearch – Selbstverbessernde Prompt-Optimierung

Karpathy-Autoresearch-Muster: Generieren → Bewerten → Bewerten → Behalten/Verwerfen → Mutieren → Wiederholen

Architektur

Kern-Engine: crates/sgr-agent/src/autoresearch.rs (Rust-Modul, Feature genai). Dashboard: skills/autoresearch/dashboard.py (Python, eigenständiger Betrachter). Testfälle: skills/autoresearch/test_cases/*.json (zur Kompilierzeit eingebettet über include_str!).

Ziele

ZielWas es optimiertBewertungsmetrik
tool-selectionTool-Beschreibungen im Agenten% richtiges Tool ausgewählt für 66 Testaufgaben
system-promptAgenten-System-Prompt (SOUL.md)Entscheidungsqualität: richtiges Tool + kohärente Begründung (4 Kriterien)
skillBeliebige SKILL.md-DateiBinäre Kriterien-Erfüllungsrate (4 Kriterien)
decision-parserStrukturiertes AusgabeschemaParse-Erfolg + Feldqualität (5 Kriterien)

Verwendung (Rust-API)

use sgr_agent::autoresearch::{AutoResearch, Config, Target};

let config = Config {
    target: Target::ToolSelection,
    batch_size: 10,
    cycle_secs: 120,
    gen_model: "gemini-2.5-flash".into(),
    eval_model: "claude-sonnet-4-6".into(),
    data_dir: "autoresearch_data/tool-selection".into(),
};
let ar = AutoResearch::new(config);
ar.run(20).await?; // 20 Zyklen

Schnellstart (CLI – wenn in rc-cli eingebunden)

# Tool-Auswahl-Optimierung (größte Wirkung)
cargo run -- autoresearch tool-selection --cycles 20

# System-Prompt-Optimierung
cargo run -- autoresearch system-prompt --cycles 10

# Optimierung eines bestimmten Skills
cargo run -- autoresearch skill --name delegate --cycles 15

# Entscheidungsparser-Optimierung
cargo run -- autoresearch decision-parser --cycles 10

# Dashboard (Python, eigenständig)
python3 skills/autoresearch/dashboard.py --target tool-selection --port 8501

Funktionsweise

Jeder Zyklus:

  1. Generieren Sie N Ausgaben mit aktuellem Prompt (über Gemini – gleiches Modell, das der Agent verwendet)
  2. Bewerten Sie jede Ausgabe anhand binärer Kriterien (über Claude Sonnet – anderes Modell für Objektivität)
  3. Bewertung = Summe der bestandenen Kriterien über alle Ausgaben hinweg
  4. Behalten, wenn Bewertung > beste Bewertung, sonst verwerfen
  5. Mutieren Sie den gewinnenden Prompt, um Verbesserungen zu versuchen
  6. Protokollieren Sie in JSONL für Dashboard-Verfolgung
  7. Warten Sie auf den nächsten Zyklus (Standard 2 Min.)

Umgebung

  • GEMINI_API_KEY – zur Generierung (Tests mit dem gleichen Modell, das der Agent verwendet)
  • ANTHROPIC_API_KEY – zur Bewertung und Mutation (anderes Modell für Objektivität)

Tipps

  • Binäre Auswertungen – Ja/Nein-Kriterien funktionieren am besten. Vermeiden Sie Likert-Skalen.
  • Nicht zu stark einschränken – zu viele enge Kriterien führen dazu, dass das Modell die Auswertung umgeht.
  • 10-20 Zyklen reichen normalerweise für eine deutliche Verbesserung.
  • Ergebnisse anwenden – bester Prompt wird in data/<target>/best_prompt.txt gespeichert.

Kosten

  • Tool-Auswahl: ~0,05 $/Zyklus (günstig – ein LLM-Aufruf pro Test, String-Match-Auswertung)
  • System-Prompt: ~0,20 $/Zyklus (Gen + LLM-Auswertung pro Test)
  • Skill: ~0,30 $/Zyklus (Gen + LLM-Auswertung pro Test, längere Ausgaben)
  • Entscheidungsparser: ~0,15 $/Zyklus (Gen + teilweise lokale Auswertung)
  • 20 Zyklen ≈ 1-6 $ je nach Ziel. Dauerhafte Verbesserung.

Verwandte Skills