24 lines
1.7 KiB
Markdown
24 lines
1.7 KiB
Markdown
# .factory — software factory orchestrator
|
||
|
||
Размещение: `<projects_dir>/.factory/` (сиблинг `.common/`).
|
||
|
||
## Слои
|
||
|
||
- **L0a — System bootstrap (toolchain).** Голая ОС → git, mise, runtime'ы (node/python/go), опционально Claude Code / Cursor / Ollama. Native shell скрипты.
|
||
- **L0b — Factory bootstrap.** Спросить `$PROJECTS_DIR` → склонировать `.factory/` (если ещё нет) → записать `~/.config/factory/home.toml` → отдать управление в L1.
|
||
- **L1 — `factory` CLI** (Go-бинарь). Читает `factory.yaml`, обходит DAG зависимостей, запускает health-check'и и, при необходимости, setup-инструкции (L2).
|
||
- **L2 — `setup-*` skills** в `claude-skills/`. Уже существуют. L1 их вызывает (или печатает инструкцию запустить через slash-command).
|
||
|
||
## Статус
|
||
|
||
- Дизайн: `~/projects/.meeting-room/.brainstorm/factory-bootstrap.md`
|
||
- L0a в разработке (field-test на новом Win11 ноуте, лог в `L0/install-log.md`)
|
||
- L0b — нет
|
||
- L1 — нет (Go-бинарь, после L0)
|
||
- `factory.yaml` — нет (черновик в design-буфере)
|
||
|
||
## Точки входа
|
||
|
||
- Новый сотрудник на голой машине: запускает L0a (`bootstrap.ps1` / `bootstrap.sh`) → L0a кончает L0b → L0b кончает `factory install` (L1) → L1 проходит manifest → готово.
|
||
- Существующая машина (миграция): `factory install` напрямую, L0a/b пропускаем (всё уже стоит).
|