ochesoa Blacksilver companyLive · since 21 Oct 2026

Ocheso runs skill-game tournaments online.

Organisers open entries by link, by code or by approval, and pick a Swiss, round robin, knockout or arena. Ocheso pairs every round, runs each game’s clock on its server, and keeps the standings and ratings. Chess and checkers for now.

01 What it offers

What Ocheso offers, and the status of each part
SurfaceWhat it doesStatus
TournamentsSwiss, round robin, knockout and arena. Entries by link, by code or by approval. Standings with up to six tie-breaks, in the order the organiser picks.Livesince
Live playChess, plus international (10×10) and Brazilian (8×8) checkers under FMJD rules. The server checks every move and runs the clock, so no player’s device decides how long anyone had.Livesince
RatingsOcheso’s own Elo ratings, updated after rated games. They are not FIDE ratings.Live
Ocheso AgentsTwelve player types to start from, such as a coffeehouse attacker, a solid grinder or an endgame technician, at any rating from 100 to 2,600. Hired through an API, one move at a time or in real time.RECORD25 Oct 2026Livesince
Ocheso for PlatformsTournaments inside a partner’s own site or app.In progressNot public yet

02Specimen

A Swiss, pairing itself.

Nine invented players and four rounds of invented results, run through the pairing and standings code Ocheso uses. Step through it, or let it play.

Round 4 · the best of 105 possible pairings, by Ocheso’s weights

  1. B1S04 (White)vS01 (Black)½–½S04 2½, S01 3 · S04 due White, S01 due Black
  2. B2S06 (White)vS03 (Black)0–1S06 1½, S03 2 · Both due Black; S03 had White last, so takes Black
  3. B3S09 (White)vS05 (Black)0–1Both on 1½ · S09 due White, S05 must have Black
  4. B4S07 (White)vS08 (Black)1–0Both on 1 · S07 must have White
  5. ByeS02—+1Bye: the lowest-placed player without one. Worth a point.
Standings after round 4
#PlayerRatingPtsBuchholzSB
1S0121403½97.5
2S041912395.75
3S031980385.75
4S0518462½94.5
5S02205527.52
6S07170426.51
7S0617811½92
8S0915601½91.5
9S08163316.50

What the pairing weighs, heaviest first

  1. No rematches. Two players meet again only if nothing else is possible.

  2. No colour clash. Two players who must both have White, or both Black, don’t meet.

  3. Close scores. The smallest score difference, weighed by its square.

  4. Colour preferences. Milder wishes for White or Black, where they can be met.

  5. Top half against bottom half. Within a score group.

SPECIMENOcheso’s pairing code as of 22 Oct 2026; invented players
All four rounds, as tables
Round 1 · seeded: top half meets bottom half
BoardWhiteBlackResultWhy
1S01S051–0Seeded: top half meets bottom half.
2S06S02½–½Seeded: top half meets bottom half.
3S03S071–0Seeded: top half meets bottom half.
4S08S040–1Seeded: top half meets bottom half.
ByeS09—+1Bye: the lowest-placed player without one. Worth a point.
Round 2 · the best of 105 possible pairings, by Ocheso’s weights
BoardWhiteBlackResultWhy
1S02S010–1S02 ½, S01 1 · S02 due White, S01 due Black
2S09S03½–½Both on 1 · S03 due Black
3S04S061–0S04 1, S06 ½ · S04 due White, S06 due Black
4S05S071–0Both on 0 · Both due White; S05 had Black last, so takes White
ByeS08—+1Bye: the lowest-placed player without one. Worth a point.
Round 3 · the best of 105 possible pairings, by Ocheso’s weights
BoardWhiteBlackResultWhy
1S01S091–0S01 2, S09 1½ · S01 due White, S09 due Black
2S03S04½–½S03 1½, S04 2 · S03 due White, S04 due Black
3S05S02½–½S05 1, S02 ½ · Both due Black; S02 had White last, so takes Black
4S06S081–0S06 ½, S08 1 · S06 due White, S08 due Black
ByeS07—+1Bye: the lowest-placed player without one. Worth a point.
Round 4 · the best of 105 possible pairings, by Ocheso’s weights
BoardWhiteBlackResultWhy
1S04S01½–½S04 2½, S01 3 · S04 due White, S01 due Black
2S06S030–1S06 1½, S03 2 · Both due Black; S03 had White last, so takes Black
3S09S050–1Both on 1½ · S09 due White, S05 must have Black
4S07S081–0Both on 1 · S07 must have White
ByeS02—+1Bye: the lowest-placed player without one. Worth a point.
Final standings, after round 4
RankPlayerRatingPointsBuchholzSB
1S0121403½97.5
2S041912395.75
3S031980385.75
4S0518462½94.5
5S02205527.52
6S07170426.51
7S0617811½92
8S0915601½91.5
9S08163316.50

Ties are broken by Buchholz, then Sonneborn–Berger (SB): Ocheso’s default order.

In rounds 2 to 4 there were 105 ways to pair the eight players who weren’t on a bye. Ocheso’s weights ranked them, and the pairing shown was the single best each time.

03Operations

How we run it.

How we run Ocheso, from our own engineering records
WhatHowDate
Authorisation in the databaseEvery API request runs as the person who made it, and the database’s row-level rules decide what they may do. The API holds no key that bypasses them, and refuses to start if one is configured.BSG/S1 · The database decidesRECORD21 Oct 2026
Checked live before launchWe walked through the main flow on the live system with two real accounts before calling it live.RECORD21 Oct 2026
Engines inside the APIStockfish 19, the official release, ships with the API and is held to a fixed checksum. Nothing downloads while a request waits.BSG/S4 · Ship what a request depends onRECORD22 Oct 2026
Next to its dataThe API runs in Dublin, beside its database in Ireland.No. 01 · The Atlantic was most of our latencyRECORD22 Oct 2026
Two functions, one domainTournaments and agents deploy separately, so a tournament page never waits for chess engines.RECORD22 Oct 2026

04Said plainly

What Ocheso isn’t, yet.

Ocheso’s Swiss pairing follows the Dutch system’s priorities, but it isn’t a certified FIDE implementation, so it isn’t the tool for pairing a FIDE-rated event. Its ratings are its own, not FIDE ratings. It doesn’t take payments, and it doesn’t produce fair-play reports.

05The name

oh-CHESS-oh.

Ocheso hides chess in plain sight: o-ches-o. It carries echoes of oche, the line you compete from, and ocho, eight, for the board. It was never named for one game, and it already runs two.

06 In the log

    1. Ocheso

      The API, split in two.

      Tournaments no longer load chess engines they don’t use. First request after a deploy: 8.4 s to 1.3 s.

    2. Ocheso

      Stockfish 19 ships inside the API.

      The official release, held to a fixed checksum. Nothing downloads while a request waits.

    3. Ocheso

      The agent brain, ported decision for decision.

      TypeScript to Python: 8,048 recorded decisions replayed, every one identical.

    4. Ocheso

      Live play for chess and checkers.

      The server checks every move against the rules and runs the clock. Swiss, round robin, knockout and arena pairings.

    1. Ocheso

      One name: Ocheso.

      The working name was retired everywhere the same day. Say it oh-CHESS-oh.

    1. Ocheso

      Ocheso’s plan is written, and the build begins.

Ocheso’s own site has the rest.