# Engineering Conventions

> Codex adapter for opencode-swarm engineering invariants. Use before modifying plugin initialization, subprocesses, runtime portability, .swarm containment, plan durability, test_runner behavior, test-writing patterns, session/global state, guardrails/retry semantics, chat/system hooks, tool registration, release/cache hygiene, or related architecture.

- Skill: `zaxbysauce/engineering-conventions` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add zaxbysauce/engineering-conventions`
- Raw SKILL.md: https://api.skillmd.com/api/skills/zaxbysauce/engineering-conventions/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: zaxbysauce (https://skillmd.com/u/zaxbysauce)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/zaxbysauce/engineering-conventions

---


# Engineering Conventions

Use this adapter before any change that can touch a repository invariant.

Read, in order:

1. `AGENTS.md`
2. `docs/engineering-invariants.md`
3. `.opencode/skills/engineering-conventions/SKILL.md`

If editing agent prompt strings or escaped template text, pay attention to the "Agent prompt strings — escaping pitfalls" section, which is now carried in both the `.opencode` summary (item 3 above) and `.claude/skills/engineering-conventions/SKILL.md`.

Codex-specific execution notes:

- Use `apply_patch` for manual edits.
- Use the available shell execution tool for `rg`, `git`, build, smoke, and test commands.
- Use the runtime's parallel-execution capability for independent file reads and searches.
- Keep changes scoped and produce concrete invariant evidence for every touched invariant.

The source of truth is always `AGENTS.md`. If an imported skill conflicts with it, `AGENTS.md` wins.

