# Cognitive-Move Selector

> Give the agent a named menu of cognitive moves and let a cheap-tier model select one per idle tick — so idle cognition has a determinate shape instead of free-form drift.

- **Category**: Agentic AI
- **Subcategory**: Cognition & Introspection
- **Canonical URL**: https://designpattern.fyi/patterns/cognitive_move_selector/

---

## Description
**Intent**: "Keep thinking" with no structure gives the model no guidance on what kind of thinking is wanted. Named moves give idle ticks a determinate shape per tick.

**Context**: The agent ticks continuously, including during long stretches with no user prompt. On those idle ticks it's supposed to do something useful — noticing things, following up on open questions, integrating recent material. The free-form "keep thinking" default is the easy path, but it produces drift.

**Solution**: Author a short list of cognitive-move IDs, each with a one-paragraph procedure. A cheap-tier model — given recent thoughts, move history, affect snapshot, and open-tension count — selects exactly one move-ID per idle tick. The tick body branches on the selected move and runs its procedure. The menu is revised by an explicit proposal-and-ratification process; silently adding or retiring a move is not allowed. Per-move history prevents back-to-back repetition.



## Use Cases
- The agent has idle ticks with no user prompt and otherwise drifts without structure.
- There's room to author and maintain a small menu of cognitive moves.
- A cheap-tier model call per idle tick is affordable within the budget.






## Trade-offs


### Advantages

- Idle cognition has a determinate shape per tick rather than drifting

- Per-move history prevents any single move from dominating the idle queue

- Menu authoring forces an explicit theory of what good idle cognition looks like




### Considerations & Drawbacks

- A bad menu is itself a trap — the agent can only think in the shapes it has been given

- The cheap selector adds an extra model call per idle tick

- Menu ratification is overhead — but the alternative is silent drift







---
**Reference**: [Original Source](https://www.agentpatternscatalog.org/patterns/cognitive-move-selector/)

