TX-1
Project "Clean Room" · Built by Anthony Key

Where enterprise AI stops
observing and starts executing.

TX-1 is a Cmd+K-summoned desktop terminal that collapses the 80/20 friction trap in enterprise supply chain workflows. Solver fails — AI diagnoses — Action Card renders — human approves — solver reruns.

A working prototype that demonstrates what AI-native enterprise tooling actually looks like — built end to end by a Lead UX Designer who wanted to answer the question properly.

GLOBALLOGISTICS CORP
SOLVER: COMPARING● SIDECAR
Chicago Q3
Amsterdam EU
+
❯ tx1 sandbox --scenario chicago-bottleneck
  ✓ WH_CHICAGO_01 capacity 10,000 · Q3 demand 11,400 (+14%)
❯ run baseline
  ✗ INFEASIBLE — WH_CHICAGO_01 capacity exceeded by 1,400 units
▸ Strategist reasoning... ✓ Dry-run passed · proposing 10,000 → 12,000
[INFEASIBLE] CAPACITY CONSTRAINTWH_CHICAGO_01

Raise WH_CHICAGO_01 from 10,000 to 12,000 units — restores feasibility with 5% headroom buffer.

Approve & Rerun ⌘↵
⎇ Branching complete — see comparison below
▸ Branching — running both paths...
  ✓ Approved path → FEASIBLE (cost $48,320.00)
  ✓ Dismissed path → INFEASIBLE (1,400 units unmet)
[BRANCH] Scenario ComparisonWH_CHICAGO_01

Two paths simulated. Choose which future you want.

⎇ Path A — Apply Fix
Status✓ FEASIBLE
Transport Cost$48,320.00
Capacity10k → 12k units
Units Unmet0
⊘ Path B — No Change
Status✗ INFEASIBLE
Transport Cost
Capacity10k units (unchanged)
Units Unmet1,400
Approve & Apply Fix ⌘↵
Dismiss Esc

Branch & Compare: both futures simulated before any DB write. The agent shows you the cost of inaction.

Live walkthrough

Watch the auto-fix loop
run end to end.

See a user inject a capacity bottleneck, watch the solver hit INFEASIBLE, observe the Strategist agent diagnose the root cause and surface a dry-run-validated proposal — then approve it and watch the solver recover to OPTIMAL. One terminal. No SQL. No tab-switching.

Command typed · solver runs · fails
Agent diagnoses · dry-run validates · card rendered
One approval · patch applied · solver reruns
OPTIMAL · audit logged · Slack notified
TX-1GLOBALLOGISTICS CORP
SOLVER: OPTIMAL
❯ tx1 sandbox --scenario chicago-bottleneck
  ⚡ WH_CHICAGO_01: 10,450 capacity · 13,297 demand · deficit 2,847
❯ run baseline
  ✗  SOLVER: INFEASIBLE
  → Strategist activated · Archivist match 93% · dry-run ✓
[INFEASIBILITY TRIAGE] · CRITICAL
Expand WH_CHICAGO_01: 10,450 → 13,297 units
Dry-run validated · $847,230 total cost at optimum
APPROVE ⌘↵DISMISS
  ✓  SOLVER: OPTIMAL · $847,230 · 0.23s
  → Audit logged · Slack notified
More from TX-1
Ambient hero

The terminal at rest — agents loaded, solver idle, ready for a command.

8s
Auto-fix in 26 seconds

INFEASIBLE → Strategist diagnoses → user approves → OPTIMAL. Benefit-first.

26s
End-to-end walkthrough

Chapter-by-chapter: problem, solution, health check, auto-fix, trust layer.

49s
4
AI agents in the loop
0
SQL written by the user
100%
Human approval required
Futures compared before commit
The Problem

The 80/20 friction trap

Enterprise modellers spend 80% of their time on data validation and recovery loops — leaving 20% for actual analysis. Every failure means context-switching across ERPs, spreadsheets, and ticket systems. AI tools observe the problem but rarely close the loop.

1.
Solver fails
OR-Tools returns INFEASIBLE. The constraint is violated but the cause is buried in the data.
2.
Modeller investigates
Hours lost in ERP tabs, SQL consoles, and email chains — finding what changed and why.
3.
TX-1 collapses the loop
Agent diagnoses, dry-run validates, proposes a fix. Branch & Compare runs both futures before you decide. One keypress commits it.
What's Inside

Built for enterprise trust

Session Branching

See both futures before you decide

Branch & Compare runs the approved path and dismissed path simultaneously — dry-run only. A side-by-side comparison card shows cost vs. cost of inaction before any DB write.

Auto-Fix Loop

Solver fails → agent fixes → reruns

Classify, diagnose, dry-run, propose, approve, apply, rerun — without leaving the terminal. Circuit breaker halts at 3 failed iterations.

Scenario Sandbox

Inject any chaos scenario, deterministically

Seed a Chicago bottleneck or ETL duplicate-ghost crisis with a single command. Same seed, same data, every time — reproducible demos.

Dry-Run Validation

Every patch proven before it's proposed

