docs: add ONBOARDING.md — user-facing first-launch guide
- What Claude auto-loads (CLAUDE.md, MEMORY.md, global rules) - 7 open questions developer needs to answer (random JS, 8112 GA, test.*, 8081 status, etc.) - Task type examples (A: site change, B: backlog item, C: audit, D: documentation) - External services to potentially configure (Telegram, CF, monitoring) - Common pitfalls (no make-work, no manual tmux kill, no /home/nosfortube/)
This commit is contained in:
134
docs/ONBOARDING.md
Normal file
134
docs/ONBOARDING.md
Normal file
@@ -0,0 +1,134 @@
|
||||
# tubev — User Onboarding (для першого запуску claude/goboss)
|
||||
|
||||
Цей файл — для **юзера**, не для Claude. Список того, що варто знати і що дати при першому/новому запуску, щоб робота йшла продуктивно.
|
||||
|
||||
## Що Claude вже знає auto-load (нічого не треба робити)
|
||||
|
||||
При старті у `~/goboss/` або `~/gocc{N}/tubev/` Claude **автоматично** читає:
|
||||
|
||||
1. **`CLAUDE.md`** (project root) — основні правила, doc index, стек, ролі
|
||||
2. **`~/.claude/CLAUDE.md`** (global) — Mandatory Protocol P1-P8 (research-before-guess, atomic commits, etc.)
|
||||
3. **`MEMORY.md`** (project memory index) — feedback / project / reference notes з минулих сесій
|
||||
|
||||
Звідти Claude дізнається:
|
||||
- Що це tubev — adult tube infrastructure, frontend-only
|
||||
- 14 сайтів у `~/backup_<port>/`, OpenResty + etlua + Lua
|
||||
- 4 боти (2 RO + 2 writer) — gocc1-4
|
||||
- Repo `git@gdev.hserver.cloud:ovtube/vtube.git`, push policy
|
||||
- Recommendations backlog (22 items HIGH/MEDIUM/LOW)
|
||||
- Communication protocol, hooks, scripts
|
||||
|
||||
**Це означає**: при відкритті чистої сесії Claude вже орієнтований у проекті. Не треба пояснювати "що це за проект" чи "де лежать сайти".
|
||||
|
||||
## Що НЕ автоматично, але можна одразу дати (опціонально)
|
||||
|
||||
Якщо хочеш швидкий старт — скажи:
|
||||
- **"перечитай RECOMMENDATIONS.md"** — щоб Claude нагадав які items OPEN
|
||||
- **"перевір боти"** — щоб переконатися що sessions живі через `tmux list-sessions`
|
||||
- **"git status у tubev"** — побачити чи нема локальних змін зайвих
|
||||
|
||||
Або просто скажи що хочеш зробити — Claude сам читатиме relevant docs.
|
||||
|
||||
## Що варто дати при конкретній задачі
|
||||
|
||||
### Тип A — зміна на конкретному сайті
|
||||
> "Зроби на 8112 footer кольоровим — використай той же стиль що на 8131"
|
||||
|
||||
Достатньо. Claude знайде:
|
||||
- 8112 у `~/backup_8112/` (з [SITES.md](SITES.md))
|
||||
- footer у `views/footer*.etlua` або `layout.etlua`
|
||||
- 8131 для reference
|
||||
- Запропонує diff, ти схвалюєш, він пушить
|
||||
|
||||
### Тип B — refactor / cleanup з backlog
|
||||
> "Зроби C1 з RECOMMENDATIONS.md" (видалити DEL_*)
|
||||
> або
|
||||
> "Винеси site_domain у config (M2)"
|
||||
|
||||
Claude знає item by ID, виконає → push → RECOMMENDATIONS.md update (move до DONE footer).
|
||||
|
||||
### Тип C — новий audit / investigation
|
||||
> "Перевір 8085 submodule drift і запропонуй фікс"
|
||||
|
||||
Claude dispatch'не gocc1 (audit) або зробить сам, відповідно до scope.
|
||||
|
||||
### Тип D — нова інфраструктура / документація
|
||||
> "Документуй як працюють banners модулі"
|
||||
|
||||
Claude сам прочитає, узагальнить, додасть doc + commit + push.
|
||||
|
||||
## Що мені потрібно від тебе (open questions)
|
||||
|
||||
Це питання які виникли під час discovery audit (gocc1+2+3+4 на 2026-04-30) — я **не можу самостійно вирішити** без твоїх відповідей:
|
||||
|
||||
### High-priority (security-related)
|
||||
|
||||
1. **Random-name JS файли** (`9qFdXQ7.js`, `aOKM9.js`, `f4T4s.js`, `gD0A3.js`, `c24c4cd9.js`, `popa.js`, `mo.js`, `N7Ym4F.js`, `qDap9.js`, `gk5LT.js`, `PxqbeCb.js`, `k3KL5.js`)
|
||||
- Це ваші adblock-bypass payloads? Старі ad scripts? Невідомі drops?
|
||||
- На сайтах 8084, 8085, 8102, 8107, 8112, 8126, 8131
|
||||
- Поки не знаю — не можу безпечно видалити
|
||||
|
||||
2. **8112 — два GA properties** (`G-CQN2KFSXSG` + `G-WW50B2EGSJ`) у одному gtag
|
||||
- Який ID правильний?
|
||||
- Це баг чи навмисно (наприклад, transition між старим і новим Google account)?
|
||||
|
||||
### Medium-priority (operational)
|
||||
|
||||
3. **`test.<domain>` зараз DNS-fail** — як ти переглядаєш зміни перед deploy?
|
||||
- Інший mechanism (port-direct? VPN? feature branch deploy)?
|
||||
- Чи preview ще не налаштовано?
|
||||
|
||||
4. **8081** (449KB CSS, NL agego, profile pages) — це окремий продукт чи варіант?
|
||||
- Чи потрібно колись підтягнути до решти 13?
|
||||
- Чи 8081 завжди буде окремою архітектурою?
|
||||
|
||||
5. **8086 outlier color #8bc215** (зелений серед orange/red) — навмисно?
|
||||
|
||||
6. **Невідомі домени** для 8081, 8129, 8148 — які це?
|
||||
- 8148 = canonical lab з 288 commits/30d — куди broadcast'ить?
|
||||
|
||||
### Low-priority (clarity)
|
||||
|
||||
7. **Git workflow per-site backup_<port>/** — чи всі 14 йдуть через `git.tubev.sex` (як 8112) чи інакше?
|
||||
- Зараз тільки 8112 має remote, решта 13 — local-only
|
||||
|
||||
## Як давати команди / preferences
|
||||
|
||||
З memory я знаю:
|
||||
- **Українською, коротко, по суті** — без enumerated блоків / SQL evidence у чаті / file path lists
|
||||
- Боти — без make-work задач (idle = ОК)
|
||||
- Recommendations не виконувати самостійно (тільки коли скажеш "роби")
|
||||
- Push immediately after commit (default), exceptions для refactor batches
|
||||
|
||||
Якщо хочеш змінити preference — скажи, я збережу у memory.
|
||||
|
||||
## Telegram / Slack / інші канали?
|
||||
|
||||
Поки не налаштовано. `~/.claude/hooks/telegram-notify.sh` існує (Stop hook → TG ping), але я не знаю до якого боту/каналу він говорить. Якщо хочеш notifications — дай:
|
||||
- Bot token
|
||||
- Chat ID
|
||||
- Що саме нотіфікувати (push? reports? alerts?)
|
||||
|
||||
## Інші зовнішні сервіси, до яких треба access?
|
||||
|
||||
- **Cloudflare** (для cache purge після прод-deploy)?
|
||||
- **Monitoring** (Grafana / Sentry / inny)?
|
||||
- **CI/CD pipeline** для прод-deploy?
|
||||
- **Domain registrar / DNS API** (якщо треба test.* підняти)?
|
||||
|
||||
Якщо так — скажи деталі, я налаштую.
|
||||
|
||||
## Що НЕ робити при старті
|
||||
|
||||
- ❌ Не давай `tmux kill-session` руками — використовуй `~/bin/restart-bots`
|
||||
- ❌ Не давай Claude make-work ("просто перевір ще раз" без конкретного тригера)
|
||||
- ❌ Не пиши задачі прямо в `~/comms/<bot>-task.md` — нехай goboss формулює (інакше bot не побачить унікальний Task ID)
|
||||
- ❌ Не торкай `/home/nosfortube/` — production, hooks блокують
|
||||
|
||||
## Все ще питання?
|
||||
|
||||
Просто запитай у чаті. Я знаю що де лежить — або з docs, або з memory, або grepну і додам у [INFRASTRUCTURE.md](INFRASTRUCTURE.md) щоб наступного разу не шукати.
|
||||
|
||||
---
|
||||
|
||||
*Created: 2026-04-30. Update коли з'являються нові onboarding pain points.*
|
||||
Reference in New Issue
Block a user