DashClaw Platform Intelligence
Shape snapshot: sha1:0ccfae8317832d16a9090c614263b2d7a6693775
This file is auto-generated. Do not edit by hand — regenerate with:
python -m livingcode emit skill --output <path-to-SKILL.md>
Prefer Live Queries
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.
Fallback: no Python, livingcode, or repo checkout
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.
- Read the committed static shape if a repo checkout is reachable:
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.
- Otherwise, treat the snapshot in this SKILL.md as authoritative — it is the
best available source when neither the API nor the repo can be reached.
At a Glance
- 253 active API routes across 62 categories
- 4 required + 139 optional environment variables
- 93 database tables
API Surface
actions
DELETE, GET, POST /api/actions
GET, PATCH /api/actions/[actionId]
GET /api/actions/[actionId]/artifacts
GET /api/actions/[actionId]/graph
GET /api/actions/[actionId]/messages
GET, POST /api/actions/[actionId]/outcome
GET /api/actions/[actionId]/trace
GET /api/actions/costs
GET, POST /api/actions/loops
GET, PATCH /api/actions/loops/[loopId]
GET /api/actions/stats
activity
admin
POST /api/admin/trigger-outcome-sweep
agents
GET /api/agents
GET /api/agents/[agentId]
GET /api/agents/[agentId]/profile
GET, POST /api/agents/connections
POST /api/agents/heartbeat
POST /api/agents/invoke
GET, POST /api/agents/registry
GET, PATCH /api/agents/registry/[id]
GET, POST /api/agents/registry/[id]/capabilities
analytics
approvals
POST /api/approvals/[actionId]
artifacts
GET, POST /api/artifacts
DELETE, GET /api/artifacts/[artifactId]
POST /api/artifacts/evidence-bundle
assumptions
GET, POST /api/assumptions
GET, PATCH /api/assumptions/[assumptionId]
auth
- /api/auth/[...nextauth]
GET /api/auth/config
DELETE, POST /api/auth/local
behavior
GET, POST /api/behavior/recorder
GET /api/behavior/samples
POST /api/behavior/simulate
GET, POST /api/behavior/suggestions
billing
POST /api/billing/checkout
GET /api/billing/portal
capabilities
GET, POST /api/capabilities
DELETE, GET, PATCH /api/capabilities/[capabilityId]
GET, POST /api/capabilities/[capabilityId]/access
DELETE /api/capabilities/[capabilityId]/access/[ruleId]
GET /api/capabilities/[capabilityId]/access/check
GET /api/capabilities/[capabilityId]/health
GET /api/capabilities/[capabilityId]/history
POST /api/capabilities/[capabilityId]/invoke
POST /api/capabilities/[capabilityId]/test
GET /api/capabilities/health
code-sessions
GET /api/code-sessions/alerts
POST /api/code-sessions/alerts/read-all
POST /api/code-sessions/ingest-jsonl
POST /api/code-sessions/ingest-live
GET /api/code-sessions/manifests/[manifestId]
GET /api/code-sessions/memos
POST /api/code-sessions/memos/regenerate
GET /api/code-sessions/projects
GET /api/code-sessions/projects/[projectId]/sessions
GET /api/code-sessions/sessions/[sessionId]
GET /api/code-sessions/sessions/[sessionId]/autopsy
GET /api/code-sessions/sessions/[sessionId]/insights
POST /api/code-sessions/sessions/[sessionId]/optimal-files/manifest
POST /api/code-sessions/sessions/[sessionId]/optimal-files/merge-preview
POST /api/code-sessions/sessions/[sessionId]/optimal-files/preview
GET /api/code-sessions/subagent-roi
compliance
GET /api/compliance/evidence
GET, POST /api/compliance/exports
DELETE, GET /api/compliance/exports/[exportId]
GET /api/compliance/exports/[exportId]/download
GET /api/compliance/frameworks
GET /api/compliance/gaps
GET /api/compliance/map
GET /api/compliance/report
GET, POST /api/compliance/schedules
DELETE, PATCH /api/compliance/schedules/[scheduleId]
GET /api/compliance/trends
cron
GET /api/cron/code-session-cache-crater
GET /api/cron/code-session-weekly-memo
GET /api/cron/integration-health
GET /api/cron/jti-sweep
GET /api/cron/learning-episodes-backfill
GET /api/cron/learning-recommendations
GET /api/cron/memory-maintenance
GET /api/cron/outcome-sweep
GET /api/cron/policy-suggestions
GET /api/cron/reset-meters
POST /api/cron/routing-maintenance
GET /api/cron/signals
discord
POST /api/discord/interactions
docs
doctor
GET /api/doctor
POST /api/doctor/fix
drift
GET, POST /api/drift/alerts
DELETE, PATCH /api/drift/alerts/[alertId]
GET /api/drift/metrics
GET /api/drift/snapshots
GET /api/drift/stats
evaluations
GET, POST /api/evaluations
GET, POST /api/evaluations/runs
GET, PATCH /api/evaluations/runs/[runId]
GET, POST /api/evaluations/scorers
DELETE, PATCH /api/evaluations/scorers/[scorerId]
POST /api/evaluations/scorers/preview
GET /api/evaluations/stats
finops
guard
GET, POST /api/guard
GET /api/guard/decisions
handoffs
GET, POST /api/handoffs
GET /api/handoffs/[id]
POST /api/handoffs/[id]/consume
GET /api/handoffs/latest
health
hosted
GET /api/hosted/capacity
POST /api/hosted/cleanup
GET, POST /api/hosted/workspaces
DELETE, GET /api/hosted/workspaces/[workspaceId]
identities
GET, POST /api/identities
DELETE /api/identities/[agentId]
integrations
GET /api/integrations/health
POST /api/integrations/health/refresh
integrity
GET /api/integrity/jwks
POST /api/integrity/verify
invite
GET, POST /api/invite/[token]
keys
DELETE, GET, POST /api/keys
GET /api/keys/reveal
knowledge
GET, POST /api/knowledge/collections
DELETE, GET, PATCH /api/knowledge/collections/[collectionId]
GET, POST /api/knowledge/collections/[collectionId]/items
POST /api/knowledge/collections/[collectionId]/search
POST /api/knowledge/collections/[collectionId]/sync
learning
GET, POST /api/learning
GET, POST /api/learning/analytics/curves
GET /api/learning/analytics/maturity
GET /api/learning/analytics/summary
GET, POST /api/learning/analytics/velocity
GET /api/learning/code-signals
GET /api/learning/export
GET /api/learning/lessons
GET, POST /api/learning/recommendations
PATCH /api/learning/recommendations/[recommendationId]
POST /api/learning/recommendations/events
GET /api/learning/recommendations/metrics
GET, POST /api/learning/suggestions
marketing
POST /api/marketing/event
mcp
messages
GET, PATCH, POST /api/messages
GET /api/messages/attachments
GET, PATCH, POST /api/messages/threads
GET /api/messages/threads/[threadId]
model-strategies
GET, POST /api/model-strategies
DELETE, GET, PATCH /api/model-strategies/[strategyId]
POST /api/model-strategies/[strategyId]/complete
oauth
GET, POST /api/oauth/authorize
GET /api/oauth/metadata/authorization-server
GET /api/oauth/metadata/protected-resource
POST /api/oauth/register
POST /api/oauth/token
operations
GET /api/operations/feed
GET /api/operations/summary
orgs
GET, POST /api/orgs
GET, PATCH /api/orgs/[orgId]
DELETE, GET, POST /api/orgs/[orgId]/keys
pairings
GET, POST /api/pairings
GET, PATCH /api/pairings/[pairingId]
POST /api/pairings/[pairingId]/approve
policies
DELETE, GET, PATCH, POST /api/policies
POST /api/policies/generate
POST /api/policies/import
GET /api/policies/modes
POST /api/policies/modes/import
POST /api/policies/modes/preview
GET /api/policies/proof
POST /api/policies/simulate
GET /api/policies/summary
GET /api/policies/templates
POST /api/policies/test
posture
GET /api/posture
GET /api/posture/findings
POST /api/posture/findings/[key]/resolve
POST /api/posture/scan
prompts
GET /api/prompts/agent-connect/raw
POST /api/prompts/render
GET /api/prompts/runs
GET /api/prompts/sdk-coverage/raw
GET /api/prompts/server-setup/raw
GET /api/prompts/stats
GET, POST /api/prompts/templates
DELETE, GET, PATCH /api/prompts/templates/[templateId]
GET, POST /api/prompts/templates/[templateId]/versions
GET, POST /api/prompts/templates/[templateId]/versions/[versionId]
reputation
GET /api/reputation/agents/[agentId]
GET /api/reputation/agents/[agentId]/events
GET /api/reputation/agents/[agentId]/receipt
POST /api/reputation/agents/[agentId]/recompute
GET /api/reputation/agents/[agentId]/summary
GET /api/reputation/leaderboard
POST /api/reputation/verify
scoring
POST /api/scoring/calibrate
GET, POST /api/scoring/profiles
DELETE, GET, PATCH /api/scoring/profiles/[profileId]
POST /api/scoring/profiles/[profileId]/dimensions
DELETE, PATCH /api/scoring/profiles/[profileId]/dimensions/[dimensionId]
GET, POST /api/scoring/risk-templates
DELETE, PATCH /api/scoring/risk-templates/[templateId]
GET, POST /api/scoring/score
secrets
GET, POST /api/secrets
DELETE, PATCH /api/secrets/[id]
GET /api/secrets/rotation-due
security
GET, POST /api/security/prompt-injection
POST /api/security/scan
GET /api/security/status
session
GET /api/session/effective
sessions
GET, POST /api/sessions
GET, PATCH /api/sessions/[sessionId]
GET /api/sessions/[sessionId]/events
settings
DELETE, GET, POST /api/settings
GET /api/settings/llm-status
POST /api/settings/test
setup
POST /api/setup/live-proof
POST /api/setup/migrate
POST /api/setup/ping
GET /api/setup/proof
GET /api/setup/status
signals
skills
POST /api/skills/scan
GET /api/skills/scans/[id]
stream
swarm
GET /api/swarm/graph
GET /api/swarm/link
team
GET /api/team
DELETE, PATCH /api/team/[userId]
DELETE, GET, POST /api/team/invite
telegram
POST /api/telegram/webhook
usage
GET /api/usage
GET /api/usage/costs
webhooks
DELETE, GET, POST /api/webhooks
GET /api/webhooks/[webhookId]/deliveries
POST /api/webhooks/[webhookId]/test
POST /api/webhooks/stripe
widget
workflows
POST /api/workflows/draft
GET, POST /api/workflows/templates
DELETE, GET, PATCH /api/workflows/templates/[templateId]
POST /api/workflows/templates/[templateId]/duplicate
POST /api/workflows/templates/[templateId]/execute
POST /api/workflows/templates/[templateId]/launch
GET /api/workflows/templates/[templateId]/runs
GET /api/workflows/templates/[templateId]/runs/[runActionId]
POST /api/workflows/templates/[templateId]/runs/[runActionId]/cancel
POST /api/workflows/templates/[templateId]/runs/[runActionId]/resume
Required Environment Variables
These must be set — DashClaw will fail to start without them.
DASHCLAW_API_KEY - referenced in 56 file(s)
DATABASE_URL - referenced in 92 file(s)
ENCRYPTION_KEY - referenced in 4 file(s)
NEXTAUTH_SECRET - referenced in 5 file(s)
Optional Environment Variables
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)
ANTHROPIC_MODEL (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_BEHAVIOR_SAMPLES_DIR (undocumented)
DASHCLAW_BEHAVIOR_SAMPLES_ENABLED (undocumented)
DASHCLAW_CLOSED_ENROLLMENT (undocumented)
DASHCLAW_DB_DRIVER (undocumented)
DASHCLAW_DB_POOL_MAX (undocumented)
DASHCLAW_DISABLE_RATE_LIMIT (undocumented)
DASHCLAW_GUARD_FALLBACK (undocumented)
DASHCLAW_GUARD_UNAVAILABLE_POLICY (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_SUPPRESS_LEGACY_WARNING (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_MAX_ACTIVE_TRIALS (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_URL
NEXT_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)
Database Tables
All 93 tables defined in schema/schema.js (Drizzle ORM):
action_embeddings
action_records
activity_logs
agent_connections
agent_identities
agent_messages
agent_pairings
agent_presence
agent_schedules
agent_sessions
api_keys
approval_notifications
assumptions
calendar_events
code_optimal_file_manifests
code_projects
code_session_alerts
code_session_handoffs
code_session_memos
code_session_messages
code_session_signals
code_session_tool_uses
code_sessions
compliance_snapshots
contacts
content
context_entries
context_points
daily_totals
decisions
drift_alerts
drift_baselines
drift_snapshots
entities
eval_runs
eval_scorers
eval_scores
executions
feedback
goals
governed_secrets
guard_decisions
guard_policies
guardrails_test_runs
health_snapshots
ideas
interactions
jwt_replay_log
learning_curves
learning_episodes
learning_recommendation_events
learning_recommendations
learning_velocity
message_threads
milestones
notification_preferences
oauth_access_tokens
oauth_authorization_codes
oauth_clients
open_loops
organizations
posture_findings_state
posture_snapshots
profile_scores
prompt_runs
prompt_templates
prompt_versions
risk_templates
routing_agent_metrics
routing_agents
routing_decisions
routing_tasks
scheduled_jobs
scoring_dimensions
scoring_profiles
server_signing_keys
session_events
shared_docs
skill_scan_results
snippets
token_budgets
token_snapshots
topics
usage_meters
user_approaches
user_moods
user_observations
user_preferences
users
waitlist
webhook_deliveries
webhooks
workflows
Signal Types
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_spike
branch_stale
cost_exceeded
green_insufficient
integration_health_changed
integration_mismatch
lost_confirmation
mcp_degraded
stale_action
test
Detecting Drift
To check whether this snapshot matches the current codebase:
python -m livingcode diff
If the diff shows changes, this skill is stale — regenerate it.
1---2name: dashclaw-platform-intelligence3description: DashClaw platform expert for integration, troubleshooting, and governance. Snapshot-based — prefer live queries via `python -m livingcode query`, or `GET {baseUrl}/api/doctor` when Python/livingcode/the repo are unavailable.4---56# DashClaw Platform Intelligence78**Shape snapshot:** `sha1:0ccfae8317832d16a9090c614263b2d7a6693775`9**This file is auto-generated.** Do not edit by hand — regenerate with:1011```bash12python -m livingcode emit skill --output <path-to-SKILL.md>13```1415## Prefer Live Queries1617The facts below are a snapshot. Before answering any question about DashClaw's current18structure, routes, env vars, or schema — run a live query:1920```bash21python -m livingcode query summary # High-level shape22python -m livingcode query routes # Current API surface23python -m livingcode query env # Current env vars24python -m livingcode query tables # Current schema25python -m livingcode query all --json # Full machine-readable shape26```2728If the snapshot below disagrees with a live query, **trust the live query**.2930### Fallback: no Python, livingcode, or repo checkout3132`python -m livingcode` only works where the livingcode package and the repo33checkout are present (e.g. a developer machine). In OpenClaw / the Claude app34neither exists. When you cannot run the queries above, fall back **in this order**:35361. **`GET {baseUrl}/api/doctor`** — live route/shape health straight from the running37 instance. Requires the workspace API key (`x-api-key: <key>`); returns 401/40338 without it. This is the authoritative live source when the CLI is unavailable.392. **Read the committed static shape** if a repo checkout is reachable:40 `app/lib/doctor/generated/shape.json` (full machine-readable shape) and41 `docs/api-inventory.json` (route inventory). These are regenerated on every42 `npm run livingcode:refresh`, so they track the same facts the queries return.433. **Otherwise, treat the snapshot in this SKILL.md as authoritative** — it is the44 best available source when neither the API nor the repo can be reached.4546## At a Glance4748- **253** active API routes across **62** categories49- **4** required + **139** optional environment variables50- **93** database tables5152## API Surface5354### `actions`5556- `DELETE, GET, POST` `/api/actions`57- `GET, PATCH` `/api/actions/[actionId]`58- `GET` `/api/actions/[actionId]/artifacts`59- `GET` `/api/actions/[actionId]/graph`60- `GET` `/api/actions/[actionId]/messages`61- `GET, POST` `/api/actions/[actionId]/outcome`62- `GET` `/api/actions/[actionId]/trace`63- `GET` `/api/actions/costs`64- `GET, POST` `/api/actions/loops`65- `GET, PATCH` `/api/actions/loops/[loopId]`66- `GET` `/api/actions/stats`6768### `activity`6970- `GET` `/api/activity`7172### `admin`7374- `POST` `/api/admin/trigger-outcome-sweep`7576### `agents`7778- `GET` `/api/agents`79- `GET` `/api/agents/[agentId]`80- `GET` `/api/agents/[agentId]/profile`81- `GET, POST` `/api/agents/connections`82- `POST` `/api/agents/heartbeat`83- `POST` `/api/agents/invoke`84- `GET, POST` `/api/agents/registry`85- `GET, PATCH` `/api/agents/registry/[id]`86- `GET, POST` `/api/agents/registry/[id]/capabilities`8788### `analytics`8990- `GET` `/api/analytics`9192### `approvals`9394- `POST` `/api/approvals/[actionId]`9596### `artifacts`9798- `GET, POST` `/api/artifacts`99- `DELETE, GET` `/api/artifacts/[artifactId]`100- `POST` `/api/artifacts/evidence-bundle`101102### `assumptions`103104- `GET, POST` `/api/assumptions`105- `GET, PATCH` `/api/assumptions/[assumptionId]`106107### `auth`108109- `-` `/api/auth/[...nextauth]`110- `GET` `/api/auth/config`111- `DELETE, POST` `/api/auth/local`112113### `behavior`114115- `GET, POST` `/api/behavior/recorder`116- `GET` `/api/behavior/samples`117- `POST` `/api/behavior/simulate`118- `GET, POST` `/api/behavior/suggestions`119120### `billing`121122- `POST` `/api/billing/checkout`123- `GET` `/api/billing/portal`124125### `capabilities`126127- `GET, POST` `/api/capabilities`128- `DELETE, GET, PATCH` `/api/capabilities/[capabilityId]`129- `GET, POST` `/api/capabilities/[capabilityId]/access`130- `DELETE` `/api/capabilities/[capabilityId]/access/[ruleId]`131- `GET` `/api/capabilities/[capabilityId]/access/check`132- `GET` `/api/capabilities/[capabilityId]/health`133- `GET` `/api/capabilities/[capabilityId]/history`134- `POST` `/api/capabilities/[capabilityId]/invoke`135- `POST` `/api/capabilities/[capabilityId]/test`136- `GET` `/api/capabilities/health`137138### `code-sessions`139140- `GET` `/api/code-sessions/alerts`141- `POST` `/api/code-sessions/alerts/read-all`142- `POST` `/api/code-sessions/ingest-jsonl`143- `POST` `/api/code-sessions/ingest-live`144- `GET` `/api/code-sessions/manifests/[manifestId]`145- `GET` `/api/code-sessions/memos`146- `POST` `/api/code-sessions/memos/regenerate`147- `GET` `/api/code-sessions/projects`148- `GET` `/api/code-sessions/projects/[projectId]/sessions`149- `GET` `/api/code-sessions/sessions/[sessionId]`150- `GET` `/api/code-sessions/sessions/[sessionId]/autopsy`151- `GET` `/api/code-sessions/sessions/[sessionId]/insights`152- `POST` `/api/code-sessions/sessions/[sessionId]/optimal-files/manifest`153- `POST` `/api/code-sessions/sessions/[sessionId]/optimal-files/merge-preview`154- `POST` `/api/code-sessions/sessions/[sessionId]/optimal-files/preview`155- `GET` `/api/code-sessions/subagent-roi`156157### `compliance`158159- `GET` `/api/compliance/evidence`160- `GET, POST` `/api/compliance/exports`161- `DELETE, GET` `/api/compliance/exports/[exportId]`162- `GET` `/api/compliance/exports/[exportId]/download`163- `GET` `/api/compliance/frameworks`164- `GET` `/api/compliance/gaps`165- `GET` `/api/compliance/map`166- `GET` `/api/compliance/report`167- `GET, POST` `/api/compliance/schedules`168- `DELETE, PATCH` `/api/compliance/schedules/[scheduleId]`169- `GET` `/api/compliance/trends`170171### `cron`172173- `GET` `/api/cron/code-session-cache-crater`174- `GET` `/api/cron/code-session-weekly-memo`175- `GET` `/api/cron/integration-health`176- `GET` `/api/cron/jti-sweep`177- `GET` `/api/cron/learning-episodes-backfill`178- `GET` `/api/cron/learning-recommendations`179- `GET` `/api/cron/memory-maintenance`180- `GET` `/api/cron/outcome-sweep`181- `GET` `/api/cron/policy-suggestions`182- `GET` `/api/cron/reset-meters`183- `POST` `/api/cron/routing-maintenance`184- `GET` `/api/cron/signals`185186### `discord`187188- `POST` `/api/discord/interactions`189190### `docs`191192- `GET` `/api/docs/raw`193194### `doctor`195196- `GET` `/api/doctor`197- `POST` `/api/doctor/fix`198199### `drift`200201- `GET, POST` `/api/drift/alerts`202- `DELETE, PATCH` `/api/drift/alerts/[alertId]`203- `GET` `/api/drift/metrics`204- `GET` `/api/drift/snapshots`205- `GET` `/api/drift/stats`206207### `evaluations`208209- `GET, POST` `/api/evaluations`210- `GET, POST` `/api/evaluations/runs`211- `GET, PATCH` `/api/evaluations/runs/[runId]`212- `GET, POST` `/api/evaluations/scorers`213- `DELETE, PATCH` `/api/evaluations/scorers/[scorerId]`214- `POST` `/api/evaluations/scorers/preview`215- `GET` `/api/evaluations/stats`216217### `finops`218219- `GET` `/api/finops/spend`220221### `guard`222223- `GET, POST` `/api/guard`224- `GET` `/api/guard/decisions`225226### `handoffs`227228- `GET, POST` `/api/handoffs`229- `GET` `/api/handoffs/[id]`230- `POST` `/api/handoffs/[id]/consume`231- `GET` `/api/handoffs/latest`232233### `health`234235- `GET` `/api/health`236237### `hosted`238239- `GET` `/api/hosted/capacity`240- `POST` `/api/hosted/cleanup`241- `GET, POST` `/api/hosted/workspaces`242- `DELETE, GET` `/api/hosted/workspaces/[workspaceId]`243244### `identities`245246- `GET, POST` `/api/identities`247- `DELETE` `/api/identities/[agentId]`248249### `integrations`250251- `GET` `/api/integrations/health`252- `POST` `/api/integrations/health/refresh`253254### `integrity`255256- `GET` `/api/integrity/jwks`257- `POST` `/api/integrity/verify`258259### `invite`260261- `GET, POST` `/api/invite/[token]`262263### `keys`264265- `DELETE, GET, POST` `/api/keys`266- `GET` `/api/keys/reveal`267268### `knowledge`269270- `GET, POST` `/api/knowledge/collections`271- `DELETE, GET, PATCH` `/api/knowledge/collections/[collectionId]`272- `GET, POST` `/api/knowledge/collections/[collectionId]/items`273- `POST` `/api/knowledge/collections/[collectionId]/search`274- `POST` `/api/knowledge/collections/[collectionId]/sync`275276### `learning`277278- `GET, POST` `/api/learning`279- `GET, POST` `/api/learning/analytics/curves`280- `GET` `/api/learning/analytics/maturity`281- `GET` `/api/learning/analytics/summary`282- `GET, POST` `/api/learning/analytics/velocity`283- `GET` `/api/learning/code-signals`284- `GET` `/api/learning/export`285- `GET` `/api/learning/lessons`286- `GET, POST` `/api/learning/recommendations`287- `PATCH` `/api/learning/recommendations/[recommendationId]`288- `POST` `/api/learning/recommendations/events`289- `GET` `/api/learning/recommendations/metrics`290- `GET, POST` `/api/learning/suggestions`291292### `marketing`293294- `POST` `/api/marketing/event`295296### `mcp`297298- `POST` `/api/mcp`299300### `messages`301302- `GET, PATCH, POST` `/api/messages`303- `GET` `/api/messages/attachments`304- `GET, PATCH, POST` `/api/messages/threads`305- `GET` `/api/messages/threads/[threadId]`306307### `model-strategies`308309- `GET, POST` `/api/model-strategies`310- `DELETE, GET, PATCH` `/api/model-strategies/[strategyId]`311- `POST` `/api/model-strategies/[strategyId]/complete`312313### `oauth`314315- `GET, POST` `/api/oauth/authorize`316- `GET` `/api/oauth/metadata/authorization-server`317- `GET` `/api/oauth/metadata/protected-resource`318- `POST` `/api/oauth/register`319- `POST` `/api/oauth/token`320321### `operations`322323- `GET` `/api/operations/feed`324- `GET` `/api/operations/summary`325326### `orgs`327328- `GET, POST` `/api/orgs`329- `GET, PATCH` `/api/orgs/[orgId]`330- `DELETE, GET, POST` `/api/orgs/[orgId]/keys`331332### `pairings`333334- `GET, POST` `/api/pairings`335- `GET, PATCH` `/api/pairings/[pairingId]`336- `POST` `/api/pairings/[pairingId]/approve`337338### `policies`339340- `DELETE, GET, PATCH, POST` `/api/policies`341- `POST` `/api/policies/generate`342- `POST` `/api/policies/import`343- `GET` `/api/policies/modes`344- `POST` `/api/policies/modes/import`345- `POST` `/api/policies/modes/preview`346- `GET` `/api/policies/proof`347- `POST` `/api/policies/simulate`348- `GET` `/api/policies/summary`349- `GET` `/api/policies/templates`350- `POST` `/api/policies/test`351352### `posture`353354- `GET` `/api/posture`355- `GET` `/api/posture/findings`356- `POST` `/api/posture/findings/[key]/resolve`357- `POST` `/api/posture/scan`358359### `prompts`360361- `GET` `/api/prompts/agent-connect/raw`362- `POST` `/api/prompts/render`363- `GET` `/api/prompts/runs`364- `GET` `/api/prompts/sdk-coverage/raw`365- `GET` `/api/prompts/server-setup/raw`366- `GET` `/api/prompts/stats`367- `GET, POST` `/api/prompts/templates`368- `DELETE, GET, PATCH` `/api/prompts/templates/[templateId]`369- `GET, POST` `/api/prompts/templates/[templateId]/versions`370- `GET, POST` `/api/prompts/templates/[templateId]/versions/[versionId]`371372### `reputation`373374- `GET` `/api/reputation/agents/[agentId]`375- `GET` `/api/reputation/agents/[agentId]/events`376- `GET` `/api/reputation/agents/[agentId]/receipt`377- `POST` `/api/reputation/agents/[agentId]/recompute`378- `GET` `/api/reputation/agents/[agentId]/summary`379- `GET` `/api/reputation/leaderboard`380- `POST` `/api/reputation/verify`381382### `scoring`383384- `POST` `/api/scoring/calibrate`385- `GET, POST` `/api/scoring/profiles`386- `DELETE, GET, PATCH` `/api/scoring/profiles/[profileId]`387- `POST` `/api/scoring/profiles/[profileId]/dimensions`388- `DELETE, PATCH` `/api/scoring/profiles/[profileId]/dimensions/[dimensionId]`389- `GET, POST` `/api/scoring/risk-templates`390- `DELETE, PATCH` `/api/scoring/risk-templates/[templateId]`391- `GET, POST` `/api/scoring/score`392393### `secrets`394395- `GET, POST` `/api/secrets`396- `DELETE, PATCH` `/api/secrets/[id]`397- `GET` `/api/secrets/rotation-due`398399### `security`400401- `GET, POST` `/api/security/prompt-injection`402- `POST` `/api/security/scan`403- `GET` `/api/security/status`404405### `session`406407- `GET` `/api/session/effective`408409### `sessions`410411- `GET, POST` `/api/sessions`412- `GET, PATCH` `/api/sessions/[sessionId]`413- `GET` `/api/sessions/[sessionId]/events`414415### `settings`416417- `DELETE, GET, POST` `/api/settings`418- `GET` `/api/settings/llm-status`419- `POST` `/api/settings/test`420421### `setup`422423- `POST` `/api/setup/live-proof`424- `POST` `/api/setup/migrate`425- `POST` `/api/setup/ping`426- `GET` `/api/setup/proof`427- `GET` `/api/setup/status`428429### `signals`430431- `GET` `/api/signals`432433### `skills`434435- `POST` `/api/skills/scan`436- `GET` `/api/skills/scans/[id]`437438### `stream`439440- `GET` `/api/stream`441442### `swarm`443444- `GET` `/api/swarm/graph`445- `GET` `/api/swarm/link`446447### `team`448449- `GET` `/api/team`450- `DELETE, PATCH` `/api/team/[userId]`451- `DELETE, GET, POST` `/api/team/invite`452453### `telegram`454455- `POST` `/api/telegram/webhook`456457### `usage`458459- `GET` `/api/usage`460- `GET` `/api/usage/costs`461462### `webhooks`463464- `DELETE, GET, POST` `/api/webhooks`465- `GET` `/api/webhooks/[webhookId]/deliveries`466- `POST` `/api/webhooks/[webhookId]/test`467- `POST` `/api/webhooks/stripe`468469### `widget`470471- `GET` `/api/widget/summary`472473### `workflows`474475- `POST` `/api/workflows/draft`476- `GET, POST` `/api/workflows/templates`477- `DELETE, GET, PATCH` `/api/workflows/templates/[templateId]`478- `POST` `/api/workflows/templates/[templateId]/duplicate`479- `POST` `/api/workflows/templates/[templateId]/execute`480- `POST` `/api/workflows/templates/[templateId]/launch`481- `GET` `/api/workflows/templates/[templateId]/runs`482- `GET` `/api/workflows/templates/[templateId]/runs/[runActionId]`483- `POST` `/api/workflows/templates/[templateId]/runs/[runActionId]/cancel`484- `POST` `/api/workflows/templates/[templateId]/runs/[runActionId]/resume`485486## Required Environment Variables487488These must be set — DashClaw will fail to start without them.489490- **`DASHCLAW_API_KEY`** - referenced in 56 file(s)491- **`DATABASE_URL`** - referenced in 92 file(s)492- **`ENCRYPTION_KEY`** - referenced in 4 file(s)493- **`NEXTAUTH_SECRET`** - referenced in 5 file(s)494495## Optional Environment Variables496497These have fallbacks or only activate specific features.498499- `AGENT_ONLINE_WINDOW_MS` *(undocumented)*500- `AGENT_PRIVATE_KEY` *(undocumented)*501- `AGENT_PRIVATE_KEY_JWK` *(undocumented)*502- `ALERT_FROM_EMAIL` *(undocumented)*503- `ALLOWED_ORIGIN` *(undocumented)*504- `ANTHROPIC_API_KEY` *(undocumented)*505- `ANTHROPIC_MODEL` *(undocumented)*506- `API_INVENTORY_VERIFIED_DATE` *(undocumented)*507- `API_SECRET` *(undocumented)*508- `BASE_URL` *(undocumented)*509- `CI` *(undocumented)*510- `CONVERGENCE_BENCH_CONCURRENCY` *(undocumented)*511- `CONVERGENCE_BENCH_ITERATIONS` *(undocumented)*512- `CONVERGENCE_REPLAY_CONNECT_TIMEOUT_MS` *(undocumented)*513- `CONVERGENCE_RETRY_429_MAX` *(undocumented)*514- `CONVERGENCE_RETRY_429_WAIT_MS` *(undocumented)*515- `CONVERGENCE_SSE_SEND_COUNT` *(undocumented)*516- `CONVERGENCE_VERBOSE` *(undocumented)*517- `CRON_SECRET` *(undocumented)*518- `DASHCLAW_ACT_BINDING` *(undocumented)*519- `DASHCLAW_ACT_BINDING_TYP` *(undocumented)*520- `DASHCLAW_AGENT_ID` *(undocumented)*521- `DASHCLAW_ALERTS_DISCORD` *(undocumented)*522- `DASHCLAW_ALERTS_TELEGRAM` *(undocumented)*523- `DASHCLAW_ALLOWED_ISSUER` *(undocumented)*524- `DASHCLAW_API_KEY_ORG` *(undocumented)*525- `DASHCLAW_BASE_URL` *(undocumented)*526- `DASHCLAW_BEHAVIOR_SAMPLES_DIR` *(undocumented)*527- `DASHCLAW_BEHAVIOR_SAMPLES_ENABLED` *(undocumented)*528- `DASHCLAW_CLOSED_ENROLLMENT` *(undocumented)*529- `DASHCLAW_DB_DRIVER` *(undocumented)*530- `DASHCLAW_DB_POOL_MAX` *(undocumented)*531- `DASHCLAW_DISABLE_RATE_LIMIT` *(undocumented)*532- `DASHCLAW_GUARD_FALLBACK` *(undocumented)*533- `DASHCLAW_GUARD_UNAVAILABLE_POLICY` *(undocumented)*534- `DASHCLAW_HOSTED` *(undocumented)*535- `DASHCLAW_JTI_MAX_TTL_SECONDS` *(undocumented)*536- `DASHCLAW_JTI_REPLAY_PROTECTION` *(undocumented)*537- `DASHCLAW_JWT_AUDIENCE` *(undocumented)*538- `DASHCLAW_LOCAL_ADMIN_PASSWORD` *(undocumented)*539- `DASHCLAW_MAX_ORG_ATTACHMENT_BYTES` *(undocumented)*540- `DASHCLAW_MODE` *(undocumented)*541- `DASHCLAW_NEW_CONNECT_WEBHOOK` *(undocumented)*542- `DASHCLAW_PAIRING_TTL_MINUTES` *(undocumented)*543- `DASHCLAW_RATE_LIMIT_MAX` *(undocumented)*544- `DASHCLAW_RATE_LIMIT_WINDOW_MS` *(undocumented)*545- `DASHCLAW_SIGNING_KEY_JWK` *(undocumented)*546- `DASHCLAW_SUPPRESS_LEGACY_WARNING` *(undocumented)*547- `DASHCLAW_URL` *(undocumented)*548- `DISABLE_PROMPT_INJECTION_SCAN` *(undocumented)*549- `DISCORD_APPROVER_ORG_ID` *(undocumented)*550- `DISCORD_APPROVER_USER_ID` *(undocumented)*551- `DISCORD_BOT_TOKEN` *(undocumented)*552- `DISCORD_PUBLIC_KEY` *(undocumented)*553- `ENFORCE_AGENT_SIGNATURES` *(undocumented)*554- `GITHUB_CLIENT_ID` *(undocumented)*555- `GITHUB_CLIENT_SECRET` *(undocumented)*556- `GITHUB_ID` *(undocumented)*557- `GITHUB_REPO_NAME` *(undocumented)*558- `GITHUB_REPO_OWNER` *(undocumented)*559- `GITHUB_SECRET` *(undocumented)*560- `GITHUB_TOKEN` *(undocumented)*561- `GOOGLE_AI_API_KEY` *(undocumented)*562- `GOOGLE_CLIENT_ID` *(undocumented)*563- `GOOGLE_CLIENT_SECRET` *(undocumented)*564- `GOOGLE_ID` *(undocumented)*565- `GOOGLE_SECRET` *(undocumented)*566- `GUARD_LLM_BASE_URL` *(undocumented)*567- `GUARD_LLM_KEY` *(undocumented)*568- `GUARD_LLM_MODEL` *(undocumented)*569- `GUARD_WEBHOOK_SECRET` *(undocumented)*570- `HOSTED_CLEANUP_SECRET` *(undocumented)*571- `HOSTED_MAX_ACTIVE_TRIALS` *(undocumented)*572- `HOSTED_PROVISION_MAX_PER_IP_PER_DAY` *(undocumented)*573- `HOSTED_SMOKE_BASE_URL` *(undocumented)*574- `HOSTED_TRIAL_ACTION_CAP` *(undocumented)*575- `HOSTED_TRIAL_DAYS` *(undocumented)*576- `INTEGRATION_DATABASE_URL` *(undocumented)*577- `MOONSHOT_API_KEY` *(undocumented)*578- `NEXTAUTH_URL`579- `NEXT_PUBLIC_` *(undocumented)*580- `NEXT_PUBLIC_APP_URL` *(undocumented)*581- `NEXT_PUBLIC_DASHCLAW_MODE` *(undocumented)*582- `NEXT_PUBLIC_DASHCLAW_VERSION` *(undocumented)*583- `NEXT_PUBLIC_ENABLE_VERCEL_ANALYTICS` *(undocumented)*584- `NEXT_PUBLIC_PLUGIN_MANIFEST_VERSION` *(undocumented)*585- `NEXT_PUBLIC_SDK_NODE_VERSION` *(undocumented)*586- `NEXT_PUBLIC_SDK_PYTHON_VERSION` *(undocumented)*587- `NEXT_PUBLIC_TURNSTILE_SITE_KEY` *(undocumented)*588- `NODE_ENV` *(undocumented)*589- `OIDC_AUTHORIZATION_URL` *(undocumented)*590- `OIDC_CLIENT_ID` *(undocumented)*591- `OIDC_CLIENT_SECRET` *(undocumented)*592- `OIDC_DISPLAY_NAME` *(undocumented)*593- `OIDC_ISSUER_URL` *(undocumented)*594- `OIDC_TOKEN_URL` *(undocumented)*595- `OIDC_USERINFO_URL` *(undocumented)*596- `OPENAI_API_KEY` *(undocumented)*597- `ORG_ID` *(undocumented)*598- `PORT` *(undocumented)*599- `PW_BASE_URL` *(undocumented)*600- `PW_SMOKE_PORT` *(undocumented)*601- `PYTHON` *(undocumented)*602- `PYTHONPATH` *(undocumented)*603- `REALTIME_BACKEND` *(undocumented)*604- `REALTIME_ENFORCE_REDIS` *(undocumented)*605- `REALTIME_MAX_LISTENERS` *(undocumented)*606- `REALTIME_MEMORY_MAX_LISTENERS` *(undocumented)*607- `REALTIME_REDIS_URL` *(undocumented)*608- `REALTIME_REPLAY_MAX_EVENTS` *(undocumented)*609- `REALTIME_REPLAY_WINDOW_SECONDS` *(undocumented)*610- `REDIS_URL` *(undocumented)*611- `RESEARCH_API_KEY` *(undocumented)*612- `RESEARCH_API_URL` *(undocumented)*613- `RESEND_API_KEY` *(undocumented)*614- `S` *(undocumented)*615- `SERVICE_NAME` *(undocumented)*616- `STARTUP_SMOKE_BASE_URL` *(undocumented)*617- `STARTUP_SMOKE_INTERVAL_MS` *(undocumented)*618- `STARTUP_SMOKE_TIMEOUT_MS` *(undocumented)*619- `STRIPE_PRICE_BUSINESS` *(undocumented)*620- `STRIPE_PRICE_PRO` *(undocumented)*621- `STRIPE_SECRET_KEY` *(undocumented)*622- `STRIPE_WEBHOOK_SECRET` *(undocumented)*623- `TARGET_ENV` *(undocumented)*624- `TELEGRAM_ADMIN_CHAT_ID` *(undocumented)*625- `TELEGRAM_APPROVER_ORG_ID` *(undocumented)*626- `TELEGRAM_BOT_TOKEN` *(undocumented)*627- `TELEGRAM_WEBHOOK_SECRET` *(undocumented)*628- `TEST_BASE_URL` *(undocumented)*629- `TRUST_PROXY` *(undocumented)*630- `TURNSTILE_SECRET_KEY` *(undocumented)*631- `UPSTASH_REDIS_REST_TOKEN` *(undocumented)*632- `UPSTASH_REDIS_REST_URL` *(undocumented)*633- `VERCEL` *(undocumented)*634- `VERCEL_PROJECT_PRODUCTION_URL` *(undocumented)*635- `VERCEL_URL` *(undocumented)*636- `WEBHOOK_ALLOWED_DOMAINS` *(undocumented)*637- `X` *(undocumented)*638639## Database Tables640641All 93 tables defined in `schema/schema.js` (Drizzle ORM):642643- `action_embeddings`644- `action_records`645- `activity_logs`646- `agent_connections`647- `agent_identities`648- `agent_messages`649- `agent_pairings`650- `agent_presence`651- `agent_schedules`652- `agent_sessions`653- `api_keys`654- `approval_notifications`655- `assumptions`656- `calendar_events`657- `code_optimal_file_manifests`658- `code_projects`659- `code_session_alerts`660- `code_session_handoffs`661- `code_session_memos`662- `code_session_messages`663- `code_session_signals`664- `code_session_tool_uses`665- `code_sessions`666- `compliance_snapshots`667- `contacts`668- `content`669- `context_entries`670- `context_points`671- `daily_totals`672- `decisions`673- `drift_alerts`674- `drift_baselines`675- `drift_snapshots`676- `entities`677- `eval_runs`678- `eval_scorers`679- `eval_scores`680- `executions`681- `feedback`682- `goals`683- `governed_secrets`684- `guard_decisions`685- `guard_policies`686- `guardrails_test_runs`687- `health_snapshots`688- `ideas`689- `interactions`690- `jwt_replay_log`691- `learning_curves`692- `learning_episodes`693- `learning_recommendation_events`694- `learning_recommendations`695- `learning_velocity`696- `message_threads`697- `milestones`698- `notification_preferences`699- `oauth_access_tokens`700- `oauth_authorization_codes`701- `oauth_clients`702- `open_loops`703- `organizations`704- `posture_findings_state`705- `posture_snapshots`706- `profile_scores`707- `prompt_runs`708- `prompt_templates`709- `prompt_versions`710- `risk_templates`711- `routing_agent_metrics`712- `routing_agents`713- `routing_decisions`714- `routing_tasks`715- `scheduled_jobs`716- `scoring_dimensions`717- `scoring_profiles`718- `server_signing_keys`719- `session_events`720- `shared_docs`721- `skill_scan_results`722- `snippets`723- `token_budgets`724- `token_snapshots`725- `topics`726- `usage_meters`727- `user_approaches`728- `user_moods`729- `user_observations`730- `user_preferences`731- `users`732- `waitlist`733- `webhook_deliveries`734- `webhooks`735- `workflows`736737## Signal Types738739These 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).740741- `autonomy_spike`742- `branch_stale`743- `cost_exceeded`744- `green_insufficient`745- `integration_health_changed`746- `integration_mismatch`747- `lost_confirmation`748- `mcp_degraded`749- `stale_action`750- `test`751752## Detecting Drift753754To check whether this snapshot matches the current codebase:755756```bash757python -m livingcode diff758```759760If the diff shows changes, this skill is stale — regenerate it.