@reliverse/relico 1.3.9 → 1.4.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,172 @@
1
+ // Performance benchmarks for relico optimizations
2
+
3
+ import { dirname, resolve } from "path";
4
+ import { performance } from "perf_hooks";
5
+ import { fileURLToPath } from "url";
6
+ import { config, getEnabledDirs, getImportPath } from "./config";
7
+
8
+ // Constants
9
+ const MILLISECONDS_PER_SECOND = 1000;
10
+ const COLOR_LEVEL_BASIC = 1;
11
+ const COLOR_LEVEL_TRUECOLOR = 3;
12
+ const MULTILINE_TEST_SIZE = 50;
13
+
14
+ // Get the directory where this benchmark file is located
15
+ const __filename = fileURLToPath(import.meta.url);
16
+ const __dirname = dirname(__filename);
17
+
18
+ // Dynamic imports for different source directories
19
+ async function importFromDir(dir: string) {
20
+ try {
21
+ const resolvedPath = resolve(__dirname, dir);
22
+ const module = await import(resolvedPath);
23
+ return module;
24
+ } catch (error) {
25
+ const errorMessage = error instanceof Error ? error.message : String(error);
26
+ console.warn(`⚠️ Could not import from ${dir}:`, errorMessage);
27
+ return null;
28
+ }
29
+ }
30
+
31
+ interface ModuleExports {
32
+ re: any;
33
+ chain: any;
34
+ setColorLevel: (level: number) => void;
35
+ }
36
+
37
+ // Run benchmarks for a specific module
38
+ function runBenchmarks(module: ModuleExports) {
39
+ const { re, chain, setColorLevel } = module;
40
+ const { iterations, warmupRuns } = config.performance;
41
+
42
+ function benchmark(name: string, fn: () => void, iterCount = iterations) {
43
+ // Warmup runs
44
+ for (let i = 0; i < warmupRuns; i++) {
45
+ fn();
46
+ }
47
+
48
+ const start = performance.now();
49
+ for (let i = 0; i < iterCount; i++) {
50
+ fn();
51
+ }
52
+ const end = performance.now();
53
+ const time = end - start;
54
+ const opsPerSec = Math.round((iterCount * MILLISECONDS_PER_SECOND) / time);
55
+ console.log(` ${name}: ${time.toFixed(2)}ms (${opsPerSec.toLocaleString()} ops/sec)`);
56
+ }
57
+
58
+ // Test basic color operations
59
+ benchmark("Basic color access", () => {
60
+ re.red("test");
61
+ });
62
+
63
+ benchmark("Chained colors", () => {
64
+ re.bold.red.underline("test");
65
+ });
66
+
67
+ benchmark("Extended named colors", () => {
68
+ re.orange("test");
69
+ });
70
+
71
+ benchmark("Bright color variants", () => {
72
+ re.redBright("test");
73
+ });
74
+
75
+ benchmark("Chain function", () => {
76
+ chain(re.bold, re.red, re.underline)("test");
77
+ });
78
+
79
+ benchmark("Background colors", () => {
80
+ re.bgRed.white("test");
81
+ });
82
+
83
+ benchmark("Bright background colors", () => {
84
+ re.bgRedBright.white("test");
85
+ });
86
+
87
+ benchmark("Complex style combinations", () => {
88
+ re.bold.italic.underline.red("test");
89
+ });
90
+
91
+ benchmark("Style methods", () => {
92
+ re.dim.strikethrough("test");
93
+ });
94
+
95
+ benchmark("Color level changes", () => {
96
+ setColorLevel(COLOR_LEVEL_BASIC);
97
+ re.red("test");
98
+ setColorLevel(COLOR_LEVEL_TRUECOLOR); // Reset to truecolor
99
+ });
100
+
101
+ benchmark("Multiline text (small)", () => {
102
+ re.red("line1\nline2\nline3");
103
+ });
104
+
105
+ benchmark("Multiline text (large)", () => {
106
+ const largeText = new Array(MULTILINE_TEST_SIZE).fill("text").join("\n");
107
+ re.red(largeText);
108
+ });
109
+
110
+ benchmark("Mixed background and foreground", () => {
111
+ re.bgBlue.yellow.bold("test");
112
+ });
113
+
114
+ benchmark("All basic colors iteration", () => {
115
+ const colors = ["red", "green", "blue", "yellow", "magenta", "cyan", "white", "black"];
116
+ for (const color of colors) {
117
+ re[color]("test");
118
+ }
119
+ });
120
+
121
+ benchmark("Extended colors iteration", () => {
122
+ const extendedColors = [
123
+ "orange",
124
+ "pink",
125
+ "purple",
126
+ "teal",
127
+ "lime",
128
+ "brown",
129
+ "navy",
130
+ "maroon",
131
+ "olive",
132
+ "silver",
133
+ ];
134
+ for (const color of extendedColors) {
135
+ re[color]("test");
136
+ }
137
+ });
138
+
139
+ console.log("\n 📊 Bundle Size Test:");
140
+ console.log(` Core exports imported: ${Object.keys({ re, chain, setColorLevel }).length}`);
141
+ }
142
+
143
+ // Test all enabled directories
144
+ async function runBenchmarksForAllDirs() {
145
+ const enabledDirs = getEnabledDirs();
146
+
147
+ for (const dir of enabledDirs) {
148
+ const importPath = getImportPath(dir);
149
+ console.log(`\n🔍 Testing ${dir.toUpperCase()} directory: ${importPath}`);
150
+ console.log("=".repeat(60));
151
+
152
+ const module = await importFromDir(importPath);
153
+ if (!module) {
154
+ continue;
155
+ }
156
+
157
+ // Run benchmarks for this directory
158
+ runBenchmarks(module);
159
+ }
160
+ }
161
+
162
+ // Main execution
163
+ console.log("🚀 Relico Performance Benchmarks");
164
+ console.log("=".repeat(50));
165
+
166
+ runBenchmarksForAllDirs()
167
+ .then(() => {
168
+ console.log("\n✅ All benchmarks completed!");
169
+ })
170
+ .catch((error) => {
171
+ console.error("❌ Benchmark error:", error);
172
+ });
@@ -0,0 +1,62 @@
1
+ import { chain, re, setColorLevel } from "~/mod";
2
+
3
+ const COLOR_LEVEL_TRUECOLOR = 3;
4
+
5
+ function main() {
6
+ setColorLevel(COLOR_LEVEL_TRUECOLOR);
7
+
8
+ console.log("--- Basic Color Examples ---");
9
+ console.log(re.bold.red.underline("Hello"));
10
+ console.log(chain(re.bold, re.red)("world"));
11
+
12
+ // Additional color tests
13
+ console.log("\n--- Named Color Examples ---");
14
+ console.log(re.blue("Blue text"));
15
+ console.log(re.green.bold("Bold green text"));
16
+ console.log(re.yellow.underline("Yellow underlined text"));
17
+ console.log(re.magenta.italic("Magenta italic text"));
18
+ console.log(re.bgRed.white("White text on red background"));
19
+ console.log(re.bgBlue.yellow("Yellow text on blue background"));
20
+
21
+ console.log("\n--- Extended Named Colors ---");
22
+ console.log(re.orange.bold("Orange text"));
23
+ console.log(re.pink.underline("Pink text"));
24
+ console.log(re.purple.italic("Purple text"));
25
+ console.log(re.teal.bold("Teal text"));
26
+ console.log(re.lime("Lime text"));
27
+ console.log(re.brown("Brown text"));
28
+ console.log(re.navy("Navy text"));
29
+ console.log(re.maroon("Maroon text"));
30
+ console.log(re.olive("Olive text"));
31
+ console.log(re.silver("Silver text"));
32
+
33
+ console.log("\n--- Bright Color Variants ---");
34
+ console.log(re.redBright("Bright red text"));
35
+ console.log(re.greenBright.bold("Bold bright green text"));
36
+ console.log(re.blueBright.underline("Underlined bright blue text"));
37
+ console.log(re.yellowBright.italic("Italic bright yellow text"));
38
+
39
+ console.log("\n--- Background Colors ---");
40
+ console.log(re.bgOrange.white("White text on orange background"));
41
+ console.log(re.bgPink.black("Black text on pink background"));
42
+ console.log(re.bgPurple.white("White text on purple background"));
43
+ console.log(re.bgTeal.white("White text on teal background"));
44
+
45
+ console.log("\n--- Bright Background Colors ---");
46
+ console.log(re.bgRedBright.white("White text on bright red background"));
47
+ console.log(re.bgGreenBright.black("Black text on bright green background"));
48
+ console.log(re.bgBlueBright.white("White text on bright blue background"));
49
+
50
+ console.log("\n--- Style Combinations ---");
51
+ console.log(re.bold.italic.underline.red("Bold italic underlined red text"));
52
+ console.log(re.dim.strikethrough.cyan("Dim strikethrough cyan text"));
53
+ console.log(re.inverse.magenta("Inverse magenta text"));
54
+ console.log(re.hidden("Hidden text (you might not see this)"));
55
+
56
+ console.log("\n--- Chaining Examples ---");
57
+ console.log(chain(re.bold, re.red, re.underline)("Chained formatting"));
58
+ console.log(chain(re.italic, re.blue, re.bgYellow)("Blue italic on yellow background"));
59
+ console.log(chain(re.dim, re.green)("Dim green text"));
60
+ }
61
+
62
+ main();
package/package.json CHANGED
@@ -1,37 +1,25 @@
1
1
  {
2
- "dependencies": {},
3
- "description": "@reliverse/relico is a themeable, chainable, typed, truecolor-powered, modern terminal styling toolkit. Designed to make your CLI output colorful, accessible, and human-friendly. It gives you a flexible way to apply colors and styles — with reliability and a smart developer experience baked in. Built for humans, not just terminals.",
4
- "homepage": "https://docs.reliverse.org/cli",
5
- "license": "MIT",
6
2
  "name": "@reliverse/relico",
7
- "type": "module",
8
- "version": "1.3.9",
9
3
  "author": "reliverse",
10
- "bugs": {
11
- "email": "blefnk@gmail.com",
12
- "url": "https://github.com/reliverse/relico/issues"
13
- },
14
- "keywords": [
15
- "reliverse"
16
- ],
17
- "repository": {
18
- "type": "git",
19
- "url": "git+https://github.com/reliverse/relico.git"
20
- },
21
- "devDependencies": {},
22
- "exports": {
23
- ".": "./bin/mod.js"
4
+ "version": "1.4.1",
5
+ "type": "module",
6
+ "description": "@reliverse/relico is a themeable, chainable, typed, truecolor-powered, modern terminal styling toolkit. Designed to make your CLI output colorful, accessible, and human-friendly. It gives you a flexible way to apply colors and styles — with reliability and a smart developer experience baked in. Built for humans, not just terminals.",
7
+ "scripts": {
8
+ "pub": "bun rse publish",
9
+ "dev": "bun examples/core.ts",
10
+ "perf": "bun bench && bun size",
11
+ "latest": "bun rse update && bun install",
12
+ "size": "bun examples/benchmarks/bundle-size.ts",
13
+ "bench": "bun examples/benchmarks/performance.ts",
14
+ "check": "bun tsc --noEmit && bun biome check --fix --unsafe"
24
15
  },
25
- "files": [
26
- "bin",
27
- "package.json",
28
- "README.md",
29
- "LICENSE",
30
- "LICENSES"
31
- ],
32
- "main": "./bin/mod.js",
33
- "module": "./bin/mod.js",
34
- "publishConfig": {
35
- "access": "public"
16
+ "devDependencies": {
17
+ "@biomejs/biome": "2.2.2",
18
+ "@reliverse/rse": "^1.7.27",
19
+ "@total-typescript/ts-reset": "^0.6.1",
20
+ "@types/bun": "^1.2.21",
21
+ "@types/node": "^24.3.0",
22
+ "typescript": "^5.9.2",
23
+ "ultracite": "^5.2.17"
36
24
  }
37
25
  }
package/reliverse.ts ADDED
@@ -0,0 +1,399 @@
1
+ import { defineConfig } from "./reltypes";
2
+
3
+ /**
4
+ * Reliverse Bundler Configuration
5
+ * Hover over a field to see more details
6
+ * @see https://github.com/reliverse/dler
7
+ */
8
+ export default defineConfig({
9
+ // Bump configuration
10
+ bumpDisable: false,
11
+ bumpFilter: ["package.json", "reliverse.ts"],
12
+ bumpMode: "patch",
13
+
14
+ // Common configuration
15
+ commonPubPause: false,
16
+ commonPubRegistry: "npm",
17
+ commonVerbose: true,
18
+
19
+ // Core configuration
20
+ coreBuildOutDir: "bin",
21
+ coreDeclarations: true,
22
+ coreDescription:
23
+ "@reliverse/relico is a themeable, chainable, typed, truecolor-powered, modern terminal styling toolkit. Designed to make your CLI output colorful, accessible, and human-friendly. It gives you a flexible way to apply colors and styles — with reliability and a smart developer experience baked in. Built for humans, not just terminals.",
24
+ coreEntryFile: "mod.ts",
25
+ coreEntrySrcDir: "src",
26
+ coreIsCLI: { enabled: false, scripts: {} },
27
+
28
+ // Logs
29
+ displayBuildPubLogs: false,
30
+
31
+ // JSR-only config
32
+ distJsrAllowDirty: true,
33
+ distJsrBuilder: "jsr",
34
+ distJsrDirName: "dist-jsr",
35
+ distJsrDryRun: false,
36
+ distJsrFailOnWarn: false,
37
+ distJsrGenTsconfig: false,
38
+ distJsrOutFilesExt: "ts",
39
+ distJsrSlowTypes: true,
40
+
41
+ // NPM-only config
42
+ distNpmBuilder: "mkdist",
43
+ distNpmDirName: "dist-npm",
44
+ distNpmOutFilesExt: "js",
45
+
46
+ // Libraries Dler Plugin
47
+ // Publish specific dirs as separate packages
48
+ // This feature is experimental at the moment
49
+ // Please commit your changes before using it
50
+ libsActMode: "main-project-only",
51
+ libsDirDist: "dist-libs",
52
+ libsDirSrc: "src/libs",
53
+ libsList: {},
54
+
55
+ // Specifies what resources to send to npm and jsr registries.
56
+ // coreBuildOutDir (e.g. "bin") dir is automatically included.
57
+ // The following is also included if publishArtifacts is {}:
58
+ // - global: ["package.json", "README.md", "LICENSE"]
59
+ // - dist-jsr,dist-libs/jsr: ["jsr.json"]
60
+ publishArtifacts: {
61
+ global: ["package.json", "README.md", "LICENSE", "LICENSES"],
62
+ "dist-jsr": [],
63
+ "dist-npm": [],
64
+ "dist-libs": {},
65
+ },
66
+
67
+ // Files with these extensions will be built
68
+ // Any other files will be copied as-is to dist
69
+ buildPreExtensions: ["ts", "js"],
70
+ // If you need to exclude some ts/js files from being built,
71
+ // you can store them in the dirs with buildTemplatesDir name
72
+ buildTemplatesDir: "templates",
73
+
74
+ // Dependency filtering
75
+ // Global is always applied
76
+ filterDepsPatterns: {
77
+ global: [
78
+ "@types",
79
+ "biome",
80
+ "knip",
81
+ "eslint",
82
+ "prettier",
83
+ "typescript",
84
+ "@reliverse/rse",
85
+ "@reliverse/dler",
86
+ "!@reliverse/rse-sdk",
87
+ "!@reliverse/dler-sdk",
88
+ ],
89
+ "dist-npm": [],
90
+ "dist-jsr": [],
91
+ "dist-libs": {},
92
+ },
93
+
94
+ // Code quality tools
95
+ // Available: tsc, eslint, biome, knip, dler-check
96
+ runBeforeBuild: [],
97
+ // Available: dler-check
98
+ runAfterBuild: [],
99
+
100
+ // Build hooks
101
+ hooksBeforeBuild: [
102
+ // example plugin:
103
+ // async () => {
104
+ // await myCoolPlugin({
105
+ // /* plugin's options */
106
+ // });
107
+ // },
108
+ ],
109
+ hooksAfterBuild: [
110
+ // example func:
111
+ // async () => {
112
+ // await applyMagicSpells(["dist-jsr", "dist-npm", "dist-libs"]);
113
+ // }
114
+ ],
115
+
116
+ postBuildSettings: {
117
+ deleteDistTmpAfterBuild: true,
118
+ },
119
+
120
+ // Build setup
121
+ // transpileAlias: {},
122
+ // transpileClean: true,
123
+ // transpileEntries: [],
124
+ transpileEsbuild: "es2023",
125
+ // transpileExternals: [],
126
+ transpileFailOnWarn: false,
127
+ transpileFormat: "esm",
128
+ transpileMinify: true,
129
+ // transpileParallel: false,
130
+ transpilePublicPath: "/",
131
+ // transpileReplace: {},
132
+ // transpileRollup: {
133
+ // alias: {},
134
+ // commonjs: {},
135
+ // dts: {},
136
+ // esbuild: {},
137
+ // json: {},
138
+ // replace: {},
139
+ // resolve: {},
140
+ // },
141
+ // transpileShowOutLog: false,
142
+ transpileSourcemap: "none",
143
+ transpileSplitting: false,
144
+ transpileStub: false,
145
+ // transpileStubOptions: { jiti: {} },
146
+ transpileTarget: "node",
147
+ transpileWatch: false,
148
+ // transpileWatchOptions: undefined,
149
+
150
+ // @reliverse/relinka logger setup
151
+ logsFileName: ".logs/relinka.log",
152
+ logsFreshFile: true,
153
+
154
+ // Integrated relinka configuration
155
+ // https://github.com/reliverse/relinka
156
+ relinka: {
157
+ verbose: true,
158
+
159
+ // Timestamp configuration
160
+ timestamp: {
161
+ enabled: false,
162
+ format: "HH:mm:ss",
163
+ },
164
+
165
+ // Control whether logs are saved to a file
166
+ saveLogsToFile: false,
167
+
168
+ // Disable colors in the console
169
+ disableColors: false,
170
+
171
+ // Log file configuration
172
+ logFile: {
173
+ outputPath: "logs.log",
174
+ nameWithDate: "disable",
175
+ freshLogFile: true,
176
+ },
177
+
178
+ // Dirs settings
179
+ dirs: {
180
+ maxLogFiles: 5,
181
+ },
182
+
183
+ levels: {
184
+ success: {
185
+ symbol: "✓",
186
+ fallbackSymbol: "[OK]",
187
+ color: "greenBright",
188
+ spacing: 3,
189
+ },
190
+ info: {
191
+ symbol: "i",
192
+ fallbackSymbol: "[i]",
193
+ color: "cyanBright",
194
+ spacing: 3,
195
+ },
196
+ error: {
197
+ symbol: "✖",
198
+ fallbackSymbol: "[ERR]",
199
+ color: "redBright",
200
+ spacing: 3,
201
+ },
202
+ warn: {
203
+ symbol: "⚠",
204
+ fallbackSymbol: "[WARN]",
205
+ color: "yellowBright",
206
+ spacing: 3,
207
+ },
208
+ fatal: {
209
+ symbol: "‼",
210
+ fallbackSymbol: "[FATAL]",
211
+ color: "redBright",
212
+ spacing: 3,
213
+ },
214
+ verbose: {
215
+ symbol: "✧",
216
+ fallbackSymbol: "[VERBOSE]",
217
+ color: "gray",
218
+ spacing: 3,
219
+ },
220
+ internal: {
221
+ symbol: "⚙",
222
+ fallbackSymbol: "[INTERNAL]",
223
+ color: "magentaBright",
224
+ spacing: 3,
225
+ },
226
+ log: { symbol: "│", fallbackSymbol: "|", color: "dim", spacing: 3 },
227
+ message: {
228
+ symbol: "🞠",
229
+ fallbackSymbol: "[MSG]",
230
+ color: "cyan",
231
+ spacing: 3,
232
+ },
233
+ },
234
+ },
235
+
236
+ // RELIVERSE CONFIG (https://docs.reliverse.org/cli)
237
+ // Restart the CLI to apply your config changes
238
+ $schema: "./schema.json",
239
+
240
+ // General project information
241
+ projectName: "@reliverse/relico",
242
+ projectAuthor: "reliverse",
243
+ projectDescription:
244
+ "relico is a library for creating beautiful and customizable console output in TypeScript and JavaScript projects.",
245
+ version: "1.4.0",
246
+ projectLicense: "MIT",
247
+ projectState: "creating",
248
+ projectRepository: "https://github.com/reliverse/relico",
249
+ projectDomain: "https://reliverse.org",
250
+ projectCategory: "unknown",
251
+ projectSubcategory: "unknown",
252
+ projectTemplate: "unknown",
253
+ projectTemplateDate: "unknown",
254
+ projectArchitecture: "unknown",
255
+ repoPrivacy: "unknown",
256
+ projectGitService: "github",
257
+ projectDeployService: "vercel",
258
+ repoBranch: "main",
259
+
260
+ // Primary tech stack/framework
261
+ projectFramework: "unknown",
262
+ projectPackageManager: "bun",
263
+ projectRuntime: "bun",
264
+ preferredLibraries: {
265
+ stateManagement: "unknown",
266
+ formManagement: "unknown",
267
+ styling: "unknown",
268
+ uiComponents: "unknown",
269
+ testing: "unknown",
270
+ authentication: "unknown",
271
+ databaseLibrary: "unknown",
272
+ databaseProvider: "unknown",
273
+ api: "unknown",
274
+ linting: "unknown",
275
+ formatting: "unknown",
276
+ payment: "unknown",
277
+ analytics: "unknown",
278
+ monitoring: "unknown",
279
+ logging: "unknown",
280
+ forms: "unknown",
281
+ notifications: "unknown",
282
+ search: "unknown",
283
+ uploads: "unknown",
284
+ validation: "unknown",
285
+ documentation: "unknown",
286
+ icons: "unknown",
287
+ mail: "unknown",
288
+ cache: "unknown",
289
+ storage: "unknown",
290
+ cdn: "unknown",
291
+ cms: "unknown",
292
+ i18n: "unknown",
293
+ seo: "unknown",
294
+ motion: "unknown",
295
+ charts: "unknown",
296
+ dates: "unknown",
297
+ markdown: "unknown",
298
+ security: "unknown",
299
+ routing: "unknown",
300
+ },
301
+ monorepo: {
302
+ type: "none",
303
+ packages: [],
304
+ sharedPackages: [],
305
+ },
306
+
307
+ // List dependencies to exclude from checks
308
+ ignoreDependencies: [],
309
+
310
+ // Provide custom additional project details
311
+ // always sent to Reliverse AI Chat & Agents
312
+ customRules: {},
313
+
314
+ // Project features
315
+ features: {
316
+ i18n: false,
317
+ analytics: false,
318
+ themeMode: "dark-light",
319
+ authentication: false,
320
+ api: false,
321
+ database: true,
322
+ testing: true,
323
+ docker: false,
324
+ ci: false,
325
+ commands: [
326
+ "db",
327
+ "pub",
328
+ "knip",
329
+ "latest",
330
+ "check",
331
+ "agg",
332
+ "dev:add",
333
+ "dev:ai",
334
+ "dev:clone",
335
+ "dev:cmod",
336
+ ],
337
+ webview: [],
338
+ language: ["typescript"],
339
+ themes: ["default", "eslint", "biome", "uploadthing", "zod", "typebox"],
340
+ },
341
+
342
+ // Code style preferences
343
+ codeStyle: {
344
+ dontRemoveComments: true,
345
+ shouldAddComments: true,
346
+ typeOrInterface: "type",
347
+ importOrRequire: "import",
348
+ quoteMark: "double",
349
+ semicolons: true,
350
+ lineWidth: 80,
351
+ indentStyle: "space",
352
+ indentSize: 2,
353
+ importSymbol: "~",
354
+ trailingCommas: "all",
355
+ bracketSpacing: true,
356
+ arrowParens: "always",
357
+ tabWidth: 2,
358
+ jsToTs: false,
359
+ cjsToEsm: false,
360
+ modernize: {
361
+ replaceFs: false,
362
+ replacePath: false,
363
+ replaceHttp: false,
364
+ replaceProcess: false,
365
+ replaceConsole: false,
366
+ replaceEvents: false,
367
+ },
368
+ },
369
+
370
+ // Settings for cloning an existing repo
371
+ multipleRepoCloneMode: false,
372
+ customUserFocusedRepos: [],
373
+ customDevsFocusedRepos: [],
374
+ hideRepoSuggestions: false,
375
+ customReposOnNewProject: false,
376
+
377
+ // Set to false to disable opening the browser during env composing
378
+ envComposerOpenBrowser: true,
379
+
380
+ // Enable auto-answering for prompts to skip manual confirmations.
381
+ // Make sure you have unknown values configured above.
382
+ skipPromptsUseAutoBehavior: false,
383
+
384
+ // Prompt behavior for deployment
385
+ // Options: prompt | autoYes | autoNo
386
+ deployBehavior: "prompt",
387
+ depsBehavior: "prompt",
388
+ gitBehavior: "prompt",
389
+ i18nBehavior: "prompt",
390
+ scriptsBehavior: "prompt",
391
+
392
+ // Behavior for existing GitHub repos during project creation
393
+ // Options: prompt | autoYes | autoYesSkipCommit | autoNo
394
+ existingRepoBehavior: "prompt",
395
+
396
+ // Behavior for Reliverse AI Chat & Agents
397
+ // Options: promptOnce | promptEachFile | autoYes
398
+ relinterConfirm: "promptOnce",
399
+ });