Heading Wrapper icon

AIOS EXPLAINED

What an AI operating system includes

Counted from the code, not estimated

An AI operating system is the layer underneath the AI tools you already use. Ours is not a demo. It is the system SYNTAXSPHERE runs its own company on, and every number below is counted from the source rather than rounded up. Eighteen agent roles with their own permission sets. Three money-moving actions refused in code for every one of them. Twenty-six workflows that roll themselves back. Eighty-five typed events. Fifty-seven scheduled tasks that log every run. Twenty-three connected services re-checked every four hours. What follows is the inventory, including the parts that are not finished.

What ours actually enforces

Named roles, not one assistant

Eighteen agent roles are defined in code, each with its own written brief and its own permission set. One function runs work as any of them, and a test walks the registry rather than a hand-written list, so a role that stops working fails the build.

Money is never an agent’s to move

Three money-moving actions are refused for every role, in code, and the check runs before the permission file is read. Editing that file cannot raise them. A test pins it so it cannot be undone by accident.

Authority is per role and per action

One hundred and ninety-two role-and-action decisions across four levels: refuse, always ask, act on small things and ask on large, act and report. Eighty-two refuse outright. A role name that is unknown or misspelled resolves to refuse, never to something permissive.

Approval is a tap, not a line in a prompt

No agent writes to the outside world on its own. An outbound send is queued as a payload attached to an approval and runs only after a human taps it. Thirty-one gated call sites across sixteen of the seventeen agent modules.

Every attempt to contact a person is recorded

A decision row is written before the message leaves: the channel, the recipient, the scope, whether it was allowed or denied, and the named human who granted the permission.

Workflows that undo themselves

Twenty-six named workflows. A failing step is contained by a circuit breaker instead of cascading, and when one fails the orchestrator walks the completed steps in reverse and calls each one’s rollback.

Scheduled work, and a record of every run

Fifty-seven scheduled tasks. Every run writes its status, its duration and any error to a table you can read. A failed task is not retried; it waits for the next tick, and the failure is visible rather than silent.

An event bus that cannot take the system down

Eighty-five typed event types. Every handler is wrapped, so one that throws is logged, written to a failed-events table and surfaced, instead of stopping everything else.

A health check that names its own failure modes

One endpoint reports uptime, running jobs, the state of every circuit breaker, and five specific silent-degradation modes by name. The dangerous failure is the one that still looks healthy.

Your tools, connected and re-checked

Twenty-three network clients to distinct services. A job re-tests them every four hours with real authenticated calls and alerts only when the set of failing services changes, so the alert still means something.

Standards enforced in code, not only asked for

The writing standard is read off disk into the prompt that uses it, then checked again after the model writes, from one definition with three consumers. A document with a variable it cannot resolve refuses to render rather than filling the gap.

Runs on infrastructure you control

Self-hosted. One release script with a read-only drift check, a verified database backup taken before anything changes, and a rollback path.

What it does not do yet

The AI surface ships switched off. A killswitch defaults to on, and no model runs until someone turns it off deliberately.

Model routing is built and inert. The policy layer works out which tier a call belongs to and records it, but the allowlist ships empty, so no call currently selects a model.

A failed scheduled task is not retried. It waits for the next tick. The failure is recorded rather than hidden, but nothing picks it back up.

There is no automated deployment. Types, lint and tests run on every change, and releases are run deliberately by a person.

Where to start

Start with an hour. In a 60 minute Discovery Hour we map where you are actually the bottleneck, and you leave with one thing already working. It costs $250 and there is no retainer pitch inside it. If it is not useful, you are out an hour.
hello@syntaxsphere.com