<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Multivergence.com</title>
    <link>https://multivergence.com/</link>
    <description>Recent content on Multivergence.com</description>
    <generator>Hugo</generator>
    <language>en-us</language>
    <lastBuildDate>Sun, 18 Oct 2026 00:00:00 +0000</lastBuildDate>
    <atom:link href="https://multivergence.com/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Forkable State Gives AI Agents a Real Way to Try Before They Commit</title>
      <link>https://multivergence.com/forkable-state-gives-ai-agents-a-real-way-to-try-before-they-commit/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/forkable-state-gives-ai-agents-a-real-way-to-try-before-they-commit/</guid>
      <description>&lt;p&gt;Agents have started trying things before they commit. A coding agent sketches three plans for a refactor and keeps the one whose tests pass. A travel agent holds a train, a flight and a coach until the fares and the delays are in. A planner runs a few sequences of tool calls and takes the first that works. People do this too, of course. What&amp;rsquo;s new is that software is doing it hundreds of times an hour, and it needs somewhere to keep the alternatives while it decides.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Multivergence Launches as Open Source Forkable State for AI Agents</title>
      <link>https://multivergence.com/multivergence-launches-as-open-source-forkable-state-for-ai-agents/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/multivergence-launches-as-open-source-forkable-state-for-ai-agents/</guid>
      <description>&lt;p&gt;Multivergence 0.1 is out, open source under the Apache License 2.0. It&amp;rsquo;s a state engine for software that keeps several possible futures open at once: fork the state into branches, give each a weight, constraints and a deadline, let evidence thin them out, and promote the one that&amp;rsquo;s left. The code is on &lt;a href=&#34;https://github.com/multivergence/multivergence&#34;&gt;GitHub&lt;/a&gt;, and ready-built binaries for Linux, macOS and Windows are on the &lt;a href=&#34;https://multivergence.com/download/&#34;&gt;download page&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;p&gt;The first users in mind are AI agents that try before they commit. They fork a plan per approach, feed tool results back as facts and likelihoods, and promote the plan that survives. The &lt;a href=&#34;https://multivergence.com/forkable-state-gives-ai-agents-a-real-way-to-try-before-they-commit/&#34;&gt;explainer&lt;/a&gt; goes through why that job belongs in the state, where every agent can share it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How Multivergence Was Tested With a Thousand Crashes and 86 Million Reads</title>
      <link>https://multivergence.com/how-multivergence-was-tested-with-a-thousand-crashes-and-86-million-reads/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/how-multivergence-was-tested-with-a-thousand-crashes-and-86-million-reads/</guid>
      <description>&lt;p&gt;A state engine for branching futures makes a handful of promises. A write to one branch never shows up in another. A promote happens completely or not at all, even if the process dies halfway. The same calls always give the same weights. Deadlines and constraints fire exactly when they should. And several processes can share one store without losing anything. Each of those got its own test, aimed at breaking it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Why the Project Is Called Multivergence</title>
      <link>https://multivergence.com/why-the-project-is-called-multivergence/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/why-the-project-is-called-multivergence/</guid>
      <description>&lt;p&gt;The name is two halves of an idea. Divergence is the moment one state becomes several: an agent forks three plans and each goes its own way. Convergence is the moment they become one again: the evidence is in, two plans are dead, and the third becomes the state everyone works from. Multivergence is both halves, and the whole loop the engine runs.&lt;/p&gt;&#xA;&lt;p&gt;It also says how many. A fork in version control is usually drawn with two branches. Here there are as many as the problem needs, each with its own weight. And it nods to the multiverse, many possible worlds alive at the same moment, which is a fair description of a store with a dozen live branches in it.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How a Coding Agent Tries Three Fixes at Once and Ships the One That Passes</title>
      <link>https://multivergence.com/how-a-coding-agent-tries-three-fixes-at-once-and-ships-the-one-that-passes/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/how-a-coding-agent-tries-three-fixes-at-once-and-ships-the-one-that-passes/</guid>
      <description>&lt;p&gt;A bug report comes in: &lt;code&gt;Median([1 2 3 4])&lt;/code&gt; returns 3, and it should return 2.5. A coding agent can usually think of more than one fix. The usual move is to pick the one it likes best, apply it, run the tests, and start over if they fail. Each failed attempt has to be undone by hand, and the working copy spends the whole time half changed.&lt;/p&gt;&#xA;&lt;p&gt;With Multivergence the agent drafts all three fixes at once, each in its own branch, and lets the evidence pick. This case study walks through &lt;a href=&#34;https://github.com/multivergence/multivergence/tree/main/examples/fixes&#34;&gt;examples/fixes&lt;/a&gt; in the repository. The patches in it are real Go functions and the test suite really runs on them. Every number below is from its &lt;a href=&#34;https://github.com/multivergence/multivergence/blob/main/test/results/example-fixes.txt&#34;&gt;recorded output&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How an On-Call Agent Narrows Down an Outage With Weighted Hypotheses</title>
      <link>https://multivergence.com/how-an-on-call-agent-narrows-down-an-outage-with-weighted-hypotheses/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/how-an-on-call-agent-narrows-down-an-outage-with-weighted-hypotheses/</guid>
      <description>&lt;p&gt;At 14:02 an alert fires: checkout&amp;rsquo;s p99 latency is 4.8 seconds, against a normal 300 ms. Whoever is on call, a person or an agent, starts with a handful of suspects. The connection pool could be exhausted. The release that went out at 13:58 could be bad. A cache node could be failing, or the payment provider could be slow. Each suspect comes with its own fix, and picking the wrong fix costs time during an outage.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How an Agent Books a Venue With Four Holds Open at Once</title>
      <link>https://multivergence.com/how-an-agent-books-a-venue-with-four-holds-open-at-once/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/how-an-agent-books-a-venue-with-four-holds-open-at-once/</guid>
      <description>&lt;p&gt;Booking a venue for a team offsite is a waiting game. You ask a few places to hold the dates, and each hold runs out at a different time. Quotes come back over the afternoon and someone adds six people to the list; then the team votes. Somewhere in there a hold expires before anyone noticed, and the best option is gone.&lt;/p&gt;&#xA;&lt;p&gt;Each hold is a possible future with a clock on it, which is exactly what a Multivergence branch is. This case study goes through &lt;a href=&#34;https://github.com/multivergence/multivergence/tree/main/examples/holds&#34;&gt;examples/holds&lt;/a&gt;, where an agent keeps four holds open over two days. The figures come from its &lt;a href=&#34;https://github.com/multivergence/multivergence/blob/main/test/results/example-holds.txt&#34;&gt;recorded output&lt;/a&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>How a Dispatcher Keeps Four Delivery Plans Open Until the Van Leaves</title>
      <link>https://multivergence.com/how-a-dispatcher-keeps-four-delivery-plans-open-until-the-van-leaves/</link>
      <pubDate>Sun, 18 Oct 2026 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/how-a-dispatcher-keeps-four-delivery-plans-open-until-the-van-leaves/</guid>
      <description>&lt;p&gt;Route planning for a delivery van usually happens once, early, on the information there is at 07:30. Then the morning changes it. A late order comes in and a lane closes on the ring road; the ferry stops taking bookings at 08:20. A plan made at 07:30 doesn&amp;rsquo;t know any of that, and a planner that recomputes from scratch each time loses track of what it already ruled out and why.&lt;/p&gt;</description>
    </item>
    <item>
      <title>About</title>
      <link>https://multivergence.com/about/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/about/</guid>
      <description>&lt;p&gt;Multivergence is a small state engine for software that has to keep several possible futures open at once. You fork the current state into branches, cheaply. Each branch carries a weight for how likely it is, constraints for what must stay true, and a deadline for when it stops mattering. Evidence thins them out, and the one that wins is promoted to become the real state.&lt;/p&gt;&#xA;&lt;h2 id=&#34;why-the-project-exists&#34;&gt;Why the Project Exists&lt;/h2&gt;&#xA;&lt;p&gt;AI agents increasingly try several approaches before committing to one. Three plans for a refactor, two booking options, a handful of tool-call sequences. The tools they use for this were built for something else. Git worktrees and container snapshots are full copies with no idea which copy is more likely, when one should be abandoned, or what result would settle it. Keeping the alternatives in the prompt has no state at all.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Contact</title>
      <link>https://multivergence.com/contact/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/contact/</guid>
      <description>&lt;p&gt;The project would like to hear from:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;People building agents&lt;/strong&gt; that try several plans, bookings or tool sequences before committing, about what they branch on and what settles it.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Teams behind agent platforms and workflow tools&lt;/strong&gt; that need branch-and-commit state.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Anyone working on logistics, reservations, simulation or game search&lt;/strong&gt; who holds several possible futures at once.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Anyone&lt;/strong&gt; with a question about the engine, the demo or the figures on this site.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Write to &lt;strong&gt;&lt;a href=&#34;mailto:info@multivergence.com&#34;&gt;info@multivergence.com&lt;/a&gt;&lt;/strong&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Download Multivergence</title>
      <link>https://multivergence.com/download/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/download/</guid>
      <description>&lt;p&gt;Each archive holds two commands, &lt;code&gt;multivergence&lt;/code&gt; and &lt;code&gt;multivergence-demo&lt;/code&gt;, with the license files and the README. The links always point to the latest release.&lt;/p&gt;&#xA;&lt;div style=&#34;overflow-x:auto&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;th&gt;System&lt;/th&gt;&#xA;          &lt;th&gt;Download&lt;/th&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Linux, x86-64&lt;/td&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;https://github.com/multivergence/multivergence/releases/latest/download/multivergence_linux_amd64.tar.gz&#34;&gt;multivergence_linux_amd64.tar.gz&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Linux, ARM64&lt;/td&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;https://github.com/multivergence/multivergence/releases/latest/download/multivergence_linux_arm64.tar.gz&#34;&gt;multivergence_linux_arm64.tar.gz&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;macOS, Apple silicon&lt;/td&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;https://github.com/multivergence/multivergence/releases/latest/download/multivergence_darwin_arm64.tar.gz&#34;&gt;multivergence_darwin_arm64.tar.gz&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;macOS, Intel&lt;/td&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;https://github.com/multivergence/multivergence/releases/latest/download/multivergence_darwin_amd64.tar.gz&#34;&gt;multivergence_darwin_amd64.tar.gz&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;      &lt;tr&gt;&#xA;          &lt;td&gt;Windows, x86-64&lt;/td&gt;&#xA;          &lt;td&gt;&lt;a href=&#34;https://github.com/multivergence/multivergence/releases/latest/download/multivergence_windows_amd64.zip&#34;&gt;multivergence_windows_amd64.zip&lt;/a&gt;&lt;/td&gt;&#xA;      &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;&lt;em&gt;Checksums are in &lt;a href=&#34;https://github.com/multivergence/multivergence/releases/latest/download/SHA256SUMS&#34;&gt;SHA256SUMS&lt;/a&gt;. Every release is listed on &lt;a href=&#34;https://github.com/multivergence/multivergence/releases&#34;&gt;GitHub&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;&#xA;&lt;h2 id=&#34;install&#34;&gt;Install&lt;/h2&gt;&#xA;&lt;p&gt;On Linux or macOS:&lt;/p&gt;&#xA;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;color:#f8f8f2;background-color:#272822;-moz-tab-size:4;-o-tab-size:4;tab-size:4;&#34;&gt;&lt;code class=&#34;language-sh&#34; data-lang=&#34;sh&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;tar -xzf multivergence_linux_amd64.tar.gz&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sudo mv multivergence multivergence-demo /usr/local/bin/&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;multivergence version&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;On Windows, unzip the archive and put the two &lt;code&gt;.exe&lt;/code&gt; files somewhere on your &lt;code&gt;PATH&lt;/code&gt;.&lt;/p&gt;</description>
    </item>
    <item>
      <title>Quick Start</title>
      <link>https://multivergence.com/quick-start/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/quick-start/</guid>
      <description>&lt;p&gt;This page runs one small scenario three ways: from the shell, from Python and from Go. An agent is booking a trip and has three plans in mind. A fare search and a disruption feed come back, a seat hold runs out, and one plan is left. Every output below is what the command really prints, with its clock fixed so the times match.&lt;/p&gt;&#xA;&lt;p&gt;Get the &lt;code&gt;multivergence&lt;/code&gt; command from the &lt;a href=&#34;https://multivergence.com/download/&#34;&gt;download page&lt;/a&gt; first, or install it with Go 1.24 or later:&lt;/p&gt;</description>
    </item>
    <item>
      <title>Reference</title>
      <link>https://multivergence.com/reference/</link>
      <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
      <guid>https://multivergence.com/reference/</guid>
      <description>&lt;p&gt;A short reference for the Go library and the &lt;code&gt;multivergence&lt;/code&gt; command. The full versions are in the repository: &lt;a href=&#34;https://github.com/multivergence/multivergence/blob/main/docs/REFERENCE.md&#34;&gt;the API and every command&lt;/a&gt;, &lt;a href=&#34;https://github.com/multivergence/multivergence/blob/main/docs/UPDATES.md&#34;&gt;the exact rules for weights, constraints and deadlines&lt;/a&gt;, and &lt;a href=&#34;https://github.com/multivergence/multivergence/blob/main/docs/FORMAT.md&#34;&gt;the file format&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;the-pieces&#34;&gt;The Pieces&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;Trunk.&lt;/strong&gt; The state that is real now. Its name is &lt;code&gt;trunk&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Branch.&lt;/strong&gt; A copy-on-write fork of the trunk or of another branch. Writes to it stay in it. A branch that changes 3 keys of a 10,000-key trunk costs about 4 KB.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Weight.&lt;/strong&gt; How likely a branch is, next to the others. Its probability is its weight over the total weight of the live branches.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Constraint.&lt;/strong&gt; A condition on one key, such as &lt;code&gt;fare/flight &amp;lt;= 400&lt;/code&gt; or &lt;code&gt;hold exists&lt;/code&gt;. When it stops holding, the branch dies.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Deadline.&lt;/strong&gt; When a branch stops mattering. It dies at the first change made at or after it, and reads show it expired from that moment.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Observe.&lt;/strong&gt; Applies evidence: facts written to the trunk and every live branch, then constraints, then likelihoods multiplied in, then the weights renormalised, then an optional prune.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Promote.&lt;/strong&gt; Makes a live branch&amp;rsquo;s state the trunk, drops every branch, and starts the next generation. It&amp;rsquo;s one record in the file.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Stale.&lt;/strong&gt; A branch forked before a direct write to the trunk. Promote refuses it, since promoting would lose that write.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;how-observe-works&#34;&gt;How Observe Works&lt;/h2&gt;&#xA;&lt;p&gt;One call, in this order, all or nothing:&lt;/p&gt;</description>
    </item>
  </channel>
</rss>
