y83 code / справочник

Проекты

Экран «Проекты» показывает рабочие папки, в которых идёт работа агента. Отдельного объекта «проект» на сервере нет: папка появляется в списке сама, как только агент начинает в ней работать, а треды группируются по этому пути. Экран показывает, сколько тредов в каждой папке и что в них происходит прямо сейчас.

раздел
Чат с агентом (Codex)
пунктов возможностей
31
источник
docs/codex/projects.md

Проект можно переименовать, убрать из списка или вместе с ним удалить все его треды.

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

Возможности

  • Карточка проекта собирает всё, что известно о папке. Слева стоит квадрат с первой буквой имени, рядом само имя, а под ним строка с путём и числом тредов, а под ней строка состояния. Если у проекта есть недавние ответы агента, под строкой состояния добавляется превью со стрелкой.
  • Домашняя папка есть в списке всегда, даже когда тредов в ней нет, и узнаётся по символу «~» вместо буквы. У остальных проектов в квадрате стоит первая буква имени, а если имени нет, то знак «#».
  • Состояние проекта читается по строке под именем. Когда в проекте кто-то работает, в квадрате едут три точки и под строкой горит бирюзовая полоска прогресса. Когда кто-то ждёт ответа человека, появляется значок песочных часов, а когда тред завис, то предупреждение; оба значка жёлтые. Если в проекте тихо, остаётся только подпись «updated …», например «updated 5m». Цвет большого квадрата зависит от того же состояния: бирюзовый означает, что идёт работа, жёлтый — что ждут или зависли, серый — что тихо.
  • Живые проекты всегда показываются сверху. Те, где прямо сейчас что-то происходит, стоят выше остальных, а ниже идут проекты по свежести последнего треда.
  • Кнопка «+» в шапке открывает файловый менеджер, в котором можно выбрать папку для нового проекта. В файловом менеджере уже выбранные папки помечены, чтобы не создать дубль, а сам выбор открывается с той папки, где вы работаете сейчас. Если агент удалённый, показывается файловый менеджер самого сервера.
  • Выбор папки, которая уже стала проектом, ничего не создаёт. Приложение сразу открывает её треды.
  • Новый проект получает имя по последнему куску пути. Например, папка «~/work/site» появится в списке под именем «site».
  • Создавать проект вручную не нужно. Он появляется в списке сам, как только агент начал работать в новой папке.
  • Кнопка обновления в шапке и жест потянуть-вниз перечитывают список целиком, вместе с тредами и моделями.
  • Меню карточки открывается значком с тремя точками и даёт до трёх действий: «Edit», «Remove project label» и «Delete N threads». Первые два доступны только папкам, которые заведены как проекты: у группы без папки их не будет. Удаление тредов остаётся доступно везде, где треды есть.
  • Edit открывает окно снизу, где правится имя проекта. Путь там показан только для чтения, его можно скопировать, и отдельной строкой написано, что папка на диске не переименовывается. Кнопка сохранения становится активной только тогда, когда имя действительно изменилось.
  • Remove project label убирает только запись о проекте. Ни треды, ни папка при этом не трогаются: треды продолжат собираться по этому пути, но управлять ими из карточки будет уже нельзя.
  • Delete N threads удаляет треды у агента и из кэша приложения, а папка остаётся на месте. Пока идёт удаление, сверху висит полоса со счётчиком вида «12 из 40» и кнопкой «Cancel». Отмена срабатывает после текущего запроса, а уже удалённые треды не возвращаются.
  • Полоса сообщений под шапкой показывает итог любой операции: сколько удалено, что осталось или почему не получилось. Успех и обычные сообщения исчезают сами через три секунды, предупреждения держатся шесть, а ошибка остаётся на экране, пока её не смахнёшь.
  • Группа No project собирает треды, у которых рабочая папка неизвестна, а в её карточке вместо пути написано «no folder». Появляется она, когда сервер не отдаёт путь, и служит отдельной корзиной, чтобы такие треды не выглядели переехавшими в обычную папку.
  • Пустой список объясняет, что проект — это рабочая папка для тредов, и предлагает нажать «+».
  • Пока список грузится, в центре экрана крутится индикатор. Если загрузка сорвалась, вместо списка появляется сообщение об ошибке с кнопкой «Retry».
  • Если удалённый сервер не найден в базе, вместо списка будет заглушка с кнопкой «Manage servers», которая ведёт к списку серверов.

Технические данные

ПараметрЗначение
Главный заголовокcodex@projects
Что показывает шапкачисло проектов, сумму тредов и статус подключения
Сколько тредов приходит за раздо 100, страницы склеиваются в один список
Какая папка домашняялокально папка Termux, на сервере /var/www
Сколько бывает групп без папкиодна, под именем No project
Таймер хода на карточкене тикает, видно только слово working
Сколько ждут подтверждения при удалениидо 15 секунд на один тред
Как удаляются тредыпо одному, и каждый только после ответа сервера
Где живут тредына сервере агента, приложение их только перечисляет
Где живут имена проектовв базе телефона, отдельно для своих и удалённых папок
Перевод экранатолько английский
Что сейчас у агента100 тредов в пяти папках, 83 из них в репозитории

Что агент умеет

  • Агент может открыть этот экран командой моста и посмотреть на него снимком. На снимке видно список папок, счётчики тредов и текущую активность каждого проекта.
  • Кнопки экрана агент нажимает командами управления интерфейсом. Так агент может открыть «+», выбрать папку в файловом менеджере, нажать обновление или раскрыть меню карточки.
  • Список тредов агент читает напрямую, минуя экран. По этому списку агент способен сам посчитать, сколько тредов в какой папке.
  • Мост открывает экран для первого агента из списка, а не для того, о котором спросили. Если в списке первым идёт не Codex, карточки будут не от того агента.
  • Отдельной командой агент не может ни создать, ни переименовать, ни удалить проект. Таких команд у моста нет: всё делается только через интерфейс, а удаление тредов дополнительно спрашивает подтверждение у человека.

Ограничения

  • Экран полностью на английском, даже когда приложение на русском.
  • Счётчики на карточках показывают треды, а не файлы. Сколько изменений лежит в папке и сколько весит проект, по этому экрану узнать нельзя.
  • Переименование проекта не трогает диск. Приложение меняет только подпись, а папка и её содержимое остаются как были.
  • Удаление тредов необратимо. Отменить можно только то, что ещё не отправлено, а уже удалённые треды вернуть нельзя.
  • Пункт об удалении тредов появляется только тогда, когда тредов больше нуля. У «Home» без тредов такого пункта нет, потому что удалять нечего.
  • Группу No project нельзя ни переименовать, ни убрать, потому что это не настоящая папка. Пункт удаления тредов у группы всё равно появляется, если треды есть, и нажимается вхолостую: операция уходит сразу и ничего не удаляет.
  • Путь в карточке обрезается до одной строки. Длинный путь показывается началом с многоточием, а полный путь виден только в окне редактирования, откуда его можно скопировать.
  • Удалённый агент умеет меньше, пока сервер не подключился. Кнопка «+» и просмотр папок в это время недоступны, потому что сначала нужно поднять туннель.

Источник: docs/codex/projects.md. Страница собрана из документации проекта при сборке сайта — без пересказа.