{"slug": "agent-runtime-reduces-llm-turns-by-80-with-a-higher-success-rate-in-deepswe", "title": "Agent runtime reduces LLM turns by 80% with a higher success rate in DeepSWE", "summary": "Tura, an open-source coding agent, reduced LLM token usage by up to 83.5% while achieving a higher success rate (80.0%) compared to Codex CLI High (60.0%) on DeepSWE v1.1 benchmarks. The agent uses a macro command approach to collapse multiple tool calls into single LLM turns, cutting costs and improving performance on long-horizon tasks.", "body_md": "Tura is a local, open-source coding agent for developers who are tired of vague skill claims, token-saving extensions with no evidence, and agents without judgment wreck their repos.\n\nAcross 20 DeepSWE v1.1 tasks, tested 60 sessions with GPT-5.6 SOL at High reasoning effort, Tura creates a substantial token-budget advantage by reducing repeated context and model round trips. You can spend that advantage in two ways. Direct turns most of it into lower cost: 83.5% fewer aggregate tokens than the official Codex CLI High configuration, with a verifier success rate of 65.0% versus 60.0%. Balanced puts more of the saved budget back into reasoning, investigation, and verification. It reached an 80.0% success rate—20 percentage points higher than Codex CLI High—while still using 49.6% fewer tokens.[1](#user-content-fn-test-set-record-e8f1ab4d22fefc5db6cfea99462e5233)[2](#user-content-fn-debug-manifests-e8f1ab4d22fefc5db6cfea99462e5233)\n\nLong-horizon task [benchmarks](https://turaai.net/benchmark) are one way to look past a polished isolated prompt and see how an agent handles real work. The published comparison uses harness-based development tasks with archived prompts, per-round tool calls, token usage, patches, and verifier results.\n\nThe primary comparison below holds the model and reasoning label fixed: Tura Balanced High, Tura Direct High, and the official Codex CLI High configuration on 20 DeepSWE tasks and 5 rewrite tasks. The evidence record also retains Codex CLI Medium as a separate secondary configuration; the benchmark methodology keeps 2 separately reviewed design tasks outside the harness-scored population.\n\n[1]\n\nThe published results do not establish equivalent quality or performance for\nevery configured provider. Broader Anthropic/Claude, Google/Gemini,\nOpenAI-compatible, local-provider, UI-latency, runtime/session parsing, and\ncross-OS measurements remain part of the documented\n[roadmap](/Tura-AI/tura/blob/main/ROADMAP.md) and [known evidence gaps](/Tura-AI/tura/blob/main/docs/KNOWN_ISSUES.md).\n\n*GUI page with multi-session concurrent work and HTML rich text support.*\n\n*TUI page with multi-session concurrent work and HTML rich text support.*\n\nThe results below come from published benchmark artifacts, not an uncited aggregate. Three systems do most of the work:\n\nMost coding agents still depend on repetitive tool-calling loops: inspect, wait, patch, wait, build, wait, test, wait.\n\n**Tool-calling coding agent:**\n\n```\n# Turn 1 — inspect environment\n\nrg -n \"TODO|command_run|handler\" crates/\nrg --files crates/runtime/src crates/tools/src\n# Turn 2 — apply patch\n\n*** Begin Patch\n*** Update File: crates/tools/src/command_run/handler.rs\n@@\n-    // old command handler logic\n+    // patched command handler logic\n*** End Patch\n# Turn 3 — build\n\ncargo build -p runtime\n# Turn 4 — run tests\n\ncargo test -p runtime --lib\n# Turn 5 — run lint validation\n\ncargo clippy -p runtime --all-targets\n```\n\nTura takes a different route. Instead of exposing dozens of small tools to the model, it exposes one macro tool: `command_run`\n\n. The agent can then build a multi-step execution tree and run related actions in one LLM turn.\n\nIn the example below, both agents run the same commands. A normal tool-calling agent needs five LLM turns; Tura handles the sequence as one structured macro workflow. The saved work is conversational overhead, not engineering discipline.\n\n**Tura macro CLI command:**\n\n```\n{\n  \"name\": \"command_run\",\n  \"arguments\": {\n    \"commands\": [\n      {\n        \"step\": 1,\n        \"command_type\": \"shell_command\",\n        \"command_line\": \"rg -n \\\"TODO|command_run|handler\\\" crates/\"\n      },\n      {\n        \"step\": 1,\n        \"command_type\": \"shell_command\",\n        \"command_line\": \"rg --files crates/runtime/src crates/tools/src\"\n      },\n      {\n        \"step\": 2,\n        \"command_type\": \"apply_patch\",\n        \"command_line\": \"*** Begin Patch\\n*** Update File: crates/tools/src/command_run/handler.rs\\n@@\\n-    // old command handler logic\\n+    // patched command handler logic\\n*** End Patch\"\n      },\n      {\n        \"step\": 3,\n        \"command_type\": \"shell_command\",\n        \"command_line\": \"cargo build -p runtime\"\n      },\n      {\n        \"step\": 4,\n        \"command_type\": \"shell_command\",\n        \"command_line\": \"cargo test -p runtime --lib\"\n      },\n      {\n        \"step\": 4,\n        \"command_type\": \"shell_command\",\n        \"command_line\": \"cargo clippy -p runtime --all-targets\"\n      }\n    ]\n  }\n}\n```\n\nThere is no ablation test proving that `command_run`\n\nalone causes Tura's lower turn and token usage. In the matched-High DeepSWE comparison, however, Balanced used 66.8% fewer model rounds and 49.6% fewer tokens than Codex CLI High, while Direct used 84.0% fewer rounds and 83.5% fewer tokens.[1](#user-content-fn-test-set-record-e8f1ab4d22fefc5db6cfea99462e5233)[2](#user-content-fn-debug-manifests-e8f1ab4d22fefc5db6cfea99462e5233)\n\nHowever impressive LLMs can be, an LLM is still, at its core, a statistical induction model over text-token probabilities.\n\nFor example, asking an LLM to choose among rock, paper, and scissors does not guarantee a uniform random result. If a true one-in-three distribution matters, the choice needs an external random-number source rather than an uncited assumption about model output probabilities.\n\nIn coding tasks, this is often fatal.\n\nAn agent is more likely to execute and generate code and logic that are statistically more common. But common code and common logic are often mediocre and under-considered.\n\nTura uses a different strategy.\n\nDuring reasoning, a common agent reasons from the current state to the prompt goal. In that case,\n\nInstead, Tura guides the LLM to statistically estimate\n\nIn the example below, the LLM can derive the optimal strategy for playing rock-paper-scissors correctly.\n\n```\n> To keep rock-paper-scissors fair and challenging,\n> We need unbiased play.\n> Each move must have a true one-in-three chance.\n> An LLM cannot guarantee that from text probabilities alone.\n> Use a random-number generator script to generate randint(1, 3)\n> Then map rock, paper, or scissors to the number.\n```\n\nIn programming tasks, this means that when an agent sees a goal like fixing a frontend bug, it is guided to reason through the full execution path, reconstruct the failure state, and identify the root cause before writing code. In the matched-High DeepSWE comparison, Tura Balanced passed 12 more of 60 binary task verifiers than Codex CLI High.\n\nBoth configurations in that contrast use GPT-5.6 SOL with the High reasoning label, so a High-versus-Medium effort mismatch does not explain the 20-point pass-rate difference. The result is still a system-level association, not a causal estimate for backward reasoning or any other individual feature.[1](#user-content-fn-test-set-record-e8f1ab4d22fefc5db6cfea99462e5233)[2](#user-content-fn-debug-manifests-e8f1ab4d22fefc5db6cfea99462e5233)\n\nSkills are often just weaker prompts loaded into context.\n\nIn many agent frameworks, a long-lived session keeps accumulating skill files, tool outputs, and stale task history. When the context becomes too large, the agent enters a separate compaction turn, but that compaction usually preserves only a compressed summary. Important execution details can become vague or lost.\n\nTura treats context as part of the runtime state machine.\n\nInstead of relying on users to manually reset sessions or letting Markdown skills pile up, Tura uses `task_status`\n\n, runtime prompts, and recursive execution manuals to keep the active context scoped to the current task.\n\nTraditional skill-based agents usually keep one session running until the user starts another, load broad Markdown skills into that session, and leave them active until a reset or compaction. Tura instead ties runtime prompts to explicit task state: sessions can be renamed, refreshed, and managed automatically; task-specific manuals and CLI commands are loaded through a recursive task tree; and irrelevant context can be removed, replaced, or compacted from the CLI. The checkpoint can retain code locations, patches, tests, and task status rather than only a loose summary. In practice, that means less stale context, lower task-scoped token cost, and fewer chances for an old skill or vague summary to steer the current job.\n\nBecause compaction is a CLI operation, Tura can preserve exact execution state in `task_status.compact_context`\n\n. In the published benchmark sessions, Tura moved beyond read-only inspection and resumed execution an average of 2.6 rounds after compaction, compared with an estimated 5.4 rounds for Codex.[3](#user-content-fn-compact-dynamodb-e8f1ab4d22fefc5db6cfea99462e5233)[4](#user-content-fn-compact-wasmi-r1-e8f1ab4d22fefc5db6cfea99462e5233)[5](#user-content-fn-compact-wasmi-r2-e8f1ab4d22fefc5db6cfea99462e5233)[6](#user-content-fn-compact-wasmi-r3-e8f1ab4d22fefc5db6cfea99462e5233)[7](#user-content-fn-compact-eza-e8f1ab4d22fefc5db6cfea99462e5233)\n\nTura's 2.6-round result is calculated from explicit `compact_context`\n\nevents in its archived round contracts. Codex does not expose equivalent compaction events, so its 5.4-round result is estimated from points where input-token usage drops sharply, excluding identifiable media-reading boundaries.\n\nMac and Linux:\n\n```\nnpm install tura-ai\ntura\n```\n\nWindows:\n\n```\nnpm install -g tura-ai\ntura\n```\n\nThe same main package is also published to GitHub Packages as `@tura-ai/tura`\n\n.\nConfigure the `@tura-ai`\n\nscope for `https://npm.pkg.github.com`\n\n, authenticate\nwith a token that has `read:packages`\n\n, then install `@tura-ai/tura`\n\n. The\nunscoped `tura-ai`\n\npackage on npm remains the simplest public installation.\n\nTura does not bundle provider credentials. On first launch, configure an LLM\nprovider and select one of its models before sending a prompt. See\n[Provider setup](/Tura-AI/tura/blob/main/docs/start/providers.md#first-run-configure-an-llm-provider) for\nthe CLI, TUI, and GUI flows.\n\nWindows PowerShell:\n\n```\ngit clone https://github.com/Tura-AI/tura.git\ncd tura\n.\\scripts\\install.ps1\ntura\n```\n\nmacOS or Linux shell:\n\n```\ngit clone https://github.com/Tura-AI/tura.git\ncd tura\n./scripts/install.sh\ntura\n```\n\nThe source installer performs the complete environment setup, release build,\nand user PATH registration flow. Pass `-EnvironmentOnly`\n\non PowerShell or\n`--environment-only`\n\non macOS/Linux only when you intentionally want dependency\nsetup without building or registering Tura.\n\n| Entry | Use it for |\n|---|---|\n`tura` |\nInteractive terminal UI. |\n`tura \"prompt\"` |\nOpen the TUI with an initial prompt. |\n`tura exec \"prompt\"` |\nDirect Rust CLI prompt runner. |\n`tura run \"prompt\"` |\nGateway-backed prompt with streaming/history. |\n`tura bash` , `tura zsh` , `tura shel` |\nPrompt with a selected command-run shell surface. |\n`tura_gateway` |\nLocal HTTP/SSE gateway and optional web GUI serving. |\n`tura_gui` |\nDesktop GUI workspace client. |\n\nFor OS-specific PATH requirements, executor installation, and how to register the\nCLI when the executable is not on PATH, read\n[How to start](/Tura-AI/tura/blob/main/docs/start/how-to-start.md). For command flags and modes, read\n[CLI parameters](/Tura-AI/tura/blob/main/docs/start/cli-parameters.md).\n\nThe GitBook-style documentation index is [docs/SUMMARY.md](/Tura-AI/tura/blob/main/docs/SUMMARY.md). The\nfull navigation page is [docs/start/navigation.md](/Tura-AI/tura/blob/main/docs/start/navigation.md).\n\n[Task status](/Tura-AI/tura/blob/main/docs/core/task-status.md)[Context management](/Tura-AI/tura/blob/main/docs/core/context-management.md)[Runtime prompt](/Tura-AI/tura/blob/main/docs/core/runtime-prompt.md)[Command run](/Tura-AI/tura/blob/main/docs/core/command-run.md)[Commands](/Tura-AI/tura/blob/main/docs/core/commands.md)[Agents](/Tura-AI/tura/blob/main/docs/core/agents.md)[Personas](/Tura-AI/tura/blob/main/docs/core/personas.md)[Rich text](/Tura-AI/tura/blob/main/docs/core/html-rich-text.md)[Dynamic prompt injection](/Tura-AI/tura/blob/main/docs/core/prompt-style.md)\n\n[Scripts](/Tura-AI/tura/blob/main/scripts/ARCHITECTURE.md)[Testing](/Tura-AI/tura/blob/main/scripts/ARCHITECTURE.md#xtask-test-collection-scripts)[Environment](/Tura-AI/tura/blob/main/docs/start/settings.md)[Architecture](/Tura-AI/tura/blob/main/ARCHITECTURE.md)[Benchmark methodology](https://github.com/Tura-AI/benchmark/blob/main/doc/benchmark-methodology.md)[Current test-set evidence record](https://github.com/Tura-AI/benchmark/blob/main/doc/current-test-set-record.md)[Benchmark artifacts](https://github.com/Tura-AI/benchmark/tree/main/results)\n\nContributions should be small, reviewable, and supported by evidence at the test layer that owns the affected behavior. Choose the matching issue and pull request type rather than applying one checklist to every change.\n\n[Contributing](/Tura-AI/tura/blob/main/.github/CONTRIBUTING.md)- start here for contribution types, development setup, test selection, and pull-request steps.[Contribution guide](/Tura-AI/tura/blob/main/docs/contributing-guide.md)- test ownership, affected matrices, performance evidence, and artifact-sanitization rules.[Roadmap](/Tura-AI/tura/blob/main/ROADMAP.md)- current 0.1.x stabilization priorities and the planned 0.2 task-planning workspace.[Known issues and evidence gaps](/Tura-AI/tura/blob/main/docs/KNOWN_ISSUES.md)- open architecture, provider, benchmark, performance, and cross-OS work.[Code of Conduct](/Tura-AI/tura/blob/main/.github/CODE_OF_CONDUCT.md)- community standards and the open agent-harness principle.[Security policy](/Tura-AI/tura/blob/main/.github/SECURITY.md)- supported versions and private vulnerability reporting.[Support](/Tura-AI/tura/blob/main/.github/SUPPORT.md)- where to report bugs, request features, or ask setup and usage questions.\n\nTura is licensed under AGPL-3.0-or-later. See [LICENSE](/Tura-AI/tura/blob/main/LICENSE).\n\n## Footnotes\n\n-\n, which defines the 280-run published population, the 278-run relationship-analysis population, configuration provenance, aggregation formulas, exclusions, and identification limits. The README's primary High-to-High tables select the 210 Tura Balanced High, Tura Direct High, and Codex CLI High sessions from that published population.`tura-benchmark`\n\ncurrent test-set evidence record[↩](#user-content-fnref-test-set-record-e8f1ab4d22fefc5db6cfea99462e5233)[↩](#user-content-fnref-test-set-record-2-e8f1ab4d22fefc5db6cfea99462e5233)2[↩](#user-content-fnref-test-set-record-3-e8f1ab4d22fefc5db6cfea99462e5233)3[↩](#user-content-fnref-test-set-record-4-e8f1ab4d22fefc5db6cfea99462e5233)4 -\nTura's DeepSWE observations are in\n\n,`tura-benchmark`\n\nreplicate 1[replicate 2](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-local-r02/manifest.json), and[replicate 3](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-local-r03/manifest.json). The matched Codex CLI High observations are in[High replicate 1](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-codex-cli-high-r01/manifest.json),[High replicate 2](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-codex-cli-high-r02/manifest.json), and[High replicate 3](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-codex-cli-high-r03/manifest.json). Each configuration contributes 60 sessions on the same 20 task IDs.[↩](#user-content-fnref-debug-manifests-e8f1ab4d22fefc5db6cfea99462e5233)[↩](#user-content-fnref-debug-manifests-2-e8f1ab4d22fefc5db6cfea99462e5233)2[↩](#user-content-fnref-debug-manifests-3-e8f1ab4d22fefc5db6cfea99462e5233)3 -\nand`tura-benchmark`\n\nDynamoDB round 107 compact[round 114 first later patch](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-local-r01/dynamodb-toolbox-conditional-attribute-requirements/tura-balanced/dynamodb-toolbox-conditional-attribute-requirements-tura-balanced-run-01/metadata/contracts/rounds/round-0114.json).[↩](#user-content-fnref-compact-dynamodb-e8f1ab4d22fefc5db6cfea99462e5233) -\nand`tura-benchmark`\n\nWasmi replicate 1 round 43 compact[round 44 first non-read action](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-local-r01/wasmi-trap-coredumps/tura-balanced/wasmi-trap-coredumps-tura-balanced-run-01/metadata/contracts/rounds/round-0044.json). The run ends at round 46 without a later patch or test action.[↩](#user-content-fnref-compact-wasmi-r1-e8f1ab4d22fefc5db6cfea99462e5233) -\n,`tura-benchmark`\n\nWasmi replicate 2 round 26 compact[round 28 first non-read action](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-local-r02/wasmi-trap-coredumps/tura-balanced/wasmi-trap-coredumps-tura-balanced-run-02/metadata/contracts/rounds/round-0028.json), and[round 39 first later patch/test](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-local-r02/wasmi-trap-coredumps/tura-balanced/wasmi-trap-coredumps-tura-balanced-run-02/metadata/contracts/rounds/round-0039.json).[↩](#user-content-fnref-compact-wasmi-r2-e8f1ab4d22fefc5db6cfea99462e5233) -\nand`tura-benchmark`\n\nWasmi replicate 3 round 39 compact[round 41 first later patch/test](https://github.com/Tura-AI/benchmark/blob/main/results/debug/report-deepswe-v1.1-gpt56-sol-local-r03/wasmi-trap-coredumps/tura-balanced/wasmi-trap-coredumps-tura-balanced-run-03/metadata/contracts/rounds/round-0041.json).[↩](#user-content-fnref-compact-wasmi-r3-e8f1ab4d22fefc5db6cfea99462e5233) -\nand`tura-benchmark`\n\neza round 23 compact[round 24 first later test](https://github.com/Tura-AI/benchmark/blob/main/results/rewrite/report-20260710-gpt56-sol/eza/tura-balanced/eza-tura-balanced-gpt56-sol-run-02/metadata/contracts/rounds/round-0024.json).[↩](#user-content-fnref-compact-eza-e8f1ab4d22fefc5db6cfea99462e5233)", "url": "https://wpnews.pro/news/agent-runtime-reduces-llm-turns-by-80-with-a-higher-success-rate-in-deepswe", "canonical_source": "https://github.com/Tura-AI/tura", "published_at": "2026-07-15 15:10:14+00:00", "updated_at": "2026-07-15 15:28:22.947424+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools", "large-language-models"], "entities": ["Tura", "Codex CLI", "DeepSWE", "GPT-5.6"], "alternates": {"html": "https://wpnews.pro/news/agent-runtime-reduces-llm-turns-by-80-with-a-higher-success-rate-in-deepswe", "markdown": "https://wpnews.pro/news/agent-runtime-reduces-llm-turns-by-80-with-a-higher-success-rate-in-deepswe.md", "text": "https://wpnews.pro/news/agent-runtime-reduces-llm-turns-by-80-with-a-higher-success-rate-in-deepswe.txt", "jsonld": "https://wpnews.pro/news/agent-runtime-reduces-llm-turns-by-80-with-a-higher-success-rate-in-deepswe.jsonld"}}