Skip to content

Service claw workspace service

github-actions[bot] edited this page Oct 31, 2026 · 5 revisions

claw-workspace-service

Rendered from .ai/manifests/ on every publish. Rules for this service: CLAUDE.md · guide: service guide.

Property Value
Directory apps/claw-workspace-service
Port 4014
Database postgresql
Test files 108 (vitest)
Internal packages @claw/shared-auth, @claw/shared-constants, @claw/shared-entitlements, @claw/shared-rabbitmq, @claw/shared-types, @claw/shared-utilities

Persistence models

  • AiActionApprovalQueue
  • AiActionPolicy
  • AutoSuggestRun
  • DigestSnapshot
  • ImplPromptHandoff
  • SuggestionDeduplication
  • SuggestionTriggerRule
  • SyncCadenceDefault
  • UserAutomationPreference
  • UserDigestPreference
  • UserEmailSignature
  • UserEmailTemplate
  • WebhookDelivery
  • WorkspaceAction
  • WorkspaceChain
  • WorkspaceChainRun
  • WorkspaceChainRunStep
  • WorkspaceChainTemplate
  • WorkspaceConnector
  • WorkspaceConnectorGrant
  • WorkspaceConnectorGrantAuditLog
  • WorkspaceEvent
  • WorkspaceHealthEvent
  • WorkspaceObject
  • WorkspaceObjectLink
  • WorkspaceProviderAppConfig
  • WorkspaceProviderDefinition
  • WorkspaceSyncRun

HTTP API (108)

