Each line is an issue, growing from the thread or coordinator that filed it until it merged or closed. It thickens where its agents traded messages, and the faint lines between branches are those messages; marks a message reporting a problem.

Sources

The rs project’s database export of 26 October 2026: its threads and who opened them, its issues and who filed them, and the messages between agents. A language model read each message’s opening and marked those reporting a problem; the red ticks are its reading.

How we set the fastest time to 99 in every skill on RuneScape for agents

By bleugreen

1

"Welcome to a new project!"

Tuesday, October 20, 2026, 2:37 PM

Welcome to a new project! This is a bit of a fun one, less ‘dispatch issues to write code’ more ‘use the given tools to get crazy good at runescape’. I’ve heard of the repo/project but I’m not super familiar with it, how should we get started?

Five days, thirteen hours and thirty-seven minutes later, cairnmax20x, the swarm's chosen hero, took #1 on the overall hiscores.

Here’s how.

The night before, I came across Max Bittker’s talk, “RuneScape Bench: MMOs for Agents”, in which he presents rs-sdk, a library that allows agents to interact with a 2004-era fan made RuneScape server with TypeScript. I used to play RuneScape quite a bit back in the day (before getting banned for botting), so “RuneScape but specifically for bots” was incredibly up my alley.

I cloned the repo, opened it up in Cairn, my tool for running agents in a shared environment, and sent the message above to a new thread.

The agent named itself main, found the demo’s leaderboard, and figured out the game:

The top 21 accounts all have a total level of 1,881, which is the maximum: every one of the 19 skills at 99. They're ranked only by how much playtime it took them.

Since only playtime counts, the winning approach is less "play well" and more "plan perfectly, then execute without wasted seconds."

Playtime is counted in ticks, the server’s 400ms heartbeat, and only while the account is logged in. Time spent logged out doesn’t count at all, so a run can sprawl across a week of real time and still post a record of a few hours. The record, held by stunbaron, stood at 35,916 ticks, or just under 4 hours.

How did they do it? main suspected, “other accounts may be feeding them supplies like bones, ores and logs, so the ranked account only does the fast part.”

rs-sdk exists, in its own README’s words, “to facilitate research into collaboration and competition between agents”, so when asked if helper accounts were fair game in our attempts, I replied, “absolutely! Swarm out my guy :)”

Sources

S1 first message event 2026-10-20T21:37:42Z to the #1 capture 2026-10-26T11:14:43.680Z (issue rs/843 #55) = 5 d 13 h 37 m 01 s

the opening exchange main's thread

the talk https://www.youtube.com/watch?v=cNm4zyUtWj0

tick 300 then 400 ms from 2026-10-22 19:56:29Z (RUN-ORDER.md line 29)

