@zeliper/zscode-mcp-server 1.0.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.
- package/dist/errors/index.d.ts +112 -0
- package/dist/errors/index.d.ts.map +1 -0
- package/dist/errors/index.js +231 -0
- package/dist/errors/index.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +50 -0
- package/dist/index.js.map +1 -0
- package/dist/state/manager.d.ts +54 -0
- package/dist/state/manager.d.ts.map +1 -0
- package/dist/state/manager.js +500 -0
- package/dist/state/manager.js.map +1 -0
- package/dist/state/schema.d.ts +942 -0
- package/dist/state/schema.d.ts.map +1 -0
- package/dist/state/schema.js +179 -0
- package/dist/state/schema.js.map +1 -0
- package/dist/state/types.d.ts +117 -0
- package/dist/state/types.d.ts.map +1 -0
- package/dist/state/types.js +2 -0
- package/dist/state/types.js.map +1 -0
- package/dist/tools/archive.d.ts +6 -0
- package/dist/tools/archive.d.ts.map +1 -0
- package/dist/tools/archive.js +67 -0
- package/dist/tools/archive.js.map +1 -0
- package/dist/tools/cancel.d.ts +6 -0
- package/dist/tools/cancel.d.ts.map +1 -0
- package/dist/tools/cancel.js +65 -0
- package/dist/tools/cancel.js.map +1 -0
- package/dist/tools/context.d.ts +6 -0
- package/dist/tools/context.d.ts.map +1 -0
- package/dist/tools/context.js +124 -0
- package/dist/tools/context.js.map +1 -0
- package/dist/tools/index.d.ts +6 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +24 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/plan.d.ts +6 -0
- package/dist/tools/plan.d.ts.map +1 -0
- package/dist/tools/plan.js +186 -0
- package/dist/tools/plan.js.map +1 -0
- package/dist/tools/staging.d.ts +6 -0
- package/dist/tools/staging.d.ts.map +1 -0
- package/dist/tools/staging.js +224 -0
- package/dist/tools/staging.js.map +1 -0
- package/dist/tools/status.d.ts +6 -0
- package/dist/tools/status.d.ts.map +1 -0
- package/dist/tools/status.js +144 -0
- package/dist/tools/status.js.map +1 -0
- package/dist/utils/artifacts.d.ts +57 -0
- package/dist/utils/artifacts.d.ts.map +1 -0
- package/dist/utils/artifacts.js +180 -0
- package/dist/utils/artifacts.js.map +1 -0
- package/dist/utils/paths.d.ts +68 -0
- package/dist/utils/paths.d.ts.map +1 -0
- package/dist/utils/paths.js +122 -0
- package/dist/utils/paths.js.map +1 -0
- package/package.json +53 -0
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base error class for ZSCode
|
|
3
|
+
*/
|
|
4
|
+
export declare class ZSCodeError extends Error {
|
|
5
|
+
readonly code: string;
|
|
6
|
+
readonly details?: Record<string, unknown>;
|
|
7
|
+
constructor(message: string, code: string, details?: Record<string, unknown>);
|
|
8
|
+
toJSON(): Record<string, unknown>;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* State-related errors
|
|
12
|
+
*/
|
|
13
|
+
export declare class StateError extends ZSCodeError {
|
|
14
|
+
constructor(message: string, details?: Record<string, unknown>);
|
|
15
|
+
}
|
|
16
|
+
export declare class StateNotFoundError extends StateError {
|
|
17
|
+
constructor(projectRoot: string);
|
|
18
|
+
}
|
|
19
|
+
export declare class StateValidationError extends StateError {
|
|
20
|
+
constructor(validationErrors: unknown[]);
|
|
21
|
+
}
|
|
22
|
+
export declare class ProjectNotInitializedError extends StateError {
|
|
23
|
+
constructor();
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Plan-related errors
|
|
27
|
+
*/
|
|
28
|
+
export declare class PlanError extends ZSCodeError {
|
|
29
|
+
readonly planId: string;
|
|
30
|
+
constructor(message: string, planId: string, details?: Record<string, unknown>);
|
|
31
|
+
}
|
|
32
|
+
export declare class PlanNotFoundError extends PlanError {
|
|
33
|
+
constructor(planId: string);
|
|
34
|
+
}
|
|
35
|
+
export declare class PlanInvalidStateError extends PlanError {
|
|
36
|
+
constructor(planId: string, currentState: string, expectedStates: string[]);
|
|
37
|
+
}
|
|
38
|
+
export declare class PlanAlreadyExistsError extends PlanError {
|
|
39
|
+
constructor(planId: string);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Staging-related errors
|
|
43
|
+
*/
|
|
44
|
+
export declare class StagingError extends ZSCodeError {
|
|
45
|
+
readonly stagingId: string;
|
|
46
|
+
constructor(message: string, stagingId: string, details?: Record<string, unknown>);
|
|
47
|
+
}
|
|
48
|
+
export declare class StagingNotFoundError extends StagingError {
|
|
49
|
+
constructor(stagingId: string);
|
|
50
|
+
}
|
|
51
|
+
export declare class StagingOrderError extends StagingError {
|
|
52
|
+
constructor(stagingId: string, previousStagingId: string);
|
|
53
|
+
}
|
|
54
|
+
export declare class StagingInvalidStateError extends StagingError {
|
|
55
|
+
constructor(stagingId: string, currentState: string, expectedStates: string[]);
|
|
56
|
+
}
|
|
57
|
+
export declare class StagingPlanMismatchError extends StagingError {
|
|
58
|
+
constructor(stagingId: string, expectedPlanId: string, actualPlanId: string);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Task-related errors
|
|
62
|
+
*/
|
|
63
|
+
export declare class TaskError extends ZSCodeError {
|
|
64
|
+
readonly taskId: string;
|
|
65
|
+
constructor(message: string, taskId: string, details?: Record<string, unknown>);
|
|
66
|
+
}
|
|
67
|
+
export declare class TaskNotFoundError extends TaskError {
|
|
68
|
+
constructor(taskId: string);
|
|
69
|
+
}
|
|
70
|
+
export declare class TaskInvalidStateError extends TaskError {
|
|
71
|
+
constructor(taskId: string, currentState: string, expectedStates: string[]);
|
|
72
|
+
}
|
|
73
|
+
export declare class TaskDependencyError extends TaskError {
|
|
74
|
+
constructor(taskId: string, unmetDependencies: string[]);
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* File system errors
|
|
78
|
+
*/
|
|
79
|
+
export declare class FileSystemError extends ZSCodeError {
|
|
80
|
+
constructor(operation: string, path: string, originalError?: Error);
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Validation errors
|
|
84
|
+
*/
|
|
85
|
+
export declare class ValidationError extends ZSCodeError {
|
|
86
|
+
constructor(message: string, field?: string, details?: Record<string, unknown>);
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Get suggestion for error
|
|
90
|
+
*/
|
|
91
|
+
export declare function getSuggestion(error: ZSCodeError): string | undefined;
|
|
92
|
+
/**
|
|
93
|
+
* Error handler wrapper for tools
|
|
94
|
+
*/
|
|
95
|
+
export interface ToolErrorResult {
|
|
96
|
+
success: false;
|
|
97
|
+
error: {
|
|
98
|
+
code: string;
|
|
99
|
+
message: string;
|
|
100
|
+
details?: Record<string, unknown>;
|
|
101
|
+
suggestion?: string;
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
export declare function createToolErrorResult(error: unknown): ToolErrorResult;
|
|
105
|
+
/**
|
|
106
|
+
* Async wrapper for tool handlers with error handling
|
|
107
|
+
*/
|
|
108
|
+
export declare function withErrorHandling<T>(operation: () => Promise<T>, context: string): Promise<{
|
|
109
|
+
success: true;
|
|
110
|
+
data: T;
|
|
111
|
+
} | ToolErrorResult>;
|
|
112
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,231 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Base error class for ZSCode
|
|
3
|
+
*/
|
|
4
|
+
export class ZSCodeError extends Error {
|
|
5
|
+
code;
|
|
6
|
+
details;
|
|
7
|
+
constructor(message, code, details) {
|
|
8
|
+
super(message);
|
|
9
|
+
this.name = "ZSCodeError";
|
|
10
|
+
this.code = code;
|
|
11
|
+
this.details = details;
|
|
12
|
+
Error.captureStackTrace?.(this, this.constructor);
|
|
13
|
+
}
|
|
14
|
+
toJSON() {
|
|
15
|
+
return {
|
|
16
|
+
error: this.name,
|
|
17
|
+
code: this.code,
|
|
18
|
+
message: this.message,
|
|
19
|
+
details: this.details,
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* State-related errors
|
|
25
|
+
*/
|
|
26
|
+
export class StateError extends ZSCodeError {
|
|
27
|
+
constructor(message, details) {
|
|
28
|
+
super(message, "STATE_ERROR", details);
|
|
29
|
+
this.name = "StateError";
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
export class StateNotFoundError extends StateError {
|
|
33
|
+
constructor(projectRoot) {
|
|
34
|
+
super(`state.json not found at ${projectRoot}/.claude/state.json`, {
|
|
35
|
+
projectRoot,
|
|
36
|
+
suggestion: "Run 'npx zscode init' to initialize the project",
|
|
37
|
+
});
|
|
38
|
+
this.name = "StateNotFoundError";
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
export class StateValidationError extends StateError {
|
|
42
|
+
constructor(validationErrors) {
|
|
43
|
+
super("state.json validation failed", { validationErrors });
|
|
44
|
+
this.name = "StateValidationError";
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
export class ProjectNotInitializedError extends StateError {
|
|
48
|
+
constructor() {
|
|
49
|
+
super("Project not initialized", {
|
|
50
|
+
suggestion: "Run 'npx zscode init' to initialize the project",
|
|
51
|
+
});
|
|
52
|
+
this.name = "ProjectNotInitializedError";
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Plan-related errors
|
|
57
|
+
*/
|
|
58
|
+
export class PlanError extends ZSCodeError {
|
|
59
|
+
planId;
|
|
60
|
+
constructor(message, planId, details) {
|
|
61
|
+
super(message, "PLAN_ERROR", { planId, ...details });
|
|
62
|
+
this.name = "PlanError";
|
|
63
|
+
this.planId = planId;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
export class PlanNotFoundError extends PlanError {
|
|
67
|
+
constructor(planId) {
|
|
68
|
+
super(`Plan not found: ${planId}`, planId, {
|
|
69
|
+
suggestion: "Use 'zscode:status' to see available plans",
|
|
70
|
+
});
|
|
71
|
+
this.name = "PlanNotFoundError";
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
export class PlanInvalidStateError extends PlanError {
|
|
75
|
+
constructor(planId, currentState, expectedStates) {
|
|
76
|
+
super(`Plan ${planId} is in '${currentState}' state, expected one of: ${expectedStates.join(", ")}`, planId, { currentState, expectedStates });
|
|
77
|
+
this.name = "PlanInvalidStateError";
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
export class PlanAlreadyExistsError extends PlanError {
|
|
81
|
+
constructor(planId) {
|
|
82
|
+
super(`Plan already exists: ${planId}`, planId);
|
|
83
|
+
this.name = "PlanAlreadyExistsError";
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Staging-related errors
|
|
88
|
+
*/
|
|
89
|
+
export class StagingError extends ZSCodeError {
|
|
90
|
+
stagingId;
|
|
91
|
+
constructor(message, stagingId, details) {
|
|
92
|
+
super(message, "STAGING_ERROR", { stagingId, ...details });
|
|
93
|
+
this.name = "StagingError";
|
|
94
|
+
this.stagingId = stagingId;
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
export class StagingNotFoundError extends StagingError {
|
|
98
|
+
constructor(stagingId) {
|
|
99
|
+
super(`Staging not found: ${stagingId}`, stagingId);
|
|
100
|
+
this.name = "StagingNotFoundError";
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
export class StagingOrderError extends StagingError {
|
|
104
|
+
constructor(stagingId, previousStagingId) {
|
|
105
|
+
super(`Cannot start staging ${stagingId}: previous staging ${previousStagingId} is not completed`, stagingId, {
|
|
106
|
+
previousStagingId,
|
|
107
|
+
suggestion: "Complete the previous staging first or use 'zscode:cancel' to skip",
|
|
108
|
+
});
|
|
109
|
+
this.name = "StagingOrderError";
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
export class StagingInvalidStateError extends StagingError {
|
|
113
|
+
constructor(stagingId, currentState, expectedStates) {
|
|
114
|
+
super(`Staging ${stagingId} is in '${currentState}' state, expected one of: ${expectedStates.join(", ")}`, stagingId, { currentState, expectedStates });
|
|
115
|
+
this.name = "StagingInvalidStateError";
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
export class StagingPlanMismatchError extends StagingError {
|
|
119
|
+
constructor(stagingId, expectedPlanId, actualPlanId) {
|
|
120
|
+
super(`Staging ${stagingId} does not belong to plan ${expectedPlanId}`, stagingId, { expectedPlanId, actualPlanId });
|
|
121
|
+
this.name = "StagingPlanMismatchError";
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
/**
|
|
125
|
+
* Task-related errors
|
|
126
|
+
*/
|
|
127
|
+
export class TaskError extends ZSCodeError {
|
|
128
|
+
taskId;
|
|
129
|
+
constructor(message, taskId, details) {
|
|
130
|
+
super(message, "TASK_ERROR", { taskId, ...details });
|
|
131
|
+
this.name = "TaskError";
|
|
132
|
+
this.taskId = taskId;
|
|
133
|
+
}
|
|
134
|
+
}
|
|
135
|
+
export class TaskNotFoundError extends TaskError {
|
|
136
|
+
constructor(taskId) {
|
|
137
|
+
super(`Task not found: ${taskId}`, taskId);
|
|
138
|
+
this.name = "TaskNotFoundError";
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
export class TaskInvalidStateError extends TaskError {
|
|
142
|
+
constructor(taskId, currentState, expectedStates) {
|
|
143
|
+
super(`Task ${taskId} is in '${currentState}' state, expected one of: ${expectedStates.join(", ")}`, taskId, { currentState, expectedStates });
|
|
144
|
+
this.name = "TaskInvalidStateError";
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
export class TaskDependencyError extends TaskError {
|
|
148
|
+
constructor(taskId, unmetDependencies) {
|
|
149
|
+
super(`Task ${taskId} has unmet dependencies: ${unmetDependencies.join(", ")}`, taskId, { unmetDependencies });
|
|
150
|
+
this.name = "TaskDependencyError";
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* File system errors
|
|
155
|
+
*/
|
|
156
|
+
export class FileSystemError extends ZSCodeError {
|
|
157
|
+
constructor(operation, path, originalError) {
|
|
158
|
+
super(`File system error during ${operation}: ${path}`, "FS_ERROR", {
|
|
159
|
+
operation,
|
|
160
|
+
path,
|
|
161
|
+
originalError: originalError?.message,
|
|
162
|
+
});
|
|
163
|
+
this.name = "FileSystemError";
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
/**
|
|
167
|
+
* Validation errors
|
|
168
|
+
*/
|
|
169
|
+
export class ValidationError extends ZSCodeError {
|
|
170
|
+
constructor(message, field, details) {
|
|
171
|
+
super(message, "VALIDATION_ERROR", { field, ...details });
|
|
172
|
+
this.name = "ValidationError";
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
/**
|
|
176
|
+
* Get suggestion for error
|
|
177
|
+
*/
|
|
178
|
+
export function getSuggestion(error) {
|
|
179
|
+
const details = error.details;
|
|
180
|
+
if (details && typeof details.suggestion === "string") {
|
|
181
|
+
return details.suggestion;
|
|
182
|
+
}
|
|
183
|
+
switch (error.name) {
|
|
184
|
+
case "StateNotFoundError":
|
|
185
|
+
case "ProjectNotInitializedError":
|
|
186
|
+
return "Run 'npx zscode init' to initialize the project";
|
|
187
|
+
case "PlanNotFoundError":
|
|
188
|
+
return "Use 'zscode:status' to see available plans";
|
|
189
|
+
case "StagingOrderError":
|
|
190
|
+
return "Complete the previous staging first or use 'zscode:cancel' to skip";
|
|
191
|
+
default:
|
|
192
|
+
return undefined;
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
export function createToolErrorResult(error) {
|
|
196
|
+
if (error instanceof ZSCodeError) {
|
|
197
|
+
return {
|
|
198
|
+
success: false,
|
|
199
|
+
error: {
|
|
200
|
+
code: error.code,
|
|
201
|
+
message: error.message,
|
|
202
|
+
details: error.details,
|
|
203
|
+
suggestion: getSuggestion(error),
|
|
204
|
+
},
|
|
205
|
+
};
|
|
206
|
+
}
|
|
207
|
+
// Unknown error
|
|
208
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
209
|
+
return {
|
|
210
|
+
success: false,
|
|
211
|
+
error: {
|
|
212
|
+
code: "UNEXPECTED_ERROR",
|
|
213
|
+
message: `Unexpected error: ${message}`,
|
|
214
|
+
details: { originalError: String(error) },
|
|
215
|
+
},
|
|
216
|
+
};
|
|
217
|
+
}
|
|
218
|
+
/**
|
|
219
|
+
* Async wrapper for tool handlers with error handling
|
|
220
|
+
*/
|
|
221
|
+
export async function withErrorHandling(operation, context) {
|
|
222
|
+
try {
|
|
223
|
+
const data = await operation();
|
|
224
|
+
return { success: true, data };
|
|
225
|
+
}
|
|
226
|
+
catch (error) {
|
|
227
|
+
console.error(`[${context}] Error:`, error);
|
|
228
|
+
return createToolErrorResult(error);
|
|
229
|
+
}
|
|
230
|
+
}
|
|
231
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
|
|
3
|
+
import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
|
|
4
|
+
import { StateManager } from "./state/manager.js";
|
|
5
|
+
import { registerAllTools } from "./tools/index.js";
|
|
6
|
+
import { normalizePath } from "./utils/paths.js";
|
|
7
|
+
const SERVER_NAME = "zscode";
|
|
8
|
+
const SERVER_VERSION = "1.0.0";
|
|
9
|
+
async function main() {
|
|
10
|
+
// Get project root from environment variable or current working directory
|
|
11
|
+
const projectRoot = process.env.ZSCODE_PROJECT_ROOT || process.cwd();
|
|
12
|
+
const normalizedRoot = normalizePath(projectRoot);
|
|
13
|
+
// Log to stderr (stdout is reserved for MCP protocol)
|
|
14
|
+
console.error(`[${SERVER_NAME}] Starting MCP server v${SERVER_VERSION}`);
|
|
15
|
+
console.error(`[${SERVER_NAME}] Project root: ${normalizedRoot}`);
|
|
16
|
+
// Initialize state manager
|
|
17
|
+
try {
|
|
18
|
+
await StateManager.initialize(normalizedRoot);
|
|
19
|
+
console.error(`[${SERVER_NAME}] State manager initialized`);
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
console.error(`[${SERVER_NAME}] Warning: Could not load state.json (project may not be initialized)`);
|
|
23
|
+
}
|
|
24
|
+
// Create MCP server
|
|
25
|
+
const server = new McpServer({
|
|
26
|
+
name: SERVER_NAME,
|
|
27
|
+
version: SERVER_VERSION,
|
|
28
|
+
});
|
|
29
|
+
// Register all tools
|
|
30
|
+
registerAllTools(server, normalizedRoot);
|
|
31
|
+
console.error(`[${SERVER_NAME}] Tools registered`);
|
|
32
|
+
// Connect via stdio transport
|
|
33
|
+
const transport = new StdioServerTransport();
|
|
34
|
+
await server.connect(transport);
|
|
35
|
+
console.error(`[${SERVER_NAME}] Server connected and ready`);
|
|
36
|
+
// Handle shutdown
|
|
37
|
+
process.on("SIGINT", () => {
|
|
38
|
+
console.error(`[${SERVER_NAME}] Shutting down...`);
|
|
39
|
+
process.exit(0);
|
|
40
|
+
});
|
|
41
|
+
process.on("SIGTERM", () => {
|
|
42
|
+
console.error(`[${SERVER_NAME}] Shutting down...`);
|
|
43
|
+
process.exit(0);
|
|
44
|
+
});
|
|
45
|
+
}
|
|
46
|
+
main().catch((error) => {
|
|
47
|
+
console.error(`[${SERVER_NAME}] Fatal error:`, error);
|
|
48
|
+
process.exit(1);
|
|
49
|
+
});
|
|
50
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AACA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,MAAM,WAAW,GAAG,QAAQ,CAAC;AAC7B,MAAM,cAAc,GAAG,OAAO,CAAC;AAE/B,KAAK,UAAU,IAAI;IACjB,0EAA0E;IAC1E,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACrE,MAAM,cAAc,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAElD,sDAAsD;IACtD,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,0BAA0B,cAAc,EAAE,CAAC,CAAC;IACzE,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,mBAAmB,cAAc,EAAE,CAAC,CAAC;IAElE,2BAA2B;IAC3B,IAAI,CAAC;QACH,MAAM,YAAY,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;QAC9C,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,6BAA6B,CAAC,CAAC;IAC9D,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,uEAAuE,CAAC,CAAC;IACxG,CAAC;IAED,oBAAoB;IACpB,MAAM,MAAM,GAAG,IAAI,SAAS,CAAC;QAC3B,IAAI,EAAE,WAAW;QACjB,OAAO,EAAE,cAAc;KACxB,CAAC,CAAC;IAEH,qBAAqB;IACrB,gBAAgB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACzC,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,oBAAoB,CAAC,CAAC;IAEnD,8BAA8B;IAC9B,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAEhC,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,8BAA8B,CAAC,CAAC;IAE7D,kBAAkB;IAClB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE;QACxB,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,oBAAoB,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;IAEH,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE;QACzB,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,oBAAoB,CAAC,CAAC;QACnD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACrB,OAAO,CAAC,KAAK,CAAC,IAAI,WAAW,gBAAgB,EAAE,KAAK,CAAC,CAAC;IACtD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import type { State, Plan, Staging, Task, Project, Decision, TaskStatus, PlanStatus, HistoryEntryType, TaskOutput, IdGenerator } from "./types.js";
|
|
2
|
+
declare const idGenerator: IdGenerator;
|
|
3
|
+
export declare class StateManager {
|
|
4
|
+
private static instance;
|
|
5
|
+
private state;
|
|
6
|
+
private projectRoot;
|
|
7
|
+
private stateFilePath;
|
|
8
|
+
private constructor();
|
|
9
|
+
static initialize(projectRoot: string): Promise<StateManager>;
|
|
10
|
+
static getInstance(): StateManager;
|
|
11
|
+
private load;
|
|
12
|
+
private save;
|
|
13
|
+
getState(): State | null;
|
|
14
|
+
getProject(): Project | null;
|
|
15
|
+
getPlan(planId: string): Plan | undefined;
|
|
16
|
+
getStaging(stagingId: string): Staging | undefined;
|
|
17
|
+
getTask(taskId: string): Task | undefined;
|
|
18
|
+
getAllPlans(): Plan[];
|
|
19
|
+
getStagingsByPlan(planId: string): Staging[];
|
|
20
|
+
getTasksByStaging(stagingId: string): Task[];
|
|
21
|
+
getStagingByOrder(planId: string, order: number): Staging | undefined;
|
|
22
|
+
initializeProject(name: string, description?: string, goals?: string[], constraints?: string[]): Promise<Project>;
|
|
23
|
+
createPlan(title: string, description: string | undefined, stagingConfigs: Array<{
|
|
24
|
+
name: string;
|
|
25
|
+
description?: string;
|
|
26
|
+
execution_type: "parallel" | "sequential";
|
|
27
|
+
tasks: Array<{
|
|
28
|
+
title: string;
|
|
29
|
+
description?: string;
|
|
30
|
+
priority: "high" | "medium" | "low";
|
|
31
|
+
execution_mode: "parallel" | "sequential";
|
|
32
|
+
depends_on_index: number[];
|
|
33
|
+
}>;
|
|
34
|
+
}>): Promise<Plan>;
|
|
35
|
+
updatePlanStatus(planId: string, status: PlanStatus): Promise<void>;
|
|
36
|
+
startStaging(planId: string, stagingId: string): Promise<Staging>;
|
|
37
|
+
completestaging(stagingId: string): Promise<void>;
|
|
38
|
+
updateTaskStatus(taskId: string, status: TaskStatus, notes?: string): Promise<void>;
|
|
39
|
+
saveTaskOutput(taskId: string, output: TaskOutput): Promise<void>;
|
|
40
|
+
getExecutableTasks(stagingId: string): Task[];
|
|
41
|
+
archivePlan(planId: string, reason?: string): Promise<string>;
|
|
42
|
+
cancelPlan(planId: string, reason?: string): Promise<{
|
|
43
|
+
affectedStagings: number;
|
|
44
|
+
affectedTasks: number;
|
|
45
|
+
}>;
|
|
46
|
+
addHistory(type: HistoryEntryType, details: Record<string, unknown>): Promise<void>;
|
|
47
|
+
addDecision(title: string, decision: string, rationale?: string, relatedPlanId?: string, relatedStagingId?: string): Promise<Decision>;
|
|
48
|
+
startSession(): Promise<void>;
|
|
49
|
+
endSession(summary?: string): Promise<void>;
|
|
50
|
+
getProjectRoot(): string;
|
|
51
|
+
isInitialized(): boolean;
|
|
52
|
+
}
|
|
53
|
+
export { idGenerator };
|
|
54
|
+
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/state/manager.ts"],"names":[],"mappings":"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"}
|