I like Claude Desktop, so I created my own

·4 min read
aiengineeringglm-5.2taurirecowork

I like the Claude Desktop application and use it a lot, both for my work and in a personal capacity.

I also love to build stuff, and with the recent release of GLM-5.2 I decided to see if I could build my own Claude Desktop. I called it Recowork.

Previously I had some experience with Tauri (a cross-platform Rust framework for desktop applications) and OrbStack, so I decided to use them in this project.

For those who are not familiar with Claude Desktop - it is a desktop application with an agentic harness that can do chat, code, and something in between (Cowork).

The real Claude Desktop application running Opus 4.8

My version follows the same idea: you give it a goal and it plans, calls tools, and chains the steps together until the job is done.

Recowork running a multi-step agentic task: fetch the Hacker News frontpage, sort the top stories, save them to markdown, and write a Twitter thread

Here it fetched the Hacker News frontpage, sorted the top stories, saved them to markdown, and wrote a Twitter thread - all from a single prompt.

The twitter-thread.md file the agent produced, opened in a viewer

Keeping the agent in a box

To make your desktop agent secure (unlike OpenClaw) you need to limit agents within a closed space, i.e. a container. You don't want to allow an LLM to execute random commands on your machine, and VMs/containers help with this exact thing.

There's a second layer too: every write/exec tool call goes through an approver (my canUseTool) before anything actually runs, so I can see and deny the command before it touches the filesystem.

Recowork asking for approval before running a Bash command

Moving to Apple container machines

After the first several versions, I recalled that I recently saw from WWDC'26 that Apple introduced container machines, and I decided to try it - moreover because I had recently upgraded to macOS Golden Gate (not sure if this thing is available on the previous versions).

Moving to Apple container machines saved some extra requirements (people wouldn't need to install OrbStack) and some disk space. I didn't notice any performance differences between OrbStack's and Apple's containers, although I didn't do proper performance testing.

Recowork settings: GLM-5.2 served via Baseten, with the sandbox running inside an Apple Container (Linux VM)

GLM-5.2 just works

What surprised me is how well GLM-5.2 works with the Claude Agent SDK. You can throw any (basic) task at this thing and it... just works.

GLM-5.2 counting Fibonacci numbers in a file, hitting a missing-Python error, and recovering by switching to Node's BigInt

It even recovers gracefully - here it tried Python, found it wasn't available, and switched to Node's BigInt to validate a 10,000-line Fibonacci sequence without missing a beat.

I wanted to see how much it costs, so I added detailed stats - tokens in/out, cached, etc. - and it is fascinating to see that the hundreds of threads where I tested the model's capabilities resulted in ~$1 of spend.

Recowork usage stats: 38 runs, 831.6K tokens, 82% cache hit, and under fifty cents of total spend

If you are poor, GLM-5.2 is a great choice for you. I am not poor, and I used Claude Code with Opus 4.8 to build this desktop application, but it is still fascinating how effective Chinese models are.

Tools, and where this goes next

The Claude Agent SDK comes with an awesome set of tools that can do a lot, and if need be, this list can be extended either with built-in tools (i.e. my approver canUseTool) or with external MCPs. I haven't gotten to MCPs yet.

Recowork's Tools & connectors screen: 10 built-in tools and one connected filesystem MCP server

Many people are starting to say that tokens from the big labs are becoming more expensive and in some cases unsustainable. Others are saying that the future is in open source models, and that the huge success of inference providers such as Fireworks, Baseten, and others only proves this point.

If you wonder why I chose Baseten here, the answer is very simple. I bought the book Inference Engineering by Philip Kiely, who works at Baseten, and while reading the book I set up an account with Baseten and was surprised how good it is.

In any case, modern AI-powered tools are completely bonkers. Anyone who knows a bit of this and a bit of that can build something - and make a lot of money off it - if they know what they're doing, or at least have the curiosity and drive to figure it out.