Loading...
Loading...
Install Codex skills into $CODEX_HOME/skills from a curated list or a GitHub repo path. Use when a user asks to list installable skills, install a curated skill, or install a skill from another repo (including private repos).
npx skill4agent add arthur0824hao/skills skill-installerscripts/list-curated-skills.pyscripts/list-curated-skills.py --format jsonscripts/install-skill-from-github.py --repo <owner>/<repo> --path <path/to/skill> [<path/to/skill> ...]scripts/install-skill-from-github.py --url https://github.com/<owner>/<repo>/tree/<ref>/<path>$CODEX_HOME/skills/<skill-name>~/.codex/skills--path--name--ref <ref>main--dest <path>--method auto|download|githttps://github.com/openai/skills/tree/main/skills/.curatedGITHUB_TOKENGH_TOKEN$CODEX_HOME/skills{
"schema_version": "2.0",
"id": "skill-installer",
"version": "1.0.0",
"capabilities": ["skill-install", "skill-list"],
"effects": ["net.fetch", "fs.write", "proc.exec"],
"operations": {
"list-curated": {
"description": "List available curated skills with installed annotations.",
"input": {
"format": { "type": "string", "required": false, "default": "text", "description": "Output format: text or json" }
},
"output": {
"description": "List of curated skills with install status",
"fields": { "skills": "array of {name, installed}" }
},
"entrypoints": {
"unix": ["python3", "scripts/list-curated-skills.py", "--format", "{format}"],
"windows": ["python", "scripts/list-curated-skills.py", "--format", "{format}"]
}
},
"install": {
"description": "Install a skill from GitHub repo path.",
"input": {
"repo": { "type": "string", "required": true, "description": "GitHub owner/repo" },
"path": { "type": "string", "required": true, "description": "Path to skill within repo" }
},
"output": {
"description": "Installed skill path",
"fields": { "installed_path": "string" }
},
"entrypoints": {
"unix": ["python3", "scripts/install-skill-from-github.py", "--repo", "{repo}", "--path", "{path}"],
"windows": ["python", "scripts/install-skill-from-github.py", "--repo", "{repo}", "--path", "{path}"]
}
}
},
"stdout_contract": {
"last_line_json": false
}
}