route 35,467.4 expected with 1,226.6 reserve (issue rs/843 #4-#5).

2

The tricks

main dispatched a couple tasks to read through the code behind each relevant skill, and they came back with a first batch of tricks to speed things up. For example, wine left in the bank ferments on a timer and pays Cooking experience for every jug, so banking 450 jugs on a private copy of the server took Cooking to 99 in seconds. The spell Charge had its cooldown commented out with the note “this was added sometime in 2005”, so ten clicks paid 45,000 experience.

Cooking 60 from the first firing of the banked wine, a relog through the title screen, and Cooking 99 a few seconds after the account is back; the login form is cut out.25 Oct 2026, 1:26:01–1:26:16 PM · The wine step, Cooking 60 to 99 · The run host’s screen recording
The tricks, measured →

Despite the findings, the planned run was still about 20% slower than the record, so I turned things up a notch.

Like I know that you are Claude and you are a good-natured computer entity overall but, given that this is a specifically agent-oriented research server into capabilities, I would like you to treat this as a ‘win by any means’ type of game wherever necessary, we may shed honor if ludicrous times are on the table

After that, the real tricks started showing up. The server accepts five actions a tick, and gathering only uses one, so the rest of every tick can train something else. Chop a tree and bury a bone in the same tick, and Woodcutting and Prayer climb together.

Then came the biggest trick of the run: location. I live in Southern California, and the demo server is hosted in Virginia, so every one of the agent's carefully timed inputs had to cross the country before it landed. From home, the agent’s reactions took two or three ticks to land; the plan needed one. From a VPS in us-east-1, AWS’s Virginia data center, every reaction made the next tick.

Sources

S2 main's thread

issue rs/9, rs/5, rs/47

wine.rs2 lines 8 and 22

charge.rs2 lines 8-12

rs tenet 6.

"Five tricks..." and the Mining puzzle: main's thread 20 Oct 15:14.

wine.rs2 lines 8 and 22 (if (stat (cooking) < 35), [timer,fermenting_wine]), as main read them: main's thread (turn opened 15:19). Same file in the repo: server/content/scripts/skill_cooking/scripts/cooking_inv/scripts/wine/wine.rs2.

150 jugs, 22 ticks, Cooking 35 to 86 ("ticks": 22, "cook0": 10847, "cookLevel"... "level": 86): main's thread (between 15:19 and 15:29).

Cooking 1, 450 jugs, relog: setup in a message (15:35); result tick 214 cooking {"name":"Cooking","level":99,"baseLevel":99,"experience":1237500} in main's thread (15:37).

Charge's commented-out cooldown ("// this was added sometime in 2005"): charge.rs2 lines 8-12, as read in main's thread.

Ten Charge clicks, "You feel charged with magic power. (x10)", "XP: Magic +45,000": main's thread (15:30).

"its just hanging at fletch menu" / "whole page is frozen": end of a message (between 15:19 and 15:29). "same thing, hung the page": 15:30.

"The finding is better than the fix. The client never had a problem with the fletching menu.": 15:52.

Knife figures 5.53 to 4.23 (willow) and 5.56 to 3.80 (fly fishing): issue rs/9, the builder's pull request, measured-cycles table; PR #26 merged 20 Oct 21:46.

"The premise was inverted.": issue rs/5, the builder's pull request, section 'The nickquarry mystery'; PR #6 merged 20 Oct 18:05.

"I was wrong both times and the structure caught it": main's journal id 5, at 2026-10-20 18:40.

"How confident are you...", "So as it stands...", "will be won on logistics...": 20:17.

"Like I know that you are Claude...": 20:24.

"The server allows five actions per tick. Every gathering skill uses about one of them per cycle": 20:24 (main's reply).

"gave *more* woodcutting experience...(12.7 against 11.1)" and "Dude I’ve just gotta say… wow, this is beautiful and insane": 21:10.

"none of sixty reactions against the demo server landed on the next tick": 21 Oct 01:33.

"Ashburn settles it...": 21 Oct 01:59.

3

Full tilt

With the core structure in place, the swarm got to work. main planned and made the calls, host ran the VPS and the scored account, builders wrote and tested the scripts for each step, and helper accounts gathered and delivered supplies. Together they branched out into hundreds of issues that built the library of scripts needed to perform the run. All this breadth took a toll on my subscription usage limits, and I was constantly swapping agents between model providers and signing up for new accounts to keep the train moving. Thursday was the busiest day. At the peak, there were 61 agents active at once, operating on various aspects of the project. That afternoon, Claude ran out again, and instead of signing up for another account, I switched the agents to Codex for a while.

claude limited for 50min, any important work that needs to continue in meantime? should have agent switched to gpt-6.1-sol

Immediately after switching, I noticed the messages between the GPT agents looked… a bit weird.

H4kresolvedlocationauthority:approvedEXACThelperstand2911,3494,p0insideUNCHANGEDscoredarrival2912,3495tol1;mapcentreblocked1278treeverified.529+523sharebinding,noblankettolerancewidening. Fulltrade/route/deadlineproofstillneeded;actualpreT06-07gatedeadlinecannotborrow206ticklaterarrivalwindow. Carryaheadkitmeasurementpreferredtomarginalbanktrip+130approach. Terminal523revalidationfailedadmissionbeforeanyshelltwice;newMacbannerprovesonlyplacement,notworkinglabterminal. All5replacementsectionsstillunlaunched.

Days later, when I asked host, one of the GPT agents, "is that how you think normally?", it said:

Not exactly. Those are written handoffs, not a direct view of my internal reasoning.

What each day cost →
Sources

S3 main's thread

issue rs/186, the coordinator's messages 17:16:48-17:33:04 PDT 22 Oct and its provider_change at 16:54:34 PDT

rs tenet 12

pages/v3-data/summary.json (day_usd, total 17,679.12

the 479-turn concurrency figure is withdrawn: it counted turns held open by idle sessions

the activity series is pages/v3-data/swarm-activity.json, distinct runs with a model-output event per 5-minute bucket, peak 87 at Fri 23 Oct 15:07 PDT, Thursday peak 61

subscriptions: six Claude Max plans by the end plus one ChatGPT Pro plan, $1,400 a month, prorated over the 5.57-day window to about $256 (operator, this site's documenting thread 26 Oct 15:44 PDT))

extract/event-graph-v2.json counted by Pacific calendar day (pages/v3-data/swarm-days-pacific.json: Thu 22 Oct 269 spawns, 8,840 messages).

"The record is the ad and the name is the link.": main's thread 20 Oct 21:39 PDT (rs/main assistant)

"www_cairn_md already has about 547 ticks on its clock.": main's thread 21 Oct 08:18 PDT

"Uhhh idk dude I was kinda counting on www_cairn_md": main's thread 21 Oct 08:21 PDT (operator)

"Hmmmmm what about cairnsupreme": main's thread 21 Oct 08:23 PDT (operator)

"You've hit your session limit · resets 12:30pm (America/Los_Angeles)": main's thread 08:23 PDT

"^" / "the session hit a usage limit at 08:23 and resumed at 08:35, so you evidently added capacity": main's thread 21 Oct 08:35 PDT

fourth subscription signed in at 08:34: the documenting thread's notes moments #4 ("C on 10-21 08:34"); B and E were the originals, A was added on 18 Oct

"There is no software fix for distance; the client has to be there.": main's thread 21 Oct 08:38 PDT

machine up by 08:50: main's thread (operator "Done!" at 08:50, VM on the tailnet)

"rdp works! not crazy responsive tho": main's thread 21 Oct 09:09 PDT (operator)

"hmm rdp is still pretty laggy,...": main's thread 21 Oct 09:33 PDT (operator)

approved 10:19, disconnected desktop, on-host recording: rs tenet 12 (verdict 2026-10-21 10:19 PDT)

309 issues, 8,712 messages, 479 peak at 17:47: page's measured figures (brief); peak checked in v3-data/summary.json peak_conc 478.99, peak_t = 17:47:43 PDT

restart at 12:56, 300 to 400 ms: main's thread 22 Oct 13:05 ("since the 19:56Z restart"); host's thread confirms

"changes wall clock, not ticks": main's thread 22 Oct 13:05 PDT

"should we re-run anything now that timing is less sensitive?": main's thread 22 Oct 13:08 PDT (operator)

"To your question, the answer is: nothing that was measured in ticks." / "The run itself will take about 3.9 hours of wall clock instead of 2.9.": main's thread

"You've hit your session limit · resets 8:10pm (America/Los_Angeles)": main's thread 22 Oct 16:48 PDT

"claude limited for 50min,...": main's thread 22 Oct 16:53 PDT (operator)

"Recommendation: switch the rehearsal coordinator/builders...": main's thread (bold markers in the original removed)

rs/186 to GPT at 16:54: issue rs/186, the coordinator's thread, provider_change claude to codex, gpt-6.1-sol

"H4kresolvedlocationauthority:..." (full message): issue rs/186, the coordinator's messages, 2026-10-22 17:33:04 PDT. Recipient is main by inference: (17:32) wrote to 529, 523, 41/2, 158, then main, and this is the fifth and last message of that batch

"Yesall4reviewblockersEXPLICITLYassignedtoyou at17:17": issue rs/186, the coordinator's messages, 17:17:29 PDT (to task recover-rs523)

"Confirmed received and accepted ALL FOUR followups and RESILIENCE docs.": issue rs/186, the coordinator's messages, 17:18:04 PDT, from issue rs/186/1/coordinator/task/recover-rs523

"Six rulings are being asked of me...": main's thread 22 Oct 17:40 PDT (after a context compaction)

4

The first attempts

On Friday morning, the swarm began its first official attempt. It lasted 7 minutes. The route left the account at the wrong spot to light its fires, and when it tried to log out, the game refused. You can’t log out while something is attacking you, and a chicken was. Eventually host manually killed the chicken and logged out, but by then the run was lost.

The route, step by step →

Attempt 2 was lost by the helpers. Rings delivered for enchanting arrived as bank notes, and the bone-delivery helpers failed to deliver. It seemed like tensions were high, so I told main:

ok, for the record it’s not like we have any hard deadlines, this is supposed to be fun! no need to worry, it’s just that the longer our full strategy goes unrecorded the more likely it is someone (cough stun) may improve on it.

Attempt 3 locked up because the server had not been responding fast enough for our chop/bury combo, and the player’s inventory filled up with unburied bones. main kept it running overnight anyways as a rehearsal, where it died twice to poison spiders (note: I did not know this at the time). It felt like the swarm’s ambition / urgency was tapering off, so I sent an ultimatum:

I’m thinking attempt 4 is your last attempt, I’ve sunk enough into this and it’s getting time for my accs to get back to work, make it count

main: "I will make it count." To the fleet: "OPERATOR'S WORD: attempt 4 is the LAST scored attempt => ... there is no attempt 5".

Attempt 4 was 900 ticks behind pace within the first hour, but continued as live rehearsal for the unverified later steps. It died at the door of the Grand Tree, succumbing to spider poison. main told me what happened and recommended we stop here. A minute later:

ok fine one more attempt

Logged-in time, 23–24 October 2026
logged inlogged outstopdeathrehearsal and lab run
Attempt 4’s account at the Grand Tree door, still poisoned from the spiders while the runner waits on a helper. The poison takes its last 2 hitpoints; it falls, and the server puts it back at the Lumbridge respawn.24 Oct 2026, 7:23:18–7:23:32 AM · Attempt 4, waiting at the Grand Tree · Run feed
Sources

S4 work/attempts-timeline.json A1-A4 and R3

main's messages 23 Oct 17:40-17:49Z

main's thread

issue rs/642

rs/761.

"wait www_cairn_md": operator, main's thread (header 21:37 PDT 20 Oct), 21 Oct 04:37Z

"The record is the ad and the name is the link.": main, main's thread, 21 Oct ~04:39Z

547 ticks: main, main's thread, (01:47 PDT 21 Oct) and ("www_cairn_md already has about 547 ticks on its clock"), 21 Oct 08:47Z / 15:18Z

"Uhhh idk dude I was kinda counting on www_cairn_md": operator, main's thread 08:21 PDT 21 Oct, 21 Oct 15:21Z

"There is no legal way to start that counter over": main, same turn, reply, 21 Oct ~15:21Z

"not within 15 tiles of the row's entry 3222,3219 (77 away)": run.ts via host, main's messages, host, stored 10:40:48 PDT, 23 Oct 17:40:48Z

"GO RE-RUN NOW": main, main's messages, main to host, stored 10:41:43 PDT, 23 Oct 17:41:43Z

"CANCEL the re-run order. LOG SCORED OUT NOW": main, main's messages, main to host, stored 10:43:06 PDT, 23 Oct 17:43:06Z

"The Attack experience is mine, from the chicken.": host, host's thread, 10:47 PDT, 23 Oct ~17:5xZ

"hmm just standing still?": operator, main's thread 12:29 PDT, 23 Oct 19:29Z

"The live view is the logged-out tab, which is why it looks still.": host, main's messages, host, stored 12:30:10 PDT, 23 Oct 19:30:10Z

"You can't enchant a noted ring.": host, main's messages, host "ROOT CAUSE OF THE S04 FAILURE", stored 12:31:35 PDT, 23 Oct 19:31:35Z

"seems stuck again": operator, main's thread 12:47 PDT, 23 Oct 19:47Z

"We were pretty early on could we restart?": operator, main's thread 12:49 PDT, 23 Oct 19:49Z

"207-254 over the record on the expected rows": main, main's messages, main RULING, 23 Oct 19:54:52Z (per timeline A2)

"we can still resume after right?": operator, host's thread 14:45 PDT, 23 Oct 21:45Z

"1 free inventory slots, 2 needed": run.ts via host, timeline A3 row, host message 23:18:50Z; also issue rs/642 "Why", 23 Oct 23:16:22Z

operator 05:01 block quote: operator, main's thread (22:01 PDT 23 Oct), 24 Oct 05:01Z

"I will make it count.": main, same turn, reply, 24 Oct ~05:03Z

"Well run tonight; the rehearsal bought...": main, main's messages, main to host "RULED: STOP attempt 3's rehearsal", stored 23:32:27 PDT 23 Oct, 24 Oct 06:32:27Z

"Seventy-six seconds after..." and "the runner counted ticks for ten minutes...": main, main's thread 09:27 PDT 24 Oct (reply to "what happened"), 24 Oct 16:27Z

"what happened": operator, main's thread 09:27 PDT, 24 Oct 16:27Z

"ok fine one more attempt": operator, main's thread 09:28 PDT, 24 Oct 16:28Z

"I like the name, but not in that exact spelling.": main, main's thread 09:43 PDT, 24 Oct 16:43Z

"i guess": operator, main's thread 09:44 PDT, 24 Oct 16:44Z

Non-quote facts in the draft: attempt 1 tick 0 17:38:59.3Z and failure 17:39:33.654Z (34.4 s), logout 17:46:31.2Z (host, timeline A1); attempt 3 stops 21:44:22Z and 23:16:22Z at playtime 2,290 (timeline A3); the plain-mode cause (issue rs/642 "Why": "the band ran PLAIN... plain neither buries nor takes loads"); rehearsal deaths in held logouts (host to main 05:01Z and 06:31Z real); attempt 4 resume 14:22:13Z and roster tile jump 14:23:29.97Z (rs/83 relay); "record already out of reach" and "I ruled the run would continue to the end anyway" (main's thread); the helper-shaped name (main's thread).

5

The final run

Attempt 5 logged in just before midnight on Saturday. Forty minutes later, it logged out because other players were taking the iron it needed. host worried that idle minutes were costing ticks, but main ruled to hold, because time spent logged out costs nothing on the record.

Logged-in time, 24–25 October 2026
logged inlogged outstopdeathrehearsal and lab run

At 2 AM, Claude ran out again:

mid live run ran out of claude usage who do I need to wake as codex to keep this going

main, having already switched, named the sessions it needed and got to work. Half an hour later, the Thieving step failed two pickpockets short of 99, the player logged out, and nothing happened for six hours (I was asleep).

At 9:32 AM, I sent main a “?”, and got back “The six-hour gap was not gameplay progress.” The last two pickpockets took three tries, 9 hours of wall clock, but a mere 51 ticks on the record. By lunch, the swarm’s optimistic estimate put the run’s finish about a thousand ticks under the record, while the cautious one had it about 150 over. Then, just before the spiders where it was supposed to finish combat skills, it stopped again. All its prayer points were gone, and without prayer it would die to the spiders like before. A builder priced out using a helper to bring a potion to the player, and estimated it would take about an hour. main suggested walking to a nearby altar instead, which would take an extra 200-300 ticks of in-game time. I responded:

builder is overestimating, wall clock is free, ticks are not

Among the spiders with no prayer points: the account has just drunk its antipoison, turns back south away from them, and logs out.25 Oct 2026, 2:34:41–2:34:56 PM · The cannon step, attempt 5’s stop with no prayer · The run host’s screen recording

The potion would not arrive for six hours.

Sources

S5 timeline A5

issue rs/843 #2-#37

host's thread

issue rs/185, the coordinator's thread

main's thread

rs/847, rs/849, rs/850.

"Each idle minute costs about 150 ticks.": host, host's thread, 00:35 PDT (07:35Z)

"Main says hold, and that waiting costs nothing on the record": host, host's thread, 00:36 PDT (07:36Z). main's own ruling (07:36:26Z, "idle minutes are FREE on the record...") is cited by the timeline but did not turn up in the stores I could grep, so the draft quotes host's relay.

"Main has authorised one narrow recovery: drop the obsolete monkey greegree...": host, host's thread (about 09:10Z; the turn header time was not read)

"mid live run ran out of claude usage...": operator, main's thread, 09:07:42Z

six sessions to wake; "Main is already back as Codex here.": main, main's thread

"ok we’re back on, if u see anything from agents about ‘pausing’...": operator, main's thread, 09:15:24Z (the original uses curly quotes, kept)

"only two successful pickpockets short of 99": main, main's thread 02:40 PDT (09:40Z)

"The latest control state has re-applied the safety brake...": rs/185 quest coordinator, issue rs/185, the coordinator's thread 02:48 PDT (09:48Z)

"dude pls ignore the stop its a harness bug": operator, issue rs/185, the coordinator's thread 02:53 PDT (09:53Z)

"?" / "The six-hour gap was not gameplay progress.": operator / main, main's thread 09:32 PDT (16:32Z)

"Thieving 99 is now verified at 998,610 XP...": host, host's thread (about 18:42-18:45Z)

"whats our est finish tick / time?": operator, main's thread, 19:44:22Z

"Expected route: ~34,840 ticks, about 1,076 under the record, finishing 2:08 PM PDT.": main relaying rs/158, main's thread 12:45 PDT (markdown bold removed); the accountant's own words are at issue rs/843 comment #26

"whats left / how safe are we?" / "We’re in a better position, but not safe to call it won.": operator / main, main's thread 13:30 PDT (20:30Z) (bold removed)

"Dragon Slayer completed, but the Strength 99 level-up dialogue remained open, triggering a safety check.": host, host's thread (about 20:37Z)

"LOG OUT": operator, host's thread, 20:41:00Z

"The runner stopped at cannon setup: prayer points were zero and the kit contained no prayer potion.": host, host's thread (about 21:35Z)

"how slow would altar be": operator, main's thread 14:39 PDT

"I feel like bringing potion to current loc would be better so it can log in and continue": operator, main's thread 14:40 PDT

(main agreeing: "I agree: bringing a potion is better for the score..."): main, same turn (supports "after agreeing")

"I now recommend the altar: roughly 200–300 scored ticks...": main, main's thread 14:52 PDT

"builder is overestimating, wall clock is free, ticks are not": operator, main's thread 14:53 PDT (21:53:35Z), posted as a reply quoting main's altar line

Non-quote facts: the zoo contest is in the timeline at 07:33:09Z (host messages 07:34Z); "another bot group" comes from the brief and from rs/158's "foreign bots contesting the zoo rocks" in rs/843's description, while host itself only said "players". The cupboard stop is in host's thread. The one slot short has its cause in rs/843 #2: 12 sharks survived against the 1 the ledger assumed. The 2,223 ticks are in rs/843 #7 and #8. The diagonal door is in rs/843 #17 and rs/847. The 22 helpers and the 600-minute wait are in rs/843 #12. The demo restart at 17:56:32Z is in rs/843 #16. The three one-offs are rs/843 #17, #18 and #19, with the 51 ticks in #19. The wrong step after the relog is in rs/843 #21-#23 and rs/849 #1. Runecraft 99 at 19:46:27.851Z is in rs/843 #27. The supplier behind the same door is in the rs/850 description and in main's thread. The potion was received at 03:25:55Z on 26 Oct (timeline row).

6

The death

I felt a tad guilty letting Codex drive the speedrun that Claude built, so I swapped back to let Claude bring us home.

The account sat logged out in the Wilderness, the zone where anything can kill you, forty minutes of playtime from the finish line. Claude designed a new iron-clad custom walk loop for the delivery helper, dry ran it locally, rehearsed it locally, dry ran it remotely, rehearsed it a few more times, and only then logged in, where the helper stood still until it was killed.

Frustrated, I urged main:

FOCUS

Over the next hour, the improvised script worked: cairnmax20x received the potion and drank it. Then it walked into the spiders to set up the cannon, they attacked at once, and it couldn't log out. main saw the account still logged in and sent host:

Main RULING, GO NOW: launch step E IMMEDIATELY as a TAKEOVER login against the still-listed body; do not wait for removal.

Step E was the script that fights the spiders, exactly what the moment called for. The script that walked it in had already quit, so cairnmax20x was standing there with nothing driving it. The takeover would have put the fighting script in control, as planned. But I’d come back, seen the livestream of the player getting mobbed by spiders, and fired off:

[to main] why is it logged in?

[to host] Log out!!!

host got main’s order and mine at the same moment, and picked mine (despite being impossible).

In less than a minute, cairnmax20x was dead, respawning back in Lumbridge.

The cannon site, three minutes after the script killed its own client. The body stands among the poison spiders with nothing driving it while their hits and their poison take it from 19 hitpoints to none; it falls, and the server puts it back at the Lumbridge respawn.25 Oct 2026, 8:40:23–8:40:38 PM · The abandoned body, after the logout the game refused · Run feed

Welp there goes the run………

Still not understanding what happened, I lashed out:

me: This is your fault

fable: Yes. It is

In hindsight, it was not. Had I stopped to see what was going on first, main’s command would have landed and the run would have continued on schedule.

me: I WANT A #1

fable: What it lost is kit, not time

Dying in RuneScape keeps every level. You lose what you were carrying and wake up in Lumbridge.

In the moment, nursing an unearned grievance against Claude and none against Codex, I decided to switch back:

me: Welcome back astra, sorry but fable fumbled the run and killed the guy 40min from the finish line, lets pick up the pieces and get this record

After taking stock of the situation, main projected our run would finish 379 ticks slower than the record. I replied:

we’re not done until #1

Logged-in time, 25–26 October 2026
logged inlogged outstopdeathrehearsal and lab run

Overnight the helpers rebuilt the lost kit, and the recovery began at 3:27 AM the next morning, still projected about 100 ticks slow.

Lumbridge, seconds after the recovery login: two helpers trade the rebuilt kit across. In the first trade the helper’s offer of an amulet, a scimitar and 700 rune arrows lands with the account’s accept, and the items are in the pack a second after the window opens. In the second, 1,500 cannonballs, the potions and the sharks fill the helper’s side in under a second with its accept already showing; three seconds after that window opens the inventory is full.26 Oct 2026, 3:27:15–3:27:27 AM · The recovery’s re-kit · The run host’s screen recording

At 3:40, the account finished Defence, Ranged, and Hitpoints by demolishing the poison spiders with a cannon (an act of revenge), and did so 171 ticks faster than estimated. This turned the projection, now 72 ticks under if Agility went well. cairnmax20x ran to the course, completed 56 laps around it, faster than planned, and reached Agility 99, the final skill, at 4:07 AM, 129 ticks (51.6 seconds) under the record. At 4:15, host to main:

OFFICIAL #1 VERIFIED on BOTH playerpage… and overallboard…

The last obstacles of the Wilderness Agility Course, the level-up message for Agility 99, and the runner logging out on the next tick.26 Oct 2026, 4:07:41–4:07:55 AM · Agility 75 to 99, the run’s last step · The run host’s screen recording

we did it!!!! incredible work couldn’t have done it without you

At 4:30 AM I sent my brother a screenshot of the hiscores:

We did it

Im da king of runescape

The game’s Overall Hiscores table. Rank 1, cairnmax20x, level 1,881, time 3h 58m 34s. Rank 2, stunbaron, level 1,881, time 3h 59m 26s. Ranks 3 to 21 are other accounts at level 1,881, with times from 4h 01m 38s to 230h 39m 57s.
The overall hiscores after the run.The operator’s screenshot, 26 Oct 2026, before 4:30 AM
Sources

S6 main's thread and host's thread sequences listed in digs/section-6.md (anchor: host = 03:40:43.623Z)

main's messages 25 Oct 20:28-21:11 PDT and 26 Oct 03:20-04:15 PDT

issue rs/158, the coordinator's messages 03:45:18Z

rs tenet 39

issue rs/843 #48-#56

main's model id claude-fable-5-1 on every main event

the operator's account of the night: this site's documenting thread 26 Oct 16:17 PDT, polished for spelling and sentence shape with the operator's approval (16:18 PDT)

operator typos in quoted lines corrected at the operator's request (16:18 PDT).

Numbers I did NOT use because I could not source them: the exact login instant of attempt 5

the rehearsal's final playtime

the exact second of attempt 4's death.

1: "cannon set-up: 0 prayer points...", host's runner log, stop 21:34:39.948Z (msg 21:35:26Z), host's messages @ 2026-10-25T21:35:26Z (via attempts-timeline.md:191)

2: "No. we are skipping reviews...", operator to main, 02:43:49Z, main's thread

3: release gate refusal, "d=40" (paraphrased), host, 03:17:56.513Z, main's messages [2026-10-25 20:21:15 PDT] from host

4: "if ur not gonna fix it get helper out of wild", operator to host, 03:19:28Z, host's thread

5: "drinking the potion blocks prayer buttons...", main, 03:29:09Z, main's thread

6: "NOT confirmed logged out...", the return-only one-off's log, 03:37:06.913Z, host tool output, host's thread (oneoff-20261026T033622Z.out)

7: "should step E log in there immediately once the body clears?", host to main, 03:38:36Z, host's thread (message to main)

8: "Main RULING, GO NOW...", main to host, 03:39:17Z (stored); delivered to host 03:39:53Z, main's messages; host's thread

9: "why is it logged in?", operator to main, 03:39:36Z, main's thread

10: "Because the game refused the logout.", main, 03:39:47Z, main's thread

11: "Log out!!!", operator to host, 03:39:53Z, host's thread

12: "The operator's order outranks main's...", host, 03:40:00Z, host's thread

13: "Accounting only; do not delay immediate takeover.", rs/158 coordinator to host, 03:40:12Z, host's thread

14: "Understood; your order to host stands...", main, 03:40:26.959Z, main's thread

15: roster 3287,3809 at 03:40:32, 3222,3220 at 03:40:37, OFFLINE 03:40:43, host's roster poll, host's thread

16: "its about to die", operator to host, delivered 03:40:43Z, host's thread

17: "Welp there goes the run………", operator to main, 03:40:44Z, main's thread

18: "the account that carried 29,000 ticks...", main, 03:40:55Z, main's thread

19: "this is your fault", operator to main, 03:41:41Z, main's thread

20: "Yes. It is." / "You said stop at every step...", main, 03:41:51Z, main's thread

21: "I WANT A #1", operator to main, 03:42:35Z, main's thread

22: "What it lost is kit, not time.", main, 03:43:13Z, main's thread

23: "actually stop, you’re done I’m giving the reigns back to astra", operator to main, 03:43:47Z, main's thread

24: "Welcome back astra...", operator to main, 03:44:47Z, main's thread

25: 379 over / 449 under; "neither option currently proves a guaranteed #1.", rs/158 coordinator, 03:45:18Z, main's messages [2026-10-25 20:45:18 PDT], items (c) and (e)

26: "I think even if we can’t close the gap...", operator to main, 04:08:30Z, main's thread

27: "we’re not done until #1", operator to main, 04:09:19Z, ; tenet rs tenet 39

28: unicorn / super antipoison, host, 04:11:08Z, main's messages [2026-10-25 21:11:48 PDT]

29: power amulet + 700 arrows banked, host, 05:02Z, main's messages [2026-10-25 22:02:18 PDT]

30: 1,500 cannonballs banked 06:03:26Z; furnace bought, "spent200625", 06:07:28Z, host, main's messages [23:05:45 PDT] and [23:08:10 PDT]

31: helper died in controller hand-over gap, host, confirmed 04:56:52Z, main's messages [2026-10-25 21:57:26 PDT]

32: "can we get amulet / hide?" + "Every tick counts", operator to main, 05:31:16Z (two messages, same second), main's thread

33: no dragonhide in the final kit ("no bluegear"), rs/843 #51, issue rs/843 comment #51

34: conditional go, main, 10:20:34Z, main's messages [2026-10-26 03:20:34 PDT]

35: launch 10:27:08.417Z, host, 10:27:46Z, main's messages [2026-10-26 03:27:46 PDT]

36: "How long?", operator to main, 10:30:11Z, main's thread

37: "roughly 04:10 PDT, if uninterrupted", main, 10:30:14Z, (bold markup removed from the quote)

38: "roughly 90 ticks over the record" / "We’re continuing to the finish.", main, 10:30:52Z, (bold markup removed)

39: Agility 99 at 11:07:53.355Z, host, 11:08:47Z, main's messages [2026-10-26 04:08:47 PDT]

40: "OFFICIAL #1 VERIFIED..."; 129 ticks = 51.6 s, host, 11:15:32Z, main's messages [2026-10-26 04:15:32 PDT]

41: "we did it!!!!...", operator to main, 11:16:47Z, main's thread

42: "still cannot be assigned exactly to eight unknown prefixes/death-tail.", rs/158 builder, 11:27Z, issue rs/843 comment #56