By Henrik Hansson, co-founder, Vesence.
Too much of the discussion about AI in legal still assumes a choice between fixed software and open-ended agents. We think that framing misses the more interesting opportunity: using coding agents to customise the legal tech stack you already rely on, so the tools adapt to the matter rather than the other way around.
A few weeks ago, one of our users automated an entire FDI compliance workflow with Vesence. They were filling PDF checkboxes, populating form fields, and redacting sensitive data across templates. We had not built a dedicated PDF product or shipped that workflow as a feature. The user simply described what they needed, and the agent created the missing tool in the moment.

What happened underneath is the important part. Vesence has access to a sandboxed computer and can write code. When the user described the task, the agent inspected the PDF structure, identified the form fields and annotation layers, wrote a script to manipulate them, and delivered the output. The script was then saved as a skill the team could share. The firm did not need a new standalone product; it extended its existing legal tech in the moment.
This is not an isolated case. Across Vesence’s user base, the same pattern keeps repeating: coding agents are becoming a customisation layer for legal tech. The shift in legal software is not away from legal tech, but toward legal tech that can be reshaped in real time by code.
The pattern
An M&A lawyer uploads an Excel participant list and asks Vesence for a contract note for each. Whether there are five or five hundred participants makes no real difference. The agent writes the script that reads the data and produces the notes, and the work scales without anyone having shipped a ‘contract note generator.’
A litigation lawyer feeds in a case file and asks Vesence for an org chart, a timeline of key events, and a tabular comparison of witness statements. None of those were features anyone designed. The agent wrote the code, the work got done, and useful scripts were saved as skills for next time.
A capital markets lawyer asks the Vesence agent to extract figures from a stack of Excel files, draft a summary email, attach the relevant Word documents, and queue the message in Outlook for review. Behind the scenes the agent is chaining a set of command-line tools, an Excel CLI, a Word CLI, an Outlook CLI, composed inside a single script the way a programmer pipes Unix utilities. We built every integration as a CLI rather than an MCP for exactly this reason. An MCP integration is a single tool call. A CLI is a building block, and building blocks compose.
What is actually going on
The Vesence agent has a real computer. A sandboxed bash environment. A filesystem. The ability to write and execute code at the moment of need. When the user describes a task, the agent writes the code that does it. Some of that code is one-shot and gets discarded. Some is good enough to save as a skill, which lives at the firm level and can be reused, refined, and shared. The skill library grows organically, shaped by the work people are actually doing.
This is a new substrate for software. Code is generated on demand. Knowledge gets captured as skills. The lawyer never sees the code unless they want to, and never writes any of it.
What this makes obsolete
Two things, mostly.
The first is the rigid workflow builder. The previous generation’s answer to ‘customization’ in legal tech was the drag-and-drop node-based workflow editor, where the lawyer wires up boxes representing steps. It looks flexible but is not. The blocks are predefined. The lawyer is being asked to do something that resembles programming in a constrained environment, under the pretense that wiring boxes is easier than describing the outcome in plain English. Why force a lawyer to design a workflow when Vesence can write the script, run it, and show what it did?
The second is the feature surface of vertical AI products itself. Contract review. Due diligence. Redlining. Issues list generation. Pre-built workflow agents for fund formation or M&A. These are exactly the categories of work a generalist coding agent with the right substrate produces on demand, tailored to the specific matter, without anyone having to ship them as named features. The roadmap stops being the bottleneck because the roadmap stops mattering.
What this requires to work in legal
You can already glimpse this paradigm by pointing Codex or Claude Cowork at a problem. They are general-purpose coding agents that share the substrate. The reason they are not deployable inside a law firm is that they are missing three things, and these are exactly the places Vesence is built.
First, security. Arbitrary code execution on a real machine is a non-starter for a firm handling client matters. Vesence simulates a full bash environment on a filesystem we built ourselves. Every read, every write, every command is something we control end to end. There is no surface where the agent can do something we have not accounted for.
Second, reviewability. Every action Vesence proposes is surfaced before it touches anything, in terms a lawyer can understand and approve. We built our own tracked-changes layer for Outlook, and are building it for Excel and PowerPoint where Microsoft does not provide one natively. The lawyer reviews the agent’s edits the way they would review a junior associate’s, and stays in control throughout.
Third, office depth. Legal work lives in Word, Excel, Outlook, PowerPoint, and giving an agent low-level access to all of them is genuinely hard. We rebuilt the office suite ourselves and exposed it to the agent as composable CLIs. This is the unglamorous engineering nobody else has done, and the reason Vesence can actually do legal work.
Where this goes
What people are starting to see is that general coding agents are not merely competitive with vertical legal products. They are more capable. A vertical tool can do what it was built to do. A coding agent can do that and then go one step further, because it can create the tool that the task requires in the moment. But in legal, that power only matters if it is deployed in a way that lets lawyers stay in control: secure enough for client work, reviewable at every step, and deeply integrated with the tools where legal work actually happens.
—
Many thanks to Henrik.

This is a pro bono, educational AL think piece by Henrik at Vesence. AL saw a post by him about how a customer had built a whole new feature – without even asking – on top of his product. But, Henrik didn’t mind as this simply extended what Vesence could do.
AL saw something exciting there: the potential to end the idea that legal tech and vibe coding, or additional coding in general, are in opposition, and that instead they can work together all the time. I.e. by encouraging and permitting users to customize your product you kill two birds with one stone. First, as noted, you bring to an end the idea that it’s legal tech OR vibe coded DIY tools; and second, you can counter the need to try and build around what’s on offer by making it easy to add new DIY features on top of ‘professional grade’ legal tech tools.
So, AL asked Henrik if he would write an educational piece about this.
P.S. many legal AI tools allow you to build custom workflows inside the product, but to be clear, this is suggesting you go one step further and literally build ‘on top of’ what’s already there to extend the tool’s capabilities.
More about Vesence here.
—
Express route to your Legal Innovators California June 10th and 11th ticket here.
Legal Innovators California, the landmark West Coast legal tech event, will take place on June 10 and 11, in the heart of the Bay Area, the home to many of the world’s leading AI businesses – and plenty of legal tech pioneers as well! More information and tickets here.

Discover more from Artificial Lawyer
Subscribe to get the latest posts sent to your email.