Canon Boundary Guard ships as a self-contained Codex plugin. Every functional piece — the skill definition, the hook script, and the marketplace registration — lives inside a predictable directory tree rooted at the repository. Understanding the layout helps when you need to inspect, fork, or locally patch any part of the plugin.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/xxyoudeadpunkxx/canon-boundary-guard-codex/llms.txt
Use this file to discover all available pages before exploring further.
Directory Tree
File Descriptions
.agents/plugins/marketplace.json— exposes the plugin to Codex as a marketplace entry.plugins/canon-boundary-guard-codex/.codex-plugin/plugin.json— identifies the plugin and points Codex to bundled skills and hooks.plugins/canon-boundary-guard-codex/skills/canon-boundary-guard/SKILL.md— defines the full operating frame.plugins/canon-boundary-guard-codex/skills/canon-boundary-guard/references/frame.md— contains the compact frame emitted by the hook script.plugins/canon-boundary-guard-codex/skills/canon-boundary-guard/scripts/inject_frame.py— reads the compact frame and emits a hook payload.plugins/canon-boundary-guard-codex/skills/canon-boundary-guard/agents/openai.yaml— contains Codex-facing skill metadata.plugins/canon-boundary-guard-codex/hooks/hooks.json— wires the frame intoPreToolUsefor matched write tools when plugin hooks are enabled.
plugin.json
The plugin manifest at.codex-plugin/plugin.json is the root descriptor Codex reads when it loads the plugin. It declares the plugin identity, points to the skills directory and hook file, and provides display metadata including a brandColor of #536878.
The
skills field points to ./skills/ (relative to the plugin root), so Codex discovers every subdirectory under that path as a bundled skill. The hooks field points directly to ./hooks/hooks.json, which is the single hook bundle for this plugin.Skill Reference
Full documentation for SKILL.md and the operating frame it defines.
Hook Reference
How the PreToolUse hook is configured and what it injects at write time.