Продукти · У продакшні з 2025
Dev13 Systems
Операційна система, на якій працює агенція, з ШІ всередині даних, а не прикрученим збоку. Від CRM до грошей — компанії, угоди, комерційні пропозиції, договори — далі власний модуль проєктів із завданнями, циклами й обліком часу, HRM і зарплатні записи, багатовалютні фінанси на базі каталогу послуг, а також LMS, рекрутинг, OKR, вікі та клієнтський портал. Двадцять п’ять спеціалізованих агентів — продажі, доставка, інженерія, маркетинг, кадри й внутрішні операції — працюють над тим самим сховищем, обмеженим областю організації, тож агент відповідає з власних клієнтів, проєктів і документів агенції, а не з чату, який нічого про неї не знає.
Що було технічно складним
Двадцять п’ять агентів читають одну базу знань, і жоден не може зазирнути за межу тенанта. Пошук обмежений на рівні запиту — організація є аргументом пошуку, а не фільтром, накладеним на результати потім, — а ізоляція ще раз підкріплена знизу row-level security в Postgres, бо фільтр, про який ви забули, — це витік даних, і друга лінія має тримати, коли перша помиляється. Гроші ускладнили справу ще більше: кожна сума — це об’єкт-значення зі своєю валютою й курсом, зафіксованим у момент транзакції, тож цифра лишається вірною дню, коли її записали, а не сьогоднішньому курсу.
Як це побудовано
Django 5.2 і DRF на PostgreSQL 17 із pgvector, row-level security для ізоляції тенантів, Celery для асинхронної роботи, React і TypeScript на фронтенді, деплой через Docker Compose за Caddy. Агенти працюють через MCP у Claude, і кожен запуск фіксує свої виклики інструментів і дає результат, який лишається чернеткою, доки хтось його не опублікує. Ембединги генеруються власним ключем OpenAI кожної організації, а не спільним ключем платформи, тож дані жодного тенанта не проходять через облікові дані, якими користується ще хтось.
Одне рішення, і чому
Рядки рахунків і комерційних пропозицій зберігають назву й ставку послуги на момент виставлення. Очевидний дизайн — посилатися на запис каталогу й читати ставку через нього, і це нормально рівно до того моменту, як хтось змінить прайс — і кожен історичний рахунок тихо зміниться разом із ним. Знімок коштує дублювання даних і повільнішої відповіді на питання «скільки ми беремо зараз»; він купує документи, які досі кажуть те, що казали, коли клієнт їх підписав.
Будуєте щось у Dev Tech?
Ті самі режими відмов — і що ми з ними робимо у вашому домені.
$ розкажіть, що ви будуєте і де застрягли
Забронювати 30-хв дзвінок
Відповідаємо протягом одного робочого дня.