Как устроен OpenAI Codex Agent?
OpenAI на днях выпустили своего первого агента-разработчика. Идея не нова и экспериментов с подходами и архитектурами было уже довольно много, поэтому интересно какие решения они выберут для своей версии агента.
Удивительно, но основная часть очень простая — никакой хитрой системы планирования, только ризонинг модель и вызовы инструментов (редактирование файлов и выполнение команды в терминале). Никакой хитрой памяти, большого набора инструментов, индексации кода проекта — всё должна тащить модель.
Агента постарались сделать безопасным, дефолтный режим требует подтверждения действий пользователем, есть проверка на редактирование файла вне пути, вайтлист shell команд и сендбокс без интернета.
Спонсор диаграмм — Cursor + Claude 3.7
OpenAI на днях выпустили своего первого агента-разработчика. Идея не нова и экспериментов с подходами и архитектурами было уже довольно много, поэтому интересно какие решения они выберут для своей версии агента.
Удивительно, но основная часть очень простая — никакой хитрой системы планирования, только ризонинг модель и вызовы инструментов (редактирование файлов и выполнение команды в терминале). Никакой хитрой памяти, большого набора инструментов, индексации кода проекта — всё должна тащить модель.
Агента постарались сделать безопасным, дефолтный режим требует подтверждения действий пользователем, есть проверка на редактирование файла вне пути, вайтлист shell команд и сендбокс без интернета.
Спонсор диаграмм — Cursor + Claude 3.7
❤3
Бонус, системный промпт OpenAI Codex (в двух частях):
You are operating as and within the Codex CLI, a terminal-based agentic coding assistant built by OpenAI. It wraps OpenAI models to enable natural language interaction with a local codebase. You are expected to be precise, safe, and helpful.
You can:
*Receive user prompts, project context, and files.
*Stream responses and emit function calls (e.g., shell commands, code edits).
*Apply patches, run commands, and manage user approvals based on policy.
*Work inside a sandboxed, git-backed workspace with rollback support.
*Log telemetry so sessions can be replayed or inspected later.
*More details on your functionality are available at codex --help
The Codex CLI is open-sourced. Don't confuse yourself with the old Codex language model built by OpenAI many moons ago (this is understandably top of mind for you!). Within this context, Codex refers to the open-source agentic coding interface.
You are an agent - please keep going until the user's query is completely resolved, before ending your turn and yielding back to the user. Only terminate your turn when you are sure that the problem is solved. If you are not sure about file content or codebase structure pertaining to the user's request, use your tools to read files and gather the relevant information: do NOT guess or make up an answer.
Please resolve the user's task by editing and testing the code files in your current code execution session. You are a deployed coding agent. Your session allows for you to modify and run code. The repo(s) are already cloned in your working directory, and you must fully solve the problem for your answer to be considered correct.
You MUST adhere to the following criteria when executing the task:
*Working on the repo(s) in the current environment is allowed, even if they are proprietary.
*Analyzing code for vulnerabilities is allowed.
*Showing user code and tool call details is allowed.
*User instructions may overwrite the CODING GUIDELINES section in this developer message.
*Use apply_patch to edit files: {"cmd":["apply_patch","*** Begin Patch\n*** Update File: path/to/file.py\n@@ def example():\n- pass\n+ return 123\n*** End Patch"]}
*If completing the user's task requires writing or modifying files:
** Your code and final answer should follow these CODING GUIDELINES:
*** Fix the problem at the root cause rather than applying surface-level patches, when possible.
*** Avoid unneeded complexity in your solution.
***Ignore unrelated bugs or broken tests; it is not your responsibility to fix them.
***Update documentation as necessary.
***Keep changes consistent with the style of the existing codebase. Changes should be minimal and focused on the task.
****Use git log and git blame to search the history of the codebase if additional context is required; internet access is disabled.
***NEVER add copyright or license headers unless specifically requested.
***You do not need to git commit your changes; this will be done automatically for you.
***If there is a .pre-commit-config.yaml, use pre-commit run --files ... to check that your changes pass the pre-commit checks. However, do not fix pre-existing errors on lines you didn't touch.
****If pre-commit doesn't work after a few retries, politely inform the user that the pre-commit setup is broken.
***Once you finish coding, you must
****Check git status to sanity check your changes; revert any scratch files or changes.
****Remove all inline comments you added much as possible, even if they look normal. Check using git diff. Inline comments must be generally avoided, unless active maintainers of the repo, after long careful study of the code and the issue, will still misinterpret the code without the comments.
****Check if you accidentally add copyright or license headers. If so, remove them.
****Try to run pre-commit if it is available.
****For smaller tasks, describe in brief bullet points
****For more complex tasks, include brief high-level denoscription, use bullet points, and include details that would be relevant to a code reviewer.
❤2
Системный промпт, часть 2.
*If completing the user's task DOES NOT require writing or modifying files (e.g., the user asks a question about the code base):
Respond in a friendly tune as a remote teammate, who is knowledgeable, capable and eager to help with coding.
When your task involves writing or modifying files:
**Do NOT tell the user to "save the file" or "copy the code into a file" if you already created or modified the file using apply_patch. Instead, reference the file as already saved.
**Do NOT show the full contents of large files you have already written, unless the user explicitly asks for them.
❤2
Ссылки за неделю: Scientific Edition 🧬
🔗 Research Gap Map
Convergent Research собрали карту ключевых барьеров для ускорения в каждом из крупных научных направлений.
Пост с описанием.
🔗Focused Research Organization (FRO)
Формат организации похожих на научный стартап — с чёткой целью на 3-7 лет, финансированием, гибкие и автономные.
Список FROs, основанных с помощью Convergent Research.
Каталог открытых научных программ DARPA и IARPA
Оказывается можно посмотреть открытый список исследований самых амбициозных (и возможно одних из самых эффективных) научно-исследовательских организаций мира. Сложно сказать, какой список интереснее, с текущими или закрытыми проектами.
🔗DARPA's List of Programs
🔗IARPA's List of Programs
🔗Research Leader's Playbook
Кто такие Research Leaders и как успешно запустить, вести и завершить научную программу.
🔗 Research Gap Map
Convergent Research собрали карту ключевых барьеров для ускорения в каждом из крупных научных направлений.
Пост с описанием.
🔗Focused Research Organization (FRO)
Формат организации похожих на научный стартап — с чёткой целью на 3-7 лет, финансированием, гибкие и автономные.
Список FROs, основанных с помощью Convergent Research.
Каталог открытых научных программ DARPA и IARPA
Оказывается можно посмотреть открытый список исследований самых амбициозных (и возможно одних из самых эффективных) научно-исследовательских организаций мира. Сложно сказать, какой список интереснее, с текущими или закрытыми проектами.
🔗DARPA's List of Programs
🔗IARPA's List of Programs
🔗Research Leader's Playbook
Кто такие Research Leaders и как успешно запустить, вести и завершить научную программу.
❤4
Life updates: у админа канала начался саббатикал.
Я ушёл из Авиасейлс и некоторое время планирую отдыхать. Уже придумал себе несколько проектов, буду рассказывать о них здесь.
Надо переименовать канал в «Макс пробует»
Я ушёл из Авиасейлс и некоторое время планирую отдыхать. Уже придумал себе несколько проектов, буду рассказывать о них здесь.
Надо переименовать канал в «Макс пробует»
🔥8😁2💯2
На прошлой неделе пришёл комплект SO-100 Arm. Это робо-рука от HuggingFace, с моделями из LeRobot её можно научить выполнять простые задания, типа сортировки предметов в зоне видимости. Буду потихоньку собирать и разбираться.
🔥1
Я не сидел сложа робо-руки (извините). Прошёл почти месяц, можно и продолжение написать.
SO-100 это набор для нежного погружения в мир робототехники. Всё продумано, туториалы есть, бери и делай. Ну, или так кажется
Для демо выбираем простую задачу, например, научить руку класть блок лего в коробку. Порядок шагов выглядит так:
1. Собираем руку-leader и руку-follower
2. Подключаем к компу и калибрируем все моторы
3. Записываем датасет из раз за разом успешно выполненных задач
4. Файнтюним на нём базовую нейройнку
5. Профит! Если не профит, повторяем шаги 3-4.
С первой сложностью я столкнулся сразу после калибровки. Попытавшись управлять ведомой рукой с клавиатуры (я опрометчиво оставил ноут в зоне её досягаемости и она чуть не столкнула его со стола), я услышал как один из моторов жужжит громче чем нужно. Сделать что-то я не успел: жужжание прекратилось, но зато появилась струйка дыма и запах гари🧑🚒
Тогда я понял, что игнорировать сообщения о том, что температура одного из моторов высоковата (60 градусов), вероятно не стоило.
Жду новый мотор.
PS. Скорее всего дело в том, что я неправильно собрал тот сустав. Но это не точно. Поэтому заказал 2 мотора на всякий случай.
SO-100 это набор для нежного погружения в мир робототехники. Всё продумано, туториалы есть, бери и делай. Ну, или так кажется
Для демо выбираем простую задачу, например, научить руку класть блок лего в коробку. Порядок шагов выглядит так:
1. Собираем руку-leader и руку-follower
2. Подключаем к компу и калибрируем все моторы
3. Записываем датасет из раз за разом успешно выполненных задач
4. Файнтюним на нём базовую нейройнку
5. Профит! Если не профит, повторяем шаги 3-4.
С первой сложностью я столкнулся сразу после калибровки. Попытавшись управлять ведомой рукой с клавиатуры (я опрометчиво оставил ноут в зоне её досягаемости и она чуть не столкнула его со стола), я услышал как один из моторов жужжит громче чем нужно. Сделать что-то я не успел: жужжание прекратилось, но зато появилась струйка дыма и запах гари
Тогда я понял, что игнорировать сообщения о том, что температура одного из моторов высоковата (60 градусов), вероятно не стоило.
Жду новый мотор.
PS. Скорее всего дело в том, что я неправильно собрал тот сустав. Но это не точно. Поэтому заказал 2 мотора на всякий случай.
Please open Telegram to view this post
VIEW IN TELEGRAM
🤩4🔥2😱1
Я люблю покер и много копаюсь с моделями. Идея проекта родилась сама собой.
PokerBattle – сайт, где можно следить как разные LLM-ки играют в покер между собой. Целевое состояние — 7-дневный ивент где 6 разных сеток играют в кэш между собой, с возможностью смотреть игру в прямом эфире и историю раздач.
Задача мега нетривиальная. Я не разработчик, поэтому главный риск здесь это смогу ли я, обложившись разными AI-инструментами, довести идею до прода.
Если в двух словах, архитектура выглядит так:
* Сервер на питоне, управляет игровой сессией, столами и раздачами. Питон, потому что на нём написан единственный покерный движок PokerKit.
* Данные о живых раздачах и история раздач, статистика игроков хранятся в Supabase
* Фронтенд на Next.js в Vercel
Итоги первой недели:
* Выбраны все технологии, собран проект
* Есть архитектура проекта
* Готова база данных и слой для работы с ней
==== В процессе ====
* Логика ведения и сохранения раздачи
Рассчитываю сделать проект за месяц. Скоро напишу выводы из моего опыта вайб-кодинга.
PokerBattle – сайт, где можно следить как разные LLM-ки играют в покер между собой. Целевое состояние — 7-дневный ивент где 6 разных сеток играют в кэш между собой, с возможностью смотреть игру в прямом эфире и историю раздач.
Задача мега нетривиальная. Я не разработчик, поэтому главный риск здесь это смогу ли я, обложившись разными AI-инструментами, довести идею до прода.
Если в двух словах, архитектура выглядит так:
* Сервер на питоне, управляет игровой сессией, столами и раздачами. Питон, потому что на нём написан единственный покерный движок PokerKit.
* Данные о живых раздачах и история раздач, статистика игроков хранятся в Supabase
* Фронтенд на Next.js в Vercel
Итоги первой недели:
* Выбраны все технологии, собран проект
* Есть архитектура проекта
* Готова база данных и слой для работы с ней
==== В процессе ====
* Логика ведения и сохранения раздачи
Рассчитываю сделать проект за месяц. Скоро напишу выводы из моего опыта вайб-кодинга.
❤5🔥4
Poker Battle: прогресс за вторую неделю.
* Есть бэкэнд, на котором можно запустить покерный стол и вводить действия игроков вручную. Покерная логика полностью работает.
* Есть база данных, в которой сохраняются состояния стола. Supabase умеет создавать топики, по которым можно подписаться на изменения в БД. Это тоже настроено (больше всего времени заняло разбирательство как настроить такой механизм для неавторизованных пользователей)
* Есть фронтенд, который подписывается на обновления таблицы и показывает всё что происходит на бэкэнде.
То есть уже можно смотреть на вебе раздачи.
Следующие шаги:
* Подключить LLM-игроков
* Сделать остальной интерфейс сайта
* Сделать подсчёт статистики и графики
* Сделать раздел с историей раздач
Неплохо идёт.
* Есть бэкэнд, на котором можно запустить покерный стол и вводить действия игроков вручную. Покерная логика полностью работает.
* Есть база данных, в которой сохраняются состояния стола. Supabase умеет создавать топики, по которым можно подписаться на изменения в БД. Это тоже настроено (больше всего времени заняло разбирательство как настроить такой механизм для неавторизованных пользователей)
* Есть фронтенд, который подписывается на обновления таблицы и показывает всё что происходит на бэкэнде.
То есть уже можно смотреть на вебе раздачи.
Следующие шаги:
* Подключить LLM-игроков
* Сделать остальной интерфейс сайта
* Сделать подсчёт статистики и графики
* Сделать раздел с историей раздач
Неплохо идёт.
🔥5
Poker Battle. Прогресс за третью, четвёртую и пятую недели.
Надеюсь ни у кого не осталось сомнений, что я не буду регулярно писать в канал ))
По ощущениям проект готов процентов на 80%. Значит, остались последние 80%.
Что готово:
* LLM-игроки
* Заметки игроков друг на друга
* Лог событий за столом
* Статистика сессии
* Поддержка нескольких столов
Осталось сделать всё сложить в красивый интерфейс для просмотра.
Тем не менее я определился с датой старта — 27 октября. Оставшийся месяц я потрачу на доделки, тесты и промо.
Сегодня сделал лендинг: https://www.pokerbattle.ai/
Если у вас есть контакты людей из AI или покер related компаний, которые могли бы стать спонсорами, делитесь :)
Надеюсь ни у кого не осталось сомнений, что я не буду регулярно писать в канал ))
По ощущениям проект готов процентов на 80%. Значит, остались последние 80%.
Что готово:
* LLM-игроки
* Заметки игроков друг на друга
* Лог событий за столом
* Статистика сессии
* Поддержка нескольких столов
Осталось сделать всё сложить в красивый интерфейс для просмотра.
Тем не менее я определился с датой старта — 27 октября. Оставшийся месяц я потрачу на доделки, тесты и промо.
Сегодня сделал лендинг: https://www.pokerbattle.ai/
Если у вас есть контакты людей из AI или покер related компаний, которые могли бы стать спонсорами, делитесь :)
PokerBattle.ai
PokerBattle.ai — The first-ever cash poker tournament for LLMs
A week-long showdown where AI models play Texas Hold'em 24/7. Starts October 27.
🔥11😁1
Запостил на HN, поддержите лайком, пожалуйста!
https://news.ycombinator.com/item?id=45357321
Нужно залогиниться и поставить апвоут ❤️
https://news.ycombinator.com/item?id=45357321
Нужно залогиниться и поставить апвоут ❤️
❤9
PokerBattle. Что случилось на прошлой неделе.
Главный итог (благодаря вам❤ ) — за прошлую неделю на лендинге побывало 470 человек.
— Больше всего трафика пришло из телеги
— r/poker дал немного трафика
— К постам на HN надо готовиться лучше (знал ли я об этом? да)
— Люди не подписываются на твиттер, чтобы следить за датами
На этой неделе займусь аутричем разных покерных и AI/DL сми, комьюнити, блогеров, рассылок, стримеров и тд.
И сделаю контентный план для реддита, нескольких комьюнити и твиттера.
Из интересного:
— Получил одно письмо про спонсорство. Посмотрим, чем закончится.
— Запитчил проект основателю конфы AI.engineer на мероприятии в Париже. Говорит, забавный проект, keep going. Это вообще была самая популярная реакция на мой питч.
Главный итог (благодаря вам
— Больше всего трафика пришло из телеги
— r/poker дал немного трафика
— К постам на HN надо готовиться лучше (знал ли я об этом? да)
— Люди не подписываются на твиттер, чтобы следить за датами
На этой неделе займусь аутричем разных покерных и AI/DL сми, комьюнити, блогеров, рассылок, стримеров и тд.
И сделаю контентный план для реддита, нескольких комьюнити и твиттера.
Из интересного:
— Получил одно письмо про спонсорство. Посмотрим, чем закончится.
— Запитчил проект основателю конфы AI.engineer на мероприятии в Париже. Говорит, забавный проект, keep going. Это вообще была самая популярная реакция на мой питч.
Please open Telegram to view this post
VIEW IN TELEGRAM
🎉11❤7⚡5
Poker Battle: остался 21 день до старта
За прошлую неделю случился аутрич в покерные сми и комьюнити. Впрочем, достаточно ленивый и не слишком масштабный — списки за меня собирал ChatGPT.
В результате у меня взял интервью Adam Hampton из Poker.org
Остальное:
* Сделал просмотр истории раздач
* Скоро расскажу про итоговый список моделей-участников
* Готовлюсь к деплою бекенда и тестовому прогону
За прошлую неделю случился аутрич в покерные сми и комьюнити. Впрочем, достаточно ленивый и не слишком масштабный — списки за меня собирал ChatGPT.
В результате у меня взял интервью Adam Hampton из Poker.org
Остальное:
* Сделал просмотр истории раздач
* Скоро расскажу про итоговый список моделей-участников
* Готовлюсь к деплою бекенда и тестовому прогону
🔥15👍4
Ну что, поехали. Турнир начинается :)
С текущего момента до вечера пятницы 9 LLM-игроков будут играть в покер за 4 столами.
Смотреть здесь: pokerbattle.ai
С текущего момента до вечера пятницы 9 LLM-игроков будут играть в покер за 4 столами.
Смотреть здесь: pokerbattle.ai
PokerBattle.ai
PokerBattle.ai — The first-ever cash poker tournament for LLMs
A week-long showdown where AI models play Texas Hold'em 24/7. Starts October 27.
258🔥21❤5👍5🎉1
Мы на первом месте на HackerNews 👍
Помогите удержаться, заходите голосовать и комментировать.
Теперь я знаю секрет успеха HN:кто-то без твоего ведома должен тебя запостить, много людей поставить апвоут, а в комментах обсуждать в чём минусы проекта. C вас $100.
Помогите удержаться, заходите голосовать и комментировать.
Теперь я знаю секрет успеха HN:
Please open Telegram to view this post
VIEW IN TELEGRAM
124👍13🔥11👏3🎉1