| name | sn-ppt-doctor |
| description | Environment diagnostic for the PPT family. Validates sn-image-base, API keys,
Node runtime, and optional deps; interactively writes .env for required vars.
Runs before sn-ppt-entry; does not modify sn-image-* skills.
|
| metadata | {"project":"SenseNova-Skills","tier":"aux","category":"diagnostic","user_visible":true} |
| triggers | ["sn-ppt-doctor","ppt 体检"] |
sn-ppt-doctor
When to use
- Before the first time you use
sn-ppt-entry / sn-ppt-creative / sn-ppt-standard, to verify env is wired
- After you change
.env, to confirm
- When
sn-ppt-entry reports missing-env error and tells you to come here
Hard checks (must pass before sn-ppt-entry can run)
- Text chat API key is available via
SN_TEXT_API_KEY, shared SN_CHAT_API_KEY, or global SN_API_KEY
- Vision chat API key is available via
SN_VISION_API_KEY, shared SN_CHAT_API_KEY, or global SN_API_KEY
- Image generation API key is available via
SN_IMAGE_GEN_API_KEY or global SN_API_KEY
sn-image-base is discoverable and sn_agent_runner.py --help works (auto-resolved as a sibling skill under the same skills/ directory; SN_IMAGE_BASE only needed for non-standard layouts)
node --version >= 18
Soft checks (warnings only)
$(pwd)/ppt_decks/ creatable and writable (deck_dir parent; fixed — not configurable via env)
sn-ppt-standard/scripts/export_pptx/node_modules exists (run npm install on first use otherwise)
- Optional env vars (
SN_IMAGE_GEN_*, SN_CHAT_*, SN_TEXT_*, SN_VISION_*) — displays current value or "unset"
pypdf / python-docx Python deps for doc parsing in sn-ppt-entry
Invocation
Single-file entry; no package imports, no -m, no PYTHONPATH needed.
python $SKILL_DIR/ppt_doctor/check_environment.py
python $SKILL_DIR/ppt_doctor/check_environment.py --non-interactive
python $SKILL_DIR/ppt_doctor/check_environment.py --env-path /custom/.env
When used inside OpenClaw, /skill sn-ppt-doctor runs the same entry.
Output
Plain text report — one line per check — then a summary. On any hard-check failure, enters interactive mode to fill .env (unless --non-interactive).
Does NOT
- Modify
sn-image-* skills or their .env
- Install packages automatically (prints install commands instead)
- Run any PPT pipeline