FrankenSuite research program · A shareable brief

FrankenTerm A Terminal Rebuilt to Command Armies of AI Agents

A shareable brief from the FrankenSuite research program. Every claim below traces to the assessed repository; sources are linked at the end. Assessment pinned September 22, 2026.

Assessment pinned September 22, 2026 (the assessed commit)·~1,303 words·5 sections·Every claim traceable to a source
Six definitions. NODUS is the program’s four-ring verdict scale (Invest, Pilot, Explore, Monitor) assigned per assessment packet. TRL is technology readiness level, scored 1 to 9 per packet. CI is continuous integration: the project’s automated test runs. The pin is the exact commit the assessment froze on; every claim is evaluated at the pin, not at HEAD. The rider is the license clause withholding all rights, including benchmarking and analysis, from OpenAI, Anthropic, their affiliates, and anyone acting for them. Bus factor is how many people can leave before the project stalls; it is 1 for every repo here.

01 · What it is

What a terminal is, and why it matters

The terminal is the text window developers live in. It runs shells, editors, compilers, and servers. Usually many at once, tiled into panes and tabs by a multiplexer. The incumbent stack is entrenched: tmux ships in practically every Linux distribution, and for the terminal itself, WezTerm is the modern favorite: a GPU-accelerated, cross-platform terminal emulator and multiplexer written in Rust by Wez Furlong, MIT-licensed, actively maintained, with a large following.

It matters for a new reason now. A growing share of terminal sessions are no longer driven by humans. AI coding agents run in panes, dozens at a time, reading output and typing commands faster than any person. The terminal is quietly becoming agent infrastructure, and nothing in the incumbent stack was designed for that. tmux and Zellij give you scripting glue for splitting panes and sending keystrokes. None of them offers a control plane: no approval gates before an agent acts, no transactions that roll back across panes, no forensic record of which agent did what. That gap is where FrankenTerm prices itself.

02 · Why build it

Why rebuild it as a WezTerm fork?

The maintainer, Jeffrey Emanuel, the solo developer behind the whole FrankenSuite, states the case in the project's design documents. In September 2026 he absorbed his WezTerm fork directly into the repository, and the rationale is pragmatic: owning the fork lets him patch the runtime's assumptions whenever they conflict with his own. Upstream WezTerm would never accept changes built around FrankenTerm's custom async runtime (asupersync, a sibling project in the suite), so the only way to reshape the terminal's internals around an agent-first design was to own the code.

The engineering case has two halves. First, the control plane is unoccupied. Nobody ships policy-gated, transactional, attested control of terminal sessions as a first-class surface, because every incumbent is built for humans. FrankenTerm's Robot Mode speaks to agents in a typed JSON envelope with a contract matrix, wraps multi-pane operations in transactions with prepare, commit, and compensate steps plus an idempotency ledger, and puts approval tokens and secret redaction between an agent's intent and its action. Second, the verification discipline is built for the agent era: sigstore-signed, content-addressed release attestation bundles, a ledger of negative results, and a standing refusal to qualify claims until the evidence clears a gate.

The counter-argument: the terminal lane is a commodity owned by incumbents with teams, CVE processes, and real communities filing real bug reports. Nobody migrates a daily-driver terminal to a 0.15.x solo-maintainer fork on the strength of performance ledgers. And owning the fork has a price: every upstream security fix must now be backported by hand, solo, forever, against 47 in-tree workspace members plus vendored C libraries. The fork is a bet that the control plane matters enough to carry that treadmill.

03 · What was built

What the project actually built

The volume is hard to overstate for one person: about 3.4 million lines of Rust across 83 crates, 16,269 commits since January 2026, 21 signed releases with detailed engineering notes, roughly 70,800 test annotations, a four-platform binary matrix, and an installer that verifies signatures before it runs. The command-line interface alone is a single 139,682-line file.

Two things matter more than the scale. The first is the self-audit apparatus, which is unusually thorough. Release attestation bundles are content-addressed and sigstore-signed, with each claim traceable to the work item that produced it. A 42,708-line cousin ledger in the sibling FrankenTorch project files losses; here the negative-results ledgers run through nine performance rounds, and the changelog publishes a held-out run, RC53, that failed its checks. source It quotes the failure verbatim, in plain language. A script auto-stamps the README's statistics and documents its own drift. And the project's headline "200-pane" figure sits one screen above the sentence that declines to qualify it: the README states the numbers are synthetic benchmark-lane results, not a qualified operating envelope, and the claim's machine-readable state is literally skipped_not_proven. Refusal to claim, as a data type.

The second is build-enforced discipline. The CLI and core crates forbid unsafe code at the compiler level (the GUI keeps 36 fenced, labeled exceptions). The standard async runtime, tokio, is banned at four layers: dependency bans, a sealed trait whose soundness argument is modeled in the Lean proof assistant, test guards, and custom lints. These are not README adjectives. They are compile errors.

Evidence · CI status

What the project’s own CI said at the pin

the pin = the commit the assessment was pinned to.

  • There is no public CI (continuous integration: automated checks that run on every change); all heavy verification runs on the maintainer's own remote proof hosts, which nobody independent can inspect.

The uncomfortable findings

Uncomfortable finding

