Files
openspec-lab/PRD.md
T
2026-09-06 12:33:46 +00:00

2.6 KiB
Raw Blame History

PRD — OpenSpec Lab

Цель

Внедрить spec-driven подход (OpenSpec) для задач настройки инфраструктуры Hermes/homelab; собрать рабочий инструмент «спека → реализация → проверка → архив» и применить к реальным задачам пользователя.

Пользователи

  • Владелец homelab / Hermes-агент (автономная работа по задачам).

Функциональные требования

  • FR1: Цикл propose → apply → archive работает через CLI openspec.
  • FR2: Hermes-скиллы openspec-* подключены (skills.external_dirs → .hermes/skills/openspec-*).
  • FR3: config.yaml содержит инфраструктурный контекст (пути /opt//, systemd, docker, gitverse) и rules.
  • FR4: Готовые изменения фиксируются как change-артефакты (proposal/specs/design/tasks) и архивируются с переносом delta в main specs.
  • FR5: Реальные задачи пользователя проходят через OpenSpec-цикл (пример: tavily-proxy-setup, local-extractor).

Нефункциональные требования

  • NFR1: Всё в /opt/hermes (единый каталог; .hermes — симлинк на /opt/hermes/.hermes).
  • NFR2: Изменения системы — только инфраструктурные (systemd, docker), с rollback-инструкцией в design.md.
  • NFR3: Лабораторные эксперименты не затрагивают прод (например, test-порты 8972/8973, не 8971).
  • NFR4: open Безопасность: токены/PAT хранятся в obsidian-vault, не в git.

Границы (что НЕ делаем)

  • Не переписываем Hermes/его плагины под OpenSpec.
  • Не тащим OpenSpec в прод-проекты, пока лаба не покажет ценность.
  • Не создаём новых облачных зависимостей (локальный экстрактор — приоритет).

Критерии готовности

  • G1: Полный цикл хотя бы для 2 реальных задач (архивированы, delta в main specs). ✅ (tavily-proxy-setup + add-vpn-tunnel-proxy)
  • G2: Локальный экстрактор работает без облака (local-режим, тесты 2.2/2.3 зелёные).
  • G3: Лаба в gitverse (push сделан, remote живой).