The problem with AI work

Your AI says the work is done. Can you prove it?

Agents run hidden commands, in a harness you cannot see, in a language you cannot read. Then they tell you everything went fine. Reviewing the answer proves nothing about the work.

Tool-calling agents choose their own APIs, timing, and arguments at run time, and behave inconsistently across repeated attempts. See the research

You: "Verify the tax credit basis and update the report."
Agent plans silently, picks its own tools
sh -c ...   grep ...   python -c ...   (unlogged, unversioned)
"Done. Everything checks out."
1 / 4
The thesis

Your AI can say it did the work. Devlish lets you prove it.

The failure is not just that models are nondeterministic. It is the whole execution environment: workflows that live in mutable prompts, tools that are opaque, permissions that are conversation instead of enforcement, and answers that cannot be traced back to the work. Devlish replaces that with a program you can read, constrain, test, and replay.

The job changed

Every language was built for a world where a programmer reads the code.

Each one is a snapshot of what developers needed. None of them were designed for the operator who will never look at the code at all.

C / C++

Fast

Built to be close to the machine, for programmers who counted cycles.

Rust

Safe

Built to stop memory bugs, for programmers who audit unsafe blocks.

Python / Ruby

Easy to write

Built for programmer productivity, still assuming a programmer.

JavaScript

In the browser

Built to run anywhere a page loads, read by web developers.

Java

Portable

Built to run on any OS, maintained by teams of engineers.

The job changed. The languages did not.

Today the person responsible for the outcome may never read the underlying code, ever. The AI writes it, the AI runs it, and the human accountable for the result gets a chat message. No existing language was designed for that person.

Devlish's rule: if a step can be deterministic, remove it from the model. If it requires judgment, expose it as a named checkpoint. Everything around the checkpoint becomes compiled behavior with an identity, declared effects, enforced boundaries, assertions, evidence, and replay.

Two ways to run AI work

The same task, with and without a verification layer.

The difference is not the model. It is whether the work exists as an inspectable program or as a vanished conversation.

Today's agent harness

  1. 1
    You describe the task in chatThe workflow exists only as this prompt.
  2. 2
    The agent improvises tool callsShell commands and host methods, opaque and unversioned.
  3. 3
    You approve permission promptsConversational consent for access it often already has.
  4. 4
    You get a confident answerPlausible whether or not the work happened.

Reviewing the answer proves nothing about the underlying work. A convincing no-op and a successful run look the same.

With Devlish

  1. 1
    The task becomes a Devlish programAI drafts it; you read the exact source that will run.
  2. 2
    Effects are declared before executionThe Program Manifest is an enforced boundary, not a dialog box.
  3. 3
    Deterministic steps run compiledJudgment calls surface as named checkpoints for AI or human review.
  4. 4
    The run leaves evidenceA tamper-evident trail you can audit and replay, byte for byte.

Same input, same output, every run. When someone asks "how do you know?", you replay it.

Live proof

Read it. Run it. Same result every time.

This is the real compiler and VM, running in your browser via WebAssembly. Your code compiles and executes locally; it is never uploaded.

Press ⌘/Ctrl + Enter to run. Programs execute in an isolated sandbox with no network or file access beyond what you pass in.

What people build

Rules that both people and machines can read.

Each of these runs in the playground above. Load it, change a value, run it.

Compliance automation

Encode regulatory tests, like the IRC Section 45 energy community bonus, as programs an attorney can read and an auditor can trace.

Load the energy community example

Claims and payments

Verification workflows that decide approve, escalate, or deny, with the decision logic sitting in plain English instead of buried in a script.

Load the claims triage example

LLM tool building

Give an agent a structured tool interface over MCP. Checkpoints pause a running program for AI or human review before anything irreversible happens.

Load the invoice example

Governed rules and audit

Give a policy a versioned identity and an effective date. Every run of a governed rule leaves a tamper-evident audit trail you can replay.

How governed rules work
Grounded in research

This problem is documented, not hypothetical.

The trust gap between what agents claim and what users can verify shows up across the literature.

How it compares

Devlish versus the ways AI work runs today.

The question in every row: can the person accountable for the outcome verify the work?

Property Devlish Agent prompts + skills AI-generated code Rules engines
Non-engineer can read the effective program Yes, the English is the source No, prompts and markdown scattered across a session No, code the operator cannot review Partly, through a vendor UI
Same input, same output, every run Yes, compiled and deterministic No, next run may use different tools and reasoning Depends on what was generated that day Yes, inside an opaque engine
Effects declared before execution Yes, Program Manifest, enforced No, conversational permission prompts No, full system access Vendor controlled
A no-op is detectable by a non-programmer Yes, empty logic is visible in readable source No, a confident answer covers it No, plausible return values hide it Rarely, rules hidden behind config
Runs leave replayable evidence Yes, audit trail + byte-for-byte replay No, the transcript is not the work No, unless you build it yourself Sometimes, logs without replay
LLM can write it and call it Yes, MCP server + structured JSON Yes, that is the problem Write yes, call as a governed tool, no No tool interface
You own the source Yes, plain text files in your repo, MIT runtime Sort of, prompts drift and fork Yes, but unreadable to the owner No, locked in the platform
Where it came from

Devlish came out of a specific, recurring pain. I run a company that handles IRS Section 6418 tax credit transfers, and our compliance rules lived in Python that the compliance team could not read. Every rule existed twice, once in a policy document and once in code, and the two drifted until an audit found the gap.

So I built a language where the readable English version is the only version, and the run itself produces the evidence. It has since run real energy community validations, receipt processing, and invoice reviews. It was born in production, not a lab.

— Andrew Dubinsky, founder of DealStar

~10k lines of auditable Rust, MIT licensed Zero runtime dependencies 53 example programs File I/O: PDF · XLSX · DOCX · CSV · JSON VS Code extension npm: devlish-runtime
Pre-1.0 · seeking early adopters

Stop trusting. Start verifying.

Get in touch

Questions, a use case, or want in early?

Send a note and it lands in Andrew's inbox directly. Early-adopter access, integration questions, or feedback all welcome.