# Workspace structure

Рабочая директория: `/home/node/.openclaw/workspace`

Этот файл описывает актуальную структуру workspace после перехода к стандарту **Projects + Tasks**.

---

## Корень workspace

| Путь | Назначение |
|---|---|
| `AGENTS.md` | Общие правила поведения агентов и порядок работы |
| `SOUL.md` | Личность и стиль ассистента |
| `USER.md` | Профиль пользователя |
| `TOOLS.md` | Локальные заметки по окружению |
| `IDENTITY.md` | Идентичность ассистента |
| `MEMORY.md` | Долгосрочная память |
| `HEARTBEAT.md` | Регулярные фоновые проверки |
| `memory/` | Дневные записи и онтология |
| `tasks/` | Проекты и задачи |
| `skills/` | AgentSkills |
| `data/` | Данные и артефакты |
| `scripts/` | Общие утилиты |
| `temp/` | Временные файлы |
| `dumps/` | Бэкапы и дампы |

---

## `tasks/` — стандарт проектов и задач

`tasks/` больше не является складом скриптов и разрозненных файлов. Это корень для проектной структуры.

### Стандарт проекта

```text
tasks/<project-slug>/
├── PROJECT.md
├── docs/
├── journal/
├── assets/
├── meta/
└── TASKS/
    ├── backlog/
    ├── active/
    ├── blocked/
    ├── done/
    └── archive/
```

### Стандарт задачи

```text
tasks/<project-slug>/TASKS/<status>/<task-slug>/
├── TASK.md
├── context.md
├── report.md
└── attachments/
```

### Правила

1. **Task без Project не существует**
2. У проекта должны быть `folder` и `doc_path`
3. У задачи должны быть `project`, `folder` и `doc_path`
4. Имена папок и документов — читаемые slug-и
5. Внутренние `id` не используются как человекочитаемые имена
6. Проектная документация живёт рядом с проектом, а не в общем `tasks/`
7. Временные и технические файлы не смешиваются с проектной структурой

### Примеры проектов

- `tasks/video-notes/`
- `tasks/proxy-vm/`
- `tasks/wiki-memory/`
- `tasks/snowbike-rag/`
- `tasks/ha/`

---

## `memory/` — память и онтология

### Дневные записи

- `memory/YYYY-MM-DD.md` — дневные логи и решения

### Долгосрочная память

- `MEMORY.md` — сжатые и важные долгосрочные факты

### Онтология

- `memory/ontology/graph.jsonl` — журнал сущностей и связей
- `memory/ontology/schema.yaml` — схема онтологии
- `memory/ontology/RULES.md` — правила ведения онтологии

---

## `skills/` — AgentSkills

- `skills/ontology/` — работа с онтологией
- `skills/telegram-collector/` — сбор Telegram-данных
- `skills/youtube-search/` — поиск по YouTube
- `skills/yandex-search/` — поиск по русскому вебу
- `skills/weather/` — погода
- `skills/voice-tts/` — голосовые сообщения
- `skills/diagram-png/` — PNG-диаграммы и схемы

---

## `data/` — данные и артефакты

Используется для файлов, которые не относятся к конкретному проекту напрямую:
- выгрузки
- медиаресурсы
- промежуточные результаты анализа
- общие наборы данных

---

## `scripts/` — общие утилиты

Сюда попадают скрипты общего назначения, не привязанные жёстко к одному проекту.

Если скрипт становится частью устойчивого процесса, его лучше оформить как skill или перенести в соответствующий проект.

---

## `temp/` и `dumps/`

- `temp/` — временные файлы, удаляются после использования
- `dumps/` — резервные копии, дампы, архивы

---

## Что считать актуальным источником правды

Для проектной структуры источниками правды являются:
- `tasks/<project>/PROJECT.md`
- `tasks/<project>/TASKS/.../TASK.md`
- `memory/ontology/*`

Этот файл — только обзорная карта workspace.

---

**Обновлено:** 2026-04-18
