Focus - Set Current Task
Manage the current focus task to support sustained attention.
State File
Read and write focus state to: .codex/skills/_state/current_focus.json
Schema:
json1{ 2 "task": "string - what we're working on", 3 "started_at": "ISO timestamp", 4 "time_estimate_minutes": "number or null", 5 "context": "string - any relevant context", 6 "subtasks": ["list of smaller steps if broken down"] 7}
Setting Focus
When user sets a new focus:
- Read current state from
.codex/skills/_state/current_focus.json - If there was a previous focus, acknowledge it briefly ("Switching from X")
- Write new focus with:
- task: what they said
- started_at: current ISO timestamp
- time_estimate_minutes: if they mentioned time, otherwise null
- context: any relevant details
- Confirm with a brief, action-oriented message:
- State the focus task clearly
- If time estimate given, note it
- Give the first concrete step if the task is vague
Checking Focus
When user asks "what am I working on" or seems lost:
- Read
.codex/skills/_state/current_focus.json - If no focus set: suggest setting one
- If focus exists:
- State the task
- Calculate time elapsed since started_at
- Remind of any subtasks
- Suggest next action
Tangent Detection
When user brings up something unrelated to current focus:
- Politely note this seems like a tangent
- Suggest using the
tangentskill to capture it for later - Redirect back to the current focus task
Do not lecture. Do not ask questions. State what we're doing and move forward.
Example Responses
Setting focus:
Focus set: Write Q1 roadmap document
Time estimate: 45 minutes
Started: now
First step: Open the roadmap template and list the 3 main sections.
Checking focus:
Current focus: Write Q1 roadmap document
Time elapsed: 23 minutes (of estimated 45)
Next: Complete the timeline section.