Method Route Source
GET /health health.controller.ts
POST /internal/workspace/search workspace-search-internal.controller.ts
GET /internal/workspace/sync/health sync-health-internal.controller.ts
GET /workspace/actions workspace-action.controller.ts
POST /workspace/actions workspace-action.controller.ts
GET /workspace/actions/:id workspace-action.controller.ts
PATCH /workspace/actions/:id workspace-action.controller.ts
POST /workspace/actions/:id/approve workspace-action.controller.ts
POST /workspace/actions/:id/reject workspace-action.controller.ts
POST /workspace/actions/bulk-approve workspace-action.controller.ts
POST /workspace/ai-actions/multi-model-review ai-action.controller.ts
POST /workspace/ai-actions/multi-model-review/bundle ai-action.controller.ts
GET /workspace/ai-actions/policies ai-action-policy.controller.ts
POST /workspace/ai-actions/policies ai-action-policy.controller.ts
DELETE /workspace/ai-actions/policies/:id ai-action-policy.controller.ts
GET /workspace/ai-actions/policies/:id ai-action-policy.controller.ts
PATCH /workspace/ai-actions/policies/:id ai-action-policy.controller.ts
GET /workspace/ai-actions/queue ai-action-approval-queue.controller.ts
GET /workspace/ai-actions/queue/:id ai-action-approval-queue.controller.ts
POST /workspace/ai-actions/queue/:id/approve ai-action-approval-queue.controller.ts
POST /workspace/ai-actions/queue/:id/edit-and-approve ai-action-approval-queue.controller.ts
POST /workspace/ai-actions/queue/:id/reject ai-action-approval-queue.controller.ts
POST /workspace/ai-actions/queue/bulk-approve ai-action-approval-queue.controller.ts
POST /workspace/ai-actions/resolve ai-action.controller.ts
POST /workspace/ai-actions/run ai-action.controller.ts
POST /workspace/auto-suggest/jobs/:jobType/trigger-now auto-suggest.controller.ts
GET /workspace/auto-suggest/runs auto-suggest.controller.ts
GET /workspace/automation-preferences automation-preference.controller.ts
PUT /workspace/automation-preferences/:actionKind automation-preference.controller.ts
GET /workspace/automation-preferences/learned automation-preference.controller.ts
GET /workspace/chain-templates chain-template.controller.ts
POST /workspace/chain-templates/:key/instantiate chain-template.controller.ts
GET /workspace/chains chain.controller.ts
POST /workspace/chains chain.controller.ts
DELETE /workspace/chains/:id chain.controller.ts
GET /workspace/chains/:id chain.controller.ts
PATCH /workspace/chains/:id chain.controller.ts
POST /workspace/chains/:id/run chain.controller.ts
GET /workspace/chains/:id/runs chain.controller.ts
POST /workspace/chains/:id/runs/:runId/resume chain.controller.ts
POST /workspace/chains/draft-from-nl chain.controller.ts
GET /workspace/connectors workspace-connector.controller.ts
POST /workspace/connectors workspace-connector.controller.ts
GET /workspace/connectors/:connectorId/grants connector-grant.controller.ts
POST /workspace/connectors/:connectorId/grants connector-grant.controller.ts
DELETE /workspace/connectors/:connectorId/grants/:granteeUserId connector-grant.controller.ts
DELETE /workspace/connectors/:id workspace-connector.controller.ts
GET /workspace/connectors/:id workspace-connector.controller.ts
PATCH /workspace/connectors/:id workspace-connector.controller.ts
PATCH /workspace/connectors/:id/cadence workspace-connector.controller.ts
POST /workspace/connectors/:id/health workspace-connector.controller.ts
GET /workspace/connectors/:id/health-events workspace-connector.controller.ts
POST /workspace/connectors/:id/pause workspace-connector.controller.ts
POST /workspace/connectors/:id/resume workspace-connector.controller.ts
POST /workspace/connectors/:id/sync workspace-connector.controller.ts
GET /workspace/connectors/:id/sync-runs workspace-connector.controller.ts
GET /workspace/connectors/shared-with-me connector-grant-inbox.controller.ts
POST /workspace/decompose-fanout/queue/:queueId decompose-fanout.controller.ts
GET /workspace/digests digest.controller.ts
GET /workspace/digests/:id digest.controller.ts
GET /workspace/digests/preferences digest.controller.ts
PATCH /workspace/digests/preferences digest.controller.ts
POST /workspace/digests/regenerate digest.controller.ts
GET /workspace/digests/today digest.controller.ts
POST /workspace/digests/trigger-mine digest.controller.ts
GET /workspace/email-signatures email-signature.controller.ts
POST /workspace/email-signatures email-signature.controller.ts
DELETE /workspace/email-signatures/:id email-signature.controller.ts
GET /workspace/email-signatures/:id email-signature.controller.ts
PATCH /workspace/email-signatures/:id email-signature.controller.ts
GET /workspace/email-signatures/default email-signature.controller.ts
GET /workspace/email-templates email-template.controller.ts
POST /workspace/email-templates email-template.controller.ts
DELETE /workspace/email-templates/:id email-template.controller.ts
GET /workspace/email-templates/:id email-template.controller.ts
PATCH /workspace/email-templates/:id email-template.controller.ts
GET /workspace/email-templates/default email-template.controller.ts
GET /workspace/figma/:connectorId/files/:fileKey/analysis figma-design.controller.ts
GET /workspace/impl-handoffs impl-handoff.controller.ts
GET /workspace/impl-handoffs/:id impl-handoff.controller.ts
POST /workspace/impl-handoffs/queue/:queueId impl-handoff.controller.ts
GET /workspace/inbox inbox.controller.ts
PATCH /workspace/inbox/objects/:id/needs-attention inbox.controller.ts
POST /workspace/inbox/search inbox.controller.ts
GET /workspace/oauth/callback workspace-oauth.controller.ts
POST /workspace/oauth/init workspace-oauth.controller.ts
POST /workspace/oauth/test-connection workspace-oauth.controller.ts
POST /workspace/oauth/test-pat workspace-oauth.controller.ts
GET /workspace/objects workspace-object.controller.ts
GET /workspace/objects/:id workspace-object.controller.ts
GET /workspace/objects/:id/content workspace-object.controller.ts
POST /workspace/objects/:id/refresh workspace-object.controller.ts
GET /workspace/provider-app-configs workspace-provider-registry.controller.ts
POST /workspace/provider-app-configs workspace-provider-registry.controller.ts
DELETE /workspace/provider-app-configs/:id workspace-provider-registry.controller.ts
GET /workspace/provider-app-configs/:id workspace-provider-registry.controller.ts
PUT /workspace/provider-app-configs/:id workspace-provider-registry.controller.ts
GET /workspace/providers workspace-provider-registry.controller.ts
GET /workspace/providers/:provider workspace-provider-registry.controller.ts
POST /workspace/search workspace-search.controller.ts
GET /workspace/suggestion-rules trigger-rule.controller.ts
POST /workspace/suggestion-rules trigger-rule.controller.ts
DELETE /workspace/suggestion-rules/:id trigger-rule.controller.ts
PATCH /workspace/suggestion-rules/:id trigger-rule.controller.ts
GET /workspace/sync/dashboard sync-health.controller.ts
POST /workspace/webhooks/:provider/:connectorId webhook-receiver.controller.ts
GET /workspace/webhooks/deliveries webhook-receiver.controller.ts
POST /workspace/webhooks/deliveries/:id/replay webhook-receiver.controller.ts

Events (inferred from source; verify before a critical change)

  • Publishes: ai_action.approved, ai_action.auto_approved, ai_action.denied, ai_action.edited, ai_action.expired, ai_action.pending_approval, ai_action.policy.created, ai_action.policy.deleted, ai_action.policy.updated, ai_action.rejected, ai_action.suggestion_created, log.server, memory.preference.upserted, workspace.auto_suggest.tick.completed, workspace.auto_suggest.tick.failed, workspace.auto_suggest.tick.started, workspace.event.ingested, workspace.suggestion.factory_processed, workspace.sync.dlq_sent, workspace.sync.manual_triggered, workspace.sync.paused, workspace.sync.resumed, workspace.sync.run_completed, workspace.sync.run_failed, workspace.sync.run_started, workspace.sync.stale_detected, workspace.webhook.received, workspace.webhook.rejected, workspace.webhook.replayed, workspace_action.approved, workspace_action.bulk_approved, workspace_action.drafted, workspace_action.edited, workspace_action.executed, workspace_action.failed, workspace_action.rejected, workspace_action.stale_blocked, workspace_connector.created, workspace_connector.deleted, workspace_connector.updated, workspace_object.synced
  • Consumes: none found

Clone this wiki locally