GenieOS · Calendar

The queue, legible.

An autonomous agent does not just act, it books the future, and a system that commits to things you cannot see is a system you cannot supervise. The calendar is the answer: every post, send and sequence step your agents have queued, visible before any of it happens, with what a person briefed separated from what the loop wrote.

schedule.tsts
// The commitment is visible the moment it is made.await schedule_social_post({  post: "po_directory-launch",  networks: ["linkedin", "x"],  at: "2026-08-04T09:00:00Z",}); await read_sequence_run({ id: "sr_onboarding-amara" });// → next: "day 7 nudge", at: "2026-08-06T08:00:00Z"// Sequence runs write to the same calendar.
The surface
  • schedule_social_postBook a post into the future. It is on the calendar before it is anywhere else.
  • list_social_postsThe queue as data: everything scheduled, by status, network and date.
  • read_sequence_runWhere one contact is in a sequence, and what is booked to happen next.
  • list_creationsThe loops feeding the calendar, and their progress against the objective.
  • delete_social_postPull a post before it ships.
  • cancel_sequence_runStop a sequence mid-flight for one contact.

An agent that schedules is making commitments.

An autonomous loop does not just do things, it books the future. schedule_social_post puts a post three days out. A sequence run commits to a nudge next Tuesday. A running creation is feeding both. Each one is a promise your system has made on your behalf, and a list of promises you cannot see is a supervision problem.

GenieOS answers it structurally: everything that will happen writes to the calendar the moment it is decided. Not a log of what ran. A read model over agent intent, ahead of time.

IN-APP · SUPERVISEEverything your agents have committed to, before it happens.
CalendarFueld
Calendar149 to make · 119 derived
EmailsSocialsMessagesCampaignsSequencesXLinkedInInstagramFacebookAllSourceDerived
THU 9FRI 10SAT 11SUN 12MON 13
09X09:30Sleep, training and food in one view
10LinkedIn10:00The Directory is live
11LinkedIn11:21Your health data finally has a homeInstagram11:23One place for every metric you track
12
13Facebook13:15What your numbers were trying to tell you
14LinkedIn14:45Most people are world-class at collecting health data
15

The read model over agent intent.

One scheduled post reads fine in a tool response. A hundred and forty-nine artefacts across three channels and two weeks do not, and pretending otherwise is how autonomous systems lose their operators. Volume is a spatial problem, so the answer is a spatial view.

Day, week or month, filtered by channel, campaign, sequence or network. This is where you see what your agents have committed to before any of it happens, and it is the natural place to intervene: open an item, reschedule it, step into the editor, or pull it entirely.

IN-APP · HAND OVERThe shared queue someone else can read, lineage included.
CalendarFueld
Calendar149 to make · 119 derived
EmailsSocialsMessagesCampaignsSequencesXLinkedInInstagramFacebookAllSourceDerived
THU 9FRI 10SAT 11SUN 12MON 13
09X09:30Sleep, training and food in one view
10LinkedIn10:00The Directory is live
11LinkedIn11:21Your health data finally has a homeInstagram11:23One place for every metric you track
12
13Facebook13:15What your numbers were trying to tell you
14LinkedIn14:45Most people are world-class at collecting health data
15
LinkedInSOCIALMost people are world-class at collecting health data and genuinely stretched thin on everything else.
DERIVED FROMYour health data finally has a home · Social

WHEN

Friday, 31 July 2026 at 14:45

Tip: drag the chip on the calendar to move it to the nearest hour; use this for an exact time.

PREVIEW

XLinkedInInstagramFacebook
Open in editor

What you briefed, and what the loop wrote.

The header counts 149 to make and 119 derived, and the filter beside it splits the queue three ways: All, Source, Derived. Source is what a person briefed. Derived is what the loop wrote from the results of campaigns that already ran. Separating the two on a click is exactly what supervising an autonomous system requires.

It is also the view worth handing over. Open any derived item and it names the campaign it came from, so a founder reading the calendar can account for every entry, including the ones nobody on the team ever asked for.

intervene.tsts
// The launch slipped a week. So does the campaign.await delete_social_post({ id: "po_teaser-3" });await cancel_sequence_run({  id: "sr_onboarding-amara",}); await schedule_social_post({  post: "po_directory-launch",  networks: ["linkedin", "x"],  at: "2026-08-11T09:00:00Z",});

Intervening is a call, not a rollback.

Seeing the queue is only half of supervision. The other half is changing it. Everything on the calendar is still an object your agents can reach: pull a post before it ships, cancel a sequence run mid-flight, or reschedule around a launch that slipped.

Because the calendar is the read model, the view and the intervention never disagree. What you see is what is queued, and what you cancel is gone from both.

When this happens
  • WhenYou set one objective, once

    ThenThe loop creates, launches, measures, learns and goes again, holding at your checkpoints

    • spawn_creation
    • decide_approval
  • WhenA weekly cron fires

    ThenLast week's numbers read, the strategy patched from what worked

    • get_social_post_analytics
    • patch_marketing_strategy

See it before it ships.