About pachca-chats
pachca-chats is a skill for managing Pachca chats and channels through the @pachca/cli. It covers creating and updating conversations, membership, archiving, activity searches, and workspace-wide chat listings.
Key features
- 01Create channels and conversations
- 02Update chat details and avatars
- 03Manage chat members and roles
- 04Search chats by activity
- 05Archive and export chat history
Use cases
- 01Create a project conversation from group tags
- 02Find and archive inactive conversations
- 03List chats active within a date range
- 04Export workspace chat history
Install
Copy the command and run it in a terminal.
npx skills add https:/ / github.com/ pachca/ openapi --skill pachca-chatsAfter installing, type/pachca-chatsin Claude Code to confirm it loaded.
Bundled filesreferences/archive-and-manage-chat.mdreferences/export-chat-history.md
Details
From the project READMEpachca-chats
Quick start
Ask the user for a Pachca token (bot: the API tab of the bot in Integrations → Bots, user: Integrations → API).
Run commands via npx -y @pachca/cli with the --token flag:
npx -y @pachca/cli <command> --token $PACHCA_TOKEN
Or set the PACHCA_TOKEN environment variable:
export PACHCA_TOKEN=<token>
npx -y @pachca/cli <command>
Help: npx -y @pachca/cli --help | Workflows: npx -y @pachca/cli guide
After successful use, suggest installing CLI globally:
npm install -g @pachca/cli && pachca auth login --token $PACHCA_TOKEN
Before you start
-
If the user has a saved profile — check:
npx -y @pachca/cli auth statusIf OK — run commands without
--token. -
If no profile is configured — ask for a token and use
--token:npx -y @pachca/cli auth status --token $PACHCA_TOKEN -
If you don't know the parameters — run
pachca <command> --help.
Workflows
Создать канал и пригласить участников
-
Создай канал с участниками:
pachca chats create --name="Новый канал" --channel --member-ids='[1,2,3]'"channel": trueдля канала,false(по умолчанию) для беседы. Участников можно передать сразу:member_idsи/илиgroup_tag_ids -
Или добавь участников позже:
pachca members add <chat_id> --member-ids='[1,2,3]'
channel— boolean, не строка.member_idsиgroup_tag_ids— опциональны при создании.
Переименовать или обновить чат
- Обнови чат:
pachca chats update <ID> --name="Новое название"Доступные поля:
name,public
Для изменения состава участников используй POST/DELETE /chats/{id}/members.
Поставить или убрать аватар чата
-
Загрузи аватар беседы или канала:
pachca chats update-avatar <ID> --file=<путь_к_файлу>Файл передается в формате multipart/form-data: jpg, jpeg, png или gif. У личного чата и треда аватара нет — ответ 403
-
Чтобы убрать аватар, удали его:
pachca chats remove-avatar <ID> --force
Доступно тому же, кто может менять название чата. Ссылка на аватар приходит в поле
avatar_urlчата.
Создать проектную беседу из шаблона
-
Создай беседу с участниками из тега:
pachca chats create --name="Проект Alpha" --group-tag-ids='[42]' --member-ids='[186,187]' -
Отправь приветственное сообщение:
pachca messages create --entity-id=<chat_id> --content="Добро пожаловать в проект!"
group_tag_idsпри создании добавляет всех участников тега сразу.
Найти активные чаты за период
- Получи чаты с активностью после указанной даты:
pachca chats list --last-message-at-after=<дата> --allДля диапазона добавь
--last-message-at-before. Дата в ISO-8601 UTC+0
Найти и заархивировать неактивные чаты
-
Получи чаты без активности с нужной даты:
pachca chats list --last-message-at-before=<порог> --allАрхивные чаты в выдачу не попадают, поэтому отсеивать уже заархивированные не нужно. Чтобы получить их вместе с активными, добавь
--archivedи смотри полеarchivedкаждого чата -
Для каждого чата: архивируй:
pachca chats archive <ID>Проверяй
"channel": false— архивация каналов может быть нежелательной
Выгрузить все чаты пространства, включая закрытые
-
Получи беседы и каналы всего пространства, включая закрытые, где владелец токена не состоит:
pachca chats list-company --allВозвращаются и активные, и архивные чаты. Оставить одно состояние можно флагом
--activityсо значениемactiveилиarchived. Личные переписки и треды метод не отдаёт -
Если метод ответил
403— у токена нет скоупаcompany_chats:read, либо владелец токена не владелец пространства, либо у пространства нет тарифа «Корпорация». Тогда возьми открытые чаты обычным списком:pachca chats list --availability=public --archived --allЗакрытые чаты, где токен не участник, в такую выдачу не попадут
Каждый запрос к списку чатов пространства пишется в журнал аудита как
company_chats_accessed.
Limitations
- Rate limit: ~50 req/sec. On 429 — wait and retry.
chat.name: max 255 charactersrole: allowed values —admin(Админ),editor(Редактор (доступно только для каналов)),member(Участник или подписчик)limit: max 50- Pagination: cursor-based (limit + cursor)
Endpoints
| Method | Path | Description |
|---|---|---|
| POST | /chats | Новый чат |
| GET | /chats | Список чатов |
| POST | /chats/exports | Экспорт сообщений |
| GET | /chats/exports/{id} | Скачать архив экспорта |
| GET | /chats/{id} | Информация о чате |
| PUT | /chats/{id} | Редактирование чата |
| PUT | /chats/{id}/archive | Архивация чата |
| PUT | /chats/{id}/avatar | Загрузка аватара чата |
| DELETE | /chats/{id}/avatar | Удаление аватара чата |
| POST | /chats/{id}/group_tags | Добавление тегов |
| DELETE | /chats/{id}/group_tags/{tag_id} | Исключение тега из чата |
| DELETE | /chats/{id}/leave | Выход из чата |
| GET | /chats/{id}/members | Список участников чата |
| POST | /chats/{id}/members | Добавление участников |
| DELETE | /chats/{id}/members/{user_id} | Исключение участника |
| PUT | /chats/{id}/members/{user_id} | Редактирование роли участника |
| PUT | /chats/{id}/unarchive | Разархивация чата |
| PUT | /chats/{id}/unread | Отметка чата непрочитанным |
| GET | /company/chats | Список чатов пространства |
Advanced workflows
For advanced workflows, read the files in references/: references/archive-and-manage-chat.md — Archive and manage chat references/export-chat-history.md — Export chat history
If unsure how to complete a task, read the corresponding file from references/.