Utility Skill
SkillAI & modelsScores agent actions by expected gain, cost, uncertainty, and redundancy. Use when deciding whether to dispatch an agent or invoke a tool.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Utility Skill skill
What this skill tells your AI
The instructions your AI receives, as published by athola/claude-night-market in plugins/leyline/skills/utility/SKILL.md and read by ahel’s review.
Overview
A decision framework for agent orchestration based on Liu et al., "Utility-Guided Agent Orchestration for Efficient LLM Tool Use" (arXiv:2603.19896). Each candidate action is scored by subtracting weighted costs from expected gain, producing a single utility value that guides action selection. The framework prevents over-calling tools and premature stopping by making both errors costly. Utility range is [-2.3, 1.0].
When To Use
- Deciding whether to dispatch another agent or tool call
- Gating expensive tool calls (search, code execution, delegation)
- Selecting the right model tier for a sub-task
- Continuation decisions after receiving partial results
- Verification gating before writing or committing output
When NOT to Use
- Single-step operations with one obvious action
- Trivial tasks where cost of scoring exceeds benefit
- Already-committed actions that cannot be undone
Action Space
A = {respond, retrieve, tool_call, verify, delegate, stop}
| Action | Description |
|---|---|
| respond | Emit a final answer from current context |
| retrieve | Fetch additional information (search, read, lookup) |
| tool_call | Execute a tool (code runner, API, file write) |
| verify | Check a prior result for correctness or completeness |
| delegate | Spawn a sub-agent or hand off to a specialist |
| stop | Terminate the loop and return current state |
Utility Function
U(a | s_t) = Gain(a | s_t)
- λ₁ · StepCost(a | s_t)
- λ₂ · Uncertainty(a | s_t)
- λ₃ · Redundancy(a | s_t)
| Parameter | Default | Rationale |
|---|---|---|
| λ₁ | 1.0 | Cost baseline; all other weights relative to this |
| λ₂ | 0.5 | Weak empirical correlation with outcome (r=0.0131) |
| λ₃ | 0.8 | Redundancy pruning yields ~10% token savings |
Utility range: [-2.3, 1.0]. Positive values indicate the action is worth taking. Values below the floor (-0.5 default) indicate the action should be skipped.
Termination Conditions
Stop the loop when any of the following is true:
- (a) Selected action is
stop - (b) Step budget exhausted (default: 10 steps)
- (c) All non-
stopactions score below the floor (default: -0.5)
High-gain override: If Gain >= 0.7 for any action, condition
(c) may be overridden.
Document the override and the gain value in your reasoning trace.
Quick Start
Minimal 4-step advisory pattern:
- Construct state: gather task context per
modules/state-builder.md - Score candidates: evaluate each action in
Apermodules/action-selector.md - Prefer highest utility: select the action with the
maximum
U(a | s_t), subject to termination conditions - Log score and decision: record the winning action, its utility value, and step count before executing
Detailed Resources
- State Builder:
modules/state-builder.md, how to populates_tfrom task context - Gain:
modules/gain.md, estimating expected information or progress gain - Step Cost:
modules/step-cost.md, token, latency, and monetary cost tables - Uncertainty:
modules/uncertainty.md, confidence estimation and calibration - Redundancy:
modules/redundancy.md, detecting duplicate or low-delta actions - Action Selector:
modules/action-selector.md, scoring loop and tie-breaking rules - Integration:
modules/integration.md, wiring utility scoring into existing orchestration loops
Exit Criteria
- State constructed with task goal and prior steps
- All six actions scored before selecting one
- Termination condition checked after each step
- Score and decision logged for each step taken
- High-gain overrides documented with gain value
Signals
- GitHub stars
- 337
- Forks
- 34
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
utility- Source
- github.com/athola/claude-night-market