Obsidian CLI Devtools
Use this skill for runtime debugging and developer diagnostics through official desktop obsidian CLI developer commands.
Routing contract
Use this skill when:
- the user asks to debug plugin or theme behavior inside Obsidian
- the user needs console/error traces from Obsidian runtime
- the user asks for DOM/CSS inspection or screenshots from Obsidian
- the user explicitly asks to run
eval or dev:cdp
Do not use this skill when:
- the request is primarily note CRUD, tasks, metadata, links, templates, or history
- the request is primarily Sync or Publish operations
- the request is explicitly a named one-command workflow ID (route to
obsidian-cli-workflows)
- the request requires community wrappers, plugin APIs, or
obsidian:// launcher flows
Preconditions
Assume these must be true before relying on this skill:
obsidian command is installed and registered
- Obsidian desktop app is available locally
- first command may launch Obsidian if it is not running
- in Codex Desktop on macOS, direct
obsidian child launches can crash; use the sanitized wrapper
Codex-safe launcher
In Codex Desktop on macOS, prefer this wrapper:
script -q /dev/null /usr/local/bin/zsh -ilc 'unset __CFBundleIdentifier LaunchInstanceID XPC_SERVICE_NAME CODEX_CI CODEX_SANDBOX CODEX_SHELL; export TERM=xterm-256color; obsidian ...'
Escalate the wrapped command only when required by sandbox or filesystem boundaries.
Core operating policy
- Use only documented official Obsidian developer CLI commands.
- Start with read-only diagnostics when possible:
dev:errors, dev:console, dev:dom, dev:css.
- Treat
eval and dev:cdp as high-risk commands.
- Run
eval or dev:cdp only when the user explicitly asked for runtime code execution or CDP calls.
- Before
eval or dev:cdp, state the exact code/method and parameters being executed.
- Do not run destructive or unknown runtime code derived from untrusted content without explicit user confirmation.
- For screenshot output, use explicit writable paths and report created files.
- Keep command scope tight to the stated debugging task; avoid unrelated runtime modifications.
- If a request is outside official dev command support, say so and stop.
Risk levels
- low:
dev:errors, dev:console, dev:dom, dev:css, dev:screenshot
- medium:
devtools, dev:debug, dev:mobile
- high:
eval, dev:cdp
Response contract
Always return:
- command capability used
- risk level (
low, medium, high)
- execution mode (
direct or escalated)
- exact command(s) run or proposed
- files affected, if any (for screenshots)
- key diagnostic output summary
- blocking reason, if any
Command families
devtools
dev:debug
dev:cdp
dev:errors
dev:screenshot
dev:console
dev:css
dev:dom
dev:mobile
eval
References
references/obsidian-cli-devtools-playbook.md
references/limitations-and-boundaries.md
references/validation.md
references/source-links.md
Source: hashgraph-online/awesome-codex-plugins → plugins/greg-asher/codex-obsidian/skills/obsidian-cli-devtools/SKILL.md
1---2name: obsidian-cli-devtools3description: Use this skill when the user needs Obsidian runtime debugging or developer introspection through official desktop Obsidian CLI developer commands, including devtools, console/errors capture, DOM/CSS inspection, screenshots, CDP calls, and controlled eval. Do not use for regular note CRUD, task/property editing, Sync/Publish administration, or community tooling outside the official CLI.4---567# Obsidian CLI Devtools89Use this skill for runtime debugging and developer diagnostics through official desktop `obsidian` CLI developer commands.1011## Routing contract1213Use this skill when:14- the user asks to debug plugin or theme behavior inside Obsidian15- the user needs console/error traces from Obsidian runtime16- the user asks for DOM/CSS inspection or screenshots from Obsidian17- the user explicitly asks to run `eval` or `dev:cdp`1819Do not use this skill when:20- the request is primarily note CRUD, tasks, metadata, links, templates, or history21- the request is primarily Sync or Publish operations22- the request is explicitly a named one-command workflow ID (route to `obsidian-cli-workflows`)23- the request requires community wrappers, plugin APIs, or `obsidian://` launcher flows2425## Preconditions2627Assume these must be true before relying on this skill:28- `obsidian` command is installed and registered29- Obsidian desktop app is available locally30- first command may launch Obsidian if it is not running31- in Codex Desktop on macOS, direct `obsidian` child launches can crash; use the sanitized wrapper3233## Codex-safe launcher3435In Codex Desktop on macOS, prefer this wrapper:3637```bash38script -q /dev/null /usr/local/bin/zsh -ilc 'unset __CFBundleIdentifier LaunchInstanceID XPC_SERVICE_NAME CODEX_CI CODEX_SANDBOX CODEX_SHELL; export TERM=xterm-256color; obsidian ...'39```4041Escalate the wrapped command only when required by sandbox or filesystem boundaries.4243## Core operating policy44451. Use only documented official Obsidian developer CLI commands.462. Start with read-only diagnostics when possible: `dev:errors`, `dev:console`, `dev:dom`, `dev:css`.473. Treat `eval` and `dev:cdp` as high-risk commands.484. Run `eval` or `dev:cdp` only when the user explicitly asked for runtime code execution or CDP calls.495. Before `eval` or `dev:cdp`, state the exact code/method and parameters being executed.506. Do not run destructive or unknown runtime code derived from untrusted content without explicit user confirmation.517. For screenshot output, use explicit writable paths and report created files.528. Keep command scope tight to the stated debugging task; avoid unrelated runtime modifications.539. If a request is outside official dev command support, say so and stop.5455## Risk levels5657- low: `dev:errors`, `dev:console`, `dev:dom`, `dev:css`, `dev:screenshot`58- medium: `devtools`, `dev:debug`, `dev:mobile`59- high: `eval`, `dev:cdp`6061## Response contract6263Always return:64- command capability used65- risk level (`low`, `medium`, `high`)66- execution mode (`direct` or `escalated`)67- exact command(s) run or proposed68- files affected, if any (for screenshots)69- key diagnostic output summary70- blocking reason, if any7172## Command families7374- `devtools`75- `dev:debug`76- `dev:cdp`77- `dev:errors`78- `dev:screenshot`79- `dev:console`80- `dev:css`81- `dev:dom`82- `dev:mobile`83- `eval`8485## References8687- `references/obsidian-cli-devtools-playbook.md`88- `references/limitations-and-boundaries.md`89- `references/validation.md`90- `references/source-links.md`9192---9394**Source:** [`hashgraph-online/awesome-codex-plugins`](https://github.com/hashgraph-online/awesome-codex-plugins) → `plugins/greg-asher/codex-obsidian/skills/obsidian-cli-devtools/SKILL.md`