codex-settings
AGENTS.md248 starsChanged 4 months agoMITView on GitHub
A change in this repository is finished when all of these hold. Work through them without stopping for approval between steps: Stop early only for a genuine blocker: a missing credential, an ambiguous requirement where the readings lead to materially different work, or an action outside the scope described above. Use CONTRIBUTING.md for the commands matching the changed files: TOML parsing for configs, structure and isolated Plugin installation for Skills/manifests, and syntax plus offline tests for executable helpers. Prose-only edits…
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,542 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository12 other files it gives its agents.
- brainstormingSkill
- claude-skillSkill
- code-simplifierSkill
- deep-researchSkill
- github-fix-issueSkill
- github-review-prSkill
- gpt-image-skillSkill
- grill-meSkill
- handoffSkill
- minimax-image-skillSkill
- nanobanana-skillSkill
- youtube-transcribe-skillSkill
The file
We split this AGENTS.md into the rules it gives an agent
12 rules. About 3 are common, 4 are distinctive, and 5 are very specific to this project.
≈3
Common · estimate
Many files like this have a rule of this kind.
≈4
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Common: line 22
Stop early only for a genuine blocker: a missing credential, an ambiguous requirement where the readings lead to materially different work, …
- Distinctive: line 26
Use CONTRIBUTING.md for the commands matching the changed files: TOML parsing for configs, structure and isolated Plugin installation for …
- Distinctive: line 38
Write Skill instructions in imperative form.
- Very specific: line 39
Keep SKILL.md small enough to load cheaply.
- Very specific: line 41
Add agents/openai.yaml when a Skill is created.
- Very specific: line 43
Keep default installation documentation unpinned so it follows the repository default branch.
- Distinctive: line 49
Use concise title-case imperative commit subjects, consistent with repository history.
- Common: line 50
Keep commits scoped; do not include local Codex runtime state, credentials, generated logs, or unrelated working-tree changes.
- Very specific: line 52
Use redacted placeholders such as sk-dummy in examples.
- Common: line 56
Never commit API keys, access tokens, cookies, real authorization headers, or private logs.
- Distinctive: line 58
Do not silently broaden permissions or enable browser-cookie access.
- Very specific: line 59
Follow SECURITY.md for vulnerability reporting.
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Repository Guidelines
Repository Structure
config.tomlis the shared Codex CLI configuration and points to the localcopilot-gatewayprovider atlocalhost:4141.- Root-level
*.config.tomlfiles are optional Codex Profiles (chatgpt,azure,github-copilot, andopenrouter). Keep the<name>.config.tomlnaming required bycodex --profile <name>. skills/<name>/SKILL.mdcontains reusable workflows. Put deterministic helpers inscripts/, detailed references inreferences/, UI metadata inagents/openai.yaml, and offline regression tests intests/..codex-plugin/plugin.jsonpackages the existing rootskills/tree as thecodex-settingsPlugin without duplicating it..agents/plugins/marketplace.jsonexposes the repository root as the Plugin source.skills/github-fix-issue/andskills/github-review-pr/replace the former GitHub Custom Prompts. Do not recreate duplicate workflows underprompts/.litellm_config.yamlis only for the optional GitHub Copilot through LiteLLM profile. It is not the backend used by the defaultconfig.toml.
Definition of Done
A change in this repository is finished when all of these hold. Work through them without stopping for approval between steps:
- The change itself is complete, including every file it implies — update a Skill's
agents/openai.yamlwhen its purpose, display name, or default invocation changes, and update the Skills table inREADME.mdwhen a Skill is added or removed. - The validation commands matching the changed files have been run and pass. Fix failures caused by the change and rerun affected checks; report unrelated failures separately.
.codex-plugin/plugin.jsonversionis bumped if released Plugin content changed.- The final report states which validation commands ran, which integration checks were skipped and why, and any assumption the change rests on.
Stop early only for a genuine blocker: a missing credential, an ambiguous requirement where the readings lead to materially different work, or an action outside the scope described above.
Validation Commands
Use CONTRIBUTING.md for the commands matching the changed files: TOML parsing for configs, structure and isolated Plugin installation for Skills/manifests, and syntax plus offline tests for executable helpers. Prose-only edits do not require unrelated provider or API runs.
The offline tests use disposable local fixtures, have no network or production access, and need no credentials. Run them, fix failures caused by the requested change, and rerun affected checks without asking for approval at each step. The Plugin install test uses an isolated temporary CODEX_HOME, not the user's installed plugins.
Provider integration checks apply only to changed provider files. External API Skills use mocked/offline tests unless the user explicitly requests a live integration run. If a check requires changing the user's environment, authentication, or running services beyond the task's authorization, report the missing prerequisite instead.
Style and Skill Conventions
- TOML uses two-space indentation where indentation applies, aligned
=signs within related blocks, double-quoted strings, and grouped tables. - Name Profiles, Skills, prompts, and scripts with lowercase kebab-case unless the platform requires another filename.
- Skill frontmatter contains only
nameanddescription. Put requirements and compatibility notes in the body. - Keep each
descriptionas short as it can be while still making clear when the Skill applies. Describe the triggering situation, not a list of keywords, and do not treat the presence of an API key or a broad topic as a trigger. When several Skills cover the same territory, exactly one is the default and the others say they apply only when the user names that provider or tool. - Write Skill instructions in imperative form. Keep the core workflow concise and move repeatable or fragile behavior into bundled scripts.
- Keep
SKILL.mdsmall enough to load cheaply. Move workflow detail, command references, and long examples intoreferences/and haveSKILL.mdpoint at them per step, so a run only reads what that step needs. Do not restate a script's--helpoutput; point at it. - Assume the reading model has judgment. Write down what it cannot infer — this repository's paths, invariants, and failure modes — and leave out step-by-step recipes for decisions it can make from the request. These Skills are installed by others and run on models this repository does not control, so over-specified procedure constrains more than it helps.
- Add
agents/openai.yamlwhen a Skill is created; refresh it when the Skill's purpose, display name, or default invocation changes. Itsdefault_promptmust mention$skill-name. - Bump
.codex-plugin/plugin.jsonversionwhenever released Plugin content changes. Use semantic versions for releases and a single+codex.<cachebuster>suffix only for local iteration. - Keep default installation documentation unpinned so it follows the repository default branch. Use matching immutable
v<version>tags as release checkpoints, not as the default install ref. - Scripts must expose
--help, validate local inputs before network/API calls, return non-zero on failure, and create output parent directories when appropriate. - Tests must not require paid API calls, browser cookies, interactive approval, or live third-party services unless the user explicitly requests an integration run.
Commit and Pull Request Guidelines
- Use concise title-case imperative commit subjects, consistent with repository history.
- Keep commits scoped; do not include local Codex runtime state, credentials, generated logs, or unrelated working-tree changes.
- In pull requests, list affected configs or Skills, validation commands run, intentionally skipped integration checks, and any compatibility assumptions.
- Use redacted placeholders such as
sk-dummyin examples.
Security
- Never commit API keys, access tokens, cookies, real authorization headers, or private logs.
- Review
shell_environment_policy, sandbox, network, MCP, and browser-cookie behavior when changing integrations. - Do not silently broaden permissions or enable browser-cookie access. Explain the need and obtain user approval first.
- Follow
SECURITY.mdfor vulnerability reporting.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

