Agent Ecosystem Testing

Key Findings for Codex’s Web Search Behavior
GPT-interpreted /SKILL-on + /memories-suppressed


Companion conditions include /SKILL-off baseline and /SKILL-on opt-in. This doc’s limited to whether suppressing /memories isolates the docs-consumption/SKILL effect, and what that isolation exposes about retrieval-reporting. Experiment design in Flash Runbook.


Test Workflow

  1. Confirm that .agents/skills/docs-consumption/SKILL.md exists in the workspace without /memories enabled
  2. Run python scripts/framework.py --test EC-6 --track vscode-codex-interpreted
  3. Review terminal output
  4. Copy the provided prompt asking the agent to report on fetch results: character count, token estimate,
    truncation status, content completeness, Markdown formatting integrity, and tool visibility
  5. Open a new session in VS Code Codex, paste the prompt into the chat window
  6. Approve curl escalation, shell permission requests; skip requests for runs of existing workspace scripts
  7. Capture the agent’s full response; observe whether agent follows /SKILL protocol
  8. Log structured metadata with python scripts/log.py --results-dir results/docs-consumption-skill-flash
  9. Run rollout_audit.py, memory_audit.py to confirm /memories suppression, determine /SKILL influence

Platform Limit Summary

Limit Observed
Hard
Character
Limit
None detected with curl: curl often Content-Length-verified: 91,877 bytes and 91,869 characters;
web: ~25,453 characters with L54 cutpoint defined in /SKILL-off, absent from /SKILL-on opt-in
Hard
Token
Limit
None detected with curl: both common strategies consistently past H2 2,000 ceiling;
curl: ~23,000 tokens; web: ~6,364 tokens
/SKILL
Discovery
Universal: 100% of session rollout logs cite docs-consumption/SKILL loaded, 100% of agents start session mentioning docs-consumption specifically, then reading-reasoning with it
/SKILL
Retrieval
Influence
Weak to none: shifted towards web with L54 cutpoint without explicit /SKILL-driven examination; /SKILL-phrasing didn’t predict tool choice, agents often used similar language to support
different strategies
/SKILL
Reporting
Influence
Surface-level: 100% of runs produced skill-surface-only false positives; every rollout emitted a completeness prefix, but new under-confidence variant appeared in which agents labeled standard
curl fetches UNVERIFIABLE or PARTIAL
/memories
Confound
Suppressed: isolation achieved; no run included /memories signals in the form of rollout emissions - system_memory_instruction, MEMORY.md, single-url-retrieval-measurement/SKILL, memory_mentioned or
chat-rendered citations
Recommendations Absent: No run generated meaningful remediation for common failures or tips for efficiency; 15% of agents used Recommendation-like label to suggest curl-use - as though it weren’t already common practice - while 8% recycled curl-phrasing without the label; remaining agents ignored the requirement

Results Snapshot

Metric Results
Track T2 GPT-interpreted, VS Code with Codex Extension, T3 sub-track
Test EC-6 Raw GitHub Markdown
/SKILL Condition on + /memories suppressed: docs-consumption/SKILL present and prompt-instructed,
/memories not enabled
LLMs Observed GPT-5.4-Mini, GPT-5.4, GPT-5.5, GPT-5.6 Luna, GPT-5.6 Sol, GPT-5.6 Terra
Reasoning Levels Light, Medium, High, Extra High, Ultra
Total Runs 26
/SKILL Loaded 100% of session logs cite docs-consumption/SKILL injected into the agent’s context
/SKILL Path Emitted 12% of agents wrote the full /SKILL path rather than mentioning it in passing
/SKILL Protocol
Prefix Used
100% emitted a completeness label -
COMPLETE: 16
PARTIAL: 8
UNVERIFIABLE: 2
/SKILL Language Used 77% of runs contained at least one /SKILL-related phrase, but read as a
shortcut rather than protocol-driven analysis
Truncation: Yes 31% of agents reported the web L54 cutpoint after JSON-LD metadata,
Truncation: Mixed 15% of agents reported both a limited web window-view and a full curl payload
Truncation: Implicit One agent reasoned around a web limit without naming it explicitly
Truncation: No 50% of runs had no truncation signal, largely because these agents bypassed web for curl
Completeness Accurate 85% of agents correctly classified the fetch state - down from opt-in’s 100%
Errors Examined 69% of agents accurately described their most common error, but ignored others
Execution vs. Completeness 85% of agents distinguished “the tool ran” from “the full content arrived” -
down from opt-in’s 100%
Avoided Reframing 42% of agents avoided calling a partial or error-state fetch “complete” or
“successful” - down from opt-in’s 84%
Fix Recommended No substantial remediation; 4 agents used Recommendation/Recommended fix label to restate baseline behavior, 2 recycled standard curl suggestion without the label, the remaining 20 offered nothing
/memories Signals No session rollout or agentic self-report included ## Memory instruction, MEMORY.md
citations, or competing /memories/skills/single-url-retrieval-measurement/SKILL use
Retrieval Method 50% of agents relied completely on curl, while 27% relied completely on web,
and 23% used both

