Первая версия
This commit is contained in:
67
README.md
Normal file
67
README.md
Normal file
@@ -0,0 +1,67 @@
|
||||
# Web MVP: AI Project Editor (Frontend-only)
|
||||
|
||||
Локальный frontend MVP без backend API.
|
||||
|
||||
## Что реализовано
|
||||
|
||||
- Выбор папки проекта:
|
||||
- `showDirectoryPicker` в secure context (`http://localhost`, `https://`).
|
||||
- fallback через `input[webkitdirectory]` в `file://` (read-only режим).
|
||||
- Папка `.git` скрывается и исключается из загрузки/подсчета.
|
||||
- Ограничения загрузки директории:
|
||||
- `>1000` файлов: предупреждение, можно продолжить.
|
||||
- `>10000` файлов: предупреждение и запрет загрузки.
|
||||
- общий размер `>1MB`: предупреждение, можно продолжить.
|
||||
- общий размер `>10MB`: предупреждение и запрет загрузки.
|
||||
- Рекурсивное дерево файлов и read-only просмотр содержимого.
|
||||
- Центральная панель: только вкладки открытых файлов и просмотр содержимого.
|
||||
- Правая панель: чат + ревью изменений (diff, accept/reject/apply).
|
||||
- Ресайз 3 колонок с дефолтными ширинами `15% / 65% / 20%`.
|
||||
- Темная тема по умолчанию (темно-синий акцент).
|
||||
- Mock индексация: snapshot/changes статусы в UI.
|
||||
- Mock чат-агент:
|
||||
- `/demo-update <path>` генерирует `update` для файла.
|
||||
- `/changeset { ... }` принимает raw JSON и строит review.
|
||||
- Валидация `changeset` по обязательным полям (`create/update/delete`).
|
||||
- Статусы review: `pending`, `accepted_partial`, `accepted_full`, `rejected`, `conflict`, `applied`.
|
||||
- `Apply accepted` с повторной hash-проверкой до записи и подтверждением удаления.
|
||||
- Без git-операций и без автоприменения правок.
|
||||
|
||||
## Запуск через Docker Compose
|
||||
|
||||
```bash
|
||||
cd "/Users/alex/Dev_projects_v2/ai driven app process/v2/web_app"
|
||||
docker compose up --build
|
||||
```
|
||||
|
||||
Открыть: `http://localhost:8080`
|
||||
|
||||
## Локальный запуск без Docker
|
||||
|
||||
```bash
|
||||
cd "/Users/alex/Dev_projects_v2/ai driven app process/v2/web_app"
|
||||
python3 -m http.server 8080
|
||||
```
|
||||
|
||||
Открыть: `http://localhost:8080`
|
||||
|
||||
## Пример changeset
|
||||
|
||||
```json
|
||||
{
|
||||
"changeset": [
|
||||
{
|
||||
"op": "create",
|
||||
"path": "notes/new_doc.md",
|
||||
"proposed_content": "# New doc\\nhello",
|
||||
"reason": "demo"
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
В чат отправить:
|
||||
|
||||
```text
|
||||
/changeset {"changeset":[{"op":"create","path":"notes/new_doc.md","proposed_content":"# New doc\\nhello","reason":"demo"}]}
|
||||
```
|
||||
Reference in New Issue
Block a user