# HomeLab Infrastructure Активная инфраструктура домашней лаборатории управляется через Ansible. Каноничные инструкции для людей и агентов — в [AGENTS.md](./AGENTS.md). ## Быстрый старт Окружение собрано в Nix, venv не нужен: ```bash nix develop # или один раз: direnv allow # Один раз на клон ansible-galaxy collection install -r ansible/requirements.yml -p ansible/collections ``` Всё управление — через `make` из `ansible/`: ```bash cd ansible make help # список целей, начинать отсюда make check # связность и ожидаемые IP make status # read-only сводка по всей инфраструктуре make lint # ansible-lint + yamllint ``` Деплой и обновления: ```bash make dry-gitea # предпросмотр (--check --diff) make deploy-gitea # применить make update-gitea # бэкап -> обновление -> health-check ``` `.env` с Proxmox-токенами подхватывается автоматически. Опасные цели требуют `CONFIRM=1`. ## SSH руками `ansible/ssh_config` — единый источник правды по SSH и для Ansible, и для терминала. Добавь в `~/.ssh/config`, чтобы заработал `ssh gitea`: ``` Include /home/ada/Documents/Projects/HomeLab/infras/ansible/ssh_config ``` ## Структура - `ansible/` — control plane: `Makefile`, `inventory/`, `playbooks/`, `roles/`, `ssh_config` - `ansible/inventory/group_vars/all/services.yml` — реестр сервисов (VMID, IP, порты, домены, образы) - `flake.nix` — dev-окружение - `.gitea/workflows/lint.yml` — CI: yamllint, ansible-lint, syntax-check - `archive/2026-07-proxmox-migration/` — исторические NixOS/Docker конфиги, только как справка ## Grimmory MCP `tools/grimmory-mcp/` содержит read-only интеграцию с Grimmory API для OpenCode и явно вызываемые инструменты синхронизации с Obsidian. ```bash npm install --prefix tools/grimmory-mcp npm run configure --prefix tools/grimmory-mcp npm test --prefix tools/grimmory-mcp ``` OpenCode регистрирует сервер глобально. После перезапуска OpenCode используй `/grimmory-sync` для обновления заметок книг в `90 Library/Books` и обложек в `99 System/Export/Grimmory/Covers`.