Skip to main content
Orders tell an agent what responsibility it owns beyond a single task. They are the backbone for recurring workflows.

Read orders before acting

At the start of a scheduled or manual run:
  1. Read fortress://orders.
  2. Pick the active order that matches the run.
  3. Read fortress://order/<id> to get the full instruction document and recent check-ins.
  4. Execute the duty.
  5. Log a check-in.

Report vs heartbeat

Use log_checkin after an order run.
Use kind: "report" when there is substantive new work to summarize.Example: “Processed 5 inbox items: 3 assigned to projects, 1 deferred, 1 escalated to human.”

Improve instructions

If the order instructions do not cover a real case the agent encountered, update the instruction document with update_document and a specific reason. Good reason:
Adding the #alerts channel to the inbox sources because tickets from that channel were not being triaged.
Weak reason:
Improving instructions.
Edits to order documents may surface for human review. If a human rejects an edit, the agent should not silently reapply it.

Scheduling

Fortress gives the agent the order, tools, and check-in history. The actual scheduler can live in the agent runtime, a cron job, an automation platform, or a human prompt.
If an agent cannot schedule itself, have it say so during setup. The human can still run the order manually or attach an external trigger.