Привет. У меня есть готовый starter для Codex. Он поможет Codex подробно разобраться в проекте, записать правила работы и продолжать разработку в новых чатах без повторения одного и того же.
Один полный starterНовый или уже работающий проектСначала вопросы, потом изменения
Starter лежит в открытом репозитории на GitHub
Репозиторий - это папка проекта на GitHub. Открытый репозиторий может посмотреть любой человек.
В публичный репозиторий GitHub нельзя добавлять пароли, API-ключи, токены, данные клиентов и файлы .env.
.env - это специальный файл, в котором программы часто хранят пароли, API-ключи и другие секретные настройки.
Что нужно делать:
хранить настоящий .env только на своем компьютере или в защищенном сервисе;
добавить .env и похожие файлы в .gitignore;
если нужен пример, использовать .env.example только с названиями переменных, но без настоящих значений;
запретить Codex читать, печатать, копировать, сохранять и отправлять значения секретов;
если секрет случайно попал в GitHub, сразу заменить его новым.
Этот запрет уже добавлен во все prompts ниже. Здесь я просто расписал это для тебя, чтобы было понятно, зачем он нужен. Если что-то осталось непонятным, задай вопрос перед началом работы.
Зачем это нужно
Что starter сделает для тебя
Он не меняет продукт сам по себе. Сначала он собирает информацию и наводит порядок для дальнейшей разработки.
1
Разберется в проекте
Спросит, что ты делаешь, для кого, какую проблему решаешь, что уже работает и что нужно сделать дальше.
2
Зафиксирует правила
Запишет, как запускать проект, какие файлы являются главными, какие проверки выполнять и что нельзя делать без разрешения.
3
Проверит безопасность
Проверит, что секреты не попадут в Git, существующие файлы не будут затерты, а опасные действия не выполнятся молча.
Выбери один путь
Новый проект или уже работающий
Если начинаешь с нуля, используй первый prompt. Если код уже существует и работает, используй второй prompt.
Вариант 1. Новый проект
Ты создаешь новую пустую папку, открываешь ее в Codex и вставляешь prompt для полного развертывания starter.
Вариант 2. Уже работающий проект
Ты открываешь папку своего проекта в Codex. Starter используется только как образец и не заменяет существующие файлы.
Вариант 1
Если создаешь новый проект
Сначала открой новую пустую папку. Путь внутрь prompt вставлять не нужно: Codex сам увидит папку, в которой запущен.
Создай новую пустую папку на компьютере и назови ее именем проекта.
Открой именно эту папку в Codex. В приложении выбери открытие папки. В терминале перейди в нее командой cd и запусти codex.
Опиши проект в одном или нескольких предложениях внутри prompt ниже.
Скопируй prompt целиком, вставь его в Codex и отвечай на вопросы по одному.
Новый проект - полная настройка
Привет. Я открыл в Codex новую пустую папку. Нужно развернуть в ней и полностью настроить Codex Starter.
Официальный starter:
https://github.com/maximsamus/codex-starter
Описание моего проекта:
[НАПИШИ ЗДЕСЬ, ЧТО ЭТО ЗА ПРОЕКТ, ДЛЯ КОГО ОН И ЧТО ДОЛЖЕН ДЕЛАТЬ]
Работай строго по шагам.
Шаг 1. Проверь открытую папку.
1. Покажи текущую рабочую папку.
2. Проверь, что в ней нет моих существующих файлов.
3. Если папка не пустая, ничего не копируй и не заменяй. Остановись, покажи найденные пути и спроси меня, что делать.
4. Не удаляй и не перезаписывай файлы.
5. Не меняй Git remote, не делай commit, push или deploy без моего отдельного разрешения.
Шаг 2. Защити секреты.
1. Никогда не читай, не печатай, не копируй и не отправляй значения из .env, .env.local, файлов ключей, токенов и других секретов.
2. Можно проверить только наличие файла и названия переменных без значений.
3. Убедись, что .env, .env.local, .env.*.local, *.pem и *.key добавлены в .gitignore.
4. Если нужен пример настроек, используй .env.example только с названиями переменных и пустыми или безопасными примерными значениями.
5. Если заметишь секрет в отслеживаемом файле, не повторяй его. Остановись и предупреди меня.
Шаг 3. Разверни starter.
1. Создай временную папку вне моего проекта командой mktemp -d.
2. Клонируй официальный starter только во временную папку.
3. Скопируй из временной папки содержимое starter в открытую пустую папку, но обязательно исключи папку .git.
4. Не удаляй временную папку без моего отдельного разрешения.
5. Проверь, что папка .git от starter не попала в мой проект и мой проект не связан с GitHub starter.
6. Если мой проект еще не подключен к Git, ничего не подключай автоматически. Объясни, что такое Git, и отдельно спроси разрешение на команду git init -b main.
7. Не создавай репозиторий GitHub и не добавляй Git remote без моего отдельного разрешения.
8. Никогда не используй адрес официального starter как Git remote моего проекта.
9. Покажи текущую ветку, git status и git remote, только если Git уже подключен.
10. Объясни простыми словами, что будет происходить дальше.
Шаг 4. Проведи полное интервью.
1. Работай по AUTOPILOT.md и используй настройку deep.
2. Задавай только один вопрос за раз.
3. Не спрашивай то, что уже есть в описании проекта или моих ответах.
4. Используй разделы deep как подсказку, а не как обязательную анкету.
5. Задай не больше семи вопросов. Один вопрос может коротко объединять близкие темы.
6. Спрашивай только о том, что действительно относится к моему проекту:
- цель проекта, пользователь и его проблема;
- что должно работать сначала и что оставляем на потом;
- как проект устроен, запускается и проверяется;
- пользователи, роли, данные и доступ к ним;
- платежи и внешние сервисы, если они нужны;
- публикация и безопасность;
- важные показатели, уже принятые решения и следующий шаг.
7. Если тема не относится к проекту, запиши "не применимо" и не расспрашивай о ней.
8. Не придумывай ответы за меня.
9. Если ответ неполный, задай уточнение только вместо следующего вопроса, не увеличивая предел в семь вопросов.
10. Отделяй подтвержденные факты от предположений и вопросов на потом.
Шаг 5. Заполни starter.
1. Создавай только те файлы, которые нужны этому проекту.
2. Перед заменой AGENTS.md и PROJECT_STATE.md покажи мне, что именно изменится, и дождись подтверждения.
3. Не записывай секреты и закрытые данные в файлы Git.
4. Не делай commit и push.
Шаг 6. Проверь результат.
1. Перечитай созданные файлы.
2. Найди пустые разделы, противоречия, догадки и вопросы без ответа.
3. Задай не больше трех оставшихся вопросов, по одному. После третьего перечисли остальные открытые вопросы и остановись.
4. Проверь, что новый чат сможет понять проект без чтения всех файлов.
5. Запусти безопасные проверки starter и проверки проекта, если они уже появились.
6. Покажи git status и список измененных файлов.
7. Подтверди, что ничего не удалено, секреты не раскрыты, commit и push не выполнялись.
8. Отдельно скажи, подключены ли Git и мой GitHub. Если я не давал разрешения, они должны остаться неподключенными.
В конце дай простой итог:
- что настроено;
- какие вопросы остались;
- какие файлы созданы или изменены;
- как начать следующую сессию;
- какой один следующий шаг.
Что будет по итогам
starter будет развернут в новой папке;
Codex задаст вопросы по одному и заполнит информацию о проекте;
будут записаны правила запуска, разработки, проверки и безопасности;
появится понятная текущая задача и следующий шаг;
секреты не попадут в Git, а Git, GitHub, commit и push не будут подключены или выполнены без разрешения.
Вариант 2
Если проект уже работает
Открой папку существующего проекта. Не клонируй starter внутрь нее вручную и не копируй файлы поверх проекта.
Открой папку своего проекта в Codex. Убедись, что видишь настоящий рабочий код.
Проверь, что проект открывается и работает так же, как до подключения starter.
Проверь, что проект вообще сохраняется в Git. Если папка еще не под Git или в репозитории нет ни одного commit, возвращаться будет некуда. Сначала сделай первый commit со всем проектом как есть и только потом иди дальше.
Сохрани текущую рабочую версию. Попроси Codex проверить список файлов и секреты, затем сделать контрольные commit и push в твой GitHub. После этого при ошибке можно будет вернуться к рабочей версии.
Убедись, что сохранение прошло. Codex должен показать чистый git status, последний commit и правильный адрес твоего репозитория GitHub.
Опиши проект внутри prompt ниже, даже если в проекте уже есть README.
Скопируй prompt целиком, вставь его в Codex и сначала дождись плана подключения.
Работающий проект - подключить starter без потери файлов
Привет. Я открыл в Codex папку уже работающего проекта. Нужно аккуратно добавить в него полезную структуру Codex Starter, не сломав и не затерев ничего существующего.
Официальный starter:
https://github.com/maximsamus/codex-starter
Описание моего проекта:
[НАПИШИ ЗДЕСЬ, ЧТО ЭТО ЗА ПРОЕКТ, ДЛЯ КОГО ОН, ЧТО УЖЕ РАБОТАЕТ И ЧТО ТЫ ХОЧЕШЬ ДЕЛАТЬ ДАЛЬШЕ]
Главное правило:
Существующий проект является главным. Starter является только образцом. Нельзя заменять проект файлами starter целиком.
Какой результат нужен:
1. Нужна полная настройка starter в режиме deep, а не сокращенная версия.
2. Не предлагай мне выбирать между lite, standard, minimal и deep. Выбор уже сделан: используй deep.
3. Полная настройка означает: правила проекта, короткое текущее состояние, подробный контекст проекта, планы работы, проверки, безопасность, сохранение итогов сессий и понятный следующий шаг.
4. Полная настройка не означает копирование всего репозитория starter. Не переноси примеры, историю разработки starter, служебные файлы автора и другие файлы, которые не нужны моему проекту.
5. Сначала покажи безопасный пофайловый план полной настройки. Ничего не меняй до моего явного подтверждения.
Жесткие запреты:
1. Не удаляй файлы и каталоги.
2. Не перезаписывай существующие файлы.
3. Не переименовывай и не перемещай существующие файлы.
4. Не выполняй git reset, git clean, git checkout для отката, git restore, rm и массовое копирование поверх проекта.
5. Не меняй package.json, lock-файлы, зависимости, миграции, сборку, CI, deploy и рабочий код до отдельного согласования.
6. Не меняй Git remote, ветку и историю.
7. Не делай commit, push или deploy, кроме одного контрольного commit и push на Этапе 0 после моего отдельного подтверждения.
8. Не трогай изменения, которые существовали до начала этой задачи.
9. Если есть сомнение или конфликт, остановись и спроси.
Защита секретов:
1. Никогда не читай, не печатай, не копируй и не отправляй значения из .env, .env.local, файлов ключей, токенов и других секретов.
2. Можно проверить только наличие файла и названия переменных без значений.
3. Проверь, что .env, .env.local, .env.*.local, *.pem и *.key игнорируются Git.
4. Если нужен .env.example, он может содержать только названия переменных и пустые или безопасные примерные значения.
5. Если заметишь секрет в отслеживаемом файле, не повторяй его. Остановись и предупреди меня.
Работай по этапам.
Этап 0. Сначала создай точку возврата.
1. Пока ничего не меняй в файлах проекта.
2. Покажи git status --short --branch и Git remote без токенов и секретов.
3. Выполни git log --oneline -1 и покажи результат. Если папка не под Git или в репозитории еще нет ни одного commit, остановись прямо здесь. Скажи об этом простыми словами и объясни, что сейчас вернуться к прошлому состоянию невозможно. Дальше не иди, пока мы не создадим первый commit со всем проектом как есть.
4. Убедись, что remote ведет в мой репозиторий GitHub, а не в репозиторий starter. Если remote отсутствует или ведет не туда, остановись и помоги мне безопасно подключить мой GitHub. Ничего не меняй без моего подтверждения.
5. Проверь, что .env, .env.local, .env.*.local, *.pem и *.key не попадут в Git. Не открывай и не показывай их содержимое.
6. Покажи точный список всех текущих изменений, которые предлагаешь сохранить. Не используй git add . и не добавляй секреты.
7. Спроси отдельное разрешение на контрольные commit и push.
8. Только после моего подтверждения добавь перечисленные безопасные файлы по именам, создай commit с понятным названием и отправь текущую ветку в мой GitHub.
9. Если commit или push не получился, остановись. Не начинай подключение starter.
10. После успешного push покажи чистый git status, последний commit и адрес remote.
11. Считай Этап 0 пройденным только тогда, когда git log --oneline -1 показывает настоящий commit и push прошел успешно. Если хотя бы одно из этого не выполнено, ты не имеешь права переходить к следующим этапам, даже если я тороплю. Вместо этого скажи, чего именно не хватает.
12. Только после этого переходи к Этапу 1.
Этап 1. Сначала только изучение.
1. Покажи текущую папку, корень Git, ветку и git status --short --branch.
2. Покажи Git remote без токенов и секретов.
3. Если есть незакоммиченные изменения, перечисли только пути. Не меняй эти файлы.
4. Изучи структуру проекта, README, существующие AGENTS.md, документацию, тестовые команды и основные настройки.
5. Не читай .env и другие секретные файлы.
6. Получи starter в отдельную временную или соседнюю папку вне рабочего проекта.
7. Никогда не клонируй starter внутрь рабочего проекта и не копируй его целиком поверх проекта.
8. Прочитай в starter файл prompts/methodology/import-existing-project.md и используй его как инструкцию.
9. Составь понятную таблицу:
- что уже есть в проекте;
- что предлагает starter;
- где совпадают имена файлов;
- что нужно оставить без изменений;
- что можно добавить;
- что придется аккуратно объединять.
10. Покажи план подключения по каждому файлу.
11. Остановись. Не меняй ни одного файла, пока я явно не подтвержу план.
Этап 2. После моего подтверждения проведи полное интервью.
1. Задавай один вопрос за раз.
2. Сначала собери пробелы, которые уже нашел при изучении проекта и по инструкции import-existing-project.md.
3. Не повторяй вопросы, на которые уже отвечают код, README, документация или мое описание.
4. Используй разделы deep как подсказку, а не как обязательную анкету.
5. Задай не больше семи вопросов. Спрашивай только о важных пробелах для этого проекта.
6. Один короткий вопрос может объединять близкие темы: цель и пользователь; ближайшая версия; запуск и проверки; роли и данные; платежи и внешние сервисы; публикация и безопасность; решения и следующий шаг.
7. Если тема не относится к проекту, запиши "не применимо" и не задавай о ней дополнительные вопросы.
8. Не придумывай ответы.
9. Если ответ неполный, уточнение считается одним из семи вопросов.
10. После седьмого вопроса покажи оставшиеся неизвестные и останови интервью.
11. Отделяй подтвержденные факты от предположений и открытых вопросов.
Этап 3. После отдельного подтверждения аккуратно добавь структуру.
1. Добавляй только согласованные новые файлы.
2. Используй только те имена файлов и папок, которые действительно есть в starter: AGENTS.md, PROJECT_STATE.md, AUTOPILOT.md, plans, retrospectives и остальные из его структуры. Не придумывай вместо них свои названия документов и не заменяй ими файлы starter.
3. Если AGENTS.md уже существует, не заменяй его. Сохрани действующие правила и предложи только точечные дополнения.
4. Если PROJECT_STATE.md или похожий файл уже существует, не заменяй его. Сначала предложи объединенную версию и покажи разницу.
5. Перед изменением любого уже существующего файла сначала покажи мне его текущее содержимое и то, что предлагаешь получить. Полная перезапись существующего файла запрещена, даже если новая версия кажется тебе лучше и короче.
6. Если .gitignore уже существует, только добавь недостающие безопасные строки. Не удаляй существующие правила.
7. Не заменяй README, документацию, настройки, scripts, hooks и GitHub workflows.
8. Не создавай дубликаты файлов с той же задачей.
9. Сохраняй стиль, язык и структуру существующего проекта.
10. После каждого небольшого изменения показывай, что изменено.
Этап 4. Проверь результат.
1. Покажи git status --short и git diff --name-status.
2. Если git diff не показывает ничего, а файлы ты создавал или менял, значит они еще не сохранены в Git. Скажи об этом прямо и не выдавай пустой diff за отсутствие изменений.
3. В списке не должно быть удаленных файлов. Если есть статус D, остановись.
4. Сравни текущий Git remote с тем, что был до начала. Он не должен измениться.
5. Подтверди, что исходные изменения проекта не были затронуты.
6. Запусти существующие тесты, проверку кода и сборку, если команды безопасны и известны.
7. Перечитай добавленную структуру и найди пустые места, противоречия и догадки.
8. Задай оставшиеся вопросы по одному.
9. Проверь, что новый чат сможет понять текущую задачу без чтения всего проекта.
10. Не делай commit, push или deploy.
В конце дай простой отчет:
- какой контрольный commit создан до подключения starter и в какой GitHub он отправлен;
- что было в проекте до начала;
- что добавлено;
- какие существующие файлы точечно дополнены;
- что намеренно не трогалось;
- какие проверки прошли;
- что не проверялось;
- какие вопросы остались;
- какой следующий шаг.
Что будет по итогам
до подключения starter появится сохраненная рабочая версия, к которой можно вернуться;
если такой версии нет, Codex остановится и скажет об этом, вместо того чтобы менять файлы вслепую;
существующий код и файлы останутся на месте;
Codex сначала покажет план подключения и дождется разрешения;
после подтверждения Codex задаст вопросы по одному;
starter будет добавлен точечно, без замены проекта целиком;
будет видно, что добавлено, что не трогалось и какие проверки прошли.
После настройки
Финальная проверка заполнения
Используй этот prompt после любого из двух вариантов. Он ничего не меняет сразу: сначала проверяет заполнение и задает недостающие вопросы.
Скопируй prompt финальной проверки после завершения настройки starter.
Codex проверит заполнение и разделит факты, догадки и неизвестное.
Ответь на вопросы по одному. Codex не должен придумывать ответы за тебя.
Подтверди предлагаемые правки только после того, как увидишь их список.
Проверить качество заполнения starter
Проверь качество и полноту заполнения Codex Starter в этом проекте.
Сначала ничего не меняй.
Защита секретов:
1. Никогда не читай, не печатай, не копируй и не отправляй значения из .env, .env.local, файлов ключей, токенов и других секретов.
2. Можно проверить только наличие файлов и названия переменных без значений.
3. Если заметишь секрет в отслеживаемом файле, не повторяй его. Остановись и предупреди меня.
4. Не делай commit, push или deploy.
Проверка:
1. Прочитай AGENTS.md, PROJECT_STATE.md и только те файлы с описанием проекта, на которые они ссылаются.
2. Объясни простыми словами, что ты понял о проекте.
3. Найди пустые разделы, противоречия, догадки и важные вопросы без ответа.
4. Отдельно перечисли:
- подтвержденные факты;
- предположения;
- неизвестное;
- решения, которые должен принять владелец.
5. Проверь только относящиеся к этому проекту темы. Не требуй заполнить разделы, которые честно отмечены как "не применимо".
6. Проверь, записано ли:
- что это за проект;
- кто его пользователь;
- какую проблему он решает;
- что уже работает;
- что делаем сейчас;
- что делаем потом;
- как запускать проект;
- как запускать тесты и другие проверки;
- где лежат главные файлы;
- какие есть роли, данные, платежи и внешние сервисы;
- какие действия запрещены без разрешения;
- какой следующий шаг.
7. Если чего-то не хватает, сначала составь список пробелов.
8. Задай не больше пяти вопросов, по одному короткому вопросу за сообщение. Не повторяй уже известное.
9. Если после пятого вопроса что-то осталось неизвестным, перечисли это и остановись. Не продолжай бесконечную анкету.
10. Не придумывай ответы.
11. После моих ответов покажи список предлагаемых изменений и дождись подтверждения.
12. После подтверждения внеси только согласованные точечные изменения.
13. Не удаляй и не перезаписывай существующие файлы целиком.
14. После изменений снова перечитай результат и проверь, что вопросы закрыты или явно оставлены открытыми.
В конце дай отчет:
- что заполнено полностью;
- какие вопросы еще остались;
- какие факты подтверждены;
- какие изменения внесены;
- какие файлы не трогались;
- может ли новый чат понять проект;
- какой следующий шаг.
Что будет по итогам финальной проверки
Codex покажет, что заполнено хорошо, а чего не хватает;
задаст недостающие вопросы по одному;
не будет придумывать неизвестные факты;
перед изменениями покажет их список и дождется подтверждения;
в конце даст отчет о заполнении и назовет следующий шаг.
Источник:GitHub Максима Самусь. После полного заполнения starter переходи к следующему шагу.