
TL;DR
What if your dev tools weren't separate apps but one operating system? The thesis behind /os and /suites - small, sharp tools that compound into a coherent layer.
Read next
Five new apps and a Chrome extension shipped today. Here is what each one does, who it is for, and why we built them in a single sweep.
6 min readCline is a free, open-source VS Code extension that brings autonomous AI coding to your editor. It works with local models or cloud APIs, handles multi-file changes, and runs terminal commands without proprietary lock-in.
9 min readOpenAI shipped a new feature in the ChatGPT macOS app that lets it read context from VS Code, Xcode, Terminal, and iTerm2. Here is how to set it up, what it can actually do today, and why the future of this feature matters more than the current version.
8 min readWhat if your dev tools weren't separate apps but one operating system?
Not a suite. Not a platform. An OS - a shared substrate where every tool knows about every other tool, every output is an input somewhere else, and the catalog itself is a protocol other agents can read.
That is the thesis behind DevDigest OS. It is also why we shipped /suites. The marketing pages are the surface. This post is the argument.
Each DevDigest app earns its place by solving exactly one thing well. None of them are platforms. None of them try to swallow your stack. But they share conventions - design language, auth, embeds, the apps catalog - and that shared layer is what turns a portfolio of single-purpose tools into something that behaves like an operating system for shipping.
A platform asks you to migrate. An OS asks you to plug in.
The rule is simple: if you can describe what an app does in one sentence and a developer nods, it ships. If the sentence needs an "and" or a "plus," it is two apps and we split it.
Each of these is a complete product on its own. None require any of the others. That is intentional. The OS only works if every component survives being used in isolation.
The interesting work happens at the seams.
ShipBadge → DD Pulse → status pages on every app you ship. You wire ShipBadge into a new repo. ShipBadge sees you also use DD Pulse and offers a one-click upgrade: the same badge now renders live uptime data. The status page DD Pulse generates embeds the badge back. Two apps, one feedback loop, no integration code.
OG Forge → ctx-peek → public profiles for your AI work. ctx-peek captures an agent run. OG Forge auto-generates a social card from the trace. The profile page on ctx-peek embeds the OG Forge image and links back. You posted a tweet about an agent run; the tweet card was built by another DD app you forgot you owned.
TraceTrail → DD Pulse → reliability dashboards for agents. TraceTrail records agent runs. DD Pulse turns the failure rate into an uptime metric. A status page now answers "is my agent reliable today" alongside "is my API up."
These loops are not features we built. They emerged the moment two apps shared the same conventions. That is the OS dividend.
Get the weekly deep dive
Tutorials on Claude Code, AI agents, and dev tools - delivered free every week.
From the archive
May 7, 2026 • 8 min read
May 6, 2026 • 8 min read
May 6, 2026 • 6 min read
May 6, 2026 • 8 min read
The apps are the demos. The conventions are the product.
Read those three rules in sequence and you have described how the empire compounds without us writing a single integration.
If the apps are programs, the DevDigest Chrome extension is the desktop. It overlays the browser with a launcher, a clipboard that knows about every DD app, and context-aware actions on any page you visit.
You are reading a Vercel dashboard? The extension offers "monitor with DD Pulse." You are looking at a GitHub repo? It offers "embed ShipBadge." You are debugging an agent in the Claude Code sidebar? It offers "open in TraceTrail."
The extension is the only place a user sees the OS as a single thing. Everywhere else, the apps stay sharp and singular. That separation is on purpose. The shell is opinionated; the apps are not.
The piece most people miss: /api/apps is a public JSON endpoint. It returns the entire DevDigest catalog - every app, its tagline, its embed schema, its OG-card endpoint, its status page.
That endpoint is consumed by:
That last one is the lever. When an LLM agent asks "what tool can generate a social card from a URL," /api/apps is a single fetch away from a structured answer. The catalog is not marketing copy. It is a discovery protocol other software can consume.
If you want your own indie portfolio to compound like this, expose your catalog. Make it boring JSON. Make it fetchable without auth. The agents are coming for the rest.
DevDigest OS is not:
If any of those become true, we have lost the plot. Drift toward platform is the failure mode.
Here is the only number that matters: the marginal utility of the next DD app is higher than the last.
When we shipped ShipBadge alone, it was a badge service. When DD Pulse landed, ShipBadge became a status indicator. When OG Forge landed, both got social cards for free. When ctx-peek landed, all three got agent-run trace embeds.
Every new app makes the previous apps more useful - not because we rewrite them, but because the conventions hold and the catalog updates. That is the definition of an operating system: the shared substrate is what creates leverage.
A monolith compounds linearly. A pile of apps does not compound at all. An OS - small, sharp tools plus shared conventions plus a public catalog - compounds.
If you build indie products, steal the pattern:
/api/apps-style catalog. JSON, no auth, stable schema.If you want to see it in motion, the /os page is the live tour and /suites is the catalog grouped by job-to-be-done. Everything on both pages is pulled from the same /api/apps endpoint that the agents read.
The empire is not the apps. The empire is the layer underneath that makes the apps stop being separate.
Technical content at the intersection of AI and development. Building with AI agents, Claude Code, and modern dev tools - then showing you exactly how it works.
Local-first markdown knowledge base with wikilinks. My entire DevDigest pipeline lives here - research, scripts, conte...
View ToolIssue tracking built for speed. Keyboard-first, sub-100ms UI. Cycles, roadmaps, GitHub integration. I use it to track al...
View ToolLearn AI-assisted development by building, not by watching.
View AppGive your agents a filesystem that branches like git. Crash-safe by default.
View AppA social media operating system for creators, founders, and content teams.
View AppInstall the dd CLI and scaffold your first AI-powered app in under a minute.
Getting StartedA complete, citation-backed Claude Code course with setup, prompting systems, MCP, CI, security, cost controls, and capstone workflows.
ai-developmentAuto-approve file edits and common filesystem commands.
Claude Code
The models.dev project is trending because AI teams need one boring source of truth for model specs, pricing, context wi...

Runtime's Launch HN thread is a useful signal: teams do not just want isolated coding agents. They want a control plane...

CodeGraph is trending because it points at a real bottleneck in AI coding: bigger context windows do not replace a fast,...

Anthropic's Stainless acquisition is not just an SDK deal. It is a bet that agents need generated SDKs, CLIs, docs, and...

Anthropic's June 15 Agent SDK credit split is not just a pricing tweak. It is a signal that autonomous coding workflows...

Claude Code's newer plugin URL and hard-deny controls are small release-note items with a big implication: agent extensi...

New tutorials, open-source projects, and deep dives on coding agents - delivered weekly.