Skip to content
This repository was archived by the owner on Oct 28, 2026. It is now read-only.

How It Works

speedyrulz edited this page Oct 28, 2026 · 2 revisions

How It Works

  • Connection: tries the saved address, then 127.0.0.1:1234 and :1235. It tells RulZ apart from LM Studio by the extra fields RulZ adds to /v1/models (path, state, …).
  • Agent loop: streams /v1/chat/completions with tools until the model answers without a tool call. The tools are list_files, find_files, search_text, read_file, write_file, edit_file, delete_path, run_command, start_background_command, check_background_command, stop_background_command, check_page and ask_user, plus find_tools and load_tools when tool servers are set up.
  • Generation settings: each request carries the model's How it writes values over the recommended ones. The answer length is capped by Longest answer and by what's left of the context.
  • Thinking: sent as chat_template_kwargs.enable_thinking, reasoning_effort, thinking_budget_tokens and reasoning_budget_message, like RulZ LLM Suite's chat.
  • Load settings: read and saved through RulZ LLM Suite's GET/POST /v1/models/{id}/load-config (0.3.5+). Only changed settings are sent, and saving restarts a loaded model. While you edit, "dry_run": true requests fetch the memory estimate (0.3.7+).
  • Checking pages: check_page opens a local address or an HTML file in the project in a hidden, sandboxed window with throwaway storage. It reports script errors, files that failed to load, and the text, buttons and fields the page shows.
  • Qwen3-Coder fix: that model's original chat template prints earlier tool arguments in Python form, which llama.cpp can't parse. When /props shows that template, earlier arguments are re-sent as JSON text.
  • Commands: run in powershell.exe -NoProfile -NonInteractive in the project folder, with Node.js, npm and Python added to PATH. Output streams live, and Stop kills the whole process tree.
  • Context: sizes are estimated at 3.2 characters per token, then corrected after every reply by the exact count llama.cpp reports (timings.cache_n + prompt_n).
  • Undo: before each task, the project is committed to a private Git repository in the app's data folder. Without Git for Windows, files are copied aside before they're changed.

Where data is kept

%APPDATA%\RulZ Coding Agent holds settings (including per-model generation settings), recent projects, and each project's history and restore points. Load settings are stored by RulZ LLM Suite in its own model-defaults.json.

Clone this wiki locally