config.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.pluginConfigSchematics = void 0;
const sdk_1 = require("@lmstudio/sdk");
exports.pluginConfigSchematics = (0, sdk_1.createConfigSchematics)()
.field("dataPath", "string", {
displayName: "Data Path",
subtitle: "Directory where growth data is stored. Leave blank to use ~/developer-growth.",
}, "")
.field("developerName", "string", {
displayName: "Your Name",
subtitle: "Used to personalise feedback and reports.",
}, "")
.field("currentRole", "string", {
displayName: "Current Role",
subtitle: "e.g. 'Backend Engineer', 'Full-Stack Developer', 'ML Engineer', 'Student'.",
}, "Developer")
.field("targetRole", "string", {
displayName: "Target Role",
subtitle: "Where you want to be — e.g. 'AI Engineer', 'Staff Engineer', 'Founder'.",
}, "")
.field("experienceYears", "numeric", {
int: true, min: 0, max: 40,
displayName: "Years of Experience",
subtitle: "Helps calibrate learning path depth and project difficulty.",
slider: { min: 0, max: 40, step: 1 },
}, 3)
.field("weeklyGoalMinutes", "numeric", {
int: true, min: 30, max: 1200,
displayName: "Weekly Learning Goal (minutes)",
subtitle: "Target learning time per week. Used for streak and progress tracking.",
slider: { min: 30, max: 1200, step: 30 },
}, 300)
.field("maxSearchResults", "numeric", {
int: true, min: 3, max: 20,
displayName: "Max Search Results",
subtitle: "Results returned per resource search.",
slider: { min: 3, max: 20, step: 1 },
}, 8)
.build();