[bug] bl skill add installs paths exceeding Windows MAX_PATH (259 chars), breaking the host agent's entire skill library
Nobody has claimed this yet.
Assessment
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Newbie friendliness
- 65/100
- Issue type
- Bug
- Clarity
- Clearly specified
- Activity status
- Active
- Tech stack
- node.js, typescript
Research direction
The issue is in the skill installation path generation logic, likely in the code that handles the bailian-docs-llm-wiki skill's raw doc tree. Look at the bl skill add command implementation and the skill packaging/unpacking process. Focus on Windows path length checks and the concatenation of parent and child slugs. Test by installing the skill and verifying the generated directory paths against MAX_PATH. The fix should ensure paths stay under 260 characters, possibly by truncating/hashing long slugs or using the \\?\ prefix.
Written by the indexing model from the issue text.
Description
Environment
- CLI: bl 2.0.1
- Skill: bailian-docs-llm-wiki (registry
publishedAt: 2026-09-23T04:37:22+08:00) - Node: v24.14.1
- OS: Windows 11 (NTFS), no long-path opt-in (
LongPathsEnablednot set) - Region: cn (cn-beijing)
Reproduce
# 1) install (or let any `bl` command auto-sync the skill family)
bl skill add --name bailian-docs-llm-wiki
# 2) from the host agent that owns <agent-skills-dir>, walk the installed tree
python -c "import os; os.listdir(r'C:\Users\<user>\.hermes\skills\bailian-docs-llm-wiki\raw\application-user-guide\application-gallery\official-application-lingque-ccai-dialogue-analysis-aio\api-reference-2\api-contactcenterai-2024-06-03-dir\api-contactcenterai-2024-06-03-dir-hot-word-management')"
Expected
bl skill add installs bailian-docs-llm-wiki into the detected agent skill directories; the host agent can enumerate / load them normally.
Actual
The installed tree contains directories whose full path is 259 characters long (Windows MAX_PATH = 260, and the install does not use a \\?\ prefix). os.path.exists() on the directory itself returns True, but any child entry exceeds the limit, so traversal raises:
FileNotFoundError: [WinError 3] 系统找不到指定的路径。: 'C:\Users\<user>\.hermes\skills\bailian-docs-llm-wiki\raw\application-user-guide\application-gallery\official-application-lingque-ccai-dialogue-analysis-aio\api-reference-2\api-contactcenterai-2024-06-03-dir\api-contactcenterai-2024-06-03-dir-hot-word-management'
Impact: the host agent's skill loader walks its skills directory on every skill operation (list / view / manage). One over-long path therefore takes down the entire skill library — not just this skill — until bailian-docs-llm-wiki is removed. Measured on this machine: 35 MB / 2,776 files; the deepest directory name is generated by concatenating the parent slug (api-contactcenterai-2024-06-03-dir- + hot-word-management).
Deterministic: reproduced on repeated installs; bl skill remove --name bailian-docs-llm-wiki (removed 59 symlinks) restores the host agent immediately.
Suggested fix
- Cap the generated segment length / total depth for the
raw/doc tree ofbailian-docs-llm-wiki(e.g. truncate and hash long slugs instead of concatenating parent+child slugs), or - Flatten deeply nested doc dirs when packaging the skill, or
- Create files with the
\\?\long-path prefix (and/or warn) on Windows, or - Skip / slim this doc-heavy skill by default on Windows.
Already tried
bl skill update/bl skill list— same install shape (auto-sync on an ordinarybl auth statusre-installed it)bl skill remove --name bailian-docs-llm-wiki→ problem disappears
Notes
- Frequency: always (deterministic on Windows)
- Invoked via: terminal + agent (Hermes Agent on Windows 11)
- Nothing else in the bailian-* family triggers this: only
bailian-docs-llm-wikireaches the 260 boundary
- Dominant language
- TypeScript
- Stars
- 333
- Forks
- 28
- Avg merge
- 1d 8h
- Merged PRs (30d)
- 38
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 modelstudioai/cli
-
[bug] bl update: darwin-arm64 binary ships invalid ad-hoc signature, killed by macOS (Killed: 9) Open
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
modelstudioai/cli#223 ·
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 65/100
modelstudioai/cli#225 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 72/100
modelstudioai/cli#211 ·
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
modelstudioai/cli#202 · 1 comment · 1 reaction ·
-
Difficulty 4/5 3-5 days Newbie friendliness 63/100
modelstudioai/cli#200 · 1 comment ·
All issues in modelstudioai/cli
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
bug v2
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
modelcontextprotocol/inspector#2458 · 1 comment ·
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
railmapgen/rmp-gallery#4068 ·
-
Mend: dependency security vulnerability status: needs triage 🕵️♀️
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
carbon-design-system/ibm-products#9907 ·