| 1234567891011121314151617181920212223242526272829303132 |
- #!/usr/bin/env bun
- import * as NodeRuntime from "@effect/platform-node/NodeRuntime"
- import * as NodeServices from "@effect/platform-node/NodeServices"
- import * as Effect from "effect/Effect"
- import { Commands } from "./commands/commands"
- import { Runtime } from "./framework/runtime"
- import { Daemon } from "./services/daemon"
- const Handlers = Runtime.handlers(Commands, {
- $: () => import("./commands/handlers/default"),
- api: () => import("./commands/handlers/api"),
- debug: {
- agents: () => import("./commands/handlers/debug/agents"),
- },
- migrate: () => import("./commands/handlers/migrate"),
- service: {
- start: () => import("./commands/handlers/service/start"),
- restart: () => import("./commands/handlers/service/restart"),
- status: () => import("./commands/handlers/service/status"),
- stop: () => import("./commands/handlers/service/stop"),
- password: () => import("./commands/handlers/service/password"),
- },
- serve: () => import("./commands/handlers/serve"),
- })
- Runtime.run(Commands, Handlers, { version: "local" }).pipe(
- Effect.provide(Daemon.layer),
- Effect.provide(NodeServices.layer),
- Effect.scoped,
- NodeRuntime.runMain,
- )
|