nightshift-mcp 2.1.3 → 2.3.0

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.
@@ -5,7 +5,9 @@ import { getNightshiftCliCommand } from "../platform.js";
5
5
  import { getRunStats, readRunLog } from "../run-logger.js";
6
6
  import { savePipelineOverride, clearPipelineOverride, resolveExecutablePipeline, listPipelines, getTagRouting, } from "../pipeline.js";
7
7
  import { ProjectOrchestrator } from "../orchestrator.js";
8
- import { isDaemonRunning, ensureDaemonRunning, stopDaemon, installWatchdog, } from "../daemon-manager.js";
8
+ import { isDaemonRunning, ensureDaemonRunning, stopDaemon, installWatchdog, installSchedule, removeSchedule, getSchedule, } from "../daemon-manager.js";
9
+ import { loadConfig, saveConfig, getDefaultRoutines } from "../config.js";
10
+ import { getRoutineStatus, resetRoutine } from "../routines.js";
9
11
  const AGENT_TYPES = ["claude", "codex", "gemini", "vibe", "goose", "ollama"];
10
12
  /**
11
13
  * Pre-flight check: verify an agent is installed and can run before attempting to spawn it.
@@ -963,6 +965,290 @@ Use reset=true to clear all runtime overrides and revert to defaults + config fi
963
965
  },
964
966
  });
965
967
  // Export all agent tools as an array
968
+ // ============================================
969
+ // Schedule Tools
970
+ // ============================================
971
+ export const setScheduleTool = defineTool({
972
+ name: "set_schedule",
973
+ category: "agents",
974
+ description: "Set a daily start/stop schedule for the daemon",
975
+ fullDescription: `Schedule the daemon to start and stop at specific times each day.
976
+
977
+ This installs cron entries (Unix) or scheduled tasks (Windows) that automatically
978
+ start and stop the daemon within a time window. Perfect for overnight autonomous operation.
979
+
980
+ Example: Start at 1AM, stop at 5AM on weekdays:
981
+ set_schedule({ start: "01:00", stop: "05:00", days: ["mon","tue","wed","thu","fri"] })`,
982
+ inputSchema: z.object({
983
+ start: z.string().describe("Start time in HH:MM 24h format (e.g., '01:00')"),
984
+ stop: z.string().describe("Stop time in HH:MM 24h format (e.g., '05:00')"),
985
+ timezone: z.string().optional().describe("IANA timezone (e.g., 'America/Chicago'). Default: system timezone"),
986
+ days: z.array(z.enum(["mon", "tue", "wed", "thu", "fri", "sat", "sun"])).optional()
987
+ .describe("Days to run (default: every day)"),
988
+ }),
989
+ handler: async (params, ctx) => {
990
+ const schedule = {
991
+ start: params.start,
992
+ stop: params.stop,
993
+ timezone: params.timezone,
994
+ days: params.days,
995
+ };
996
+ const result = installSchedule(ctx.projectPath, schedule);
997
+ if (result.success) {
998
+ ctx.chatManager.writeMessage({
999
+ agent: "NightShift",
1000
+ type: "INFO",
1001
+ content: `Schedule installed: ${result.details}`,
1002
+ });
1003
+ }
1004
+ return {
1005
+ content: [{
1006
+ type: "text",
1007
+ text: JSON.stringify({
1008
+ success: result.success,
1009
+ details: result.details,
1010
+ error: result.error,
1011
+ schedule,
1012
+ }, null, 2),
1013
+ }],
1014
+ isError: !result.success,
1015
+ };
1016
+ },
1017
+ });
1018
+ export const getScheduleTool = defineTool({
1019
+ name: "get_schedule",
1020
+ category: "agents",
1021
+ description: "Get the current daemon schedule",
1022
+ fullDescription: "View the current start/stop schedule for the daemon.",
1023
+ inputSchema: z.object({}),
1024
+ handler: async (_params, ctx) => {
1025
+ const schedule = getSchedule(ctx.projectPath);
1026
+ return {
1027
+ content: [{
1028
+ type: "text",
1029
+ text: JSON.stringify({
1030
+ hasSchedule: !!schedule,
1031
+ schedule: schedule ?? "No schedule configured. Use set_schedule to add one.",
1032
+ }, null, 2),
1033
+ }],
1034
+ };
1035
+ },
1036
+ });
1037
+ export const removeScheduleTool = defineTool({
1038
+ name: "remove_schedule",
1039
+ category: "agents",
1040
+ description: "Remove the daemon schedule",
1041
+ fullDescription: "Remove the start/stop schedule for the daemon. The daemon will no longer auto-start/stop on a timer.",
1042
+ inputSchema: z.object({}),
1043
+ handler: async (_params, ctx) => {
1044
+ const result = removeSchedule(ctx.projectPath);
1045
+ return {
1046
+ content: [{
1047
+ type: "text",
1048
+ text: JSON.stringify({
1049
+ success: result.success,
1050
+ message: result.success ? "Schedule removed" : result.error,
1051
+ }, null, 2),
1052
+ }],
1053
+ };
1054
+ },
1055
+ });
1056
+ // ============================================
1057
+ // Mode Tools
1058
+ // ============================================
1059
+ export const setModeTool = defineTool({
1060
+ name: "set_mode",
1061
+ category: "agents",
1062
+ description: "Set the daemon operating mode",
1063
+ fullDescription: `Set the daemon's operating mode:
1064
+
1065
+ - **sprint**: Execute stories from the PRD until all complete (default during active development)
1066
+ - **maintain**: Run recurring routines (security audits, dep updates, test coverage) — no new features
1067
+ - **grow**: Re-evaluate the project vision and generate strategic stories for the next sprint
1068
+ - **auto**: Automatically transition between modes based on project state (recommended)
1069
+
1070
+ In auto mode, the lifecycle is: sprint → maintain → grow → sprint (repeating)`,
1071
+ inputSchema: z.object({
1072
+ mode: z.enum(["sprint", "maintain", "grow", "auto"]).describe("Operating mode"),
1073
+ }),
1074
+ handler: async ({ mode }, ctx) => {
1075
+ saveConfig(ctx.projectPath, { mode: mode });
1076
+ ctx.chatManager.writeMessage({
1077
+ agent: "NightShift",
1078
+ type: "INFO",
1079
+ content: `Operating mode set to: ${mode}`,
1080
+ });
1081
+ return {
1082
+ content: [{
1083
+ type: "text",
1084
+ text: JSON.stringify({
1085
+ mode,
1086
+ message: `Operating mode set to "${mode}"`,
1087
+ description: {
1088
+ sprint: "Execute stories until PRD is complete",
1089
+ maintain: "Run recurring maintenance routines",
1090
+ grow: "Re-evaluate vision, generate new strategic stories",
1091
+ auto: "Auto-transition: sprint → maintain → grow → sprint",
1092
+ }[mode],
1093
+ }, null, 2),
1094
+ }],
1095
+ };
1096
+ },
1097
+ });
1098
+ export const getModeTool = defineTool({
1099
+ name: "get_mode",
1100
+ category: "agents",
1101
+ description: "Get the current daemon operating mode",
1102
+ fullDescription: "View the current operating mode and project lifecycle state.",
1103
+ inputSchema: z.object({}),
1104
+ handler: async (_params, ctx) => {
1105
+ const config = loadConfig(ctx.projectPath);
1106
+ const summary = ctx.ralphManager.getCompletionSummary();
1107
+ return {
1108
+ content: [{
1109
+ type: "text",
1110
+ text: JSON.stringify({
1111
+ configuredMode: config.mode,
1112
+ hasVision: !!config.vision,
1113
+ vision: config.vision?.substring(0, 200),
1114
+ hasRoutines: (config.maintain?.routines?.length ?? 0) > 0,
1115
+ routineCount: config.maintain?.routines?.length ?? 0,
1116
+ hasGrowConfig: !!config.grow,
1117
+ stories: {
1118
+ total: summary.total,
1119
+ complete: summary.complete,
1120
+ incomplete: summary.incomplete,
1121
+ percentComplete: summary.percentComplete,
1122
+ },
1123
+ hasSchedule: !!config.schedule,
1124
+ schedule: config.schedule,
1125
+ }, null, 2),
1126
+ }],
1127
+ };
1128
+ },
1129
+ });
1130
+ // ============================================
1131
+ // Routine Tools
1132
+ // ============================================
1133
+ export const listRoutinesTool = defineTool({
1134
+ name: "list_routines",
1135
+ category: "agents",
1136
+ description: "List configured maintenance routines and their status",
1137
+ fullDescription: `View all configured maintenance routines, their schedules, last run times, and health status.
1138
+
1139
+ Routines run during "maintain" mode and handle recurring tasks like security audits,
1140
+ dependency updates, and test coverage improvement.`,
1141
+ inputSchema: z.object({
1142
+ showDefaults: z.boolean().optional().describe("Show built-in default routines that can be added"),
1143
+ }),
1144
+ handler: async ({ showDefaults }, ctx) => {
1145
+ const config = loadConfig(ctx.projectPath);
1146
+ const routines = config.maintain?.routines ?? [];
1147
+ const status = routines.length > 0
1148
+ ? getRoutineStatus(routines, ctx.projectPath)
1149
+ : [];
1150
+ const response = {
1151
+ configuredRoutines: status,
1152
+ count: routines.length,
1153
+ };
1154
+ if (showDefaults) {
1155
+ response.availableDefaults = getDefaultRoutines().map(r => ({
1156
+ name: r.name,
1157
+ type: r.type,
1158
+ schedule: r.schedule,
1159
+ agent: r.agent,
1160
+ description: r.prompt.split("\n")[0],
1161
+ }));
1162
+ }
1163
+ if (routines.length === 0) {
1164
+ response.hint = "No routines configured. Use add_routine to add maintenance routines, or pass showDefaults=true to see built-in options.";
1165
+ }
1166
+ return {
1167
+ content: [{ type: "text", text: JSON.stringify(response, null, 2) }],
1168
+ };
1169
+ },
1170
+ });
1171
+ export const addRoutineTool = defineTool({
1172
+ name: "add_routine",
1173
+ category: "agents",
1174
+ description: "Add a maintenance routine",
1175
+ fullDescription: `Add a recurring maintenance routine to the project.
1176
+
1177
+ You can add a built-in default routine by name (e.g., "security-audit", "dependency-updates", "test-coverage")
1178
+ or define a custom routine with a name, schedule, agent, and prompt.
1179
+
1180
+ Routines run during "maintain" mode after all sprint stories are complete.`,
1181
+ inputSchema: z.object({
1182
+ name: z.string().describe("Routine name (use a default name like 'security-audit' to add a built-in routine)"),
1183
+ schedule: z.enum(["hourly", "daily", "weekly", "monthly"]).optional().describe("How often to run (default: from built-in or 'daily')"),
1184
+ agent: z.string().optional().describe("Agent to execute (default: from built-in or 'gemini')"),
1185
+ prompt: z.string().optional().describe("Custom prompt (default: from built-in routine if name matches)"),
1186
+ type: z.string().optional().describe("Routine type: audit, maintenance, quality, optimization, monitoring, custom"),
1187
+ }),
1188
+ handler: async (params, ctx) => {
1189
+ const config = loadConfig(ctx.projectPath);
1190
+ const routines = config.maintain?.routines ?? [];
1191
+ // Check for duplicates
1192
+ if (routines.find(r => r.name === params.name)) {
1193
+ return {
1194
+ content: [{ type: "text", text: JSON.stringify({ error: `Routine "${params.name}" already exists` }, null, 2) }],
1195
+ isError: true,
1196
+ };
1197
+ }
1198
+ // Check if it's a built-in default
1199
+ const defaults = getDefaultRoutines();
1200
+ const defaultRoutine = defaults.find(d => d.name === params.name);
1201
+ const newRoutine = defaultRoutine
1202
+ ? {
1203
+ ...defaultRoutine,
1204
+ schedule: params.schedule ?? defaultRoutine.schedule,
1205
+ agent: (params.agent ?? defaultRoutine.agent),
1206
+ prompt: params.prompt ?? defaultRoutine.prompt,
1207
+ }
1208
+ : {
1209
+ name: params.name,
1210
+ schedule: params.schedule ?? "daily",
1211
+ agent: (params.agent ?? "gemini"),
1212
+ prompt: params.prompt ?? `Run the "${params.name}" routine for this project.`,
1213
+ type: (params.type ?? "custom"),
1214
+ timeout: 600,
1215
+ };
1216
+ routines.push(newRoutine);
1217
+ saveConfig(ctx.projectPath, { maintain: { routines } });
1218
+ return {
1219
+ content: [{
1220
+ type: "text",
1221
+ text: JSON.stringify({
1222
+ success: true,
1223
+ routine: { name: newRoutine.name, schedule: newRoutine.schedule, agent: newRoutine.agent, type: newRoutine.type },
1224
+ message: `Routine "${newRoutine.name}" added (${newRoutine.schedule}, ${newRoutine.agent})`,
1225
+ totalRoutines: routines.length,
1226
+ }, null, 2),
1227
+ }],
1228
+ };
1229
+ },
1230
+ });
1231
+ export const resetRoutineTool = defineTool({
1232
+ name: "reset_routine",
1233
+ category: "agents",
1234
+ description: "Reset a routine's failure count (re-enable after circuit break)",
1235
+ fullDescription: "Reset a routine that has been disabled after 3 consecutive failures. This clears the failure count and allows it to run again.",
1236
+ inputSchema: z.object({
1237
+ name: z.string().describe("Name of the routine to reset"),
1238
+ }),
1239
+ handler: async ({ name }, ctx) => {
1240
+ const success = resetRoutine(ctx.projectPath, name);
1241
+ return {
1242
+ content: [{
1243
+ type: "text",
1244
+ text: JSON.stringify({
1245
+ success,
1246
+ message: success ? `Routine "${name}" reset — will run on next cycle` : `Routine "${name}" not found in state`,
1247
+ }, null, 2),
1248
+ }],
1249
+ };
1250
+ },
1251
+ });
966
1252
  export const agentTools = [
967
1253
  listAvailableAgents,
968
1254
  spawnAgentTool,
@@ -977,5 +1263,13 @@ export const agentTools = [
977
1263
  getRunStatsTool,
978
1264
  getPipelineTool,
979
1265
  setPipelineTool,
1266
+ setScheduleTool,
1267
+ getScheduleTool,
1268
+ removeScheduleTool,
1269
+ setModeTool,
1270
+ getModeTool,
1271
+ listRoutinesTool,
1272
+ addRoutineTool,
1273
+ resetRoutineTool,
980
1274
  ];
981
1275
  //# sourceMappingURL=agents.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/tools/agents.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/tools/agents.ts"],"names":[],"mappings":"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"}
@@ -4,5 +4,7 @@ export declare const markStoryComplete: import("../tool-registry.js").ToolDefini
4
4
  export declare const getIncompleteStories: import("../tool-registry.js").ToolDefinition;
5
5
  export declare const claimStory: import("../tool-registry.js").ToolDefinition;
6
6
  export declare const completeStory: import("../tool-registry.js").ToolDefinition;
7
+ export declare const generateStoriesFromVision: import("../tool-registry.js").ToolDefinition;
8
+ export declare const approveStories: import("../tool-registry.js").ToolDefinition;
7
9
  export declare const prdTools: import("../tool-registry.js").ToolDefinition[];
8
10
  //# sourceMappingURL=prd.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"prd.d.ts","sourceRoot":"","sources":["../../src/tools/prd.ts"],"names":[],"mappings":"AA0BA,eAAO,MAAM,OAAO,8CA+BlB,CAAC;AAEH,eAAO,MAAM,YAAY,8CAmCvB,CAAC;AAEH,eAAO,MAAM,iBAAiB,8CAqC5B,CAAC;AAEH,eAAO,MAAM,oBAAoB,8CA6B/B,CAAC;AAEH,eAAO,MAAM,UAAU,8CAiErB,CAAC;AAEH,eAAO,MAAM,aAAa,8CAiGxB,CAAC;AAGH,eAAO,MAAM,QAAQ,gDAOpB,CAAC"}
1
+ {"version":3,"file":"prd.d.ts","sourceRoot":"","sources":["../../src/tools/prd.ts"],"names":[],"mappings":"AA4BA,eAAO,MAAM,OAAO,8CA+BlB,CAAC;AAEH,eAAO,MAAM,YAAY,8CAmCvB,CAAC;AAEH,eAAO,MAAM,iBAAiB,8CAqC5B,CAAC;AAEH,eAAO,MAAM,oBAAoB,8CA6B/B,CAAC;AAEH,eAAO,MAAM,UAAU,8CAiErB,CAAC;AAEH,eAAO,MAAM,aAAa,8CAiGxB,CAAC;AAEH,eAAO,MAAM,yBAAyB,8CAqFpC,CAAC;AAEH,eAAO,MAAM,cAAc,8CAoCzB,CAAC;AAGH,eAAO,MAAM,QAAQ,gDASpB,CAAC"}
package/dist/tools/prd.js CHANGED
@@ -4,6 +4,7 @@ import { ChatManager } from "../chat-manager.js";
4
4
  import { RalphManager } from "../ralph-manager.js";
5
5
  import { WorkflowManager } from "../workflow-manager.js";
6
6
  import { validateProjectPath } from "../project-context.js";
7
+ import { generateStories, loadVisionConfig, approveGeneratedStories } from "../vision.js";
7
8
  function getPrdManagers(ctx, projectPath) {
8
9
  if (!projectPath) {
9
10
  return {
@@ -299,6 +300,123 @@ export const completeStory = defineTool({
299
300
  }
300
301
  },
301
302
  });
303
+ export const generateStoriesFromVision = defineTool({
304
+ name: "generate_stories",
305
+ category: "prd",
306
+ description: "Generate new user stories from project vision",
307
+ fullDescription: `Generate new user stories by comparing the project vision against the current codebase state.
308
+
309
+ Uses an AI agent (default: gemini) to analyze the codebase, identify gaps between the vision and what's been built, and produce new stories with acceptance criteria.
310
+
311
+ Requires either a vision configured in nightshift.config.json or an inline vision parameter.
312
+
313
+ Config format (nightshift.config.json):
314
+ {
315
+ "vision": "Description of the end-state goal",
316
+ "autoGenerateWhenBelow": 5,
317
+ "taskGenerationAgent": "gemini",
318
+ "maxAutoGenerated": 10,
319
+ "requireApproval": false
320
+ }
321
+
322
+ When autoGenerateWhenBelow is set, the daemon will automatically trigger generation when incomplete story count drops below the threshold.`,
323
+ inputSchema: z.object({
324
+ vision: z.string().optional().describe("Project vision/goal (overrides config file vision)"),
325
+ maxStories: z.number().optional().describe("Maximum stories to generate (default: 10)"),
326
+ agent: z.string().optional().describe("Agent to use for generation (default: gemini)"),
327
+ requireApproval: z.boolean().optional().describe("Require human approval before stories are activated (default: false)"),
328
+ projectPath: z.string().optional().describe("Optional project path override"),
329
+ }),
330
+ handler: async (params, ctx) => {
331
+ try {
332
+ const { projectPath, chatManager, ralphManager } = getPrdManagers(ctx, params.projectPath);
333
+ if (!ralphManager.hasPRD()) {
334
+ return {
335
+ content: [{ type: "text", text: "No prd.json found. Create a PRD first before generating stories." }],
336
+ isError: true,
337
+ };
338
+ }
339
+ // Build config from params + config file
340
+ const fileConfig = loadVisionConfig(projectPath);
341
+ const vision = params.vision || fileConfig?.vision;
342
+ if (!vision) {
343
+ return {
344
+ content: [{
345
+ type: "text",
346
+ text: JSON.stringify({
347
+ error: "No vision configured",
348
+ hint: "Either pass a 'vision' parameter or add a 'vision' field to nightshift.config.json",
349
+ example: {
350
+ vision: "Build an AI-powered task manager with real-time collaboration",
351
+ autoGenerateWhenBelow: 5,
352
+ taskGenerationAgent: "gemini",
353
+ maxAutoGenerated: 10,
354
+ },
355
+ }, null, 2),
356
+ }],
357
+ isError: true,
358
+ };
359
+ }
360
+ const config = {
361
+ vision,
362
+ autoGenerateWhenBelow: fileConfig?.autoGenerateWhenBelow ?? 5,
363
+ taskGenerationAgent: params.agent ?? fileConfig?.taskGenerationAgent ?? "gemini",
364
+ maxAutoGenerated: params.maxStories ?? fileConfig?.maxAutoGenerated ?? 10,
365
+ requireApproval: params.requireApproval ?? fileConfig?.requireApproval ?? false,
366
+ };
367
+ const result = await generateStories(projectPath, ralphManager, chatManager, config);
368
+ return {
369
+ content: [{
370
+ type: "text",
371
+ text: JSON.stringify(result, null, 2),
372
+ }],
373
+ isError: !result.success,
374
+ };
375
+ }
376
+ catch (error) {
377
+ return {
378
+ content: [{ type: "text", text: `Error generating stories: ${error instanceof Error ? error.message : String(error)}` }],
379
+ isError: true,
380
+ };
381
+ }
382
+ },
383
+ });
384
+ export const approveStories = defineTool({
385
+ name: "approve_stories",
386
+ category: "prd",
387
+ description: "Approve auto-generated stories for execution",
388
+ fullDescription: `Approve auto-generated stories so the daemon will pick them up for execution.
389
+
390
+ When stories are generated with requireApproval=true, they get a "pending_approval" tag and the daemon skips them. Use this tool to approve specific stories or all pending stories at once.`,
391
+ inputSchema: z.object({
392
+ storyIds: z.array(z.string()).optional().describe("Specific story IDs to approve (omit to approve all pending)"),
393
+ projectPath: z.string().optional().describe("Optional project path override"),
394
+ }),
395
+ handler: async (params, ctx) => {
396
+ try {
397
+ const { ralphManager } = getPrdManagers(ctx, params.projectPath);
398
+ const result = approveGeneratedStories(ralphManager, params.storyIds);
399
+ return {
400
+ content: [{
401
+ type: "text",
402
+ text: JSON.stringify({
403
+ approved: result.approved,
404
+ notFound: result.notFound,
405
+ message: result.approved.length > 0
406
+ ? `Approved ${result.approved.length} stories: ${result.approved.join(", ")}`
407
+ : "No stories to approve",
408
+ }, null, 2),
409
+ }],
410
+ };
411
+ }
412
+ catch (error) {
413
+ return {
414
+ content: [{ type: "text", text: `Error approving stories: ${error instanceof Error ? error.message : String(error)}` }],
415
+ isError: true,
416
+ };
417
+ }
418
+ },
419
+ });
302
420
  // Export all PRD tools as an array
303
421
  export const prdTools = [
304
422
  readPrd,
@@ -307,5 +425,7 @@ export const prdTools = [
307
425
  getIncompleteStories,
308
426
  claimStory,
309
427
  completeStory,
428
+ generateStoriesFromVision,
429
+ approveStories,
310
430
  ];
311
431
  //# sourceMappingURL=prd.js.map