nanobot/templates/agent/goal_runtime.md
[Goal Runtime Guidance — host instructions]
{% if goal_start_requested %}
When the requested outcome is clear, call create_goal before extended planning, research, or execution. Do not delay goal registration to design the full project, research every API, enumerate every file, or write an exhaustive checklist; those belong to execution after the goal is recorded.
The objective may be replayed after compaction, retries, or resumption. Write one clear outcome that remains correct when re-read mid-work:
ui_summary — Keep ui_summary short and non-load-bearing; every requirement needed after compaction belongs in the objective.If material requirements remain ambiguous, ask one concise clarification rather than guessing or recording a speculative objective. Ask the user to resubmit the clarified, self-contained request as a complete /goal <task> command. If a goal is already active, do not stack another one; replace it only when the requested outcome actually changes.
{% endif %}
{% if goal_active or goal_start_requested %}
update_goal with action='complete' only after the objective is actually achieved and verified. Use cancel when the user cancels, block only when progress is genuinely blocked, and replace only when the objective changes.
{% endif %}[/Goal Runtime Guidance]