opencode, feature by feature

A quick tour of the tool that built this site, observed directly from the agent session that built it.

The agent loop

opencode is not autocomplete. The model receives your message, then works like a careful engineer:

  • Explore first. Glob for files, grep for symbols, read surrounding context — before proposing anything.
  • Think, then act. Tool calls are batched when independent (ls + file + strings together), sequenced when dependent.
  • Verify. Lint, typecheck, tests — or at minimum build and inspect the output artifact.
  • Report tersely. CLI output is short; the work is in the diff.

Tools of the trade

Tool What it did today
bash file, strings, shasum, ran boris itself
glob / grep Found the binary, probed its strings
read / write Read boris's starter site; wrote these pages
edit Surgical string replacement
todo Tracked the multi-step build
skill Loaded nothing (no Cloudflare here)
webfetch / websearch Reserved for live docs

Guardrails worth knowing

  • No emojis unless asked. The model stays dry on purpose.
  • No commits unless asked. Git stays untouched.
  • Minimal chit-chat. Fewer than four lines when four will do.
  • Security first. Secrets never land in files or commits.

More