Weft
UK
Блог

Кілька ШІ-агентів на одній дошці: практичний посібник

Як запускати Claude Code, Codex і ChatGPT на одній дошці без дубльованої роботи: контракти завдань, атомарні захоплення, оренди й одна черга на рев’ю.

Weft — це ШІ-менеджер завдань для соло-засновників і невеликих команд.

Усі статті

Автор: Andrei Finogeev ·

Так, два-три ШІ-клієнти можуть ділити одну дошку, якщо дошка вирішує, кому належить кожне завдання. У Weft Claude Code, Codex і ChatGPT підключаються до того самого MCP-ендпоінта. Кожен захоплює завдання через start_task, підтримує його живим за допомогою heartbeat і повертає звіт. Якщо два клієнти тягнуться до тієї самої картки, другому кажуть already_claimed, і ніхто не робить роботу двічі.

Weft робимо ми. Факти про інші продукти взято з їхніх офіційних сторінок, перевірено 27 жовтня 2026 року.

Цей посібник — для соло-засновника чи невеликої команди, у яких два-три ШІ-клієнти постійно наступають одне одному на п’яти.

Коли другий агент справді допомагає?

Більше агентів саме по собі не робить роботу швидшою. Вони допомагають, коли робота ділиться на шматки, що не перетинаються, і шкодять, коли ділять файли, тестову базу даних чи рішення, яке ще ніхто не ухвалив.

СитуаціяОдин агент чи кілька?Чому
Одна фіча в одному репозиторії, зроблена за один підхідОдин агент (з власними субагентами, якщо вони в нього є)Один контекст тримає все; дошка додає накладних витрат
Два незалежні виправлення в різних частинах кодуДва агенти, окремі гілки чи worktreeСпільних файлів немає, тож єдиний ризик — узяти ту саму картку
Планування й тріаж у ChatGPT, код в агенті в терміналіДва клієнти, різні задачіChatGPT пише й сортує завдання; агент для коду їх захоплює
Кілька агентів чекають на те саме продуктове рішенняОдин агент, після того як ти вирішишПаралельні агенти вгадуватимуть кожен по-своєму

Якщо ти не віддав би дві роботи двом людям, попередньо не поговоривши, не віддавай їх і двом агентам.

Що має бути в завданні, перш ніж агент його візьме?

Агенти сприймають завдання буквально й рідко перепитують. Перш ніж картка покине Backlog, дай їй:

  • Один результат, який можна перевірити. Не «покращити онбординг», а «додати порожній стан на сторінку проєктів із кнопкою створення».
  • Межі. Які файли, сторінки чи системи можна чіпати і що поза межами.
  • Перевірку готовності. Тест, збірку чи URL, які показують, що все спрацювало.
  • Докази, які ти хочеш отримати. Посилання на pull request, хеш коміту, URL розгортання.
  • Де зупинитися. Усе незворотне (публікація, продакшн, гроші) має закінчуватися запитанням до тебе, а не дією.

Колонки Weft за замовчуванням — Backlog, Todo, Doing і Done. Добре працює проста домовленість: захоплювати можна лише картки в Todo. Проєкти відокремлюють один репозиторій чи клієнта від решти.

Що буде, коли два агенти викличуть start_task на одній картці?

Перенесення картки в Doing — не блокування: два агенти можуть прочитати ту саму картку в Todo, і обидва почнуть. Тому у Weft блокуванням є саме захоплення.

Виклик start_task — це один запис у базу даних, захищений унікальним індексом, тож переможця визначає база. Переможець отримує runId і leaseToken, а картка переходить у Doing. Той, хто програв, отримує already_claimed з ідентифікатором завдання, назвою і підказкою не дублювати роботу. Неважливо, що один клієнт — агент у терміналі, а інший — чат-застосунок.

Для агента already_claimed — нормальна відповідь, а не помилка. Правильний хід — знову викликати get_my_work і взяти наступну картку. Повний цикл ми описуємо в статті про цикл захоплення, heartbeat і звіту.

Як працюють heartbeat і 20-хвилинна оренда?

Захоплення — це оренда, а не постійне призначення. start_task дає 20-хвилинну оренду і каже агенту продовжувати її кожні 300 секунд. Агент продовжує її, викликаючи report_progress зі своїми runId і leaseToken. Якщо тим часом агент втратив оренду, виклик повертає lease_lost, і агенту слід зупинитися, а не редагувати далі.

Коли сесія помирає, немає кому про це сказати. Мовчання — єдиний сигнал, який отримує дошка, тож Weft і вважає мовчання сигналом:

  • Після 20 хвилин без heartbeat запуск позначається як застарілий, токен очищається, і завдання знову стає непризначеним.
  • Прибирання запускається кожні 10 хвилин, а застаріле завдання ще й звільняється одразу, коли інший клієнт пробує його захопити.
  • Поки агент чекає на відповідь на запитання до тебе, він тримає завдання 60 хвилин. Після цього оренда знімається, але запитання лишається відкритим.

