Go development

Go development and CLI tools

I build command-line tools, backend services and developer tools in Go. I work for companies without their own developers and for teams that want more experience on board.

I'm all in on AI, so the work goes fast. I stay careful with the code and with anything that changes data.

I usually reply within one working day.

Vincent Schmalbach

What I build in Go

CLI tools, services, and tools that AI coding agents can use.

CLI tool development

Command-line tools for your product, your API or your internal systems. They print readable output for people and stable JSON for scripts.

CLIs for AI coding agents

Tools that agents like Claude Code and Codex can use safely. They get stable JSON, a dry run before changes, and a confirmation before anything destructive.

Unofficial CLIs for APIs

A CLI for a service your team uses all the time. People and scripts can then use it in the terminal and in CI.

Backend services

APIs and workers in Go when speed or low memory use matters, next to a Laravel or Node app if you have one.

Developer tooling

Tools for builds, deployments, data migrations and checks in CI.

Existing Go code

Go services or tools that need new features, fixes or tests. I keep to how the code is already written.

How I work

You don't need to have everything figured out before we talk. An idea, access to the repo, a screen recording or a list of problems is enough. I look at what is there, tell you what I would do and what it costs, and then I build it.

I use Claude Code, Codex and my own agent workflows for reading code, planning changes, writing tests, refactoring and debugging. It is not vibe coding. It is senior engineering with a much faster loop.

AI-first, and built for AI

Claude Code, Codex and my own agent workflows write a lot of the Go code. I make the design decisions and test every command. I also build my CLIs so these agents can use them well.

I stay in control

AI writes a lot of my code. I still make every technical decision, read every change before it ships, and test it. Fast, but meticulous: the speed is only worth something if what goes live is right.

The way you want to work

Some clients want to look at every change before it goes live, others want me to deploy. Some want a weekly call, most prefer written updates. I work well asynchronously, and I still ask the important questions when they come up.

I think like an owner

I still run my own online products. So when I build or fix yours, I think about traffic, conversion, revenue and support as much as about the code, and I tell you when something is not worth building.

Examples of my work

My own Go projects. Two of them are public on GitHub.

Open source, Go

rungrad

A Go framework for CLIs used in terminals, scripts and CI. Every command gets text output for people, stable JSON for programs, a dry run before changes, confirmation before destructive actions and stable exit codes.

Open source, Go

asana-cli

An unofficial Asana CLI built on rungrad. People and scripts can manage Asana workspaces, projects and tasks from the terminal.

My own tools

More Go CLIs and a curated list

Several more of my own Go CLIs run on the same framework. I also keep awesome-ai-cli, a public list of CLIs that work well with AI coding agents.

What clients say

"Vincent is one of those rare developers who can jump into a complex codebase, become useful immediately, and solve real problems without hand-holding."

Yash Chandra, Academy of Mine

"In both cases, he delivers clean code and reliable implementation."

Florian Brunner, designundzwanzig OG

"Vincent works very well asynchronously: communication stays focused, there is little unnecessary back-and-forth, and he still raises the important questions when needed."

Aidas K., Bizdras OU

Questions

Why Go for a CLI?

Go builds a single file that runs on Linux, macOS and Windows without installing anything else. It starts fast and is easy to hand out.

Can you build a CLI for our API?

Yes. Tell me what people should be able to do from the terminal. I'll suggest the commands and build them.

What makes a CLI good for AI agents?

Predictable output, stable JSON, a dry run before changes and clear error messages. My framework rungrad is built around this.

Do you also work on Go backends?

Yes. APIs and workers in Go, often next to a web app in Laravel or Node.js.

Do you only work in Go?

No. For web apps I mostly use Laravel and Vue. I use Go for tools and services.

How do you charge?

Fixed price for a job with a clear outcome, a flat monthly rate for ongoing work, or hourly. Describe what you need and I'll suggest one.

Get a quote

What the tool or service should do, and who will use it. A few sentences are enough. I'll reply with what I would do and what it would cost.

If you would rather talk first, book a 30-minute call or email contact@vincentschmalbach.com.

I usually reply within one working day.