@chimerai/cli 1.2.5 → 1.2.7
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAiBH,UAAU,UAAU;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;
|
|
1
|
+
{"version":3,"file":"add.d.ts","sourceRoot":"","sources":["../../src/commands/add.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAiBH,UAAU,UAAU;IAClB,GAAG,EAAE,MAAM,CAAC;CACb;AA26ED,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,iBAyHtE"}
|
package/dist/commands/add.js
CHANGED
|
@@ -1186,6 +1186,10 @@ function stripAuthFromRoute(content) {
|
|
|
1186
1186
|
.replace(/^ import \{ getServerSession \} from 'next-auth';\n/m, '')
|
|
1187
1187
|
.replace(/^ import \{ authOptions \} from '@\/lib\/auth';\n/m, '')
|
|
1188
1188
|
.replace(/\n const session = await getServerSession\(authOptions\);\n if \(!session\?\.user\?\.id\) \{\n return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n \}\n/g, '\n')
|
|
1189
|
+
.replace(/\n const session = await getServerSession\(authOptions\);\n if \(!session\?\.user\) \{\n return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n \}\n/g, '\n')
|
|
1190
|
+
.replace(/^ const session = await getServerSession\(authOptions\);\n/m, '')
|
|
1191
|
+
.replace(/^ if \(!session\?\.user\?\.id\) \{\n return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n \}\n/m, '')
|
|
1192
|
+
.replace(/^ if \(!session\?\.user\) \{\n return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n \}\n/m, '')
|
|
1189
1193
|
.replace(/,?\n\s*user_id: session\.user\.id,?/g, '');
|
|
1190
1194
|
}
|
|
1191
1195
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../src/commands/create.ts"],"names":[],"mappings":"AAAA;;;GAGG;AA0EH,UAAU,aAAa;IACrB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAmED,wBAAsB,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,iBAyI9E"}
|
package/dist/commands/create.js
CHANGED
|
@@ -65,9 +65,14 @@ function stripAuthFromGeneratedCode(code) {
|
|
|
65
65
|
code = code.replace(/\n {4}const session = await getServerSession\(authOptions\);\n {4}if \(!session\?\.user\) \{\n {6}return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n {4}\}\n/g, '\n');
|
|
66
66
|
// Remove inline session check blocks — 2-space indentation (models/prompts routes)
|
|
67
67
|
code = code.replace(/\n {2}const session = await getServerSession\(authOptions\);\n {2}if \(!session\?\.user\) \{\n {4}return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n {2}\}\n/g, '\n');
|
|
68
|
+
// Remove inline session check blocks — 2-space indentation with ?.user?.id (RAG routes)
|
|
69
|
+
code = code.replace(/\n {2}const session = await getServerSession\(authOptions\);\n {2}if \(!session\?\.user\?\.id\) \{\n {4}return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n {2}\}\n/g, '\n');
|
|
70
|
+
// Remove inline session check blocks — 4-space indentation with ?.user?.id
|
|
71
|
+
code = code.replace(/\n {4}const session = await getServerSession\(authOptions\);\n {4}if \(!session\?\.user\?\.id\) \{\n {6}return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n {4}\}\n/g, '\n');
|
|
68
72
|
// Also catch orphaned getServerSession calls (import already removed but call remains)
|
|
69
73
|
code = code.replace(/^ {2}const session = await getServerSession\(authOptions\);\n/m, '');
|
|
70
74
|
code = code.replace(/^ {2}if \(!session\?\.user\) \{\n {4}return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n {2}\}\n/m, '');
|
|
75
|
+
code = code.replace(/^ {2}if \(!session\?\.user\?\.id\) \{\n {4}return NextResponse\.json\(\{ error: 'Unauthorized' \}, \{ status: 401 \}\);\n {2}\}\n/m, '');
|
|
71
76
|
// Replace session.user.id with local-dev fallback
|
|
72
77
|
code = code.replace(/session\.user\.id/g, "'local-dev'");
|
|
73
78
|
code = code.replace(/session\?\.user\?\.id/g, "'local-dev'");
|
|
@@ -1316,18 +1321,47 @@ async function getServerSessionWithPermissions() {
|
|
|
1316
1321
|
const ragPage = templates.generateRagPage();
|
|
1317
1322
|
await fs_extra_1.default.ensureDir(path_1.default.join(targetDir, 'app/rag'));
|
|
1318
1323
|
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/rag/page.tsx'), ragPage);
|
|
1319
|
-
const ragUploadRoute = templates.generateRagUploadRoute();
|
|
1320
1324
|
await fs_extra_1.default.ensureDir(path_1.default.join(targetDir, 'app/api/rag'));
|
|
1321
|
-
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/route.ts'),
|
|
1322
|
-
const ragQueryRoute = templates.generateRagQueryRoute();
|
|
1325
|
+
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/route.ts'), _strip(templates.generateRagUploadRoute()));
|
|
1323
1326
|
await fs_extra_1.default.ensureDir(path_1.default.join(targetDir, 'app/api/rag/query'));
|
|
1324
|
-
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/query/route.ts'),
|
|
1325
|
-
const ragStatsRoute = templates.generateRagStatsRoute();
|
|
1327
|
+
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/query/route.ts'), _strip(templates.generateRagQueryRoute()));
|
|
1326
1328
|
await fs_extra_1.default.ensureDir(path_1.default.join(targetDir, 'app/api/rag/stats'));
|
|
1327
|
-
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/stats/route.ts'),
|
|
1328
|
-
const ragClearRoute = templates.generateRagClearRoute();
|
|
1329
|
+
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/stats/route.ts'), _strip(templates.generateRagStatsRoute()));
|
|
1329
1330
|
await fs_extra_1.default.ensureDir(path_1.default.join(targetDir, 'app/api/rag/clear'));
|
|
1330
|
-
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/clear/route.ts'),
|
|
1331
|
+
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/clear/route.ts'), _strip(templates.generateRagClearRoute()));
|
|
1332
|
+
await fs_extra_1.default.ensureDir(path_1.default.join(targetDir, 'app/api/rag/delete'));
|
|
1333
|
+
await fs_extra_1.default.writeFile(path_1.default.join(targetDir, 'app/api/rag/delete/route.ts'), _strip(templates.generateRagDeleteRoute()));
|
|
1334
|
+
// ── AI Service (Python) für RAG ──────────────────────────────────────
|
|
1335
|
+
const aiDir = path_1.default.join(targetDir, 'services/ai');
|
|
1336
|
+
await fs_extra_1.default.ensureDir(path_1.default.join(aiDir, 'services'));
|
|
1337
|
+
await fs_extra_1.default.ensureDir(path_1.default.join(aiDir, 'routes'));
|
|
1338
|
+
await fs_extra_1.default.ensureDir(path_1.default.join(aiDir, 'data'));
|
|
1339
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'data', '.gitkeep'), '');
|
|
1340
|
+
// Core files
|
|
1341
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'config.py'), templates.generateAiServiceConfig(['rag']));
|
|
1342
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'provider_client.py'), templates.generateProviderClient());
|
|
1343
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'services', '__init__.py'), templates.generateServicesInit());
|
|
1344
|
+
// Dynamic files
|
|
1345
|
+
const ragModules = ['chat', 'rag'];
|
|
1346
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'main.py'), templates.generateAiServiceMain(ragModules, []));
|
|
1347
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'models.py'), templates.generateAiServiceModels(ragModules));
|
|
1348
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'requirements.txt'), templates.generateAiServiceRequirements(ragModules, []));
|
|
1349
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'README.md'), templates.generateAiServiceReadme(ragModules, []));
|
|
1350
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'routes', '__init__.py'), templates.generateRoutesInit());
|
|
1351
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'Dockerfile'), templates.generateAiServiceDockerfile());
|
|
1352
|
+
// RAG-specific Python services
|
|
1353
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'services', 'rag_service.py'), templates.generateRagService());
|
|
1354
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'services', 'vector_store.py'), templates.generateVectorStore());
|
|
1355
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'services', 'embedding_service.py'), templates.generateEmbeddingService());
|
|
1356
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'services', 'file_extractor.py'), templates.generateFileExtractor());
|
|
1357
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'routes', 'rag_routes.py'), templates.generateRagRoutes());
|
|
1358
|
+
// Chat services (required by RAG)
|
|
1359
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'services', 'chat_service.py'), templates.generateChatService());
|
|
1360
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'services', 'model_service.py'), templates.generateModelService());
|
|
1361
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'services', 'moderation_service.py'), templates.generateModerationService());
|
|
1362
|
+
await fs_extra_1.default.writeFile(path_1.default.join(aiDir, 'routes', 'chat_routes.py'), templates.generateChatRoutes());
|
|
1363
|
+
// Manifest
|
|
1364
|
+
templates.writeAiManifest(targetDir, { modules: ragModules, tools: [], installedAt: new Date().toISOString().split('T')[0], cliVersion: '1.2.5' });
|
|
1331
1365
|
}
|
|
1332
1366
|
}
|
|
1333
1367
|
async function createSeedScript(targetDir, features, sqlite) {
|
package/package.json
CHANGED