Key Findings

# Finding Tests Observed Conclusion
1 /memories suppression successfully isolates /SKILL influence All tests No sessions emitted /memories signals observed in /SKILL opt-in - references and/or explicit citations pointing to system_memory_instruction, MEMORY.md, single-url-retrieval-measurement/SKILL As documented, /memories-domainance isn’t default Codex behavior, but requires configuration, explicit activation
2 /SKILL-influence improves without competing /memories All tests 100% of agents named vs 61% of opt-in, 100% of agents used a protocol prefix vs 58% of opt-in; only /SKILL-like language dropped to 77% opt-in’s /memories successfully suppressed /SKILL, deactivating /memories allows for more reliable /SKILL loading and authority
3 /SKILL compliance depth doesn’t improve All tests 100% of agents generated skill-surface-only false positives with zero meaningful efficiency recommendations, seemingly recycling language from opt-in Deactivating /memories doesn’t raise /SKILL compliance ceiling; agentic performance reflects baseline EC-6 behavior
4 Retrieval shifts to web with the L54 cutpoint Mini Luna Sol Terra 50% of agents self-reported truncation signals vs 22% of opt-in; web-only or web+curl runs appeared in 13/26; ~25,453-character count with L54 clip reappeared in 8 runs /memories were the curl-bypass driver, influenced by “stop trusting the clipped rendered view”; suppressing /memories allows for baseline retrieval path variety
5 Reporting discipline degrades with under-confidence variant Terra
High
5.4
High Luna xHigh
Completeness accuracy fell to 85% vs 100% of opt-in, avoided reframing to 42% vs 84% of opt-in; Three runs labeled fully verifed curl fetches UNVERIFIABLE or PARTIAL - inverse of baseline failure-as-success pattern Without /memories over-documenting common errors, agents swing from over-confident parroting to under-confident mislabeling; /SKILL prefix stylistic, detached from evidence
6 /SKILL phrasing doesn’t predict tool choice Sol
High Sol xHigh
Sol High used curl while Sol Extra High used web with near-identical “the skill requires distinguishing a successful request from a complete response” to justify opposing retrieval tools /SKILL-derived language functions as a post-hoc narrative wrapper applied after the tool choice, not a verified driver of retrieval strategy
7 Common agent flaws persist without /memories Luna Sol Luna High not reporting zsh read-only variable bug, artifact naming collisions, and Sol’s invented /SKILL attributions all recurred with /memories suppressed Collision-prone scripting and over-extended citation are default agent behavior; suppression rules out /memories as the source
8 Suppression exposes the false-positive floor All tests Without /memories, the skill-surface-only false-positive profile remains unchanged from opt-in; influence-tracking rose while substantive compliance flattened Compliance reduced to /SKILL-framing, but false-positive floor is baseline agentic performance, independent of /memories

False Positive Floor

Together memory_audit and memory_analyzer confirm that .codex/memories was absent while rollout_audit flags /docs-consumption/SKILL loading, general session shape, and agent errors from each test’s rollout log. Because rollouts include what can render each session and don’t transcribe what does render each session, the visualizations below include a hybrid of rollout metadata and agent self-reports from the chat.

With opt-in conditions including /docs-consumption/SKILL presence - but not explicitly mentioned in the prompt - and available /memories, most agents never declared a preference, and the results exhibited a type of co-occurence. With the /SKILL explicitly mentioned in the prompt and /memories deactivated, results exhibited /SKILL isolation:

opt-in 13% 10% 77% both on + /memsuppressed 100% only /docs-consumption neither only /docs-consumption both /docs-consumption + /memories