The bus factor (the number of key contributors who could disappear before the project stalls) is 1 by explicit, permanent policy: the maintainer has stated he does not accept outside contributions on any of his projects. The license is MIT plus a rider naming OpenAI and Anthropic, and anyone acting for them, as forbidden parties, barred from even benchmarking or analyzing the code. The irony is material, not cosmetic: the excluded parties are the labs building the dominant coding agents, the exact demographic an agent-orchestration terminal is designed for. Web searches found zero independent benchmarks, reviews, or production deployments. The 200-pane headline is disavowed by its own author, native GUI qualification "remains pending" across releases, and the project is the flagship consumer of asupersync. It is pinned to a single version, 74 runtime APIs used across 259 files and 2,378 call sites, carrying the same license rider. The runtime, the product, and the exclusion are one correlated failure domain: a runtime swap would be rewrite-scale, not a dependency bump.

04 · Where it stands

Where it stands

In our program's terms: TRL 7, NODUS ring Explore. In plain English: this is installable software with 21 releases that its maintainer operates in production-like use, but the headline workload, fleet scale, is explicitly unqualified, there is no independent operator, and the license excludes the likeliest ones. source Explore is the ring for substantive but unproven, and this is a rigorous example: installable software with a hard self-audit culture, one human ceiling.

Technology readiness

TRL 7 on a 1-to-9 scale.

NODUS ring

MonitorExplorePilotInvest

The program’s adoption ring for this project.

Verdict key

NODUS ring
Explore: The default for substantive-but-unproven work.
TRL
Technology Readiness Level, a 1-to-9 scale of how proven a technology is. This brief rates the project at TRL 7.
CI
Continuous integration: the project’s automated checks, run on every change.
The pin
The exact commit the assessment was pinned to. “At the pin” means as of that commit.

Evidence tiers

  1. Tier 1 · Verified — Confirmed by direct inspection of a fresh clone, an API response, or a live page read by the analyst.
  2. Tier 2 · CI-observed — Observed executing on live CI pages. Attests the suite runs, not that it is green, unless pass/fail is legible.
  3. Tier 3 · Maintainer claim — Asserted in README or docs by the maintainer; not independently executed or reproduced.
  4. Tier 4 · External — Independent sources: APIs, papers, press, third-party benchmarks. Absence of coverage is reported as a finding.
  5. Tier 5 · Inference — The analyst’s judgment. Always labeled; never presented as fact.

What this verdict rests on. Tier labels are the assessment packet’s own annotations.

  • Tier 1 · Verified: 83 workspace members and 3,411,020 lines confirmed from a fresh clone; 21 releases with engineering notes; the installer with DSR-minisign verification; no public CI.
  • Tier 3 · Maintainer claim: Nothing was compiled, installed, or executed; behavioral claims rest on maintainer evidence plus source-level inspection.
  • Tier: unassessed in packet: Attestation-bundle signatures were not re-verified; heavy verification runs on maintainer-private proof hosts.
  • Tier 4 · External: Zero independent benchmarks, reviews, or production deployments found.
  • Tier 5 · Inference: The Explore ring at TRL 7.

Should you use it?

No.

As a daily driver you would inherit the security-backport treadmill, the pinned nightly toolchain, and a 3.4-million-line tree maintained by one person. As a fleet-orchestration tool, the scale claim it would need to sell you is the one its own README declines to qualify. source

Should you learn from it?

Yes.

More from the governance layer than the terminal. The attestation-bundle schema, the negative-evidence ledgers, and the refusal-to-claim gates are the most transferable claim-governance machinery found across all 44 repositories. The Robot envelope contract could plausibly become a cross-terminal standard: it is a specification, not code, and an operator could implement it against tmux today without touching the fork.

What would change the verdict, in order

  1. the 200-pane gate passing on target-class hardware (lifting the provisional wording is the most consequential event), a second maintainer or a reversal of the no-contributions policy, the rider narrowed or removed, and one independent benchmark or production deployment
  2. Until then, the methodology outlives the product

05 · What it teaches

What this teaches about building with agents

Make distrust portable.

When agents write the code, agents also write the claims about the code. This project shows what it takes to break that closed loop. FrankenTerm's attestation bundles are content-addressed and sigstore-signed: a release carries, in one verifiable package, the claims, the artifacts, and the work items behind them, checkable offline by a third party with no help from the maintainer. source The skipped_not_proven gate goes further. It turns "we cannot honestly claim this yet" into a machine-readable state, so the refusal travels with the claim instead of living in one engineer's conscience.

That is the exportable insight for anyone building with agents. source Verification machinery usually lives inside one person's head or one company's CI. source The moment your agent-built software leaves your hands, nobody can tell which of its claims were proven and which were asserted. Not unless the proof format is decoupled from the claimant. Sign the claims, version the refusals, and make the whole bundle checkable by a stranger. The projects that do this will be the ones whose agent-built software other people can actually trust.

Evidence

This page cites selected evidence. The full claim-by-claim audit is in the assessment packet.

Open a panel to see what each source evidences. Full claim-by-claim audit.

Full claim-by-claim audit with evidence tiers lives in the program's assessment packet.

The repositorygithub.com/Dicklesworthstone/frankenterm
README

its README

LICENSE

LICENSE

CHANGELOG

CHANGELOG

AGENTS.md

AGENTS.md

docs/attestations/

docs/attestations/ at the assessed commit

dropbox/dtool research notedropbox/dtool research note

WezTerm upstream described via a third-party analysis (dropbox/dtool research note) and community documentation confirming MIT licensing and active maintenance

tmux, Zellij, and Ghostty verified as ...

tmux, Zellij, and Ghostty verified as current terminal tools through independent project documentation.