## Summary
- 将所有技能文件中的硬编码 `~/.desirecore/` 和 `$HOME/.desirecore/` 路径替换为
`${DESIRECORE_ROOT}/` 变量
- 递增 manifest.json version 至 1.2.1
## Why
dev 模式下 `DESIRECORE_HOME=~/.desirecore-dev`,硬编码路径导致技能读取错误的端口文件和目录。主仓库的
`variable-substitutor.ts` 会在运行时将 `${DESIRECORE_ROOT}` 替换为实际根目录。
## Test plan
- [ ] `npm run dev` 启动后触发任意技能,确认端口路径解析为
`~/.desirecore-dev/agent-service.port`
- [ ] prod 模式确认路径为 `~/.desirecore/agent-service.port`
🤖 Generated with [Claude Code](https://claude.com/claude-code)
9.7 KiB
name, description, version, type, risk_level, status, disable-model-invocation, tags, metadata, market
| name | description | version | type | risk_level | status | disable-model-invocation | tags | metadata | market | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| dev-environment-setup | Use this skill as a router/index when the user faces a development environment question that spans multiple domains: containers (Docker/Podman), WSL2 on Windows, office-skill dependencies (DOCX/PDF/XLSX/ PPTX), or system tools (LibreOffice/Poppler/Pandoc/Tesseract). For pure Python issues use python-runtime skill; for pure Node.js issues use nodejs-runtime skill. Triggers include: "setup environment", "PATH", "WSL", "WSL2", "docker not found", "podman", "container", "office dependency", "LibreOffice", "poppler", "pandoc", "tesseract", or any cross-cutting environment question. 使用场景:用户提到 环境配置、PATH、 容器、Docker、Podman、WSL、WSL2、办公依赖、系统工具,或不确定属于 Python / Node.js 时的入口指引。 | 2.0.2 | procedural | low | enabled | true |
|
|
|
dev-environment-setup Skill (v2.0.0 router)
L0: One-line Summary
When to use: The user needs to
- Install / troubleshoot Docker or Podman containers ("docker not found", daemon startup, registry mirror, etc.)
- Configure WSL2 (Linux Subsystem) on Windows
- One-shot install of office skill dependencies (Python packages + npm packages + system tools required by DOCX / PDF / XLSX / PPTX)
- Install system tools: LibreOffice / Poppler / Pandoc / Tesseract / qpdf / ImageMagick / Ghostscript / Git
- Uncertain whether the issue belongs to Python or Node.js, and a comprehensive diagnosis is needed first
When not to use: Use python-runtime for pure Python issues, and nodejs-runtime for pure Node.js issues.
How to do it: First run scripts/probe.sh (use probe.ps1 on Windows) to obtain a system snapshot JSON,
and route to the corresponding references or sub-skill based on the result; this skill is also the source of truth
for DesireCore's built-in Hatch / Volta / HTTP API / Socket.IO integration (references/desirecore-runtime.md).
L1: Routing Rules
Route directly to the corresponding skill or document by the keywords in the user's question:
| Keyword / Scenario | Path |
|---|---|
| python / pip / venv / pyenv / hatch / virtualenv / PEP 668 | python-runtime skill |
| node / npm / pnpm / yarn / volta / nvm / fnm / EACCES | nodejs-runtime skill |
| docker / podman / container / container daemon | references/container.md |
| WSL / WSL2 / Windows Linux Subsystem | references/wsl.md |
| DOCX / PDF / XLSX / PPTX dependencies / office skill dependencies | references/office-deps.md |
| LibreOffice / poppler / pandoc / tesseract / qpdf | references/system-tools.md |
| Unsure of category, want a quick diagnosis | First run scripts/probe.sh and inspect the JSON |
| DesireCore Hatch / Volta / HTTP API / Socket.IO | references/desirecore-runtime.md |
| Four-tier fallback decision (API → CLI → package manager → community solution) | references/decision-tree.md |
L2: Detailed Specification
Step 1: Quick Diagnosis
bash skills/dev-environment-setup/scripts/probe.sh > /tmp/env-probe.json
cat /tmp/env-probe.json | jq .
For the meaning of output fields, see references/probe-snapshot.md. On Windows use scripts/probe.ps1.
Step 2: Route by Result
desirecore_apinon-empty → take the HTTP API path (references/desirecore-runtime.md)tools.python3.available = falseortools.node.available = false→ enter the corresponding sub-skilltools.docker.available = falseand the user needs containers →references/container.mdwsl.installed = falseand Windows user →references/wsl.md
Step 3: Execute the Sub-skill Decision Tree
Both python-runtime and nodejs-runtime have their own four-tier fallback (L1 API → L2 built-in CLI → L3 system package manager → L4 community solution), defined in the shared references/decision-tree.md.
Step 4: Office Skill Dependencies
Quick lookup for the office quartet (DOCX / PDF / XLSX / PPTX) dependencies: references/office-deps.md. Includes one-shot install commands for Python packages, npm packages, and system tools.
Step 5: System Tools
Installation and troubleshooting for LibreOffice / Poppler / Pandoc / Tesseract / qpdf / ImageMagick / Ghostscript: references/system-tools.md.
DesireCore Built-in Environment Management Base
DesireCore embeds Hatch (Python) and Volta (Node.js), providing complete environment management via HTTP API + Socket.IO. This skill and the sub-skills (python/nodejs) all rely on:
| Document | Content |
|---|---|
references/desirecore-runtime.md |
Binary path table, HTTP API quick-reference, Socket.IO event contracts, EnvironmentSnapshot data structure |
references/decision-tree.md |
Four-tier fallback flowchart, concrete signals for failure detection, switch prompts |
references/probe-snapshot.md |
Probe script JSON output protocol |
Important Constraints
- Do not write strong keywords like python / node / pip / npm into this skill's description—those belong to their respective sub-skills, to avoid trigger conflicts.
- API first:
scripts/probe.shfirst checks${DESIRECORE_ROOT}/agent-service.port; if it exists, recommend the HTTP API path. - Cache coherence: after any install/uninstall completes, call
POST /api/runtime/environment/refreshto invalidate the cache before issuing subsequent GETs. - Cross-platform: every command template provides both macOS / Linux and Windows (PowerShell) versions.
Sub-skill and Document Manifest
skills/
├── python-runtime/ # Python environment (Hatch first)
├── nodejs-runtime/ # Node.js environment (Volta first)
└── dev-environment-setup/ # This skill (composite entry)
├── references/
│ ├── desirecore-runtime.md
│ ├── decision-tree.md
│ ├── probe-snapshot.md
│ ├── container.md
│ ├── wsl.md
│ ├── office-deps.md
│ └── system-tools.md
└── scripts/
├── probe.sh
└── probe.ps1
Upgrade Notes (v1.x → v2.0.0)
- v1.x was a 1380-line all-in-one manual, now split.
- Python-related →
python-runtime - Node.js-related →
nodejs-runtime - Docker / WSL / office dependencies / system tools → this skill's
references/ - DesireCore Hatch / Volta upgraded from "optional community solution" to mandatory L1/L2 primary path
Downstream skills (docx / pdf / xlsx / pptx) should rewrite "for Python environment issues, see dev-environment-setup" to "for Python environment issues, see python-runtime / for Node.js environment issues, see nodejs-runtime".