Build any software from a browser.
War Factory is a coding agent and dev environment. Describe what you need: a fix, a feature, a tool or a whole app. The agent writes it, runs it and tests it on a server. Every step lands in one thread your team can read, steer and share.
- Prompt
- Tool calls
- Diff
- Who did it
- What it made, at its own URL
Uploads over 10 MB fail with a blank page. Fix it and show a clear error.
- Read src/upload.ts done
- Edit src/upload.ts +5
−1 - Run tests · 22 passed passed
@@ upload.ts:31 @@
const file = await read(req);
- return store(file);
+ if (file.size > MAX_BYTES)
+ return tooLarge(file);
+ return store(file);
uploads.dryrange.dev
Upload a file
scan.pdf 31.2 MB
File is over 25 MB. Choose a smaller file.
Add CSV export to the reports page.
- Create src/reports/export.ts +38
- Edit src/reports/page.tsx +6
−1 - Run tests · 17 passed passed
@@ reports/page.tsx:12 @@
<Toolbar>
<Filters />
+ <ExportButton rows={rows}
+ format="csv" />
reports.dryrange.dev
Reports
| Month | Requests | Closed |
|---|---|---|
| July | 84 | 79 |
| August | 91 | 88 |
| September | 77 | 61 |
| October | 12 | 4 |
Build an inventory tracker from this spreadsheet.stock.csv
- Create app/ · 12 files done
- Run tests · 31 passed passed
@@ models/item.py:8 @@
quantity = Int(default=0)
+ location = Str(max_len=64)
+ reorder_at = Int(default=0)
+ def low(self):
+ return self.quantity <= self.reorder_at
inventory.dryrange.dev
Inventory
SearchLow stock
| Item | Location | Qty | Min |
|---|---|---|---|
| Widget A | A-01 | 124 | 20 |
| Widget B | A-02 | 87 | 15 |
| Gadget C | B-01 | 63 | 10 |
| Part D | B-02 | 4 | 5 |
| Part E | C-01 | 19 | 5 |
1–5 of 42 items
Rename these scanned files by the date printed on each first page.
- Create rename_scans.py +54
- Run on 20 sample files done
@@ rename_scans.py:1 @@
+for path in folder.glob("*.pdf"):
+ date = find_date(path)
+ if date is None:
+ skipped.append(path)
+ continue
+ path.rename(dated(path, date))
scans.dryrange.dev
Sample run
0001.pdf → 2026-03-04-0001.pdf 0002.pdf → 2026-03-04-0002.pdf 0003.pdf → 2026-03-11-0003.pdf … 19 renamed, 1 skipped (no date found)
Port the billing service from Python to Go. Keep the API the same.
- Create billing/ · 9 files done
- Run API contract tests · 48 passed passed
@@ billing/invoice.go:1 @@
+func (s *Server) Invoice(
+ w http.ResponseWriter,
+ r *http.Request) {
+ inv, err := s.find(r)
+ if err != nil { notFound(w); return }
+ writeJSON(w, inv)
billing.dryrange.dev/invoices/1042
GET /invoices/1042 200
{
"id": "1042",
"status": "paid",
"total": "1,280.00",
"lines": 3
}
Note
In development at Irongold. Figure 1-1 shows examples, not customer work.
1-2 What it does
-
Ask for a change. Get a diff.
The agent’s edits show up in the thread as diffs, next to the commands it ran and what they returned.
-
Ask for an app. Get a URL.
Apps run in their own sandbox at a stable address on a separate domain, so you can open them and try them.
-
Close the laptop. It keeps working.
Work runs on the server, not in your browser. Reopen the thread from any device and pick up where it is.
-
Share the thread. A teammate can steer.
Share read-only or read-write. Anyone with write access can steer the agent, queue a follow-up or stop a turn.
-
Start from a file. Get a tool.
Upload a spreadsheet or a folder of documents and the agent builds on them. Apps use only the data you upload or enter.
-
Pick it up on your phone.
Prompting, steering, reviewing diffs and previewing apps all work at phone width, not just reading.
1-3 Nothing to install
The agent works in a sandbox on a server. Your machine needs a browser and nothing else. That matters on locked-down laptops where nobody can install a tool.
1-4 The thread is the record
Every prompt, tool call, diff and decision stays in the thread, with who did it. A reviewer reads what happened, not a summary of it.
1-5 Status
In development. Access is by invitation.
Caution
It runs on commercial cloud with commercial models. Do not put CUI or other controlled data in it.
It is built so the sandboxes and models can move later, into an enclave and onto DoW model endpoints. Neither is available yet.
Tell Irongold what you need built.
-
Talk to Irongoldirongold.ai/contact
Describe the software you need. Irongold replies.
-
Sign inapp.usewarfactory.com
For people on the access list.