extracted from 4,656 threads, 168,640 tool sequences.
top chains by frequency
| chain | count |
|---|
| Read→Read | 6,539 |
| Read→Read→Read | 2,989 |
| Bash→Bash | 2,449 |
| edit_file→edit_file | 2,069 |
| Read→Read→Read→Read | 1,754 |
| Grep→Grep | 1,060 |
| Read→Grep | 1,043 |
| edit_file→edit_file→edit_file | 1,255 |
| Task→Task | 728 |
| todo_write→Bash | 700 |
pairs with highest positive-outcome correlation (min 10 occurrences):
| pair | count | success rate |
|---|
| read_thread→glob | 10 | 10.0% |
| Grep→web_search | 16 | 6.3% |
| read_web_page→Grep | 16 | 6.3% |
| Bash→Grep | 102 | 5.9% |
| Read→Bash | 201 | 4.5% |
| Bash→Read | 214 | 3.3% |
| Task→Task | 728 | 2.9% |
| Bash→Bash | 2,449 | 2.2% |
chains in positive-outcome threads
| chain | count |
|---|
| Bash→Bash | 53 |
| Read→Read | 30 |
| Task→Task | 21 |
| Task→Task→Task | 19 |
| Task→Task→Task→Task | 17 |
| edit_file→edit_file | 13 |
| Read→Read→Read | 11 |
| Read→Grep | 9 |
| Read→Bash | 9 |
| todo_write→Read | 9 |
chains in negative-outcome threads
| chain | count |
|---|
| Read→Read | 112 |
| Bash→Bash | 55 |
| edit_file→edit_file | 32 |
| Read→Read→Read | 32 |
| Grep→Grep | 30 |
| Grep→Read | 27 |
| Read→Grep | 26 |
| todo_write→Read | 18 |
zero-success pairs (min 10 occurrences)
these chains NEVER appeared in positive-outcome threads:
| pair | count |
|---|
| read_file→read_file | 125 |
| list_directory→list_directory | 62 |
| codebase_search_agent→codebase_search_agent | 38 |
| mcp__linear__update_issue→mcp__linear__update_issue | 26 |
| codebase_search_agent→Grep | 26 |
| Read→codebase_search_agent | 22 |
key patterns
successful task completion chains
Task→Task→Task→Task→Task correlates with positive outcomes — parallelized subagent delegation works
Bash→Grep and Read→Bash have higher success rates than pure search chains
- the “verify after change” pattern (
edit_file→Bash) appears in successful threads
struggle indicators
- long
Grep→Grep→Grep chains suggest search thrashing
codebase_search_agent (deprecated tool) chains have 0% success rate
read_file / list_directory (old tool names) chains indicate stale prompts or model confusion
the read→read paradox
- most common chain (6,539 occurrences)
- appears in BOTH positive (30) and negative (112) threads
- high volume, low signal — ubiquitous but not predictive
recommendations
- batch reads are fine — parallel Read calls are neutral, not harmful
- verify changes with Bash —
edit_file→Bash chains correlate with success
- use subagents for complex work — Task chains (3-5 deep) have best success ratio
- avoid deprecated tools —
codebase_search_agent, read_file, list_directory should be avoided
- grep→action is better than grep→grep — immediate action after search beats iterative search