Files
wiki/memory/ontology/RULES.md
2026-04-12 21:55:33 +03:00

5.6 KiB
Raw Blame History

Онтология — Правила ведения

Эти правила обязательны для всех агентов. Невыполнение = нарушение.


1. Когда использовать онтологию

Обязательно при:

  • Работе с проектами (создание, обновление, закрытие)
  • Работе с задачами (создание, изменение статуса, удаление)
  • Распределении работ между агентами
  • Проверке зависимостей между задачами
  • Планировании новых активностей

Онтология — единственный источник истины о проектах и задачах. Не держать информацию в голове, в daily notes или вMEMORY.md — только в онтологии.


2. Правила записи ( Stream — curator)

2.1 Стрим — единственный writer

  • Все изменения в онтологию вносит только Стрим
  • Другие агенты (Dev, Legal, Feda) не пишут напрямую
  • Запросы на изменения → sessions_send → Стрим → проверка → внесение

2.2 Изменения — только с подтверждения Славы

  • Любое изменение (создание, удаление, обновление сущности) → только после ОК Славы
  • Исключение: мелкие правки по типу "обновить статус на done" если Слава сам сказал
  • Спорные вопросы → Слава решает

2.3 Принцип одного источника

  • Информация о проекте/задаче должна быть только в онтологии
  • Не дублировать в MEMORY.md, daily notes, TZ файлах
  • Исключение: MEMORY.md содержит только ссылки на онтологию

3. Атрибуты сущностей

Project

Поле Тип Обязательно Описание
name string Название проекта
status enum active, paused, done, planned
folder string Путь к документации: tasks/{project}/
description string Краткое описание
start_date date Дата старта

Task

Поле Тип Обязательно Описание
title string Название задачи
project string ID проекта (proj_xxx)
assignee string Кто выполняет: dev, p_slava, legal, feda
status enum open, in_progress, done, blocked
priority enum high, medium, low
description string Детали задачи

4. Жизненный цикл

Создание проекта

  1. Слава/агент предлагает → обсуждаем
  2. Слава соглашается → Стрим создаёт в онтологии
  3. Привязываем folder, создаём структуру tasks/{project}/

Создание задачи

  1. Предложение → описание → assignee → приоритет
  2. Слава ОК → Стрим создаёт
  3. Task привязывается к Project

Обновление статуса

  1. Кто-то сообщает (Слава, агент, результат работы)
  2. Стрим проверяет → обновляет в онтологии
  3. Если задача done → проверяем есть ли зависимые

Закрытие проекта

  1. Все задачи done
  2. Слава подтверждает → status → done
  3. Description обновить с датой закрытия

5. Проверки (автоматически)

При каждом запросе涉及 проектов/задач:

  • Данные взяты из онтологии
  • Статусы актуальны
  • Нет конфликтующих задач
  • Assignee соответствует

При планировании:

  • Проверены зависимости
  • Нет блокирующих задач
  • Учтены приоритеты

6. Недопустимо

  • Создавать задачи минуя онтологию
  • Держать важные данные только в MEMORY.md
  • Изменять онтологию без ведома Славы
  • Другим агентам писать напрямую
  • Удалять сущности без подтверждения

7. Файлы онтологии

memory/ontology/
├── schema.yaml     — схема типов и полей (обязательна валидация)
├── graph.jsonl     — сами сущности и связи
└── RULES.md       — этот файл

ontology.py:

skills/ontology/scripts/ontology.py

8. Исключения

Всё что не относится к проектам/задачам — в MEMORY.md или daily notes:

  • Личные заметки о Славе
  • Пароли/ключи (только .env)
  • Техническая документация (TZ, PROJECT.md)
  • Архивные данные

Обновлено: 2026-04-09