From dev-tasks
Audit a consumer's dev-tasks setup. Verifies project-config is valid, MONDAY_API_KEY resolves, People-board lookup works for the current whoami, required Monday boards are reachable, and policy hooks are in place. Run after first install or when something feels off.
How this skill is triggered — by the user, by Claude, or both
Slash command
/dev-tasks:doctorThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Read-only. Never invoke a mutating MCP tool as a test.
Read-only. Never invoke a mutating MCP tool as a test.
Mark PASS / FAIL / WARN with a one-line note each.
project-config.json present and schema-valid.claude/project-config.json exists at consumer repo root${CLAUDE_PLUGIN_ROOT}/schemas/project-config.schema.json (fail soft if jsonschema not installed — just verify JSON parses)version, monday.productIdFAIL → tell user to copy ${CLAUDE_PLUGIN_ROOT}/templates/starter-project-config.json and fill in monday.productId + git.defaultBase.
Non-default values for:
git.defaultBase — actual integration branchmonday.productId — real Monday product ID, not placeholderenvironments.uat.url — non-empty if project has UATmonday.v1MilestoneEpicIds — array (warn if empty + product pre-1.0)MONDAY_API_KEY resolves[ -n "$MONDAY_API_KEY" ] && echo set || echo unset. Unset → FAIL, user needs export MONDAY_API_KEY=... in shell rc.
mcp__plugin_dev-tasks_dev-tasks__listProducts. Returns list → PASS. Error → FAIL with message.
monday.productId resolves to a real productCheck listProducts output for matching id. Not found → FAIL (stale/wrong productId).
whoami resolves on the People boardRead-only check on People board (default 1612664689):
mcp__claude_ai_monday_com__get_board_items_page available: call with columnIds: ["person", "email__1", "text6__1", "text_mm3ffcjd", "status"]. Check text_mm3ffcjd FIRST (canonical whoami column). Fall back priority: email local-part → person display → name first-word.1612664689 — their record needs whoami in text_mm3ffcjd, non-empty text6__1 (People ID), status != Past.text_mm3ffcjd empty → WARN (populate to lock in authoritative mapping).These must run regardless of hooks.enabled[]:
bash-guard.sh at ${CLAUDE_PLUGIN_ROOT}/hooks/bash-guard.sh — top of file must NOT contain hook_enabled "bash-guard" || exit 0stop-ci-green-check.sh — sameIf either has the hook_enabled line → FAIL (older plugin version where these were opt-in). Reinstall plugin.
hooks.enabled[] doesn't list policy hooksproject-config.json must NOT list bash-guard or stop-ci-green-check under hooks.enabled[]. Always-on now; listing is redundant.
Read ${CLAUDE_PLUGIN_ROOT}/.claude-plugin/plugin.json → extract version. Report. If user expected different, suggest /plugin uninstall + /plugin install.
gh needs CI query for /ship-pr Phase 6 and /babysit-prs. Two paths:
gh api repos/<owner>/<repo>/actions/runs?per_page=1 returns 200. Requires workflow scope (classic) or Actions: Read (fine-grained).gh pr checks <PR> returns 200. Requires repo scope.GitHub removed Checks: Read from fine-grained PATs (community discussion #129512) — don't look for it; use Path A's Actions: Read.
How to check:
gh auth status (no --show-token).gh api repos/STEP-Network/dev-tasks/actions/runs?per_page=1 >/dev/null 2>&1 && echo OK.gh pr checks 1 >/dev/null 2>&1 && echo OK.repo + workflow (deprecated but works)Actions: Read (~30 min setup, future-proof)GH_TOKEN and let gh use its OAuth keyring token (gh auth login --web)gh auth status errors entirely (not logged in) → WARN — plugin works without gh but /babysit-prs and /ship-pr Phase 6 won't.
STEP-wide required companion per ai-review-stack.md. Without it: analyzePlan unavailable; Stop hook can't gate on findings; /self-review Check #11 + /ship-pr Step 18b degrade to "Corridor unavailable".
~/.claude/settings.json enabledPlugins for corridor@*.mcp__plugin_corridor_corridor__* (e.g. mcp__plugin_corridor_corridor__listProjects).PASS: corridor@* in enabledPlugins AND MCP tools loaded.
FAIL: missing — instruct user per Corridor's onboarding docs (install source varies). After install: /plugin install corridor@corridor-plugins → /reload-plugins.
WARN: listed but MCP not loaded → restart Claude Code.
# /doctor — Consumer setup audit
Project: <repo basename>
Plugin version: <X.Y.Z>
1. ✅ project-config.json valid
2. ⚠️ environments.uat.url empty — set if product has UAT
3. ✅ MONDAY_API_KEY set
...
Summary: N PASS, N WARN, N FAIL.
If any FAIL: list concrete remediation. Stop on first FAIL and prompt user to fix before re-running.
npx claudepluginhub step-network/dev-tasks --plugin dev-tasksGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.