Orakl

A second opinion that disagrees with itself first

Describe what you are weighing. Orakl builds a swarm of simulated agents holding deliberately opposing positions, lets their beliefs interact, and reports where they landed and how divided they stayed.

Abstract

Orakl is not a chatbot and it is not a forecaster. It is a numerical simulation of disagreement.The swarm itself contains no language model. It is bounded-confidence opinion dynamics on a Watts–Strogatz small-world graph, implemented in SwarmEngine.swift. An on-device language model, where the device has one, writes the labels and the prose around it — never the numbers.

You type a decision in plain language. The app derives a small set of mutually exclusive outcomes and the drivers it can see in your own words, casts eight archetypes with different opening positions, and instantiates a swarm of agents from them. The agents then influence each other for a fixed number of rounds. What comes back is a vote share, a confidence figure derived from the entropy of that vote share, and a split figure measuring how close the top two outcomes finished.

The whole run happens on the device in front of you. There is no account and no upload.One exception, stated plainly because it is the only one: a Premium setting called “Ground in real sources” is off by default, and when a user turns it on the question text is sent to a lookup service. Nothing else is. See privacy. Given identical input text, Orakl returns an identical run — the seed is a hash of what you typed.

We are wary of the word “prediction”. A crowd of simulated agents arguing is a way of laying out a decision, not a source of knowledge about the world. Where we do not know something, this note says so.

Contents

  1. The methodHow the swarm is built, what the agents actually do each round, and how the three numbers are computed. With the real class names and parameters.
  2. Three worked examplesReal runs, reproduced from the shipping engine: a genuine coin-flip, a lopsided one, and one where the input was too thin to disagree about.
  3. Reading the numbersLeans, Confidence and Split — what each means, which combinations are counter-intuitive, and where two of them are secretly the same number.
  4. LimitsWhat Orakl cannot do, and the places where the model is weak by construction rather than by accident.
  5. QuestionsDeterminism, agent counts, the four separate apps, what happens on a device with no on-device model.
  6. Release recordVersion 1.0 and the builds that carry it. Nothing that has not shipped.
  7. SupportHow to reach a person, and the answers that follow from everything being local.
  8. PrivacyWhat is stored, where, and the single setting that can send anything anywhere.

What a result looks like

Below is an actual run, not a mock-up. The input was typed into the shipping engine with the on-device language model deliberately declined, so the run is reproducible by anyone with the same text.Which is also why the outcome labels read as cropped phrases and the drivers are bare terms: that is the deterministic extractor, and it is exactly what a device without Apple Intelligence sees. The full example says so at more length.

Typed into Orakl

Should I take the senior role at the smaller company or stay where I am?

The offer is a 14% raise and a title change. My current manager is good and I have been here four years. I am tired, and the commute would be longer.

In favour of “Stay where”

  • change0.94
  • smaller0.93
  • senior0.84

In favour of “Smaller company”

  • company0.65
  • current0.54
  • manager0.50
Leans
50%Stay where
Confidence
0%1 − entropy
Split
98%top-two gap
Agents
60032 rounds

Final vote share 0.4917 / 0.5083 across 600 agents. Confidence 0% and Split 98% are not a failure: they are the model reporting that after 32 rounds of argument it could not separate the two options at all. That is a more useful thing to be told than a number pretending to be certain.

Why disagreement is the output

Most tools of this kind hide their variance. They average a crowd and print the average. Orakl keeps the shape of the crowd, because the shape is the finding: a 51/49 result and a 90/10 result are different situations that a single headline percentage flattens into the same sentence.The per-round convergence curve is kept too, and shown in the app as “How consensus formed”. In the run above it descends from 0.548 to about 0.504 — the swarm got less sure as it argued.

The agents are not identical. Each archetype carries a leaning, a conviction, a conformity and an openness, and every agent instantiated from it gets those values jittered. Some agents are contrarian and actively push away from whatever the majority currently believes. A unanimous result therefore means something: it means even the agents built to object stopped objecting.

It also means the reverse. When the input is a single line with nothing in it to argue about, the swarm agrees perfectly and reports full confidence — and that reading is an artefact, not a signal. We show that case in full on the examples page rather than leaving you to discover it.

Availability

Orakl ships as four separate applications — iPhone, Mac, Apple TV and Apple Vision Pro — built from one codebase. They do not sync with one another, and they cannot, because none of them talks to a server. The interface is localised into 34 languages.

Orakl is an analytical simulation. Its output is a model, not a fact — it is not financial, medical, legal or professional advice. The limits page is not a disclaimer appended to a sales page; it is part of the description of the product.