Post

My OpenCode School Journey

I completed all 14 OpenCode School lessons. Here's what I learned, what I built, and how it changed the way I work with AI.

My OpenCode School Journey

I enrolled in OpenCode School just over a week ago. Today I finished all 14 lessons. Here is everything I learned, the tools I set up, and the skills I built along the way.

Quick stats

  • 14 lessons completed
  • 7 Replicate skills installed
  • Brave Search MCP server running
  • Weather MCP server running
  • 3 custom commands (summarize, explain, start)
  • 1 project skill (Chirpy blog upgrades)
  • 1 plugin (Replicate)
  • Model used: DeepSeek v4 Pro

My setup before vs after

BeforeAfter
Basic installation, no configFull opencode.jsonc with permissions, MCP servers, instructions URL
No standing instructionsAGENTS.md with personal preferences, MCP auth rules, GitHub rules
Only knew about Plan/BuildDeep understanding of agents, sessions, workspaces
No search capabilityBrave Search MCP + built-in websearch
Just a ChatGPT userCustom skills, commands, plugins, MCP servers

What I learned (all 14 lessons)

Getting started

  1. Installation — Two modes (Plan and Build), press Tab to switch. Plan thinks first, Build does the work.
  2. Interview — OpenCode asked me about my background to personalize the course. Dabbler coder, very comfortable with terminal.

Configuring OpenCode

  1. Configuration — Created ~/.config/opencode/opencode.jsonc. Set default_agent: plan, permissions with safety guardrails, and my school instructions URL.
  2. Permissions — Three levels: allow, ask, deny. Added Git guardrails (git push *: ask, git checkout *: ask). Learned about per-project permission overrides.
  3. Instructions — Created ~/.config/opencode/AGENTS.md with my name, preferences, communication style, and rules. Config URLs vs local AGENTS.md: one fetches from a server, one lives on my machine.

Extending OpenCode

  1. Models — Cost vs capability tradeoff. Free Zen models vs paid flagship models. Context windows (128K-1M for big models, 8K-32K for small ones). How tokenizers work across different languages.
  2. Commands — Custom slash commands. Created /summarize, /explain (with $ARGUMENTS placeholder), and /start (opens file explorer).
  3. Skills — Reusable instruction packs via SKILL.md files. Installed 7 Replicate skills. Created a project skill for upgrading my Chirpy blog. Commands vs Skills explained in detail here.
  4. Tools — MCP (Model Context Protocol) connects OpenCode to external tools. Added weather server (Open-Meteo). Added Brave Search MCP server. Key difference: skills are recipe books, MCP servers are working kitchens.
  5. Plugins — JS/TS modules that hook into OpenCode’s events, add custom tools, and modify behavior. Skill = advice, MCP = appliance, Plugin = remodeling. Installed Replicate plugin with 4 custom tools.

Day-to-day use

  1. Agents — Plan vs Build deep dive. Plan is read-only (strong guardrail, not a hard sandbox). Build has full access. Recommended workflow: Plan first, then Build.
  2. Sessions — Each conversation is a session with its own history. Saved to disk, can resume anytime. Share via /share, disable for sensitive work.
  3. Images — Vision models can interpret screenshots (UI designs, bugs, mockups, text). DeepSeek v4 Pro does NOT support vision. Claude, GPT-4/5, Gemini, Kimi K2.5 do.
  4. Workspaces — Isolated copies of project files on their own Git branch. Desktop-only feature, so I could not use it (I use the terminal).

What I built along the way

Throughout the lessons, I set up real tools on my machine:

  • ~/.config/opencode/opencode.jsonc — Global config with permissions, weather MCP, Brave Search MCP, instructions URL
  • ~/.config/opencode/AGENTS.md — Personal instructions with communication style, MCP auth rules, GitHub rules
  • ~/.config/opencode/commands/ — Three custom commands
  • ~/.agents/skills/ — Seven Replicate skills
  • .opencode/skills/chirpy-upgrade/SKILL.md — Project skill for blog upgrades
  • .opencode/plugins/replicate.ts — Replicate plugin
  • Brave Search API key — 2,000 free searches/month
  • Replicate API token — For running AI models

What is next

The next step is exercises — hands-on projects. I have nine exercises remaining. The most practical for daily life are Git and GitHub (which I am doing right now) and Inbox Zero.

If you want to try OpenCode School yourself, enroll at opencode.school. It is free and you can use the terminal like I did.

This post is licensed under CC BY 4.0 by the author.