Problem
AgentSkills.io treats scripts/ as the conventional location for executable code, but also allows additional files and directories inside a skill folder.
SkillServer currently accepts resource paths in any subdirectory, which is compatible with the spec. However, executable-looking resources outside scripts/ can surprise clients such as Netclaw, which may apply different execution policy or user guidance around script resources.
Expected behavior
SkillServer should remain permissive and AgentSkills.io-compatible, but lint/warn when executable-looking files are published outside scripts/.
Proposed behavior
During CLI scan/upload validation, emit a warning for resources such as:
*.sh
*.bash
*.py
*.js
*.ts
- files with executable shebangs
when their relative path is not under scripts/.
Do not hard-reject these resources.
Rationale
- AgentSkills.io permits arbitrary additional directories.
scripts/ is still the conventional executable-code location.
- A warning helps authors produce portable skills without imposing a Netclaw-specific stricter profile.
Acceptance criteria
- Publishing a skill with
examples/demo.py succeeds but emits a warning.
- Publishing
scripts/demo.py emits no warning.
- Upload API remains backward-compatible.
- Documentation clarifies that
scripts/ is preferred for executable helpers but not required by the standard.
Problem
AgentSkills.io treats
scripts/as the conventional location for executable code, but also allows additional files and directories inside a skill folder.SkillServer currently accepts resource paths in any subdirectory, which is compatible with the spec. However, executable-looking resources outside
scripts/can surprise clients such as Netclaw, which may apply different execution policy or user guidance around script resources.Expected behavior
SkillServer should remain permissive and AgentSkills.io-compatible, but lint/warn when executable-looking files are published outside
scripts/.Proposed behavior
During CLI scan/upload validation, emit a warning for resources such as:
*.sh*.bash*.py*.js*.tswhen their relative path is not under
scripts/.Do not hard-reject these resources.
Rationale
scripts/is still the conventional executable-code location.Acceptance criteria
examples/demo.pysucceeds but emits a warning.scripts/demo.pyemits no warning.scripts/is preferred for executable helpers but not required by the standard.