| 14 | ) |
| 15 | |
| 16 | export class Service extends ConfigService.Service<Service>()("@opencode/RuntimeFlags", { |
| 17 | autoShare: bool("OPENCODE_AUTO_SHARE"), |
| 18 | pure: bool("OPENCODE_PURE"), |
| 19 | disableDefaultPlugins: bool("OPENCODE_DISABLE_DEFAULT_PLUGINS"), |
| 20 | disableEmbeddedWebUi: bool("OPENCODE_DISABLE_EMBEDDED_WEB_UI"), |
| 21 | disableExternalSkills: bool("OPENCODE_DISABLE_EXTERNAL_SKILLS"), |
| 22 | disableLspDownload: bool("OPENCODE_DISABLE_LSP_DOWNLOAD"), |
| 23 | disableClaudeCodePrompt: Config.all({ |
| 24 | broad: bool("OPENCODE_DISABLE_CLAUDE_CODE"), |
| 25 | direct: bool("OPENCODE_DISABLE_CLAUDE_CODE_PROMPT"), |
| 26 | }).pipe(Config.map((flags) => flags.broad || flags.direct)), |
| 27 | disableClaudeCodeSkills: Config.all({ |
| 28 | broad: bool("OPENCODE_DISABLE_CLAUDE_CODE"), |
| 29 | direct: bool("OPENCODE_DISABLE_CLAUDE_CODE_SKILLS"), |
| 30 | }).pipe(Config.map((flags) => flags.broad || flags.direct)), |
| 31 | enableExa: Config.all({ |
| 32 | experimental, |
| 33 | enabled: bool("OPENCODE_ENABLE_EXA"), |
| 34 | legacy: bool("OPENCODE_EXPERIMENTAL_EXA"), |
| 35 | }).pipe(Config.map((flags) => flags.experimental || flags.enabled || flags.legacy)), |
| 36 | enableParallel: Config.all({ |
| 37 | enabled: bool("OPENCODE_ENABLE_PARALLEL"), |
| 38 | legacy: bool("OPENCODE_EXPERIMENTAL_PARALLEL"), |
| 39 | }).pipe(Config.map((flags) => flags.enabled || flags.legacy)), |
| 40 | enableExperimentalModels: bool("OPENCODE_ENABLE_EXPERIMENTAL_MODELS"), |
| 41 | enableQuestionTool: bool("OPENCODE_ENABLE_QUESTION_TOOL"), |
| 42 | experimentalReferences: enabledByExperimental("OPENCODE_EXPERIMENTAL_REFERENCES"), |
| 43 | experimentalBackgroundSubagents: enabledByExperimental("OPENCODE_EXPERIMENTAL_BACKGROUND_SUBAGENTS"), |
| 44 | experimentalLspTy: bool("OPENCODE_EXPERIMENTAL_LSP_TY"), |
| 45 | experimentalLspTool: enabledByExperimental("OPENCODE_EXPERIMENTAL_LSP_TOOL"), |
| 46 | experimentalOxfmt: enabledByExperimental("OPENCODE_EXPERIMENTAL_OXFMT"), |
| 47 | experimentalPlanMode: enabledByExperimental("OPENCODE_EXPERIMENTAL_PLAN_MODE"), |
| 48 | experimentalEventSystem: enabledByExperimental("OPENCODE_EXPERIMENTAL_EVENT_SYSTEM"), |
| 49 | experimentalWorkspaces: enabledByExperimental("OPENCODE_EXPERIMENTAL_WORKSPACES"), |
| 50 | experimentalIconDiscovery: enabledByExperimental("OPENCODE_EXPERIMENTAL_ICON_DISCOVERY"), |
| 51 | outputTokenMax: positiveInteger("OPENCODE_EXPERIMENTAL_OUTPUT_TOKEN_MAX"), |
| 52 | bashDefaultTimeoutMs: positiveInteger("OPENCODE_EXPERIMENTAL_BASH_DEFAULT_TIMEOUT_MS"), |
| 53 | experimentalNativeLlm: bool("OPENCODE_EXPERIMENTAL_NATIVE_LLM"), |
| 54 | experimentalWebSockets: bool("OPENCODE_EXPERIMENTAL_WEBSOCKETS"), |
| 55 | client: Config.string("OPENCODE_CLIENT").pipe(Config.withDefault("cli")), |
| 56 | }) {} |
| 57 | |
| 58 | export type Info = Context.Service.Shape<typeof Service> |
| 59 |
nothing calls this directly
no test coverage detected