Вайбкодинг с OpenCode — практический курс
Курс о том, как получать предсказуемый результат от AI-агентов в разработке. Не про «секретные промпты», а про контекст, проверку и инженерную дисциплину.
Автор: команда курса · Версия 1.0 · OpenCode V2
Чему вы научитесь
К концу курса вы сможете:
- Объяснить, как устроена LLM и почему она ошибается, — без мистики.
- Сформулировать задачу так, чтобы агент выдавал рабочий код с первого-второго раза.
- Настроить проект под агента:
AGENTS.md, права, команды сборки и тестов. - Работать в цикле «спека → план → маленький дифф → проверка → коммит».
- Читать диффы агента и находить опасные изменения.
- Считать стоимость сессии и выбирать модель под задачу, а не «самую умную».
- Собрать собственный инструментарий: навыки, команды, субагенты.
Для кого
- Студенты, предприниматели, маркетологи, эксперты, фаундеры.
- Все, кто пробовал «попросить ChatGPT написать проект» и получил кашу.
Требуется заранее: git (ветки, дифф, откат), терминал, один язык программирования с тестами (Python/JS/Go/Java — любой), установленный OpenCode.
Проверка готовности:
git --version
opencode --version
node --version # или python3 --version
Как устроен курс
теория ~40% — понятия и ментальные модели, без воды
практика ~60% — упражнения с критериями приёмки
Каждый модуль — папка с двумя обязательными файлами:
| Файл | Что внутри |
|---|---|
README.md |
теория: понятия, мини-лекция, вопросы на понимание |
practice.md |
упражнения, критерии приёмки, время |
Правило курса: модуль не пройден, пока не сдан артефакт в labs/.
Программа
| # | Модуль | Теория | Практика | Часы |
|---|---|---|---|---|
| 00 | Ориентация | что такое вайбкодинг, роли, границы | настроить окружение, первая сессия | 2 |
| 01 | Как работают LLM | токены, контекст, сэмплинг, галлюцинации | эксперименты, ломающие интуицию | 4 |
| 02 | Контекст-инжиниринг | окно, AGENTS.md, гигиена сессии |
написать AGENTS.md, измерить деградацию |
4 |
| 03 | Спека и промпт | спека-first, критерии, план | превратить 3 задачи в спеки | 5 |
| 04 | Оракулы и проверка | тесты, типы, линтеры, CI | TDD-цикл с агентом | 5 |
| 05 | Агентный цикл и права | tool calling, permissions, изоляция | deny-лист, worktree, --auto |
4 |
| 06 | Экономика и выбор модели | цена, кэш, окно, латентность | посчитать стоимость, сравнить модели | 3 |
| 07 | Рефакторинг в масштабе | многофайловые изменения, зелёный репо | миграция модуля агентом | 5 |
| 08 | Ревью и quality gates | чтение диффов, красные флаги, безопасность | поймать 3 плохих диффа | 4 |
| 09 | Кастомизация | skills, commands, subagents, MCP | собрать свой инструментарий | 4 |
| 10 | Капстоун | — | фича от спеки до CI + ретро | 10 |
Итого ≈ 50 часов. Порядок обязателен: 01–04 — база, без неё 05–09 превращаются в набор кнопок.
Расписание
Семестр (16 недель, 3 ч/нед):
| Недели | Модули |
|---|---|
| 1–2 | 00, 01 |
| 3–4 | 02, 03 |
| 5–6 | 04 |
| 7–8 | 05 |
| 9 | 06 |
| 10–11 | 07 |
| 12–13 | 08 |
| 14 | 09 |
| 15–16 | 10 |
Интенсив (2 недели, 25 ч/нед): по одному модулю в день, капстоун в последние 2 дня.
Оценка
| Часть | Вес | Что оценивается |
|---|---|---|
| Понимание | 25% | ответы на вопросы модулей, устная защита |
| Практика | 45% | артефакты в labs/, прохождение критериев приёмки |
| Капстоун | 30% | фича до зелёного CI + ретро по метрикам |
Проходной балл — 70%, капстоун обязателен. Подробно: rubric.md.
Структура репозитория
Vibecode/opencode/
├── README.md ← вы здесь
├── rubric.md ← критерии оценки
├── glossary.md ← понятия (растёт по ходу курса)
├── resources.md ← что читать сверх курса
├── progress.md ← трекер прогресса
├── templates/ ← шаблоны артефактов
│ ├── AGENTS.md
│ ├── spec.md
│ ├── review-checklist.md
│ └── retro.md
├── modules/ ← 00..10, у каждого README.md + practice.md
└── labs/ ← сюда складываются артефакты
└── README.md
Три правила, важнее всего остального
- Не принимать дифф, который не прочитал. Вайбкодинг без чтения диффа — кредит под 300%.
- Нет оракула — нет задачи. Если результат нельзя проверить командой, задача не готова к агенту.
- Одна задача — одна сессия. Смешивание целей в одном контексте — главная причина «модель отупела».
С чего начать прямо сейчас
- Прочитать modules/00-orientation/README.md.
- Заполнить progress.md — поставить дату старта.
- Открыть терминал в своём учебном проекте и запустить
opencode.