Afficher le post originalMasquer le post original
I've been working heavily with Claude Code on an Unreal Engine project through MCP, and one thing started bothering me: not every part of development needs the same reasoning effort.
Sometimes Claude is debugging a complicated replication or cross-system issue where HIGH/XHIGH reasoning makes sense. Five minutes later, it might just be inspecting an asset, making a simple Blueprint change, or updating project documentation.
Keeping a high effort level for everything felt wasteful, especially when I'm trying to make the most out of my available tokens and usage hours.
So I started building a small Windows app for my own workflow: Auto Effort Router.
The idea is to let Claude decide how much reasoning the current phase of work actually needs, while an external app automatically applies that decision.
The basic flow is:
Claude → POLICY.md → request.txt → Auto Effort Router → /effort
Claude doesn't execute /effort itself. It evaluates the current work phase using a policy and writes one of:
LOW / MEDIUM / HIGH / XHIGH / MAX / AUTO
The Router monitors that request and changes the effort level in Claude Desktop.
The important part is that this isn't a static mapping like:
Blueprint = MEDIUM
Replication = XHIGH
Instead, I'm trying to make it adaptive.
A normal debugging task might start at MEDIUM. If the investigation stops converging, hypotheses fail, or Claude discovers that several systems are interacting, it can move to HIGH and eventually XHIGH.
Once the difficult part is solved, it should lower the effort again:
MEDIUM → HIGH → XHIGH → root cause found → MEDIUM → documentation → LOW
This is the part I wanted most: spend the expensive reasoning effort where it actually matters, then drop back down instead of leaving Claude at HIGH/XHIGH for routine work.
I'm currently using it specifically with Unreal Engine + Unreal MCP, so I also created a profile-aware policy.
There is a generic DEFAULT profile, plus an UNREAL profile that understands different kinds of work such as:
Blueprints • C++ • Gameplay Framework • replication • RPCs • ownership • lifecycle • assets • AI • performance • packaging • Unreal MCP
It also tries to distinguish actual difficult Unreal problems from simple tooling problems.
For example, if an Unreal MCP tool isn't found, that alone shouldn't cause Claude to jump to HIGH/XHIGH. It first checks whether it's a tool discovery, schema, connection, or Editor-state issue.
Likewise, "replication" doesn't automatically mean XHIGH.
A known replication change may only need MEDIUM, while an unexplained server/client state divergence involving ownership, relevancy and several interacting actors may justify HIGH/XHIGH.
I tested the adaptive behavior during real development today. Claude was at HIGH while working through a more involved Unreal debugging/testing phase. When it finished that part and moved on to straightforward work, it automatically requested LOW, and the Router switched it without me doing anything.
That was basically the behavior I originally built this for.
The app currently has:
• automatic effort switching;
• manual AUTO / LOW / MEDIUM / HIGH / XHIGH / MAX controls;
• adaptive escalation and de-escalation;
• Unreal-specific effort policy;
• fallback policy for normal work;
• project persistence;
• Claude Desktop process detection;
• event logging;
• protection against rapid effort oscillation.
The profile system is also expandable. Eventually it could look like:
DEFAULT
UNREAL ENGINE
PYTHON
BLENDER
WEB DEVELOPMENT
etc.
If there's no specialized profile for the current work, Claude simply falls back to the default policy.
I'm still developing and testing this, so I'm not claiming a specific percentage of token or usage-hour savings yet. I want to collect real usage data before making claims like that.
My next idea is adding analytics to the app so it can track time spent at each effort level, automatic escalations/de-escalations, and eventually — if I can get reliable usage data — estimate how much high-effort usage was actually avoided.
I originally made this just to improve my own Unreal workflow, but it's working well enough that I'm wondering whether it would be useful to other Claude Code users too.
Would you use something like this? And what work profiles would you want besides Unreal?