Help us improve
Share bugs, ideas, or general feedback.
From dashclaw
Exposes the DashClaw platform's routes, schema, and env vars via snapshot and live queries. Use for integration, troubleshooting, and governance — prefers `python -m livingcode query` or REST fallback.
npx claudepluginhub ucsandman/dashclaw --plugin dashclawHow this skill is triggered — by the user, by Claude, or both
Slash command
/dashclaw:dashclaw-platform-intelligenceThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Shape snapshot:** `sha1:b07488c696f76f9a2ef74b73bf9e5824c448bdf2`
Applies 10 pre-set color/font themes or generates custom ones for slides, documents, reports, and HTML landing pages.
Share bugs, ideas, or general feedback.
Shape snapshot: sha1:b07488c696f76f9a2ef74b73bf9e5824c448bdf2
This file is auto-generated. Do not edit by hand — regenerate with:
python -m livingcode emit skill --output <path-to-SKILL.md>
The facts below are a snapshot. Before answering any question about DashClaw's current structure, routes, env vars, or schema — run a live query:
python -m livingcode query summary # High-level shape
python -m livingcode query routes # Current API surface
python -m livingcode query env # Current env vars
python -m livingcode query tables # Current schema
python -m livingcode query all --json # Full machine-readable shape
If the snapshot below disagrees with a live query, trust the live query.
python -m livingcode only works where the livingcode package and the repo
checkout are present (e.g. a developer machine). In OpenClaw / the Claude app
neither exists. When you cannot run the queries above, fall back in this order:
GET {baseUrl}/api/doctor — live route/shape health straight from the running
instance. Requires the workspace API key (x-api-key: <key>); returns 401/403
without it. This is the authoritative live source when the CLI is unavailable.app/lib/doctor/generated/shape.json (full machine-readable shape) and
docs/api-inventory.json (route inventory). These are regenerated on every
npm run livingcode:refresh, so they track the same facts the queries return.actionsDELETE, GET, POST /api/actionsGET, PATCH /api/actions/[actionId]GET /api/actions/[actionId]/artifactsGET /api/actions/[actionId]/graphGET /api/actions/[actionId]/messagesGET, POST /api/actions/[actionId]/outcomeGET /api/actions/[actionId]/traceGET /api/actions/costsGET, POST /api/actions/loopsGET, PATCH /api/actions/loops/[loopId]GET /api/actions/statsactivityGET /api/activityagentsGET /api/agentsGET /api/agents/[agentId]GET /api/agents/[agentId]/profileGET, POST /api/agents/connectionsPOST /api/agents/heartbeatanalyticsGET /api/analyticsapprovalsPOST /api/approvals/[actionId]artifactsGET, POST /api/artifactsDELETE, GET /api/artifacts/[artifactId]POST /api/artifacts/evidence-bundleassumptionsGET, POST /api/assumptionsGET, PATCH /api/assumptions/[assumptionId]auth- /api/auth/[...nextauth]GET /api/auth/configDELETE, POST /api/auth/localbillingPOST /api/billing/checkoutGET /api/billing/portalcapabilitiesGET, POST /api/capabilitiesDELETE, GET, PATCH /api/capabilities/[capabilityId]GET, POST /api/capabilities/[capabilityId]/accessDELETE /api/capabilities/[capabilityId]/access/[ruleId]GET /api/capabilities/[capabilityId]/access/checkGET /api/capabilities/[capabilityId]/healthGET /api/capabilities/[capabilityId]/historyPOST /api/capabilities/[capabilityId]/invokePOST /api/capabilities/[capabilityId]/testGET /api/capabilities/healthcode-sessionsGET /api/code-sessions/alertsPOST /api/code-sessions/alerts/read-allPOST /api/code-sessions/ingest-jsonlPOST /api/code-sessions/ingest-liveGET /api/code-sessions/manifests/[manifestId]GET /api/code-sessions/memosPOST /api/code-sessions/memos/regenerateGET /api/code-sessions/projectsGET /api/code-sessions/projects/[projectId]/sessionsGET /api/code-sessions/sessions/[sessionId]GET /api/code-sessions/sessions/[sessionId]/autopsyGET /api/code-sessions/sessions/[sessionId]/insightsPOST /api/code-sessions/sessions/[sessionId]/optimal-files/manifestPOST /api/code-sessions/sessions/[sessionId]/optimal-files/merge-previewPOST /api/code-sessions/sessions/[sessionId]/optimal-files/previewGET /api/code-sessions/subagent-roicomplianceGET /api/compliance/evidenceGET, POST /api/compliance/exportsDELETE, GET /api/compliance/exports/[exportId]GET /api/compliance/exports/[exportId]/downloadGET /api/compliance/frameworksGET /api/compliance/gapsGET /api/compliance/mapGET /api/compliance/reportGET, POST /api/compliance/schedulesDELETE, PATCH /api/compliance/schedules/[scheduleId]GET /api/compliance/trendscronGET /api/cron/code-session-cache-craterGET /api/cron/code-session-weekly-memoGET /api/cron/integration-healthGET /api/cron/jti-sweepGET /api/cron/learning-episodes-backfillGET /api/cron/learning-recommendationsGET /api/cron/memory-maintenanceGET /api/cron/outcome-sweepGET /api/cron/policy-suggestionsGET /api/cron/reset-metersPOST /api/cron/routing-maintenanceGET /api/cron/signalsdiscordPOST /api/discord/interactionsdocsGET /api/docs/rawdoctorGET /api/doctorPOST /api/doctor/fixdriftGET, POST /api/drift/alertsDELETE, PATCH /api/drift/alerts/[alertId]GET /api/drift/metricsGET /api/drift/snapshotsGET /api/drift/statsevaluationsGET, POST /api/evaluationsGET, POST /api/evaluations/runsGET, PATCH /api/evaluations/runs/[runId]GET, POST /api/evaluations/scorersDELETE, PATCH /api/evaluations/scorers/[scorerId]POST /api/evaluations/scorers/previewGET /api/evaluations/statsguardGET, POST /api/guardGET /api/guard/decisionshandoffsGET, POST /api/handoffsGET /api/handoffs/[id]POST /api/handoffs/[id]/consumeGET /api/handoffs/latesthealthGET /api/healthhostedPOST /api/hosted/cleanupGET, POST /api/hosted/workspacesDELETE, GET /api/hosted/workspaces/[workspaceId]identitiesGET, POST /api/identitiesDELETE /api/identities/[agentId]integrationsGET /api/integrations/healthPOST /api/integrations/health/refreshintegrityGET /api/integrity/jwksPOST /api/integrity/verifykeysDELETE, GET, POST /api/keysGET /api/keys/revealknowledgeGET, POST /api/knowledge/collectionsDELETE, GET, PATCH /api/knowledge/collections/[collectionId]GET, POST /api/knowledge/collections/[collectionId]/itemsPOST /api/knowledge/collections/[collectionId]/searchPOST /api/knowledge/collections/[collectionId]/synclearningGET, POST /api/learningGET, POST /api/learning/analytics/curvesGET /api/learning/analytics/maturityGET /api/learning/analytics/summaryGET, POST /api/learning/analytics/velocityGET /api/learning/code-signalsGET /api/learning/lessonsGET, POST /api/learning/recommendationsPATCH /api/learning/recommendations/[recommendationId]POST /api/learning/recommendations/eventsGET /api/learning/recommendations/metricsGET, POST /api/learning/suggestionsmarketingPOST /api/marketing/eventmcpPOST /api/mcpmessagesGET, PATCH, POST /api/messagesGET /api/messages/attachmentsGET, PATCH, POST /api/messages/threadsGET /api/messages/threads/[threadId]model-strategiesGET, POST /api/model-strategiesDELETE, GET, PATCH /api/model-strategies/[strategyId]POST /api/model-strategies/[strategyId]/completeoauthGET, POST /api/oauth/authorizeGET /api/oauth/metadata/authorization-serverGET /api/oauth/metadata/protected-resourcePOST /api/oauth/registerPOST /api/oauth/tokenoperationsGET /api/operations/feedGET /api/operations/summaryorgsGET, POST /api/orgsGET, PATCH /api/orgs/[orgId]DELETE, GET, POST /api/orgs/[orgId]/keyspairingsGET, POST /api/pairingsGET, PATCH /api/pairings/[pairingId]POST /api/pairings/[pairingId]/approvepoliciesDELETE, GET, PATCH, POST /api/policiesPOST /api/policies/generatePOST /api/policies/importGET /api/policies/proofPOST /api/policies/simulateGET /api/policies/templatesPOST /api/policies/testpromptsGET /api/prompts/agent-connect/rawPOST /api/prompts/renderGET /api/prompts/runsGET /api/prompts/sdk-coverage/rawGET /api/prompts/server-setup/rawGET /api/prompts/statsGET, POST /api/prompts/templatesDELETE, GET, PATCH /api/prompts/templates/[templateId]GET, POST /api/prompts/templates/[templateId]/versionsGET, POST /api/prompts/templates/[templateId]/versions/[versionId]scoringPOST /api/scoring/calibrateGET, POST /api/scoring/profilesDELETE, GET, PATCH /api/scoring/profiles/[profileId]POST /api/scoring/profiles/[profileId]/dimensionsDELETE, PATCH /api/scoring/profiles/[profileId]/dimensions/[dimensionId]GET, POST /api/scoring/risk-templatesDELETE, PATCH /api/scoring/risk-templates/[templateId]GET, POST /api/scoring/scoresecretsGET, POST /api/secretsDELETE, PATCH /api/secrets/[id]GET /api/secrets/rotation-duesecurityGET, POST /api/security/prompt-injectionPOST /api/security/scanGET /api/security/statussessionGET /api/session/effectivesessionsGET, POST /api/sessionsGET, PATCH /api/sessions/[sessionId]GET /api/sessions/[sessionId]/eventssettingsDELETE, GET, POST /api/settingsGET /api/settings/llm-statusPOST /api/settings/testsetupPOST /api/setup/live-proofPOST /api/setup/migratePOST /api/setup/pingGET /api/setup/proofGET /api/setup/statussignalsGET /api/signalsskillsPOST /api/skills/scanGET /api/skills/scans/[id]streamGET /api/streamswarmGET /api/swarm/graphGET /api/swarm/linkteamGET /api/teamDELETE, PATCH /api/team/[userId]DELETE, GET, POST /api/team/invitetelegramPOST /api/telegram/webhookusageGET /api/usageGET /api/usage/costswebhooksDELETE, GET, POST /api/webhooksGET /api/webhooks/[webhookId]/deliveriesPOST /api/webhooks/[webhookId]/testPOST /api/webhooks/stripeworkflowsPOST /api/workflows/draftGET, POST /api/workflows/templatesDELETE, GET, PATCH /api/workflows/templates/[templateId]POST /api/workflows/templates/[templateId]/duplicatePOST /api/workflows/templates/[templateId]/executePOST /api/workflows/templates/[templateId]/launchGET /api/workflows/templates/[templateId]/runsGET /api/workflows/templates/[templateId]/runs/[runActionId]POST /api/workflows/templates/[templateId]/runs/[runActionId]/cancelPOST /api/workflows/templates/[templateId]/runs/[runActionId]/resumeThese must be set — DashClaw will fail to start without them.
DASHCLAW_API_KEY - referenced in 58 file(s)DATABASE_URL - referenced in 87 file(s)ENCRYPTION_KEY - referenced in 4 file(s)NEXTAUTH_SECRET - referenced in 5 file(s)These have fallbacks or only activate specific features.
AGENT_ONLINE_WINDOW_MS (undocumented)AGENT_PRIVATE_KEY (undocumented)AGENT_PRIVATE_KEY_JWK (undocumented)ALERT_FROM_EMAIL (undocumented)ALLOWED_ORIGIN (undocumented)ANTHROPIC_API_KEY (undocumented)API_INVENTORY_VERIFIED_DATE (undocumented)API_SECRET (undocumented)BASE_URL (undocumented)CI (undocumented)CONVERGENCE_BENCH_CONCURRENCY (undocumented)CONVERGENCE_BENCH_ITERATIONS (undocumented)CONVERGENCE_REPLAY_CONNECT_TIMEOUT_MS (undocumented)CONVERGENCE_RETRY_429_MAX (undocumented)CONVERGENCE_RETRY_429_WAIT_MS (undocumented)CONVERGENCE_SSE_SEND_COUNT (undocumented)CONVERGENCE_VERBOSE (undocumented)CRON_SECRET (undocumented)DASHCLAW_ACT_BINDING (undocumented)DASHCLAW_ACT_BINDING_TYP (undocumented)DASHCLAW_AGENT_ID (undocumented)DASHCLAW_ALERTS_DISCORD (undocumented)DASHCLAW_ALERTS_TELEGRAM (undocumented)DASHCLAW_ALLOWED_ISSUER (undocumented)DASHCLAW_API_KEY_ORG (undocumented)DASHCLAW_BASE_URL (undocumented)DASHCLAW_CLOSED_ENROLLMENT (undocumented)DASHCLAW_DB_DRIVER (undocumented)DASHCLAW_DB_POOL_MAX (undocumented)DASHCLAW_DISABLE_RATE_LIMIT (undocumented)DASHCLAW_GUARD_FALLBACK (undocumented)DASHCLAW_HOSTED (undocumented)DASHCLAW_JTI_MAX_TTL_SECONDS (undocumented)DASHCLAW_JTI_REPLAY_PROTECTION (undocumented)DASHCLAW_JWT_AUDIENCE (undocumented)DASHCLAW_LOCAL_ADMIN_PASSWORD (undocumented)DASHCLAW_MAX_ORG_ATTACHMENT_BYTES (undocumented)DASHCLAW_MODE (undocumented)DASHCLAW_NEW_CONNECT_WEBHOOK (undocumented)DASHCLAW_PAIRING_TTL_MINUTES (undocumented)DASHCLAW_RATE_LIMIT_MAX (undocumented)DASHCLAW_RATE_LIMIT_WINDOW_MS (undocumented)DASHCLAW_SIGNING_KEY_JWK (undocumented)DASHCLAW_URL (undocumented)DISABLE_PROMPT_INJECTION_SCAN (undocumented)DISCORD_APPROVER_ORG_ID (undocumented)DISCORD_APPROVER_USER_ID (undocumented)DISCORD_BOT_TOKEN (undocumented)DISCORD_PUBLIC_KEY (undocumented)ENFORCE_AGENT_SIGNATURES (undocumented)GITHUB_CLIENT_ID (undocumented)GITHUB_CLIENT_SECRET (undocumented)GITHUB_ID (undocumented)GITHUB_REPO_NAME (undocumented)GITHUB_REPO_OWNER (undocumented)GITHUB_SECRET (undocumented)GITHUB_TOKEN (undocumented)GOOGLE_AI_API_KEY (undocumented)GOOGLE_CLIENT_ID (undocumented)GOOGLE_CLIENT_SECRET (undocumented)GOOGLE_ID (undocumented)GOOGLE_SECRET (undocumented)GUARD_LLM_BASE_URL (undocumented)GUARD_LLM_KEY (undocumented)GUARD_LLM_MODEL (undocumented)GUARD_WEBHOOK_SECRET (undocumented)HOSTED_CLEANUP_SECRET (undocumented)HOSTED_PROVISION_MAX_PER_IP_PER_DAY (undocumented)HOSTED_SMOKE_BASE_URL (undocumented)HOSTED_TRIAL_ACTION_CAP (undocumented)HOSTED_TRIAL_DAYS (undocumented)INTEGRATION_DATABASE_URL (undocumented)MOONSHOT_API_KEY (undocumented)NEXTAUTH_URLNEXT_PUBLIC_ (undocumented)NEXT_PUBLIC_APP_URL (undocumented)NEXT_PUBLIC_DASHCLAW_MODE (undocumented)NEXT_PUBLIC_DASHCLAW_VERSION (undocumented)NEXT_PUBLIC_ENABLE_VERCEL_ANALYTICS (undocumented)NEXT_PUBLIC_PLUGIN_MANIFEST_VERSION (undocumented)NEXT_PUBLIC_SDK_NODE_VERSION (undocumented)NEXT_PUBLIC_SDK_PYTHON_VERSION (undocumented)NEXT_PUBLIC_TURNSTILE_SITE_KEY (undocumented)NODE_ENV (undocumented)OIDC_AUTHORIZATION_URL (undocumented)OIDC_CLIENT_ID (undocumented)OIDC_CLIENT_SECRET (undocumented)OIDC_DISPLAY_NAME (undocumented)OIDC_ISSUER_URL (undocumented)OIDC_TOKEN_URL (undocumented)OIDC_USERINFO_URL (undocumented)OPENAI_API_KEY (undocumented)ORG_ID (undocumented)PORT (undocumented)PW_BASE_URL (undocumented)PW_SMOKE_PORT (undocumented)PYTHON (undocumented)PYTHONPATH (undocumented)REALTIME_BACKEND (undocumented)REALTIME_ENFORCE_REDIS (undocumented)REALTIME_MAX_LISTENERS (undocumented)REALTIME_MEMORY_MAX_LISTENERS (undocumented)REALTIME_REDIS_URL (undocumented)REALTIME_REPLAY_MAX_EVENTS (undocumented)REALTIME_REPLAY_WINDOW_SECONDS (undocumented)REDIS_URL (undocumented)RESEARCH_API_KEY (undocumented)RESEARCH_API_URL (undocumented)RESEND_API_KEY (undocumented)S (undocumented)SERVICE_NAME (undocumented)STARTUP_SMOKE_BASE_URL (undocumented)STARTUP_SMOKE_INTERVAL_MS (undocumented)STARTUP_SMOKE_TIMEOUT_MS (undocumented)STRIPE_PRICE_BUSINESS (undocumented)STRIPE_PRICE_PRO (undocumented)STRIPE_SECRET_KEY (undocumented)STRIPE_WEBHOOK_SECRET (undocumented)TARGET_ENV (undocumented)TELEGRAM_ADMIN_CHAT_ID (undocumented)TELEGRAM_APPROVER_ORG_ID (undocumented)TELEGRAM_BOT_TOKEN (undocumented)TELEGRAM_WEBHOOK_SECRET (undocumented)TEST_BASE_URL (undocumented)TRUST_PROXY (undocumented)TURNSTILE_SECRET_KEY (undocumented)UPSTASH_REDIS_REST_TOKEN (undocumented)UPSTASH_REDIS_REST_URL (undocumented)VERCEL (undocumented)VERCEL_PROJECT_PRODUCTION_URL (undocumented)VERCEL_URL (undocumented)WEBHOOK_ALLOWED_DOMAINS (undocumented)X (undocumented)All 89 tables defined in schema/schema.js (Drizzle ORM):
action_embeddingsaction_recordsactivity_logsagent_connectionsagent_identitiesagent_messagesagent_pairingsagent_presenceagent_schedulesagent_sessionsapi_keysassumptionscalendar_eventscode_optimal_file_manifestscode_projectscode_session_alertscode_session_handoffscode_session_memoscode_session_messagescode_session_signalscode_session_tool_usescode_sessionscompliance_snapshotscontactscontentcontext_entriescontext_pointsdaily_totalsdecisionsdrift_alertsdrift_baselinesdrift_snapshotsentitieseval_runseval_scoresexecutionsfeedbackgoalsgoverned_secretsguard_decisionsguard_policiesguardrails_test_runshealth_snapshotsideasinteractionsjwt_replay_loglearning_curveslearning_episodeslearning_recommendation_eventslearning_recommendationslearning_velocitymessage_threadsmilestonesnotification_preferencesoauth_access_tokensoauth_authorization_codesoauth_clientsopen_loopsorganizationsprofile_scoresprompt_runsprompt_templatesprompt_versionsrisk_templatesrouting_agent_metricsrouting_agentsrouting_decisionsrouting_tasksscheduled_jobsscoring_dimensionsscoring_profilesserver_signing_keyssession_eventsshared_docsskill_scan_resultssnippetstoken_budgetstoken_snapshotstopicsusage_metersuser_approachesuser_moodsuser_observationsuser_preferencesuserswaitlistwebhook_deliverieswebhooksworkflowsPer-org settings stored in the settings table. Set via PUT /api/settings/:key or the web Settings/Integrations UI. Keys marked sensitive are auto-encrypted at rest.
OPENAI_API_KEYOPENAI_ORG_IDANTHROPIC_API_KEYGROQ_API_KEYTOGETHER_API_KEYREPLICATE_API_TOKENHUGGINGFACE_API_KEYPERPLEXITY_API_KEYELEVENLABS_API_KEYELEVENLABS_VOICE_IDDATABASE_URLSUPABASE_URLSUPABASE_ANON_KEYSUPABASE_SERVICE_KEYPLANETSCALE_URLMONGODB_URIREDIS_URLPINECONE_API_KEYPINECONE_ENVIRONMENTTELEGRAM_BOT_TOKENTELEGRAM_CHAT_IDDISCORD_BOT_TOKENDISCORD_CLIENT_IDDISCORD_GUILD_IDSLACK_BOT_TOKENSLACK_SIGNING_SECRETSLACK_APP_TOKENTWILIO_ACCOUNT_SIDTWILIO_AUTH_TOKENTWILIO_PHONE_NUMBERRESEND_API_KEYSENDGRID_API_KEYGOOGLE_ACCOUNTGOOGLE_CREDENTIALS_PATHNOTION_API_KEYNOTION_PARENT_PAGE_IDLINEAR_API_KEYAIRTABLE_API_KEYAIRTABLE_BASE_IDCALENDLY_API_KEYGITHUB_TOKENGITHUB_USERNAMEVERCEL_TOKENVERCEL_PROJECT_IDRAILWAY_TOKENCLOUDFLARE_API_TOKENCLOUDFLARE_ACCOUNT_IDSENTRY_DSNSENTRY_AUTH_TOKENTWITTER_API_KEYTWITTER_API_SECRETTWITTER_ACCESS_TOKENTWITTER_ACCESS_SECRETBRAVE_API_KEYMOLTBOOK_API_KEYSTRIPE_SECRET_KEYSTRIPE_PUBLISHABLE_KEYSTRIPE_WEBHOOK_SECRETLEMONSQUEEZY_API_KEYDASHCLAW_ALERTS_SLACKDASHCLAW_ALERTS_DISCORDDASHCLAW_ALERTS_LINEARDASHCLAW_ALERTS_GITHUBDASHCLAW_ALERTS_EMAILDASHCLAW_ALERT_EMAILSLACK_CHANNEL_IDSLACK_WEBHOOK_URLDISCORD_WEBHOOK_URLGITHUB_REPOSENDGRID_DEFAULT_TOSENDGRID_FROM_EMAILDASHCLAW_ACTION_COST_THRESHOLDMODEL_PRICINGENFORCE_AGENT_SIGNATURESPREDICTIVE_RISK_ENABLEDPREDICTIVE_RISK_THRESHOLDDASHCLAW_OUTCOME_TIMEOUT_MINUTESEvery mutation that Mission Control reflects and every webhook delivery is keyed on these event strings. Subscribe via GET /api/events (SSE) or register a webhook with the matching events: [...] array.
| Constant | Event |
|---|---|
ACTION_COST_EXCEEDED | action.cost_exceeded |
ACTION_CREATED | action.created |
ACTION_UPDATED | action.updated |
DECISION_CREATED | decision.created |
GOAL_CREATED | goal.created |
GOAL_UPDATED | goal.updated |
GUARD_DECISION_CREATED | guard.decision.created |
LOOP_CREATED | loop.created |
LOOP_UPDATED | loop.updated |
MESSAGE_CREATED | message.created |
POLICY_UPDATED | policy.updated |
SIGNAL_DETECTED | signal.detected |
TASK_ASSIGNED | task.assigned |
TASK_COMPLETED | task.completed |
TOKEN_USAGE | token.usage |
These are the type strings emitted through fireWebhooksForOrg and deliverNativeNotifications. Webhooks can subscribe to any subset by putting the type in their events: [...] array (or use ['all'] for everything).
autonomy_spikebranch_stalecost_exceededgreen_insufficientintegration_health_changedintegration_mismatchlost_confirmationmcp_degradedstale_actiontestEach adapter delivers integration_mismatch, integration_health_changed, and cost_exceeded signals when at least one of its required credential keys is configured. Per-channel opt-out via DASHCLAW_ALERTS_<NAME>=false.
| Adapter | Required credential (any one) |
|---|---|
org_id | DISCORD_WEBHOOK_URL |
email | RESEND_API_KEY, SENDGRID_API_KEY |
github | GITHUB_TOKEN |
linear | LINEAR_API_KEY |
slack | SLACK_BOT_TOKEN, SLACK_WEBHOOK_URL |
To check whether this snapshot matches the current codebase:
python -m livingcode diff
If the diff shows changes, this skill is stale — regenerate it.