John Costa — Engineer, leader, builder.

I'm a principal cloud engineer at HPE, working on Morpheus. Before that I spent a decade at startups as an IC, tech lead, and engineering director. Outside work I build developer tools with AI agents and contribute to the open source projects I rely on. More about me →

Projects

What I'm building

oss-autopilot

A Claude Code plugin that runs the busywork of open source contribution. It tracks your open PRs, drafts replies to maintainer feedback, and flags failing CI and merge conflicts. Its companion, oss-scout, finds and vets new issues matched to your contribution history.

The fleetview roster in a terminal, listing agent sessions grouped by status

fleetview

A terminal roster for backgrounded coding agent sessions across opencode, claude, and copilot. Dispatch tasks, watch status, answer what the agents ask, attach to a session and detach back. Each session gets its own git worktree, with pull request state alongside it. Beta.

The murmur app icon

murmur

Local, offline voice dictation for macOS. Floating-button dictation with on-device speech recognition and a local LLM cleanup pass. Nothing leaves your machine. Install with brew install --cask costajohnt/tap/murmur.

Terminal: rubocop and rbcop both report 289 files inspected and 5178 offenses on ActiveSupport; rubocop takes 8.8 seconds, rbcop 0.19 seconds

rbcop

RuboCop reimplemented in Rust on the Prism parser, aiming for byte-identical output: same offenses, messages, autocorrections and exit status. All 613 core cops plus the rails, rspec, performance and minitest plugins. Ships as a gem with a prebuilt binary.

ink-json-viewer in a terminal, showing a collapsible JSON tree

Ink components

Six terminal UI components for Ink, the React renderer for CLIs: tree view, scrollable box, combobox, file picker, JSON viewer, and timers. Published on npm and built alongside my contributions to Ink itself.

SoundCompass

An iOS app that helps people with single-sided deafness localize sound using the iPhone's microphone array. GCC-PHAT direction estimation with an Apple Watch companion.

CoralReefAR

A self-hosted collaborative AR coral reef. Procedurally generated polyps synced over WebSockets, with an NFC entrypoint for visitors.

Open Source

Building in the open

361
PRs Merged
98+
Repos
9
Languages

Writing

Recent thinking

Nov 8, 2026

How to Become a Top Contributor to an Open Source Project

Ink went from 18 of my merged PRs to 60. The process is repeatable.

4 min
Nov 1, 2026

I Bought Some Smart Bulbs and Ended Up With a Server Rack

How a homelab grows one limitation at a time, using my own as the case study

6 min
Oct 29, 2026

One Screen for All My Background Coding Agents

Porting Claude Code's agent view so I could use it outside Claude Code

3 min
Oct 25, 2026

The Era of Rust Rewrites

AI made rewrites cheap, so I rewrote RuboCop in Rust to see what's left

3 min
Jul 27, 2026

The Job Search Where I Never Applied

Six inbound conversations, zero applications, and why the approach was worth it regardless of the outcome.

7 min
Jul 21, 2026

The AI Says It's Done. Make It Prove It.

Coding agents get lazy on long jobs: they do the fun part and round up to done. A deterministic state machine takes that call away from the model.

6 min
Jul 7, 2026

What I Built with Claude Fable 5

An audit of everything I own, a dictation app, and the division of labor that stuck

4 min
Jun 24, 2026

Your AI Setup Is a Depreciating Asset

The durable skill isn't building a better workflow. It's being willing to throw yours away.

7 min
Jun 17, 2026

How I Give Claude Code a Persistent Brain in Obsidian

Project state lives in your notes, the vault writes itself as you work, and it backs itself up offsite.

8 min
Jun 8, 2026

I Turned an Old MacBook Pro Into an Always-On Claude

A 2019 MacBook Pro, a Claude Max subscription, and a few open tools got me my own always-on, remote Claude without paying per token

6 min
May 14, 2026

If Your Decisions Live in DMs, You Don't Have an AI Strategy

The communication substrate every AI tool will run on

6 min
Apr 27, 2026

Not Every Business Win Is a Feature

Where engineering value lives at a mature B2B company

5 min
Apr 21, 2026

Your Team Needs a Code Review Canon

On shared standards, accountable review, and what AI changes about both

9 min
Apr 15, 2026

100 Merged PRs: What I Learned Contributing to Open Source with AI

On persistence, ownership, and shipping code in languages I don't know

5 min
Apr 12, 2026

From Raspberry Pi to 17-Container Homelab in Six Months

Replacing streaming subscriptions with a self-hosted media server, book library, and monitoring stack, built in a weekend

8 min
Apr 12, 2026

You Were Never Typing Code

The job was never typing. It was choosing the right pattern and reviewing what ships.

3 min
Apr 7, 2026

AI Is Bringing Developers Back to the Terminal. Ink Is Making It Beautiful.

How a 36K-star React renderer quietly powers your favorite CLI tools

3 min
Mar 31, 2026

Building a Self-Improving Trading System With AI

An AI agent that reviews its own performance, runs experiments, and deploys improvements. Autonomously.

6 min
Mar 26, 2026

Automate Your Life With Cron Jobs, GitHub Actions, and Telegram

Scheduled jobs, free tools, and a little AI can quietly run a surprising amount of your life

3 min
Mar 15, 2026

Your Portfolio Site Deserves a Pipeline

I rebuilt my personal site as plain HTML with zero frameworks. Then I gave it a real data pipeline so it never goes stale.

10 min
Mar 8, 2026

Claude Code Tips and Tricks

For AI-Assisted Engineering

7 min
Mar 5, 2026

The Biggest Bottleneck in Enterprise Software Isn't Technical

The Coordination Tax

6 min
Feb 24, 2026

Why Functional Programming Is the Most Important Skill for the AI Era

What type-driven design, declarative thinking, and domain modeling have to do with AI

8 min
Feb 14, 2026

How to Have a Career in 2026

A step-by-step guide for leveraging AI in any job function

6 min
Jan 27, 2026

What It Takes to Be a Software Engineer in 2026

AI made implementation easier. Here's how to stay valuable.

4 min
Jan 20, 2026

AI Drives, You Direct

How I finally started getting PRs merged

2 min
Jan 6, 2026

Why AI-Assisted Development Feels Like Engineering Management

How years of code review prepared me for working with Claude

3 min
Jan 3, 2026

AI-Assisted Home Automation in 2026

With Home Assistant and Claude Code

6 min
Dec 30, 2025

Modeling React State as a Finite State Machine

A modern approach using TypeScript discriminated unions and hooks

4 min
See all posts →
John is the kind of engineer and leader you build teams around.
Barry Goldberg Co-Founder, Advisor and CTO
If the opportunity comes along, I would absolutely hire John again.
David Christiansen Engineering Leader
See more testimonials →