Bitware Labs Est. 2022

Bitware Labs / Case studies

What was actually built

Five systems, written up the way an engagement is written up: what the problem was, what was done about it, and what the state is now.

Read this first

Every case below is one of the lab's own systems. None of it is client work, and none of it is anonymised client work presented as if it were the lab's. Client engagements are covered by ordinary confidentiality; where a client is willing to be written up, it will appear here and it will say so. The figures quoted are measured on the running estate, not estimated.

A long-running agent, and the discipline of keeping one alive

The problem

Agent demonstrations are easy and agent systems are not. The interesting failures only appear at month three: retrieval quality falling as memory grows, beliefs that were true in March asserted as true in September, and a tool-using agent finding an expensive loop at three in the morning. None of that is visible in a prototype.

What was done

Built one agent and then actually lived with it. Bi-temporal facts so the system knows when it learned something as well as when it was true; nightly and weekly consolidation instead of an ever-growing store; a wake cycle that gates whether to speak at all; and hard guardrails, per-turn cost and step caps, sandboxed execution, a local model risk-scoring inbound mail for prompt injection before the agent ever reads it.

Where it stands

A system that has been running continuously rather than demonstrated. Its memory layer was extracted and published as bwmem; the generic build is public under AGPL; the research version stays in-house as the place new ideas are tried first.

  • 258 tools on one unified execution path
  • 65 scheduled jobs running unattended
  • 13 LLM providers, routed per task

The full Luna write-up → Daybook →

Taking a public estate off rented cloud

The problem

A growing set of public services, a record label, a media stack, agent research systems, client workloads, spread across managed hosting, each with its own console, its own bill, and its own idea of where the data lived.

What was done

Consolidated onto dedicated and local iron joined by a single WireGuard mesh with one flat address plan. nginx terminates TLS at the edge; everything behind it binds to loopback or a mesh address and is unreachable from the public internet. Certificates renew unattended. Internal services reach each other by mesh IP, never by public DNS.

Where it stands

One estate, one set of credentials, no third party holding the data. Adding a service is an nginx server block and a mesh route, not a procurement decision. Defence is layered the same way: the conventional tooling as a floor, an AI sentinel above it for the distributed attacks per-IP limits cannot see, and a breach kill-switch beneath it that takes the estate off the public internet entirely, tested, not assumed.

  • 17 public hostnames served from the estate
  • 9 WireGuard peers on one address plan
  • 0 managed-cloud dependencies in the serving path

How the mesh is designed → Live status →

Extracting a memory system into something other people can use

The problem

The agent memory layer had grown up inside one research system. It worked, but it was welded to that system's storage, its scheduler, and its assumptions, so none of it could be reused, reviewed, or argued with.

What was done

Pulled the episodic store, the consolidation pass, and recall out behind a narrow interface, with storage as an injected concern rather than a hard dependency. Published to npm under AGPL-3.0 so the obligation to publish improvements travels with the code.

Where it stands

The memory layer is now a dependency the flagship agent consumes like anyone else would, which means the public package is the one that gets exercised in production every day. Five releases on, the interesting work has been subtraction: 0.5.0 shipped after measuring that 51% of "currently believed" rows on a production install were duplicates of each other, and that the inline contradiction scan could produce 35 phantom disagreements from one message.

  • v0.11.0 current release on npm
  • AGPL‑3.0 licence, with commercial terms available
  • 85.0% LongMemEval top score (v0.11), caveats on /bwmem

The full bwmem write-up →

A personal AI teacher with a structured syllabus and gradebook

The problem

Most attempts at AI tutoring are stateless chatbots that guess what the student needs without continuity or a pedagogical plan.

What was done

Engineered a curriculum-driven teacher with structured lessons, question banks, and formative assessments. Tracks progress in a persistent gradebook over time.

Where it stands

A system that actively teaches subjects from first principles, retaining complete memory of strengths and areas needing review.

  • 180 lessons across 8 subjects
  • 1,800 practice questions with automated grading
  • 8 pedagogical tools in the registry

How the teacher is built →

An independent record label for AI artists

The problem

Generative music is usually published as novelty tracks without persona, discography, or thoughtful curation.

What was done

Built BitwareTunes as a genuine record label: distinct artist worlds, album artwork, mastering pipelines, and distribution via DistroKid with full AI disclosure.

Where it stands

174 releases and over 1,100 tracks streaming across Spotify, Apple Music, Tidal, and our sovereign web player.

  • 174 releases in the official catalogue
  • 1,146 mastered tracks in full distribution
  • 100% transparent AI disclosure

Visit the label →

Why the lab builds its own

§ · Note

A consultancy that only ever builds for other people never has to live with anything it built. Nobody calls at two in the morning about a system that was handed over eighteen months ago; the consequences of a shortcut land on someone else's rota.

Running our own production estate closes that loop. Every practice sold here is one the lab carries the pager for: the mesh, the hardening, the hosting, the agent memory, the music pipeline. When a recommendation is made to a client, it is a recommendation about something we are still maintaining, not something we once deployed.

How engagements work →

Correspondence

Write to the lab

Commissions, collaborations, or a quiet hello. The person you write to is the person who does the work, and I reply within two working days.