/build-to-learn

Learn any stack by building something tiny.

Your AI agent builds a deliberately small app end to end (toolchain, build, run, ship), logs every problem you hit along the way, and turns it all into docs you'll understand months later.

Claude Code plugin · skill for Codex, opencode and other agents

How it works

The app is small on purpose. The docs are the main deliverable: a repo you can reopen later, and a template for your next project in that stack.

1

Scope

Pick the smallest app that touches the whole chain of the stack. In memory, one screen, a clear "done".

2

Toolchain

Install from official sources, verify each tool, and log every snag the moment it happens.

3

Build, run, ship

Scripts that hold the build logic, a verified run, and an artifact tested without the dev setup.

4

Docs

A short README, a detailed DEV_DOCS.md, and focused topic files distilled from the learning log.

What you get

Every project ends up with the same layered structure.

your-project/
├── <the tiny app>          a working app, as small as possible
├── build / run / package    scripts that hold the build logic
├── LEARNING_LOG.md          every problem as it happened: symptom, cause, fix, lesson
├── README.md                what it is, quick start, template note, roadmap
├── DEV_DOCS.md              big picture, setup from scratch, scripts, troubleshooting
└── <TOPIC>.md               focused notes: LINUX_BUILD.md, RUST_BUILD.md, …

Install

Globally for all your projects, or only for one project.

Claude Code, globally

Default user scope: available in every project.

/plugin marketplace add AlbertArakelyan/build-to-learn
/plugin install build-to-learn@build-to-learn

Claude Code, one project

Recorded in .claude/settings.json, so everyone who clones the project gets it.

claude plugin marketplace add AlbertArakelyan/build-to-learn
claude plugin install build-to-learn@build-to-learn --scope project

Codex, opencode and other agents

With the skills installer. Installs into the current project by default.

npx skills add AlbertArakelyan/build-to-learn --skill build-to-learn

Add -g to install globally:

npx skills add AlbertArakelyan/build-to-learn --skill build-to-learn -g

Usage

Or just describe it: "I want to learn Go with GTK 4 on Windows by building something small."

CommandWhat it does
/build-to-learn <what to learn>Full workflow: scope a tiny app, set up the toolchain, build, run, ship, write the docs
/build-to-learn log <note>Add an entry to LEARNING_LOG.md
/build-to-learn docsCreate or refresh README.md and DEV_DOCS.md
/build-to-learn topic <subject>Add a focused topic file, e.g. topic linux build
/build-to-learn statusPhases done, undocumented log entries, open roadmap items, next step

How the agent behaves

The same rules in every mode.

  • Logs as it goes. Every problem and every question you ask becomes a log entry.
  • Explains the why behind every tool, package, script line and setting.
  • Verifies before claiming, and marks anything untested "not tested yet".
  • Asks before system changes like editing PATH or uninstalling, and backs them up.
  • Leaves git to you. No commits or pushes unless you ask.
  • Keeps the app tiny. A documented problem teaches more than a new feature.

Example

The project this workflow came from.

gtk4-on-windows-with-go

A GTK 4 todo app in Go on Windows: msys2 setup, build/run/package scripts, a self-contained DLL bundle, a 12-section DEV_DOCS.md, an msys2 environments reference, and notes for Linux and Rust.