home / skills / akiojin / skills / skills-repo-maintenance

skills-repo-maintenance skill

/skills-repo-maintenance

npx playbooks add skill akiojin/skills --skill skills-repo-maintenance

Review the files below or copy the command above to add this skill to your agents.

Files (1)
SKILL.md
2.9 KB
---
name: skills-repo-maintenance
description: "Add or update skills in a skills repository for Codex and/or Claude Code. Use when creating new skills, packaging .skill files for Codex, or converting a skill into a Claude Code plugin (marketplace.json + plugin.json)."
---

# Skills Repo Maintenance

## Overview

Maintain a skills repository and keep Codex and Claude Code artifacts in sync.

## Workflow

### 0) Defaults to apply

- Target runtime: **Codex + Claude Code** (both).
- Package output: **must be specified by the user every time** (no default).

### 1) Identify the repo root

- Use the current repo (git root) as the base.
- Example: `git rev-parse --show-toplevel`

### 2) Decide the target runtime(s)

- Default is **both**. If the user explicitly asks for only one runtime, confirm before skipping the other.
- **Codex**: add a skill folder with `SKILL.md` at repo root.
- **Claude Code**: add a plugin folder with `.claude-plugin/plugin.json` and update `.claude-plugin/marketplace.json`.
  - For both, do both and package `.skill` files for Codex distribution.

### 3) Create or update the skill content

- Skill folder must contain `SKILL.md` with YAML frontmatter (`name`, `description`).
- Use lowercase + hyphens for skill names.
- Put extra materials under `references/`, `scripts/`, `assets/` as needed.

### 4) Claude Code plugin requirements (if applicable)

- Plugin lives at repo root (e.g. `drawio/`, `gh-fix-ci/`, `cli-design/`).
- Add `.claude-plugin/plugin.json` inside the plugin folder.
- Add an entry to `<repo-root>/.claude-plugin/marketplace.json`:
  - `name`, `source`, `description`, `version`, `category`, `keywords`
- If the plugin contains multiple skills, place them under
  `<plugin>/skills/<skill-name>/SKILL.md`.

### 5) Codex packaging (if applicable)

- Package to the **user-specified output directory** using the skill packager.
- On Windows, set UTF-8 to avoid decode errors.

```powershell
$env:PYTHONUTF8=1
$codexHome = $env:CODEX_HOME
if (-not $codexHome) { $codexHome = "$env:USERPROFILE\.codex" }
$outDir = "<output-dir>"
python "$codexHome\skills\.system\skill-creator\scripts\package_skill.py" `
  "<repo-root>\\<skill-folder>" `
  $outDir
```

```bash
export PYTHONUTF8=1
codex_home="${CODEX_HOME:-$HOME/.codex}"
out_dir="<output-dir>"
python "$codex_home/skills/.system/skill-creator/scripts/package_skill.py" \
  "<repo-root>/<skill-folder>" \
  "$out_dir"
```

Repeat for each Codex-supported skill.

### 6) Update documentation

- `README.md`
  - Add to **Available Plugins** and **Usage (Claude Code)** when pluginized.
  - Add to **Available Codex skills** and **Usage (Codex)** when packaged.

### 7) Commit + push

- Ensure `codex-skills/dist/*.skill` are tracked for Codex delivery.
- Push changes and open PR if required by your workflow.

## Notes

- Codex reads skills from `.codex/skills` folders; `.skill` is a packaged zip for distribution.
- Claude Code requires the plugin entry in `.claude-plugin/marketplace.json`.