| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778 |
- import { Config } from "effect"
- export function truthy(key: string) {
- const value = process.env[key]?.toLowerCase()
- return value === "true" || value === "1"
- }
- const copy = process.env["KIRINCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT"]
- const fff = process.env["KIRINCODE_DISABLE_FFF"]
- function enabledByExperimental(key: string) {
- return process.env[key] === undefined ? truthy("KIRINCODE_EXPERIMENTAL") : truthy(key)
- }
- export const Flag = {
- OTEL_EXPORTER_OTLP_ENDPOINT: process.env["OTEL_EXPORTER_OTLP_ENDPOINT"],
- OTEL_EXPORTER_OTLP_HEADERS: process.env["OTEL_EXPORTER_OTLP_HEADERS"],
- KIRINCODE_AUTO_HEAP_SNAPSHOT: truthy("KIRINCODE_AUTO_HEAP_SNAPSHOT"),
- KIRINCODE_GIT_BASH_PATH: process.env["KIRINCODE_GIT_BASH_PATH"],
- KIRINCODE_CONFIG: process.env["KIRINCODE_CONFIG"],
- KIRINCODE_CONFIG_CONTENT: process.env["KIRINCODE_CONFIG_CONTENT"],
- KIRINCODE_DISABLE_AUTOUPDATE: truthy("KIRINCODE_DISABLE_AUTOUPDATE"),
- KIRINCODE_ALWAYS_NOTIFY_UPDATE: truthy("KIRINCODE_ALWAYS_NOTIFY_UPDATE"),
- KIRINCODE_DISABLE_PRUNE: truthy("KIRINCODE_DISABLE_PRUNE"),
- KIRINCODE_DISABLE_TERMINAL_TITLE: truthy("KIRINCODE_DISABLE_TERMINAL_TITLE"),
- KIRINCODE_SHOW_TTFD: truthy("KIRINCODE_SHOW_TTFD"),
- KIRINCODE_DISABLE_AUTOCOMPACT: truthy("KIRINCODE_DISABLE_AUTOCOMPACT"),
- KIRINCODE_DISABLE_MODELS_FETCH: truthy("KIRINCODE_DISABLE_MODELS_FETCH"),
- KIRINCODE_DISABLE_MOUSE: truthy("KIRINCODE_DISABLE_MOUSE"),
- KIRINCODE_FAKE_VCS: process.env["KIRINCODE_FAKE_VCS"],
- KIRINCODE_SERVER_PASSWORD: process.env["KIRINCODE_SERVER_PASSWORD"],
- KIRINCODE_SERVER_USERNAME: process.env["KIRINCODE_SERVER_USERNAME"],
- KIRINCODE_DISABLE_FFF: fff === undefined ? process.platform === "win32" : truthy("KIRINCODE_DISABLE_FFF"),
- // Experimental
- KIRINCODE_EXPERIMENTAL_FILEWATCHER: Config.boolean("KIRINCODE_EXPERIMENTAL_FILEWATCHER").pipe(
- Config.withDefault(false),
- ),
- KIRINCODE_EXPERIMENTAL_DISABLE_FILEWATCHER: Config.boolean("KIRINCODE_EXPERIMENTAL_DISABLE_FILEWATCHER").pipe(
- Config.withDefault(false),
- ),
- KIRINCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT:
- copy === undefined ? process.platform === "win32" : truthy("KIRINCODE_EXPERIMENTAL_DISABLE_COPY_ON_SELECT"),
- KIRINCODE_MODELS_URL: process.env["KIRINCODE_MODELS_URL"],
- KIRINCODE_MODELS_PATH: process.env["KIRINCODE_MODELS_PATH"],
- KIRINCODE_DB: process.env["KIRINCODE_DB"],
- KIRINCODE_WORKSPACE_ID: process.env["KIRINCODE_WORKSPACE_ID"],
- KIRINCODE_EXPERIMENTAL_WORKSPACES: enabledByExperimental("KIRINCODE_EXPERIMENTAL_WORKSPACES"),
- // Evaluated at access time (not module load) because tests, the CLI, and
- // external tooling set these env vars at runtime.
- get KIRINCODE_DISABLE_PROJECT_CONFIG() {
- return truthy("KIRINCODE_DISABLE_PROJECT_CONFIG")
- },
- get KIRINCODE_EXPERIMENTAL_REFERENCES() {
- return enabledByExperimental("KIRINCODE_EXPERIMENTAL_REFERENCES")
- },
- get KIRINCODE_TUI_CONFIG() {
- return process.env["KIRINCODE_TUI_CONFIG"]
- },
- get KIRINCODE_CONFIG_DIR() {
- return process.env["KIRINCODE_CONFIG_DIR"]
- },
- get KIRINCODE_PURE() {
- return truthy("KIRINCODE_PURE")
- },
- get KIRINCODE_PERMISSION() {
- return process.env["KIRINCODE_PERMISSION"]
- },
- get KIRINCODE_PLUGIN_META_FILE() {
- return process.env["KIRINCODE_PLUGIN_META_FILE"]
- },
- get KIRINCODE_CLIENT() {
- return process.env["KIRINCODE_CLIENT"] ?? "cli"
- },
- }
|