Why I decommissioned it
OpenCode was decommissioned because its role substantially overlapped with the remaining coding agents, while its headless server, Telegram bot, SQLite session store, watchdogs, cleanup jobs, daily restart logic, and backup automation created a disproportionate maintenance burden. Repeated session database hardening and recovery work made it a poor fit for my goal of a smaller, more predictable fleet.
Purpose: The decision was specific to my environment. I wanted fewer overlapping coding interfaces, fewer always-on processes, and less time spent repairing session-state issues. The encrypted backup keeps reversal possible if OpenCode later becomes uniquely useful.
Backup before removal
Before removal, the complete OpenCode footprint was archived. The SMB restore archive contains the full configuration and state (including protected secrets); the private GitHub repository contains an encrypted and chunked copy with SHA-256 manifests. Decryption and archive integrity were tested before destructive cleanup.
Result
OpenCode was removed as a distinct operational agent while shared services—such as the model router, memory layer, NAS, GitHub backup infrastructure, and the agents intentionally retained—were kept separate. The result is a smaller attack surface, fewer always-on processes, fewer credentials and update paths, and a clearer operating model.
Editorial note: This is a record of a decision made for my own lab requirements. It is not a universal recommendation or a negative review of the project.