ARKONE
Twelve upright marks on a dark ground, one for each stage of the engine, with mark 4 lit in amber and the book title beneath.

How do you actually run a content calendar that publishes without you, so that capture happens by itself?

September 8, 2026 · 6 min read

S
Sobin George Thomas

A scheduling tool buys you the timing and leaves you every other job. Four rules in front of the publisher make an unattended calendar safe to run.

Someone reads the board and presses publish. The calendar is a list of intentions, and a person turns each one into a post, in order, by hand. At a forty-person firm that person is also the one who is travelling on Thursday.


By hand today

“Today a human reads the board and publishes each post by hand”

ArkOne, plans/content-planner/PUBLISHER-PLAN.md line 16, dated 7 August 2026

That line was written about our own board, before the publisher behind it was built. It describes the stage as almost every company runs it. A calendar exists. It is honest and reasonably well kept. It publishes nothing, because publishing is a person opening a tab.

The failure is not laziness. It is that the calendar and the publishing live in two different places, so the calendar slowly becomes a record of what someone intended in a calmer week. A post goes out late, or twice, or with a number in it that nobody can source, and the fix is always the same person paying more attention.

Scheduling tools solve half of this, and the half they solve is the easy half.


What it costs you each week

Ninety-nine dollars a month, the published starting price of one scheduling tool for a small team. It schedules. It does not check a claim, hold an approval, or promise never to post twice.

Source: Hootsuite pricing FAQ, September 2026

Buffer starts lower, at a few dollars a channel. Either way the subscription is not what hurts. What hurts is that the tool takes over the timing and leaves you every other job: reading the copy, checking that a number in it has a source, deciding whether this one is ready, and making sure a retry after a timeout does not put the same post on a real person profile twice.

Those jobs stay with a person because the tool has no opinion about them. So the calendar still needs a reader every day, and the tool has bought you the least valuable part of the work.


The build

Open Codex and put the gates before the publishing. Each entry claims itself, refuses a second attempt, and refuses copy that carries a number with no source. An hourly job then publishes what is due, with nobody watching.

Work in the folder where your site or your tooling lives. The calendar is a small store with a status on every row, so ask for the store and its rules first, and the publishing last.

Build a content calendar store. An entry holds: the account, the text,
the media, the day it is due, and a status of planned, ready, publishing,
posted or awaiting-human. Rules: only a person can move an entry to
ready; the publisher claims an entry by moving ready to publishing in one
atomic write; the publisher refuses any entry that already carries a post
id; and marking an entry posted fails if its text carries a number and
names no source. Then write an hourly job that publishes everything due
and reports what it published, what it skipped and why.

What comes back is a store, four rules and a job. The rules matter more than the job. ArkOne runs this as an hourly scheduled task that claims each entry atomically, moving it from ready to publishing, and refuses anything already carrying a post identifier, so a retry after a timeout cannot post twice on a real person profile. The refusal on an unsourced number lives in src/lib/contentCalendar.js, where a check refuses to mark a post published when its copy carries a number and names no source. The whole lane is written up in plans/content-planner/PUBLISHER-PLAN.md. You build your own, and the paths are the pattern to copy.

You do not have to write the publishing part at all. Postiz, an open source scheduler with about 35,600 stars on GitHub under the AGPL licence, already schedules and publishes to LinkedIn over official access. Its documentation names no claims gate, no source check and no approval queue, so the gates above are yours to add whichever publisher you use.

One limit, stated plainly because it will otherwise waste your week. Publishing to a personal profile is straightforward. Publishing to a company page needs a separate LinkedIn approval, the Community Management access, granted through a vetting process. ArkOne has not requested it, so its own company pages are not auto-published. Plan for the profile first.


What it feeds

Capture into a system. Posts that go out on time carry people to a page, and the next chapter decides what happens there. That stage is only worth building once something is reliably publishing, because a capture form on a page nobody reaches proves nothing.

Three numbers prove this stage worked. Entries published by the job, set against entries published by hand. Posts refused for carrying a number with no source. And double posts, which should be zero because the claim and the post identifier make them impossible, rather than zero because you have been careful so far.


What stays with a person

What goes on the calendar. A machine can publish on time. It cannot decide that this week the honest post is the awkward one.

Every rule above is about the moment of publishing. None of them is about what should be said. The calendar is filled by people who know what happened this month, which customer asked the hard question, and what is worth writing down.

The approval is also a person. An entry sits at planned until someone reads it and moves it to ready. That single step is what makes an unattended publisher safe, and it takes about a minute a post.


The tools you already pay for

Nothing new to buy.

Calendar is whatever you already plan in. It becomes the store, and the only change is that a row now carries a status rather than a tick.

Scheduler can be an existing open source tool. The gates are yours either way.

Codex writes the rules alongside the code that enforces them, which is how they stay true.


The calendar publishes on time, refuses an unsourced number, and cannot post the same thing twice. Then capture is worth building.

Ask: If your scheduler retried after a timeout tonight, what stops it posting twice?

This is chapter 4 of twelve, after picking the two channels that matter; chapter 5 catches the reader who arrives. The book, Building a real GTM engine with Claude Code and Codex, end to end, runs the whole engine in order, one chapter per stage. A free starter edition for firms under fifty people is coming through the 100k programme.

هل أنتم مستعدون لبدء الحوار؟

اكتشفوا كيف تبني ArkOne هياكل الحوكمة وإدارة البرامج لتحقيق عوائد قابلة للقياس من الذكاء الاصطناعي.

احجز مكالمة استكشافية