Heartbeat — це виклики інструментів. 40-хвилинне завдання з heartbeat кожні 5 хвилин витрачає на них близько 8 викликів, а на безкоштовному тарифі 200 викликів на місяць, тож три агенти, які працюють щодня, швидко з нього виростуть. У Pro обмеження на виклики немає.

Як дошка знає, який агент що зробив?

Кожен OAuth-клієнт, що входить у Weft, — окремий виконавець. Claude Code, Codex і ChatGPT реєструються окремо, і дошка показує ім’я, з яким зареєструвався кожен клієнт. Кожна подія в історії записує, який клієнт її спричинив.

Клієнти без OAuth можуть використовувати персональний токен доступу; кожен токен теж окремий виконавець, але токени не мають обмежень прав (токени доступу). Права задаються для кожного OAuth-підключення:

  • full (за замовчуванням): усі 32 інструменти.
  • write: усе, крім трьох деструктивних інструментів (кошик, архівування, завершення спринту).
  • read: лише 11 інструментів для читання.

Розумний розподіл: агенти для коду — на write, усе експериментальне — на read. Відключення одного клієнта відкликає його токени, не зачіпаючи інших. Weft видає refresh-токени, тож підключений клієнт сам поновлює вхід.

Ідентичність на дошці — не ізоляція на диску. Два агенти з різними іменами однаково можуть перезаписувати роботу одне одного в одному checkout. Дай кожному агенту для коду власну гілку чи worktree.

Куди потрапляє завершена робота і скільки може чекати на тебе?

За замовчуванням завершене завдання одразу йде в Done. Натомість воно зупиняється в твоєму Inbox, коли потребує рев’ю або коли перевірка не пройшла. Там ти обираєш Accept, Rework, Later чи Drop. Rework просить примітку. Запитання з request_input потрапляють у той самий Inbox і приходять на телефон як push, тож у тебе одне місце, куди дивитися, — хоч би який агент питав.

Звіт від complete_task містить результат, артефакти, які можна перевірити, те, що не зроблено, невідоме і nextStep. nextStep з’являється над кнопкою Accept, тож прийняття погоджує саме цей крок. Більше — у статті «що зробив мій ШІ-агент».

Inbox має ліміт, і з кількома агентами ти в нього впрешся. Він вміщує 5 пунктів у робочому просторі на одну людину і 10 у команді або 45 хвилин оціненого рев’ю — залежно від того, що настане раніше. Запитання теж рахуються. Коли він заповнений, start_task відмовляє з attention_queue_full і каже агенту, що той ще може робити, наприклад звітувати про прогрес чи читати дошку. Три агенти можуть видавати роботу швидше, ніж одна людина встигає її переглядати; ліміт не дає їм накопичувати результати, які ти ніколи не прочитаєш.

Що ламається і як це виправити?

ЗбійЩо ти бачишЩо робить WeftЩо робиш ти
Два клієнти починають те саме завданняОдна картка в Doing, одному клієнту сказано already_claimedБаза даних дає перемогти одному захопленню; інше відхиляєтьсяНічого, якщо агент, що програв, іде далі. Якщо він однаково продовжив роботу, посиль його інструкції
Сесія падає або ноутбук засинаєКартка в Doing без прогресуПісля 20 хвилин без heartbeat запуск стає застарілим, а завдання повертається в непризначеніПеревір гілку на часткову роботу, перш ніж її підхопить інший агент
Агент закінчує, але так і не викликає complete_taskРоботу змерджено, картка досі в DoingОренда спливає; завдання звільняється, але не закриваєтьсяЗакрий його сам або попроси агента завершити його з доказами
Агенту потрібне рішення, яке можеш ухвалити лише тиЗапитання в твоєму Inbox, можливо pushЗахоплення зберігається 60 хвилин; відповідь доходить до агента під час його наступного start_task чи get_my_workВідповідай одним із варіантів, які він дав
На тебе чекає забагатоЗаповнений Inboxstart_task відмовляє з attention_queue_fullПереглянь або відкинь пункти; агенти зможуть знову починати, коли черга зменшиться
Два агенти редагують один checkoutНепов’язані зміни змішані в одному диффіНічого; Weft не бачить твоїх файлівРозведи worktree чи гілки, перш ніж запускати агентів паралельно

Як налаштувати два-три клієнти?

Усі три підключаються до того самого ендпоінта й входять через браузер, без жодного ключа для копіювання.

# Claude Code
claude mcp add --transport http weft https://letsweft.com/api/mcp

# Codex: додай у ~/.codex/config.toml, потім увійди
[mcp_servers.weft]
url = "https://letsweft.com/api/mcp"

codex mcp login weft

ChatGPT підключається через застосунок Weft у своєму каталозі, на будь-якому тарифі, зокрема Free. Покрокові сторінки: Claude Code, Codex, ChatGPT, Cursor (встановлення в один клік). Вхід відповідає специфікації авторизації MCP.

ChatGPT працює ходами: він діє, поки ти в розмові. Він підходить для планування, написання завдань і відповідей на запитання. Довгі сесії з кодом краще віддати агенту в терміналі, бо heartbeat кожні кілька хвилин потребує сесії, яка продовжує працювати.

