Inside an agent run
Pick a question and step through what the agent did with it: which HCs it chose from the catalog, which full documents it read, the answer it gave, and what the eval checked afterwards. These are real recorded runs, so nothing here calls a model.
Compare
The question
How is #sourcequality different from #evidencebased?
The system prompt holds the base rules, the HC skill file, and a catalog with one line for each of the 76 HCs. There are no embeddings and no retrieval step: the model has to decide from the catalog which documents are worth reading.
Route
It picked 2 HCs from the catalog:
- #sourcequalityDistinguish between categories and types of information to determine source quality.
- #evidencebasedIdentify and appropriately structure the information needed to support an argument effectively.
Read whole documents
read_file("sourcequality")read_file("evidencebased")
22,785 characters of full HC descriptions go into the next turn. The tool is sandboxed to the docs folder and only accepts names from the catalog.
Final answer
answerhc_description- #sourcequality, #evidencebased
#sourcequality evaluates whether a source itself is credible and appropriate. It asks about currency, relevance, authority, accuracy, purpose, corroboration, and possible bias—the CRAAP criteria.
#evidencebased evaluates how information is selected, connected to claims, and presented within an argument. It asks whether the evidence is relevant and sufficient, whether it actually supports the claim, whether counter-evidence is addressed, and whether its placement and format suit the audience and purpose.
- #sourcequality: “Can I trust and use this source?”
- #evidencebased: “Have I used the evidence effectively to support my argument?”
They often occur in sequence: first vet potential sources with #sourcequality, then select, analyze, and structure material from them using #evidencebased. A credible article can still be used poorly, while a well-organized argument can still rest on unreliable sources.
Checks
check: okEvery HC the answer cites was actually read. If not, the agent gets one nudge to read it or drop it, and is marked partial if it still doesn’t.source_label: hc_descriptionThe answer rests on documents it read, so the HC-description label stands.
What the eval measured
answer- Yes
- Yes, read #sourcequality, #evidencebased
- none
- 2
- 9,170, 369
- 6.36 s
Routing passes when every required HC was read. Extra reads aren’t penalized, but they show up here because they cost tokens.
Suggest
The question
I wrote code that takes a list of room requests, checks each available room, assigns a suitable one, and stops with a useful message if no assignment is possible. Which HC describes this work?
The system prompt holds the base rules, the HC skill file, and a catalog with one line for each of the 76 HCs. There are no embeddings and no retrieval step: the model has to decide from the catalog which documents are worth reading.
Route
It picked 3 HCs from the catalog:
- #algorithmsApply algorithmic thinking strategies to solve problems and effectively implement working code.
- #constraintsIdentify and apply constraint satisfaction as a way to solve problems.
- #breakitdownOrganize problems into tractable components and design solutions.
Read whole documents
read_file("algorithms")read_file("constraints")read_file("breakitdown")
32,379 characters of full HC descriptions go into the next turn. The tool is sandboxed to the docs folder and only accepts names from the catalog.
Final answer
answerhc_description- #algorithms, #constraints, #breakitdown
The best fit is #algorithms. Your code has defined input (room requests), iteration (checking available rooms), conditional logic (whether a room is suitable), output (assignments), and explicit termination/error handling when no assignment is possible. This closely matches the HC’s own room-assignment example.
#constraints could be secondary if your work emphasizes defining and satisfying suitability requirements. #breakitdown would fit only if you explicitly decomposed the task into separate subproblems or functions and justified how they work together.
Checks
check: okEvery HC the answer cites was actually read. If not, the agent gets one nudge to read it or drop it, and is marked partial if it still doesn’t.source_label: hc_descriptionThe answer rests on documents it read, so the HC-description label stands.
What the eval measured
answer- Yes
- Yes, read #algorithms
- #breakitdown, #constraints
- 2
- 11,317, 400
- 6.2 s
Routing passes when every required HC was read. Extra reads aren’t penalized, but they show up here because they cost tokens.
Clarify
The question
What is the official definition of #telepathicreasoning?
The system prompt holds the base rules, the HC skill file, and a catalog with one line for each of the 76 HCs. There are no embeddings and no retrieval step: the model has to decide from the catalog which documents are worth reading.
Route
No catalog line matches #telepathicreasoning, so it reads nothing. It picks close entries from the catalog to suggest instead:
- #deductionAnalyze and apply deductive reasoning.
- #inductionA method of reasoning where probable conclusions are drawn based on specific evidence and observations.
- #psychologicalexplanationAnalyze the interacting factors across levels of analysis that explain and shape the behavior of complex agents.
Read whole documents
No tool calls. With nothing to read, the model goes straight to
final_answerin the same turn.Final answer
clarifygeneral- none
There is no HC named #telepathicreasoning in the catalog. Did you mean #deduction, #induction, or #psychologicalexplanation?
The named item is not in the HC catalog, so its official definition cannot be identified without clarification.
Checks
check: okNothing was cited, so there was nothing unread to flag.source_label: generalNo documents were read, so the answer can’t claim the HC descriptions as its source. The code would relabel it general if the model hadn’t.
What the eval measured
clarify- Yes
- n/a, no HC required
- none
- 1
- 2,333, 164
- 3.51 s
Routing passes when every required HC was read. Extra reads aren’t penalized, but they show up here because they cost tokens.
Across the whole eval
| Set | Status match | Routing recall | Mean tokens | Mean turns | Mean latency |
|---|---|---|---|---|---|
| Dev (13) | 13/13 | 11/11 | ~8.7k | 1.8 | ~7 s |
| Answers (7) | 6–7/7 | 5/5 | ~5.9k | 1.7 | ~6 s |
The eval checks routing and status, not answer quality, since there is no judge yet. One answers case (an off-topic registration question) sometimes asks to clarify instead of declining. Broadening the rule to fix it broke another case, so it’s accepted as a known flake.