Bundled skill-creator documents direct script execution, but its scripts are not executable
Nobody has claimed this yet.
Assessment
- Difficulty
- 2/5
- Estimated time
- 1-3 hours
- Newbie friendliness
- 72/100
Research direction
Start with SKILL.md and the bundled scripts/init_skill.py and scripts/quick_validate.py under the skill-creator assets, then inspect how the files are packaged and installed. Reproduce the clean-install behavior and run the exact commands documented in SKILL.md. Done means those documented commands execute successfully without the undocumented workaround.
Written by the indexing model from the issue text.
Description
Summary
The bundled skill-creator instructs agents to invoke its Python helpers directly:
scripts/init_skill.py <skill-name> --path <output-directory>
scripts/quick_validate.py <path/to/skill-folder>
However, the scripts are committed upstream with mode 100644 and installed locally with mode 0644. Direct execution therefore fails with exit code 126 before Python starts.
Upstream source:
https://github.com/openai/codex/tree/main/codex-rs/skills/src/assets/samples/skill-creator
Environment
- Codex CLI:
0.145.0 - OS: Arch Linux, kernel
7.1.3-arch1-2, x86_64 - Shell: Bash
- Terminal:
xterm-256color
Reproduction
cd ~/.codex/skills/.system/skill-creator
stat -c '%a %n' scripts/init_skill.py scripts/quick_validate.py
scripts/init_skill.py --help
echo $?
scripts/quick_validate.py /tmp/nonexistent-skill
echo $?
Observed output:
644 scripts/init_skill.py
644 scripts/quick_validate.py
bash: scripts/init_skill.py: Permission denied
126
bash: scripts/quick_validate.py: Permission denied
126
The corresponding files on the openai/codex main branch also have Git mode 100644, so this does not appear to be local permission drift.
Expected behavior
The commands documented by the bundled SKILL.md should work as written.
Either:
- the scripts should be committed and distributed as executable files; or
SKILL.mdshould explicitly invoke them through the supported Python runtime, for examplepython3 scripts/init_skill.py ....
A packaging or clean-install test should execute the exact commands documented in SKILL.md.
Actual behavior
Agents must discover an undocumented workaround such as:
python3 scripts/init_skill.py ...
This affects a mandatory step in the skill-creation workflow and can lead agents to skip the provided initializer or validator.
Related issue
After invoking quick_validate.py through Python, a separate undeclared-PyYAML problem may occur. That dependency issue is already tracked in:
This report is specifically about the mismatch between the documented direct invocation and the distributed file modes.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.5k
- Avg merge
- 1m
- Merged PRs (30d)
- 1k
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from openai/codex
-
enhancement remote
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
-
bug CLI windows-os
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
-
macOS sandbox blocks hw.optional.arm64 sysctl, causing Flutter to misdetect Apple Silicon as x64 Openbug CLI sandbox
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
-
bug CLI TUI
Difficulty 2/5 1-3 hours Newbie friendliness 90/100
-
CLI config enhancement skills
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100
Eynzof/Hermes-CN-Desktop#610 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
gitbutlerapp/gitbutler#15998 · 1 comment ·
-
bug triage:deciding
Difficulty 1/5 Under an hour Newbie friendliness 88/100
open-telemetry/otel-arrow#4132 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 84/100