devmind 1.0.2 → 1.1.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.
- package/README.md +138 -162
- package/dist/cli/handlers.d.ts +2 -0
- package/dist/cli/handlers.js +140 -0
- package/dist/cli/handlers.js.map +1 -0
- package/dist/cli/register-all.d.ts +2 -0
- package/dist/cli/register-all.js +11 -0
- package/dist/cli/register-all.js.map +1 -0
- package/dist/cli/register-analysis.d.ts +2 -0
- package/dist/cli/register-analysis.js +137 -0
- package/dist/cli/register-analysis.js.map +1 -0
- package/dist/cli/register-codebase.d.ts +2 -0
- package/dist/cli/register-codebase.js +22 -0
- package/dist/cli/register-codebase.js.map +1 -0
- package/dist/cli/register-database.d.ts +2 -0
- package/dist/cli/register-database.js +48 -0
- package/dist/cli/register-database.js.map +1 -0
- package/dist/cli/register-memory.d.ts +2 -0
- package/dist/cli/register-memory.js +58 -0
- package/dist/cli/register-memory.js.map +1 -0
- package/dist/cli.js +9 -316
- package/dist/cli.js.map +1 -1
- package/dist/codebase/generators/architecture-extractor.d.ts +41 -0
- package/dist/codebase/generators/architecture-extractor.js +388 -0
- package/dist/codebase/generators/architecture-extractor.js.map +1 -0
- package/dist/codebase/generators/architecture.d.ts +2 -4
- package/dist/codebase/generators/architecture.js +123 -30
- package/dist/codebase/generators/architecture.js.map +1 -1
- package/dist/codebase/generators/modules.js +8 -8
- package/dist/codebase/generators/overview.js +24 -24
- package/dist/codebase/index.js +3 -3
- package/dist/codebase/index.js.map +1 -1
- package/dist/codebase/parsers/typescript.d.ts +1 -0
- package/dist/codebase/parsers/typescript.js +12 -0
- package/dist/codebase/parsers/typescript.js.map +1 -1
- package/dist/codebase/scanners/filesystem.d.ts +1 -0
- package/dist/codebase/scanners/filesystem.js +128 -4
- package/dist/codebase/scanners/filesystem.js.map +1 -1
- package/dist/commands/analyze.d.ts +1 -0
- package/dist/commands/analyze.js +172 -24
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/audit-design.d.ts +8 -0
- package/dist/commands/audit-design.js +158 -0
- package/dist/commands/audit-design.js.map +1 -0
- package/dist/commands/audit-report.d.ts +18 -0
- package/dist/commands/audit-report.js +30 -0
- package/dist/commands/audit-report.js.map +1 -0
- package/dist/commands/audit-source.d.ts +21 -0
- package/dist/commands/audit-source.js +59 -0
- package/dist/commands/audit-source.js.map +1 -0
- package/dist/commands/audit.d.ts +1 -0
- package/dist/commands/audit.js +174 -73
- package/dist/commands/audit.js.map +1 -1
- package/dist/commands/claude-plugin.d.ts +8 -0
- package/dist/commands/claude-plugin.js +123 -0
- package/dist/commands/claude-plugin.js.map +1 -0
- package/dist/commands/codex-plugin.d.ts +9 -0
- package/dist/commands/codex-plugin.js +145 -0
- package/dist/commands/codex-plugin.js.map +1 -0
- package/dist/commands/context.js +66 -5
- package/dist/commands/context.js.map +1 -1
- package/dist/commands/design-system.d.ts +8 -0
- package/dist/commands/design-system.js +95 -0
- package/dist/commands/design-system.js.map +1 -0
- package/dist/commands/extract.d.ts +13 -0
- package/dist/commands/extract.js +83 -17
- package/dist/commands/extract.js.map +1 -1
- package/dist/commands/openclaw-plugin.d.ts +8 -0
- package/dist/commands/openclaw-plugin.js +103 -0
- package/dist/commands/openclaw-plugin.js.map +1 -0
- package/dist/commands/retrieve.d.ts +12 -0
- package/dist/commands/retrieve.js +234 -0
- package/dist/commands/retrieve.js.map +1 -0
- package/dist/commands/status.d.ts +1 -0
- package/dist/commands/status.js +54 -18
- package/dist/commands/status.js.map +1 -1
- package/dist/core/cache-json.d.ts +7 -0
- package/dist/core/cache-json.js +60 -0
- package/dist/core/cache-json.js.map +1 -0
- package/dist/core/errors.d.ts +2 -0
- package/dist/core/errors.js +49 -1
- package/dist/core/errors.js.map +1 -1
- package/dist/core/index.d.ts +4 -0
- package/dist/core/index.js +4 -0
- package/dist/core/index.js.map +1 -1
- package/dist/core/learning-parser.d.ts +6 -0
- package/dist/core/learning-parser.js +23 -0
- package/dist/core/learning-parser.js.map +1 -0
- package/dist/core/profile.d.ts +18 -0
- package/dist/core/profile.js +37 -0
- package/dist/core/profile.js.map +1 -0
- package/dist/core/source-file-cache.d.ts +13 -0
- package/dist/core/source-file-cache.js +88 -0
- package/dist/core/source-file-cache.js.map +1 -0
- package/dist/database/cli/register-all.d.ts +2 -0
- package/dist/database/cli/register-all.js +9 -0
- package/dist/database/cli/register-all.js.map +1 -0
- package/dist/database/cli/register-database.d.ts +2 -0
- package/dist/database/cli/register-database.js +48 -0
- package/dist/database/cli/register-database.js.map +1 -0
- package/dist/database/cli/register-interactive.d.ts +2 -0
- package/dist/database/cli/register-interactive.js +29 -0
- package/dist/database/cli/register-interactive.js.map +1 -0
- package/dist/database/cli/register-memory.d.ts +2 -0
- package/dist/database/cli/register-memory.js +47 -0
- package/dist/database/cli/register-memory.js.map +1 -0
- package/dist/database/cli.js +5 -112
- package/dist/database/cli.js.map +1 -1
- package/dist/database/commands/checkpoint.js +8 -10
- package/dist/database/commands/checkpoint.js.map +1 -1
- package/dist/database/commands/generate.d.ts +1 -0
- package/dist/database/commands/generate.js +28 -20
- package/dist/database/commands/generate.js.map +1 -1
- package/dist/database/commands/handoff.js +126 -125
- package/dist/database/commands/handoff.js.map +1 -1
- package/dist/database/commands/learn.d.ts +4 -0
- package/dist/database/commands/learn.js +249 -43
- package/dist/database/commands/learn.js.map +1 -1
- package/dist/database/commands/memory.js +114 -114
- package/dist/database/commands/validate.js +6 -4
- package/dist/database/commands/validate.js.map +1 -1
- package/dist/database/commands/watch.js +2 -2
- package/dist/database/commands/watch.js.map +1 -1
- package/dist/database/extractors/mysql.js +45 -45
- package/dist/database/extractors/postgres.js +54 -54
- package/dist/database/extractors/sqlite.js +8 -8
- package/dist/database/generators/templates.js +534 -534
- package/dist/database/generators/templates.js.map +1 -1
- package/dist/database/utils/json-output.d.ts +4 -0
- package/dist/database/utils/json-output.js +7 -0
- package/dist/database/utils/json-output.js.map +1 -1
- package/dist/generators/unified.d.ts +13 -0
- package/dist/generators/unified.js +391 -46
- package/dist/generators/unified.js.map +1 -1
- package/package.json +86 -78
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
import * as path from 'path';
|
|
6
6
|
import { MemoryInfrastructure } from './memory.js';
|
|
7
7
|
import * as fs from 'fs/promises';
|
|
8
|
-
import { logger, readFileSafe } from '../../core/index.js';
|
|
8
|
+
import { logger, readFileSafe, failCommand } from '../../core/index.js';
|
|
9
9
|
export async function checkpoint(options) {
|
|
10
10
|
const outputDir = options.output || '.devmind';
|
|
11
11
|
const memory = new MemoryInfrastructure();
|
|
@@ -43,9 +43,8 @@ async function saveCheckpoint(outputDir, memory, message) {
|
|
|
43
43
|
logger.info(` Schema Hash: ${context.schemaHash}`);
|
|
44
44
|
}
|
|
45
45
|
catch (error) {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
process.exit(1);
|
|
46
|
+
failCommand('Failed to save checkpoint:', error);
|
|
47
|
+
return;
|
|
49
48
|
}
|
|
50
49
|
}
|
|
51
50
|
/**
|
|
@@ -79,20 +78,19 @@ async function restoreCheckpoint(outputDir, memory) {
|
|
|
79
78
|
if (context.discoveries && context.discoveries.length > 0) {
|
|
80
79
|
logger.info('Recent Discoveries:');
|
|
81
80
|
context.discoveries.slice(-5).forEach((d) => {
|
|
82
|
-
logger.info(`
|
|
81
|
+
logger.info(` - ${d}`);
|
|
83
82
|
});
|
|
84
83
|
}
|
|
85
84
|
if (context.pendingQueries && context.pendingQueries.length > 0) {
|
|
86
85
|
logger.info('Pending Queries:');
|
|
87
86
|
context.pendingQueries.forEach((q) => {
|
|
88
|
-
logger.info(`
|
|
87
|
+
logger.info(` - ${q}`);
|
|
89
88
|
});
|
|
90
89
|
}
|
|
91
90
|
}
|
|
92
91
|
catch (error) {
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
process.exit(1);
|
|
92
|
+
failCommand('Failed to restore checkpoint:', error);
|
|
93
|
+
return;
|
|
96
94
|
}
|
|
97
95
|
}
|
|
98
96
|
/**
|
|
@@ -118,7 +116,7 @@ async function listCheckpoints(outputDir) {
|
|
|
118
116
|
const checkpoint = JSON.parse(content);
|
|
119
117
|
const timestamp = new Date(checkpoint.timestamp).toLocaleString();
|
|
120
118
|
const message = checkpoint.message || 'No message';
|
|
121
|
-
logger.success(`
|
|
119
|
+
logger.success(` * ${file}`);
|
|
122
120
|
logger.info(` Time: ${timestamp}`);
|
|
123
121
|
logger.info(` Message: ${message}`);
|
|
124
122
|
logger.info(` Session: ${checkpoint.sessionId}`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkpoint.js","sourceRoot":"","sources":["../../../src/database/commands/checkpoint.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,oBAAoB,EAAkB,MAAM,aAAa,CAAC;AAEnE,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"checkpoint.js","sourceRoot":"","sources":["../../../src/database/commands/checkpoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,12 +3,12 @@
|
|
|
3
3
|
* Generates CLAUDE.md and AGENTS.md from database schema
|
|
4
4
|
*/
|
|
5
5
|
import * as path from 'path';
|
|
6
|
-
import { logger, writeFileSafe, readFileSafe,
|
|
6
|
+
import { logger, writeFileSafe, readFileSafe, failCommand } from '../../core/index.js';
|
|
7
7
|
import { createExtractor, UnifiedSchemaConverter, } from '../extractors/index.js';
|
|
8
8
|
import { TemplateGenerator } from '../generators/templates.js';
|
|
9
9
|
import { LearningGenerator } from '../generators/learning-generator.js';
|
|
10
10
|
import { MemoryInfrastructure } from './memory.js';
|
|
11
|
-
import { jsonSuccess,
|
|
11
|
+
import { jsonSuccess, outputJson, isJsonMode, outputJsonError } from '../utils/json-output.js';
|
|
12
12
|
import * as fs from 'fs'; // Keep fs for existsSync checks
|
|
13
13
|
import { fileURLToPath } from 'url';
|
|
14
14
|
import { ensureWorkspaceAgentsBootstrap } from '../../generators/unified.js';
|
|
@@ -95,8 +95,23 @@ export async function generate(options) {
|
|
|
95
95
|
schemaPath = 'src/db/schema.ts';
|
|
96
96
|
connectionString = 'dummy';
|
|
97
97
|
}
|
|
98
|
+
else if (options.mongodb) {
|
|
99
|
+
extractorType = 'mongodb';
|
|
100
|
+
connectionString = options.mongodb;
|
|
101
|
+
if (!connectionString) {
|
|
102
|
+
throw new Error('MongoDB connection URL required. Use --mongodb, --url, or DATABASE_URL env var.');
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
else if (options.firebaseProject || process.env.GOOGLE_APPLICATION_CREDENTIALS) {
|
|
106
|
+
extractorType = 'firebase';
|
|
107
|
+
connectionString = 'dummy'; // Not used for Firebase
|
|
108
|
+
}
|
|
98
109
|
else if (connectionString) {
|
|
99
|
-
if (connectionString.startsWith('
|
|
110
|
+
if (connectionString.startsWith('mongodb://') ||
|
|
111
|
+
connectionString.startsWith('mongodb+srv://')) {
|
|
112
|
+
extractorType = 'mongodb';
|
|
113
|
+
}
|
|
114
|
+
else if (connectionString.startsWith('mysql')) {
|
|
100
115
|
extractorType = 'mysql';
|
|
101
116
|
}
|
|
102
117
|
else if (connectionString.startsWith('file:') ||
|
|
@@ -124,18 +139,6 @@ export async function generate(options) {
|
|
|
124
139
|
schemaPath = 'src/db/schema.ts';
|
|
125
140
|
connectionString = 'dummy';
|
|
126
141
|
}
|
|
127
|
-
else if (options.mongodb ||
|
|
128
|
-
(connectionString &&
|
|
129
|
-
(connectionString.startsWith('mongodb://') ||
|
|
130
|
-
connectionString.startsWith('mongodb+srv://')))) {
|
|
131
|
-
if (!isJson)
|
|
132
|
-
logger.info('Detected MongoDB connection...');
|
|
133
|
-
extractorType = 'mongodb';
|
|
134
|
-
connectionString = options.mongodb || connectionString;
|
|
135
|
-
if (!connectionString) {
|
|
136
|
-
throw new Error('MongoDB connection URL required. Use --url or DATABASE_URL env var.');
|
|
137
|
-
}
|
|
138
|
-
}
|
|
139
142
|
else if (options.firebaseProject || process.env.GOOGLE_APPLICATION_CREDENTIALS) {
|
|
140
143
|
if (!isJson)
|
|
141
144
|
logger.info('Detected Firebase project...');
|
|
@@ -143,7 +146,7 @@ export async function generate(options) {
|
|
|
143
146
|
connectionString = 'dummy'; // Not used for Firebase
|
|
144
147
|
}
|
|
145
148
|
else {
|
|
146
|
-
throw new Error('Database connection not found. Use --url, --sqlite, --prisma, --drizzle, or --
|
|
149
|
+
throw new Error('Database connection not found. Use --url, --sqlite, --prisma, --drizzle, --mongodb, or --firebase-project.');
|
|
147
150
|
}
|
|
148
151
|
}
|
|
149
152
|
if (!isJson) {
|
|
@@ -270,12 +273,17 @@ export async function generate(options) {
|
|
|
270
273
|
}
|
|
271
274
|
catch (error) {
|
|
272
275
|
if (isJsonMode(options)) {
|
|
273
|
-
|
|
274
|
-
|
|
276
|
+
outputJsonError(error);
|
|
277
|
+
if (options.throwOnError) {
|
|
278
|
+
throw error;
|
|
279
|
+
}
|
|
280
|
+
return;
|
|
275
281
|
}
|
|
276
|
-
|
|
277
|
-
|
|
282
|
+
if (options.throwOnError) {
|
|
283
|
+
throw error;
|
|
278
284
|
}
|
|
285
|
+
failCommand('Generation failed', error);
|
|
286
|
+
return;
|
|
279
287
|
}
|
|
280
288
|
}
|
|
281
289
|
//# sourceMappingURL=generate.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/database/commands/generate.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,MAAM,EAAa,aAAa,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClG,OAAO,EACL,eAAe,EAEf,sBAAsB,GAEvB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"generate.js","sourceRoot":"","sources":["../../../src/database/commands/generate.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
import * as fs from 'fs/promises';
|
|
7
7
|
import * as path from 'path';
|
|
8
8
|
import { fileURLToPath } from 'url';
|
|
9
|
-
import { logger, ensureDir, writeFileSafe, readFileSafe } from '../../core/index.js';
|
|
9
|
+
import { logger, ensureDir, writeFileSafe, readFileSafe, failCommand, } from '../../core/index.js';
|
|
10
10
|
const __filename = fileURLToPath(import.meta.url);
|
|
11
11
|
const __dirname = path.dirname(__filename);
|
|
12
12
|
export async function handoff(options) {
|
|
@@ -73,7 +73,8 @@ async function listSessions(outputDir) {
|
|
|
73
73
|
logger.info('Record a session with: devmind handoff --record');
|
|
74
74
|
}
|
|
75
75
|
else {
|
|
76
|
-
|
|
76
|
+
failCommand('Failed to list handoff sessions:', error);
|
|
77
|
+
return;
|
|
77
78
|
}
|
|
78
79
|
}
|
|
79
80
|
}
|
|
@@ -175,136 +176,136 @@ async function recordHandoff(outputDir, options) {
|
|
|
175
176
|
logger.info('3. Full context: .devmind/context/SESSION_CONTEXT.json');
|
|
176
177
|
}
|
|
177
178
|
function generateHandoffMarkdown(sessionId, agentId, timestamp, status) {
|
|
178
|
-
return `# Agent Handoff Record
|
|
179
|
-
|
|
180
|
-
> AUTO-GENERATED by devmind-db. Read this before continuing.
|
|
181
|
-
|
|
182
|
-
## Session Info
|
|
183
|
-
|
|
184
|
-
| Field | Value |
|
|
185
|
-
|-------|-------|
|
|
186
|
-
| **Agent ID** | ${agentId} |
|
|
187
|
-
| **Session ID** | ${sessionId} |
|
|
188
|
-
| **Timestamp** | ${timestamp} |
|
|
189
|
-
| **Status** | ${status} |
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
## What Was Attempted
|
|
194
|
-
|
|
195
|
-
### Goals
|
|
196
|
-
- Goal 1
|
|
197
|
-
- Goal 2
|
|
198
|
-
|
|
199
|
-
### Actions Taken
|
|
200
|
-
|
|
201
|
-
| Step | Action | Result |
|
|
202
|
-
|------|--------|--------|
|
|
203
|
-
| 1 | Initial setup |
|
|
204
|
-
|
|
205
|
-
---
|
|
206
|
-
|
|
207
|
-
## What Succeeded
|
|
208
|
-
|
|
209
|
-
-
|
|
210
|
-
|
|
211
|
-
---
|
|
212
|
-
|
|
213
|
-
## What Failed
|
|
214
|
-
|
|
215
|
-
- (None yet)
|
|
216
|
-
|
|
217
|
-
---
|
|
218
|
-
|
|
219
|
-
## Decisions Made
|
|
220
|
-
|
|
221
|
-
> See \`.devmind/decisions/\` for detailed logs.
|
|
222
|
-
|
|
223
|
-
---
|
|
224
|
-
|
|
225
|
-
## Current State
|
|
226
|
-
|
|
227
|
-
### Last Completed Step
|
|
228
|
-
- Initial handoff recorded
|
|
229
|
-
|
|
230
|
-
### Pending Work
|
|
231
|
-
- [ ] Pending item 1
|
|
232
|
-
|
|
233
|
-
---
|
|
234
|
-
|
|
235
|
-
## Context for Next Agent
|
|
236
|
-
|
|
237
|
-
### Variables
|
|
238
|
-
\`\`\`json
|
|
239
|
-
{
|
|
240
|
-
"sessionId": "${sessionId}",
|
|
241
|
-
"agentId": "${agentId}"
|
|
242
|
-
}
|
|
243
|
-
\`\`\`
|
|
244
|
-
|
|
245
|
-
---
|
|
246
|
-
|
|
247
|
-
## Next Steps
|
|
248
|
-
|
|
249
|
-
1. Review CURRENT_STATE.md
|
|
250
|
-
2. Check SESSION_CONTEXT.json for full state
|
|
251
|
-
3. Continue from last checkpoint
|
|
252
|
-
|
|
253
|
-
---
|
|
254
|
-
|
|
255
|
-
> **PROTOCOL**: Before spawning subagents:
|
|
256
|
-
> 1. Generate handoff file
|
|
257
|
-
> 2. Pass handoff to next agent
|
|
258
|
-
> 3. Next agent reads state first
|
|
179
|
+
return `# Agent Handoff Record
|
|
180
|
+
|
|
181
|
+
> AUTO-GENERATED by devmind-db. Read this before continuing.
|
|
182
|
+
|
|
183
|
+
## Session Info
|
|
184
|
+
|
|
185
|
+
| Field | Value |
|
|
186
|
+
|-------|-------|
|
|
187
|
+
| **Agent ID** | ${agentId} |
|
|
188
|
+
| **Session ID** | ${sessionId} |
|
|
189
|
+
| **Timestamp** | ${timestamp} |
|
|
190
|
+
| **Status** | ${status} |
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## What Was Attempted
|
|
195
|
+
|
|
196
|
+
### Goals
|
|
197
|
+
- Goal 1
|
|
198
|
+
- Goal 2
|
|
199
|
+
|
|
200
|
+
### Actions Taken
|
|
201
|
+
|
|
202
|
+
| Step | Action | Result |
|
|
203
|
+
|------|--------|--------|
|
|
204
|
+
| 1 | Initial setup | ✅ Complete |
|
|
205
|
+
|
|
206
|
+
---
|
|
207
|
+
|
|
208
|
+
## What Succeeded
|
|
209
|
+
|
|
210
|
+
- ✅ Success item 1
|
|
211
|
+
|
|
212
|
+
---
|
|
213
|
+
|
|
214
|
+
## What Failed
|
|
215
|
+
|
|
216
|
+
- (None yet)
|
|
217
|
+
|
|
218
|
+
---
|
|
219
|
+
|
|
220
|
+
## Decisions Made
|
|
221
|
+
|
|
222
|
+
> See \`.devmind/decisions/\` for detailed logs.
|
|
223
|
+
|
|
224
|
+
---
|
|
225
|
+
|
|
226
|
+
## Current State
|
|
227
|
+
|
|
228
|
+
### Last Completed Step
|
|
229
|
+
- Initial handoff recorded
|
|
230
|
+
|
|
231
|
+
### Pending Work
|
|
232
|
+
- [ ] Pending item 1
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
## Context for Next Agent
|
|
237
|
+
|
|
238
|
+
### Variables
|
|
239
|
+
\`\`\`json
|
|
240
|
+
{
|
|
241
|
+
"sessionId": "${sessionId}",
|
|
242
|
+
"agentId": "${agentId}"
|
|
243
|
+
}
|
|
244
|
+
\`\`\`
|
|
245
|
+
|
|
246
|
+
---
|
|
247
|
+
|
|
248
|
+
## Next Steps
|
|
249
|
+
|
|
250
|
+
1. Review CURRENT_STATE.md
|
|
251
|
+
2. Check SESSION_CONTEXT.json for full state
|
|
252
|
+
3. Continue from last checkpoint
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
> **PROTOCOL**: Before spawning subagents:
|
|
257
|
+
> 1. Generate handoff file
|
|
258
|
+
> 2. Pass handoff to next agent
|
|
259
|
+
> 3. Next agent reads state first
|
|
259
260
|
`;
|
|
260
261
|
}
|
|
261
262
|
function generateStateMarkdown(sessionId, agentId, timestamp, status) {
|
|
262
|
-
return `# Current State
|
|
263
|
-
|
|
264
|
-
> AUTO-GENERATED by devmind-db. Active progress snapshot.
|
|
265
|
-
|
|
266
|
-
## Session Status
|
|
267
|
-
|
|
268
|
-
| Field | Value |
|
|
269
|
-
|-------|-------|
|
|
270
|
-
| **Status** | ${status} |
|
|
271
|
-
| **Last Updated** | ${timestamp} |
|
|
272
|
-
| **Session ID** | ${sessionId} |
|
|
273
|
-
| **Agent ID** | ${agentId} |
|
|
274
|
-
|
|
275
|
-
---
|
|
276
|
-
|
|
277
|
-
## Progress
|
|
278
|
-
|
|
279
|
-
### Completed Steps
|
|
280
|
-
-
|
|
281
|
-
|
|
282
|
-
### Current Step
|
|
283
|
-
- Session initialization
|
|
284
|
-
|
|
285
|
-
### Remaining Steps
|
|
286
|
-
-
|
|
287
|
-
-
|
|
288
|
-
|
|
289
|
-
---
|
|
290
|
-
|
|
291
|
-
## Variables & State
|
|
292
|
-
|
|
293
|
-
\`\`\`json
|
|
294
|
-
{
|
|
295
|
-
"sessionId": "${sessionId}",
|
|
296
|
-
"agentId": "${agentId}"
|
|
297
|
-
}
|
|
298
|
-
\`\`\`
|
|
299
|
-
|
|
300
|
-
---
|
|
301
|
-
|
|
302
|
-
> **MULTI-AGENT**: Read this first when resuming.
|
|
263
|
+
return `# Current State
|
|
264
|
+
|
|
265
|
+
> AUTO-GENERATED by devmind-db. Active progress snapshot.
|
|
266
|
+
|
|
267
|
+
## Session Status
|
|
268
|
+
|
|
269
|
+
| Field | Value |
|
|
270
|
+
|-------|-------|
|
|
271
|
+
| **Status** | ${status} |
|
|
272
|
+
| **Last Updated** | ${timestamp} |
|
|
273
|
+
| **Session ID** | ${sessionId} |
|
|
274
|
+
| **Agent ID** | ${agentId} |
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
## Progress
|
|
279
|
+
|
|
280
|
+
### Completed Steps
|
|
281
|
+
- ✅ Initial session recorded
|
|
282
|
+
|
|
283
|
+
### Current Step
|
|
284
|
+
- Session initialization
|
|
285
|
+
|
|
286
|
+
### Remaining Steps
|
|
287
|
+
- â³ Define goals
|
|
288
|
+
- â³ Execute work
|
|
289
|
+
|
|
290
|
+
---
|
|
291
|
+
|
|
292
|
+
## Variables & State
|
|
293
|
+
|
|
294
|
+
\`\`\`json
|
|
295
|
+
{
|
|
296
|
+
"sessionId": "${sessionId}",
|
|
297
|
+
"agentId": "${agentId}"
|
|
298
|
+
}
|
|
299
|
+
\`\`\`
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
> **MULTI-AGENT**: Read this first when resuming.
|
|
303
304
|
`;
|
|
304
305
|
}
|
|
305
306
|
function generateContextJson(sessionId, agentId, timestamp, status) {
|
|
306
307
|
return JSON.stringify({
|
|
307
|
-
version: '1.0
|
|
308
|
+
version: '1.1.0',
|
|
308
309
|
session: {
|
|
309
310
|
id: sessionId,
|
|
310
311
|
agentId: agentId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../../src/database/commands/handoff.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,KAAK,IAAI,MAAM,MAAM,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AACpC,OAAO,
|
|
1
|
+
{"version":3,"file":"handoff.js","sourceRoot":"","sources":["../../../src/database/commands/handoff.ts"],"names":[],"mappings":"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"}
|