From claude-codex
Register a new command or skill convention in the Standards DB. Formats the Invoke field with colon notation and pipe separators, saves to Notion, and updates local skill files.
npx claudepluginhub aventerica89/claude-codex --plugin claude-codex[command-name] [optional: description]# Register Convention Use this when you've created a new command, skill, or workflow pattern that should be documented in the Claude Code Standards database. ## What This Does 1. Formats the `Invoke` field using the canonical notation (see rules below) 2. Saves to the Notion Standards DB via `/save-to-notion:standards [subject]` 3. Optionally updates the local skill/command file to document the `:` notation ## Invoke Field Format Rules ### Subcommand notation Subcommands (positional arguments that select behavior) use `:` between the base command and the subcommand: **Base command ...
Use this when you've created a new command, skill, or workflow pattern that should be documented in the Claude Code Standards database.
Invoke field using the canonical notation (see rules below)/save-to-notion:standards [subject]: notationSubcommands (positional arguments that select behavior) use : between the base command and the subcommand:
/changelog:init
/changelog:feature "desc"
/save-to-notion:plan
/save-to-notion:standards [subject]
/sync-plans-index:new
/sync-plans-index:update
Base command alone always stays as-is — no colon needed:
/changelog
/save-to-notion
/help-hub
Multiple invocations in one Invoke field use | (pipe) with spaces:
/changelog | /changelog:init | /changelog:feature desc | /changelog:dev | /changelog:sync | /changelog:standards
Do NOT use commas or backslash-escaped pipes.
--CLI flags are unchanged — they use -- regardless:
/app-sync | /app-sync --dry-run | /app-sync --section=changelog
MCP tool names are not slash commands — just list them with pipe separators:
mcp__1p__list_api_keys | mcp__1p__get_api_key | mcp__1p__store_api_key
Show optional arguments in brackets:
/save-to-notion:[type] | /save-to-notion:standards [subject]
If $ARGUMENTS provides a name, use it. Otherwise ask.
List every invocation variant:
: notationJoin with | (space-pipe-space).
Example for a command with 3 subcommands:
/my-command | /my-command:init | /my-command:run | /my-command:sync
Run /save-to-notion:standards [command-name] which will:
Group: Latest entries (set to Group: Archive, increment Version)Group: Latest, Version: N+1The content should include:
If the command has a local skill file at ~/.claude/skills/*/SKILL.md or ~/.claude/commands/*.md:
: notationReport:
Convention registered!
Command: /[name]
Invoke: [formatted invoke field]
Notion: [page title] (Version N)
Local file: [path updated] (or "no local file found")
| Pattern | Example | Notes |
|---|---|---|
| Base command | /changelog | No colon |
| Subcommand | /changelog:init | Colon, no space |
| Subcommand + arg | /changelog:feature "desc" | Space after colon-subcommand |
| Optional arg | /save-to-notion:[type] | Brackets for optional |
| CLI flag | --dry-run | Double dash, unchanged |
| MCP tool | mcp__1p__list_api_keys | Double underscore, no slash |
| Separator | ` | ` |
# WRONG: space-separated subcommand
/changelog init
# RIGHT: colon-separated
/changelog:init
# WRONG: comma separator
/changelog:init, /changelog:sync
# RIGHT: pipe separator
/changelog:init | /changelog:sync
# WRONG: escaped pipe
/changelog:init \| /changelog:sync
# RIGHT: plain pipe
/changelog:init | /changelog:sync