Creocode, okTable и остальное...
Я опять перестал писать в блог. Каждый раз говорю себе: «пиши!», а другая моя часть говорит «лень!». В этот раз немного поборю лень.
Наверное, стоит написать про то, что делал, да что происходило... А делал я вот что:
CreoCode (https://creocode.io/)

Сделал небольшой MCP сервер https://creocode.io/ который может легко подключиться почти к любому харнессу и добавляет достаточно неплохой инструмент для планирования (декомпозиция задачи, проставление зависимостей, валидация) и долгосрочной памяти для агентов. Гоняю его уже больше месяца - показывает себя отлично! Вкратце как это работает: при установке MCP сервера и его скилла-компаньона агент получает исчерпывающие инструкции по тому, как правильно планировать большую задачу, как её разбивать на подзадачи и как планировать выполнение этих подзадач:
- Строит из них направленный ацикличный граф (DAG) так, что каждая задача не может быть раньше чем задачи от которых она зависит (топологическая сортировка).

- Затем, агент вызывает метод Next и движок по графу выдаёт очередную задачу у которой либо отсутствуют зависимости или все зависимости удовлетворены. И агент получает полные инструкции что делать и указание что задачу надо делегировать субагенту.
- После того как субагент отчитывается что задачу он выполнил - наступает следующая фаза, валидация. Валидация не абы какая - а по вполне конкретным критериям (DoD) подзадачи. Например, прохождение конкретных тестов.
- При успехе агент снова вызывает Next и так по кругу пока все задачи плана не будут сделаны и провалидированы.
Можно спросить, «а зачем это городить, агент же сам может всё это помнить?» и да и нет. Современные LLM - сильно недетерминированные системы и это не даёт нам гарантий что они будут чётко следовать плану. В то же время инструкции которые LLM получает от CreoCode заставляют модель идти чётко по плану без возможности отступить влево или вправо от него. При этом сам CreoCode - это абсолютно детерминированная система и она гарантированно будет выдавать задачи только в правильном порядке и не даст «срезать углы», как модели иногда любят.
Ну и да, есть долгосрочная память, что на деле агенты регулярно используют и им это помогает.

Кстати, в веб интерфейсе можно в любой момент видеть и план и его состояние и память моделей.
okTable (https://oktable.ru/)
Давно хотел сделать этот проект! Наверное, лет десять уже. И вот он: https://oktable.ru/

Если коротко, это что-то типа AirTable, но я предпочитаю о нём думать, скорее как о развитии идей MS Access.
Что он умеет?
Можно создавать проекты, которыми можно поделиться с другими, а в проектах таблицы, которые уже состоят из произвольного набора полей произвольного типа. Поля могут быть как текстовые, так и числовые, и даже ссылками на записи в других таблицах и даже кнопками!
Забегая немного вперёд, по записям можно искать, их можно сортировать и фильтровать. Причём, фильтры можно сохранять и даже делать общими для всех.



Недавно добавил HTTP кнопки которые позволяют делать произвольный HTTP запрос который формируется на основе данных из записи. Причём ответ от запроса (если он в json) можно смаппить обратно на запись, раскидав по полям.
Например, если предположить, что у нас есть таблица Клиенты и таблица Заказы, то можно легко сделать в таблице заказов кнопку которая при нажатии сделает следующий запрос:
URL: https://api.telegram.org/bot123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11/sendMessage
Content-Type: application/json
{
"chat_id": "{Клиент.TelegramID}",
"text": "Ваш заказ № {Номер}. В статусе {Статус}"
}
И тогда клиенту на Telegram придёт сообщение. Причём автоматически подставится значение поле {Номер} и {Заказ} из текущей записи, а из таблицы Клиенты по связи Клиент подтянется поле TelegramID ({Клиент.TelegramID}). Круто же!
И уже для себя на кнопках я сделал управление светом дома:



На текущий момент есть ещё пара недочётов, но, думаю, на ближайших выходных всё добью и будет уже совсем по красоте!
Остальное
Не могу не думать, в какое же интересное время мы живём! Сейчас путь от задумки до полноценной реализации короток как никогда! И эти мои проекты выше это только подтверждают!
Впереди у меня ещё очень много задумок, так что не теряемся, я буду стараться о них всех писать всё же без промедления! 73!
Комментарии (0)
Войти, чтобы прокомментировать