Який вигляд має тижневий пробний запуск?

  1. День 1: підключи два клієнти. Claude Code і Codex або одного агента для коду плюс ChatGPT. Дай агентам для коду права write.
  2. Дні 1–2: напиши п’ять–десять завдань за контрактом вище. Один результат, межі, перевірка готовності, докази. Залиш їх у Todo. Якщо в тебе вже є завдання в Linear, Jira, Notion чи Trello, спершу імпортуй їх; імпорт безкоштовний на будь-якому тарифі.
  3. Дні 2–5: запусти обох агентів на тій самій черзі Todo, кожного у власному worktree, кожному скажи захоплювати через start_task і завершувати через complete_task з артефактами.
  4. День 5: навмисно перевір збої. Направ обох агентів на ту саму картку й подивися, як один отримає already_claimed. Убий одну сесію посеред завдання й перевір, що через 20 хвилин картка знову вільна.
  5. День 7: проведи аудит лише за дошкою. Чи якесь завдання виконувалося двічі або лишилося в Doing після завершення? Чи міг ти перевірити кожен результат за його артефактами? Виправ шаблон завдання, перш ніж додавати третього агента.

Як це порівнюється з підходом Hypertask?

Модель оренди в Hypertask продумана: захоплення, heartbeat, звільнення, із терміном дії. Різниця в тому, де ця модель живе. Документація Hypertask навмисно описує оренди завдань, докази й ескалацію лише як REST-ендпоінти, а в довіднику інструментів — 21 MCP-інструмент без жодного для оренди (огляд MCP). У Weft захоплення, heartbeat, запитання і звіт — це MCP-інструменти, тож будь-який MCP-клієнт користується ними без додаткового коду.

WeftHypertask
Захоплення і орендаУсередині MCP: start_task, report_progress (оренда на 20 хвилин)Навмисно лише REST-ендпоінти (документація)
MCP-інструменти3221 (документація)
ВхідOAuth у браузері з refresh-токенами; необов’язкові персональні токени доступуЗадокументоване налаштування — скопійований API-ключ, що спливає через 30 днів; підключення з підтвердженням у браузері діє 90 днів без оновлення (документація)
Ідентичність агентаКожен OAuth-клієнт чи токен — окремий виконавецьАгенти як сервісні акаунти з власною ідентичністю
Шлях для ChatGPTОпублікований застосунок у каталозі ChatGPT, будь-який тариф, зокрема FreeCustom GPT з OpenAPI Actions або кастомний конектор у режимі розробника, за даними Hypertask (документація)
CLI і REST APIНемаєCLI в npm і REST API (документація)
Мобільні застосункиiOS і AndroidНемає нативного застосунку для iOS (веб-застосунок на головному екрані); у Google Play немає (документація)
Мови27Лише англійська
Ціна за місцеFree: 50 завдань, 200 ШІ-викликів на місяць. Pro: $7 на місяць або $60 на рікFree: 3 дошки на людину. BYOK $8 при оплаті за рік / $10 помісячно. Pro $16 при оплаті за рік / $20 помісячно (ціни)
ШІ-кредитиНе потрібні: думання відбувається у твоєму власному ШІ-клієнтіВбудований ШІ; тариф BYOK використовує твої власні ключі моделей

Hypertask — кращий вибір, якщо твої агенти працюють зі скриптів чи CI і тобі потрібні CLI та REST API, якщо хочеш агентів як сервісні акаунти, якими керують як користувачами, або якщо потрібен вбудований ШІ (написання завдань, розумні мітки, тріаж), швидкість із клавіатури та облік часу. У Weft немає CLI, REST API і вебхуків, а також інтеграції з GitHub чи Slack. Weft підходить, коли твої агенти — MCP-клієнти, якими ти вже користуєшся, зокрема ChatGPT, і ти хочеш відповідати їм із телефона.

Ширше порівняння — у статтях про порівняння MCP-менеджерів завдань і альтернативу Hypertask.

Чи мають мої агенти спілкуватися між собою?
Ні. Вони координуються через дошку: захоплення, звіти й запитання. Weft ніколи не викликає агента сам; кожен бере наступне завдання через get_my_work.
Чи залишить агент, що впав, завдання застряглим у Doing назавжди?
Ні. Після 20 хвилин без heartbeat запуск позначається як застарілий, і завдання повертається в непризначені, тож його може захопити інший клієнт. Спершу перевір гілку на часткову роботу.
Чи не завалять мене три агенти рев’ю?
Inbox обмежено 5 пунктами для однієї людини (10 для команди) або 45 хвилинами рев’ю; коли він заповнений, агенти не можуть починати нові завдання. Більшість завершених завдань одразу йде в Done.
Чи дорожче запускати кількох агентів?
Weft бере плату за місце, а не за агента: Pro коштує $7 на місяць або $60 на рік за людину. Безкоштовний тариф обмежує ШІ-виклики 200 на місяць, і heartbeat від кількох агентів швидко їх вичерпують. Див. ціни.