22 lines · 715 B · TypeScript
RawDownload
import { HttpApi, OpenApi } from "@effect/platform"; import { ExecutionsApi } from "./executions/api";import { LocalApi } from "./local/api";import { OAuthApi } from "./oauth/api";import { PoliciesApi } from "./policies/api";import { SourcesApi } from "./sources/api"; export class ControlPlaneApi extends HttpApi.make("controlPlane")  .add(LocalApi)  .add(OAuthApi)  .add(SourcesApi)  .add(PoliciesApi)  .add(ExecutionsApi)  .annotateContext(    OpenApi.annotations({      title: "Executor Control Plane API",      description: "Local-first control plane for workspace sources, policies, auth, and execution",    }),  ) {} export const controlPlaneOpenApiSpec = OpenApi.fromApi(ControlPlaneApi);