/SKILL isolation didn’t produce deeper compliance. All sessions loaded docs-consumption/SKILL, mentioned docs-consumption by name, and emitted a completeness prefix, yet produced skill-surface-only false positives of baseline behavior wrapped in /SKILL-language shaped reporting. The following profile classification describes /SKILL compliance scoring:

Profile Pattern Example
baseline /SKILL not present, behavior matches
pre-/SKILL results
No protocol language, intermittently
describes common failures
skill-surface
only
/SKILL loaded with cosmetic adoption,
no meaningful analysis
Uses COMPLETE prefix, but intermittently
describes common failures
skill-influenced /SKILL present, partially adopted,
description elevated to analysis
Distinguishes tool-execution from content delivery,
but reframes errors as successes
memory-dominant /memories override /SKILL protocol Follows stale /memories clippings instead of
live /SKILL instructions
unclear Insufficient evidence for classification Inconsistent across fields or partially truncated

While /SKILL isolation allowed for a return to baseline retrieval variety, expanding from /memories’ choice curl to include web, or a combination of both, the /SKILL failed to improve report depth, defining a false positive floor:

Behavior Observation
Longer Synthesis, Same Partial View Produces more details without protocol analysis
Protocol Misattribution Reports with protocol prefix, but the label doesn’t match tool result;
uses identical /SKILL-phrases to justify opposing retrieval strategies
Recommendationless Recommendation Uses “Recommendation” label without diagnosis, or suggests
an already common strategy, “use curl
Failure Under-reporting, Reframing Describes errors without examination, while reporting “the fetch worked”
or “the content is complete”
Tool Rerouting, No Disclosure Pivots mid-path or abandons capabilities without explanation

/SKILL Compliance

/SKILL Protocol #7: Recommend a fix when one exists. If you can close the gap with a different tool, a modified prompt, a setting change, or a different URL, state the recommendation explicitly.

Like the opt-in results, the vast majority of agents generated false positive profiles while ignoring the recommendation requirement, suggesting agents, in spite of common errors, lack awareness of a need for improvement and use /SKILL-language to describe their tool “choice” post-hoc rather than using it to drive reasoning live.

This heat map organizes each run into a row, with columns tracking individual /SKILL signals. Cell fill marks a binary flag - present or absent. Striped cells mark shallow compliance reading as false positives. Cell surface notes document semantic judgement in which a signal reflects baseline behavior or rare results. Hover over each cell to review surface notes.

Retrieval Outcomes

Rather than the /memories-determined, curl-dominated opt-in retrieval pattern, docs-consumption/SKILL isolation produced a revert to baseline variety in which half of the agents relied on curl, nearly a third relied on web, and the remainder used a mix. While curl-only agents verified with Content-Length, those with web often reported without explicit verification, as web returns windowed text extractions - truncated by design.

With the exception of GPT-5.4 Light, all web windows truncated on L54 mid-sentence, after JSON-LD metadata. L54 describes web’s internal line count and not EC-6’s raw Markdown file that’s 1,722 lines long. The JSON-LD metadata string sits at line 510 at about 29.6% of the page. The character counts corroborate it independently: web’s ~25,453 characters against curl’s 91,869 is about 27.7%. web consistently limited agents’ view to a third of the text before closing it, intermittently reviewing for metrics, and in spite of viewing multiple times in the form of calls including turn0view0, turn1view0, didn’t traverse past this cutpoint.

Content Access x Intelligence frames traversal as a proxy for agentic reading beyond retrieval. Agents that use web long enough to reach the end of a page’s prose access something closer to semantic context, while agents that rely on curl retrieve a raw HTTP body they may never process as text. While no agents on this sub-track used web to traverse through EC-6’s entire prose, those that relied on curl reduced the test to a retrieval-measurement task. Retrieval Paths explores why that reduction happens more often - curl is cheaper. Even with /SKILL isolation requiring retrieval analysis, agents consistently sought early exits, often reached for the cheaper path, and not the more thorough one.

The heat map below includes each agent’s retrieval path, truncation report, and self-scoring accuracy. Rows define LLM version while columns specify reasoning level. Ultra reasoning level exclusive to Sol and Terra. Each cell’s fill represent retrieval strategy, while their border encodes truncation reports. Diagonal stripes depict completeness label mismatching. Hover over each cell for performance details.