Skip to content
Source
Sign inSign up

settings.ts

27 lines1.0 KB

1import { CustomModelSetting, makeProviderSettingsSchema, TrimmedString } from "@t3tools/contracts";
2import * as Effect from "effect/Effect";
3import * as Schema from "effect/Schema";
4​
5export const CursorSettings = makeProviderSettingsSchema(
6 {
7 enabled: Schema.Boolean.pipe(
8 Schema.withDecodingDefault(Effect.succeed(false)),
9 Schema.annotateKey({ providerSettingsForm: { hidden: true } }),
10 ),
11 // Preserve V1 CLI fields when V2's SDK rewrites shared settings.
12 binaryPath: Schema.optionalKey(TrimmedString).pipe(
13 Schema.annotateKey({ providerSettingsForm: { hidden: true } }),
14 ),
15 apiEndpoint: Schema.optionalKey(TrimmedString).pipe(
16 Schema.annotateKey({ providerSettingsForm: { hidden: true } }),
17 ),
18 customModels: Schema.Array(CustomModelSetting).pipe(
19 Schema.withDecodingDefault(Effect.succeed([])),
20 Schema.annotateKey({ providerSettingsForm: { hidden: true } }),
21 ),
22 },
23 {
24 order: [],
25 },
26);
27export type CursorSettings = typeof CursorSettings.Type;