The Strategist executes each SQL patch inside a rolled-back transaction. If the constraint isn't resolved, it's never shown to the user.

HITL Approval Gate

Human in the loop, always

LangGraph pauses at the approval gate. The database is never mutated without an explicit Approve signal from the user.

Manifest Ingestion

AI-inferred schema mapping from any source

Drop a CSV or connect SAP — Claude infers the field mapping, ambiguous columns are flagged for human review. Same pipeline, any data source.

Sensitivity Explorer

Five scenarios before you commit

MINIMUM → MAXIMUM capacity scenarios with headroom % and expansion cost. Arrow-key navigation. Context before action.

External Integrations

Slack + SAP out of the box

Approved fixes post a structured Block Kit card to Slack automatically. SAP S/4HANA plant data pulls through the same schema inference pipeline as CSV.

Artifact System

Show, export, report — without SQL

show me audit_log, export demand_forecast csv, tx1 report --monthly. Every table, every export, every summary in the same terminal.

Archivist RAG

Learns from every approved fix

ChromaDB stores each approved fix. Before the Strategist proposes, it retrieves similar past fixes — institutional memory that compounds.

Audit Trail

Every decision logged for compliance

Every agent-proposed change and human decision is written to audit_log — who approved, what changed, and when. Built-in compliance.

Slash Command Palette

Every command discoverable

Type / to open a grouped command palette with all 18 commands. Filter as you type, arrow-key navigate. No documentation needed.

Thinking Behind the Build

Five decisions that defined the architecture

Every project involves trade-offs that aren't visible in the code. These are the ones that shaped TX-1.

01
Interface

Terminal over dashboard

Dashboards optimise for passive observation. A command interface optimises for action. Enterprise users who actually resolve solver failures aren't browsing — they're diagnosing. The terminal collapses the gap between seeing the problem and fixing it.

02
Data Contract

Manifest-driven ingestion over direct API

Direct API integration is fast to build and brittle to maintain. A manifest layer — an AI-inferred, human-reviewed contract between source data and the solver — means every integration is documented, auditable, and correctable before it touches the DB.

03
Agency Model

Human-in-the-loop approval over autopilot

Enterprise workflows require accountability, not just accuracy. The agent proposes, dry-runs, and waits. The human decides. Every approved change is logged with user_approved = true. This isn't a limitation — it's the feature that makes it deployable.

04
Execution

Local execution over cloud

Supply chain data is sensitive. Running the solver, the LLM calls, and the database locally means no data leaves the machine without an explicit export. Tauri + local SQLite gives you desktop-class privacy with web-class UI.

05
Decision UX

Branch & Compare over binary approve/dismiss

A binary prompt puts the cognitive burden on the user to trust the recommendation. Branch & Compare runs both futures as dry-run simulations and shows the cost of the fix against the cost of inaction — side by side, before any DB write. The user isn't approving a recommendation; they're choosing between two quantified outcomes.

About the Builder

Product thinking, made executable.

Communication clarity

Taking a genuinely complex technical system and making it legible to executives, engineers, and operators — not with abstractions, but with working software.

Product thinking, end to end

TX-1 isn't just an implementation. It's a positioning, an architecture, a UX model, and a documented case for why it should exist. That distance from idea to shipped is deliberate.

Shipping discipline

A complete, live, documented project is a statement of character as much as capability. This is what finished looks like.

Anthony Key is a Lead UX Designer with a track record of translating complex operational problems into products people can actually use. TX-1 is a proof of concept and a provocation: enterprise AI that earns trust by asking before it acts.

Broader Application

A chassis, not just a supply chain tool

Anywhere you have an optimisation problem, data that drifts out of compliance, and a need for human sign-off before changes commit — this architecture applies.

Financial Services
Constraint: Position limits / VaR thresholds
Bottleneck: Single overweight holding
Healthcare
Constraint: Ward capacity / staffing ratios
Bottleneck: Surgical backlog spike
Energy / Grid
Constraint: Line capacity / renewable dispatch
Bottleneck: Transmission constraint
Manufacturing
Constraint: Machine uptime / shift capacity
Bottleneck: Single bottleneck station
HR / Workforce
Constraint: Skills coverage requirements
Bottleneck: Uncertified role gap
Legal / Compliance
Constraint: Regulatory exposure limits
Bottleneck: Client concentration
Stack

Modern, open, composable

Desktop Shell
Tauri v2 (Rust)
Frontend
React 18 + Tailwind
Agent Graph
LangGraph
LLM
Anthropic Claude
Solver
Google OR-Tools
Backend
Python FastAPI
Memory
ChromaDB (RAG)
Database
SQLite
Get in touch

Interested in the thinking?

TX-1 is in active development. If you want to see a walkthrough, discuss the architecture, or talk about how this applies to a problem you're working on — reach out.

$ cd python_app && uvicorn main:app --port 8765
$ cd tx1-terminal && npm run tauri dev
# Press Cmd+K · Type: tx1 sandbox --scenario chicago-bottleneck
# Run baseline · Press ⌘B to Branch & Compare both futures