@agentlang/cli 0.11.5 → 0.11.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.
@@ -0,0 +1,168 @@
1
+ import { FileUploadService } from '../services/FileUploadService.js';
2
+ /**
3
+ * Controller for handling document upload and management endpoints
4
+ */
5
+ export class DocumentController {
6
+ constructor() {
7
+ /**
8
+ * Upload a file
9
+ * POST /documents/upload
10
+ */
11
+ this.upload = async (req, res) => {
12
+ try {
13
+ const appPath = req.headers['x-app-path'];
14
+ const uploadService = this.getUploadService(typeof appPath === 'string' ? appPath : null);
15
+ if (!req.file) {
16
+ res.status(400).json({ error: 'No file uploaded' });
17
+ return;
18
+ }
19
+ const result = await uploadService.uploadFile({
20
+ fieldname: req.file.fieldname,
21
+ originalname: req.file.originalname,
22
+ encoding: req.file.encoding,
23
+ mimetype: req.file.mimetype,
24
+ size: req.file.size,
25
+ buffer: req.file.buffer,
26
+ });
27
+ res.json(result);
28
+ }
29
+ catch (error) {
30
+ // eslint-disable-next-line no-console
31
+ console.error('Error uploading file:', error);
32
+ res.status(500).json({
33
+ error: error instanceof Error ? error.message : 'Failed to upload file',
34
+ });
35
+ }
36
+ };
37
+ /**
38
+ * List all uploaded files
39
+ * GET /documents
40
+ */
41
+ this.list = (req, res) => {
42
+ try {
43
+ const appPath = req.headers['x-app-path'];
44
+ const uploadService = this.getUploadService(typeof appPath === 'string' ? appPath : null);
45
+ const limit = parseInt(typeof req.query.limit === 'string' ? req.query.limit : '100') || 100;
46
+ const offset = parseInt(typeof req.query.offset === 'string' ? req.query.offset : '0') || 0;
47
+ const files = uploadService.listFiles(limit, offset);
48
+ const stats = uploadService.getStats();
49
+ res.json({
50
+ files,
51
+ total: stats.totalDocuments,
52
+ limit,
53
+ offset,
54
+ });
55
+ }
56
+ catch (error) {
57
+ // eslint-disable-next-line no-console
58
+ console.error('Error listing files:', error);
59
+ res.status(500).json({
60
+ error: error instanceof Error ? error.message : 'Failed to list files',
61
+ });
62
+ }
63
+ };
64
+ /**
65
+ * Get file information
66
+ * GET /documents/:id
67
+ */
68
+ this.get = (req, res) => {
69
+ var _a;
70
+ try {
71
+ const appPath = req.headers['x-app-path'];
72
+ const uploadService = this.getUploadService(typeof appPath === 'string' ? appPath : null);
73
+ const id = typeof req.params.id === 'string' ? req.params.id : ((_a = req.params.id) === null || _a === void 0 ? void 0 : _a[0]) || '';
74
+ const file = uploadService.getFile(id);
75
+ if (!file) {
76
+ res.status(404).json({ error: 'File not found' });
77
+ return;
78
+ }
79
+ res.json(file);
80
+ }
81
+ catch (error) {
82
+ // eslint-disable-next-line no-console
83
+ console.error('Error getting file:', error);
84
+ res.status(500).json({
85
+ error: error instanceof Error ? error.message : 'Failed to get file',
86
+ });
87
+ }
88
+ };
89
+ /**
90
+ * Download a file
91
+ * GET /documents/:id/download
92
+ */
93
+ this.download = async (req, res) => {
94
+ var _a;
95
+ try {
96
+ const appPath = req.headers['x-app-path'];
97
+ const uploadService = this.getUploadService(typeof appPath === 'string' ? appPath : null);
98
+ const id = typeof req.params.id === 'string' ? req.params.id : ((_a = req.params.id) === null || _a === void 0 ? void 0 : _a[0]) || '';
99
+ const result = await uploadService.downloadFile(id);
100
+ if (!result) {
101
+ res.status(404).json({ error: 'File not found' });
102
+ return;
103
+ }
104
+ res.setHeader('Content-Type', result.mimeType);
105
+ res.setHeader('Content-Disposition', `attachment; filename="${result.filename}"`);
106
+ res.send(result.buffer);
107
+ }
108
+ catch (error) {
109
+ // eslint-disable-next-line no-console
110
+ console.error('Error downloading file:', error);
111
+ res.status(500).json({
112
+ error: error instanceof Error ? error.message : 'Failed to download file',
113
+ });
114
+ }
115
+ };
116
+ /**
117
+ * Delete a file
118
+ * DELETE /documents/:id
119
+ */
120
+ this.delete = (req, res) => {
121
+ var _a;
122
+ try {
123
+ const appPath = req.headers['x-app-path'];
124
+ const uploadService = this.getUploadService(typeof appPath === 'string' ? appPath : null);
125
+ const id = typeof req.params.id === 'string' ? req.params.id : ((_a = req.params.id) === null || _a === void 0 ? void 0 : _a[0]) || '';
126
+ uploadService.deleteFile(id);
127
+ res.json({ success: true });
128
+ }
129
+ catch (error) {
130
+ // eslint-disable-next-line no-console
131
+ console.error('Error deleting file:', error);
132
+ res.status(500).json({
133
+ error: error instanceof Error ? error.message : 'Failed to delete file',
134
+ });
135
+ }
136
+ };
137
+ /**
138
+ * Get stats
139
+ * GET /documents/stats
140
+ */
141
+ this.stats = (req, res) => {
142
+ try {
143
+ const appPath = req.headers['x-app-path'];
144
+ const uploadService = this.getUploadService(typeof appPath === 'string' ? appPath : null);
145
+ const stats = uploadService.getStats();
146
+ res.json(stats);
147
+ }
148
+ catch (error) {
149
+ // eslint-disable-next-line no-console
150
+ console.error('Error getting stats:', error);
151
+ res.status(500).json({
152
+ error: error instanceof Error ? error.message : 'Failed to get stats',
153
+ });
154
+ }
155
+ };
156
+ }
157
+ /**
158
+ * Initialize upload service for current app
159
+ */
160
+ getUploadService(appPath) {
161
+ if (!appPath) {
162
+ throw new Error('No app is currently loaded');
163
+ }
164
+ // Create new instance per request (could be cached per app path)
165
+ return new FileUploadService(appPath);
166
+ }
167
+ }
168
+ //# sourceMappingURL=DocumentController.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocumentController.js","sourceRoot":"","sources":["../../../src/studio/controllers/DocumentController.ts"],"names":[],"mappings":"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"}
@@ -84,7 +84,13 @@ export class FileController {
84
84
  await this.fileService.writeFile(filePath, content, commitMessage);
85
85
  return res.json({ message: `Successfully wrote to ${filePath}` });
86
86
  }
87
- catch (_a) {
87
+ catch (error) {
88
+ if (typeof error === 'object' &&
89
+ error !== null &&
90
+ 'code' in error &&
91
+ error.code === 'ENOENT') {
92
+ return res.status(404).json({ error: 'Parent path not found' });
93
+ }
88
94
  return res.status(500).json({ error: `Failed to write to file: ${filePath}` });
89
95
  }
90
96
  };
@@ -1 +1 @@
1
- {"version":3,"file":"FileController.js","sourceRoot":"","sources":["../../../src/studio/controllers/FileController.ts"],"names":[],"mappings":"AACA,OAAO,IAAI,MAAM,MAAM,CAAC;AAGxB,MAAM,OAAO,cAAc;IAGzB,YAAY,WAAwB;QAIpC,aAAQ,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;YAC/C,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,GAAG,CAAC,KAAK,CAAC,IAA0B,CAAC;gBACvD,IAAI,SAAS,EAAE,CAAC;oBACd,mEAAmE;oBACnE,qDAAqD;oBACrD,sCAAsC;oBACtC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,EAAE,SAAS,CAAC,CAAC;oBACvE,MAAM,WAAW,GAAG,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;oBACzD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,EAAE,WAAW,CAAC,CAAC;oBAC/E,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,CAAC;qBAAM,CAAC;oBACN,uBAAuB;oBACvB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;oBACtD,OAAO,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBAC5B,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IACE,OAAO,KAAK,KAAK,QAAQ;oBACzB,KAAK,KAAK,IAAI;oBACd,MAAM,IAAI,KAAK;oBACf,OAAQ,KAA2B,CAAC,IAAI,KAAK,QAAQ;oBACpD,KAA0B,CAAC,IAAI,KAAK,QAAQ,EAC7C,CAAC;oBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;gBAC3D,CAAC;gBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,0BAA0B,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC,CAAC;QAEF,YAAO,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;YAC9C,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAc,CAAC;YAC1C,MAAM,eAAe,GAAG,GAAG,CAAC,KAAK,CAAC,QAAQ,KAAK,MAAM,CAAC;YACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;gBAC1D,IAAI,eAAe,EAAE,CAAC;oBACpB,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACpD,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBACvF,CAAC;gBACD,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;YAC/B,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IACE,OAAO,KAAK,KAAK,QAAQ;oBACzB,KAAK,KAAK,IAAI;oBACd,MAAM,IAAI,KAAK;oBACf,OAAQ,KAA2B,CAAC,IAAI,KAAK,QAAQ;oBACpD,KAA0B,CAAC,IAAI,KAAK,QAAQ,EAC7C,CAAC;oBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;gBAC3D,CAAC;gBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,wBAAwB,QAAQ,EAAE,EAAE,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC,CAAC;QAEF,YAAO,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;YAC9C,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,IAAc,CAAC;YAC1C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;gBACpD,OAAO,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACzB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IACE,OAAO,KAAK,KAAK,QAAQ;oBACzB,KAAK,KAAK,IAAI;oBACd,MAAM,IAAI,KAAK;oBACf,OAAQ,KAA2B,CAAC,IAAI,KAAK,QAAQ;oBACpD,KAA0B,CAAC,IAAI,KAAK,QAAQ,EAC7C,CAAC;oBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,CAAC,CAAC;gBAC3D,CAAC;gBACD,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2BAA2B,QAAQ,EAAE,EAAE,CAAC,CAAC;YAChF,CAAC;QACH,CAAC,CAAC;QAEF,aAAQ,GAAG,KAAK,EAAE,GAAY,EAAE,GAAa,EAAE,EAAE;YAC/C,MAAM,EACJ,IAAI,EAAE,QAAQ,EACd,OAAO,EACP,aAAa,GACd,GAAG,GAAG,CAAC,IAIP,CAAC;YACF,IAAI,CAAC,QAAQ,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;gBACvC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oCAAoC,EAAE,CAAC,CAAC;YAC/E,CAAC;YACD,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;gBACnE,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,yBAAyB,QAAQ,EAAE,EAAE,CAAC,CAAC;YACpE,CAAC;YAAC,WAAM,CAAC;gBACP,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,4BAA4B,QAAQ,EAAE,EAAE,CAAC,CAAC;YACjF,CAAC;QACH,CAAC,CAAC;QAEF,YAAO,GAAG,KAAK,EAAE,IAAa,EAAE,GAAa,EAAE,EAAE;YAC/C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,EAAE,CAAC;YACrD,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACxB,CAAC,CAAC;QAEF,cAAS,GAAG,KAAK,EAAE,IAAa,EAAE,GAAa,EAAE,EAAE;YACjD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,gBAAgB,EAAE,CAAC;gBACzD,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;YAC9B,CAAC;YAAC,WAAM,CAAC;gBACP,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC,CAAC;QAEF,wBAAmB,GAAG,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;YACpD,IAAI,CAAC;gBACH,MAAM,EAAE,cAAc,EAAE,WAAW,EAAE,GAAI,GAAG,CAAC,IAA0D,IAAI,EAAE,CAAC;gBAC9G,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;gBAClE,OAAO,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,qCAAqC,EAAE,CAAC,CAAC;YACtE,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAC5E,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,YAAY,EAAE,CAAC,CAAC;YACvD,CAAC;QACH,CAAC,CAAC;QA9HA,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IACjC,CAAC;CA8HF"}
1
+ {"version":3,"file":"FileController.js","sourceRoot":"","sources":["../../../src/studio/controllers/FileController.ts"],"names":[],"mappings":"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"}
@@ -1,10 +1,20 @@
1
1
  /* eslint-disable no-console */
2
2
  import { Router } from 'express';
3
3
  import path from 'path';
4
+ import multer from 'multer';
4
5
  import { FileController } from './controllers/FileController.js';
6
+ import { DocumentController } from './controllers/DocumentController.js';
5
7
  export function createRoutes(studioServer, fileService) {
6
8
  const router = Router();
7
9
  const fileController = new FileController(fileService);
10
+ const documentController = new DocumentController();
11
+ // Configure multer for file uploads (memory storage)
12
+ const upload = multer({
13
+ storage: multer.memoryStorage(),
14
+ limits: {
15
+ fileSize: 25 * 1024 * 1024, // 25MB max file size
16
+ },
17
+ });
8
18
  // Initialize project load if not in dashboard mode initially
9
19
  fileService.loadProject().catch(console.error);
10
20
  // File Routes
@@ -158,6 +168,12 @@ export function createRoutes(studioServer, fileService) {
158
168
  router.get('/test', (_req, res) => {
159
169
  return res.json({ message: 'Hello from agent studio!' });
160
170
  });
171
+ router.post('/documents/upload', upload.single('file'), documentController.upload);
172
+ router.get('/documents', documentController.list);
173
+ router.get('/documents/stats', documentController.stats);
174
+ router.get('/documents/:id', documentController.get);
175
+ router.get('/documents/:id/download', documentController.download);
176
+ router.delete('/documents/:id', documentController.delete);
161
177
  return router;
162
178
  }
163
179
  //# sourceMappingURL=routes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/studio/routes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/studio/routes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ import Database from 'better-sqlite3';
2
+ import path from 'path';
3
+ import fs from 'fs-extra';
4
+ import { randomUUID } from 'crypto';
5
+ /**
6
+ * Service for managing document metadata storage using SQLite
7
+ * Files are stored and made available to AgentLang for embedding processing
8
+ */
9
+ export class DocumentDatabaseService {
10
+ constructor(appPath) {
11
+ this.documentsDir = path.join(appPath, 'documents');
12
+ fs.ensureDirSync(this.documentsDir);
13
+ const dbPath = path.join(this.documentsDir, 'documents.db');
14
+ this.db = new Database(dbPath);
15
+ this.initializeSchema();
16
+ }
17
+ initializeSchema() {
18
+ // Enable WAL mode for better concurrent access
19
+ this.db.pragma('journal_mode = WAL');
20
+ // Documents metadata table
21
+ this.db.exec(`
22
+ CREATE TABLE IF NOT EXISTS documents (
23
+ id TEXT PRIMARY KEY,
24
+ original_name TEXT NOT NULL,
25
+ masked_name TEXT NOT NULL UNIQUE,
26
+ mime_type TEXT NOT NULL,
27
+ size INTEGER NOT NULL,
28
+ storage_path TEXT NOT NULL,
29
+ uploaded_at TEXT NOT NULL
30
+ )
31
+ `);
32
+ // Create index for better query performance
33
+ this.db.exec(`
34
+ CREATE INDEX IF NOT EXISTS idx_documents_uploaded_at
35
+ ON documents(uploaded_at DESC)
36
+ `);
37
+ }
38
+ /**
39
+ * Save document metadata to database
40
+ */
41
+ saveDocument(metadata) {
42
+ const id = randomUUID();
43
+ const doc = Object.assign({ id }, metadata);
44
+ const stmt = this.db.prepare(`
45
+ INSERT INTO documents (id, original_name, masked_name, mime_type, size, storage_path, uploaded_at)
46
+ VALUES (@id, @originalName, @maskedName, @mimeType, @size, @storagePath, @uploadedAt)
47
+ `);
48
+ stmt.run(doc);
49
+ return doc;
50
+ }
51
+ /**
52
+ * Get document metadata by ID
53
+ */
54
+ getDocument(id) {
55
+ const stmt = this.db.prepare(`
56
+ SELECT id, original_name as originalName, masked_name as maskedName,
57
+ mime_type as mimeType, size, storage_path as storagePath,
58
+ uploaded_at as uploadedAt
59
+ FROM documents WHERE id = ?
60
+ `);
61
+ return stmt.get(id);
62
+ }
63
+ /**
64
+ * Get document by masked filename
65
+ */
66
+ getDocumentByMaskedName(maskedName) {
67
+ const stmt = this.db.prepare(`
68
+ SELECT id, original_name as originalName, masked_name as maskedName,
69
+ mime_type as mimeType, size, storage_path as storagePath,
70
+ uploaded_at as uploadedAt
71
+ FROM documents WHERE masked_name = ?
72
+ `);
73
+ return stmt.get(maskedName);
74
+ }
75
+ /**
76
+ * List all documents
77
+ */
78
+ listDocuments(limit = 100, offset = 0) {
79
+ const stmt = this.db.prepare(`
80
+ SELECT id, original_name as originalName, masked_name as maskedName,
81
+ mime_type as mimeType, size, storage_path as storagePath,
82
+ uploaded_at as uploadedAt
83
+ FROM documents
84
+ ORDER BY uploaded_at DESC
85
+ LIMIT ? OFFSET ?
86
+ `);
87
+ return stmt.all(limit, offset);
88
+ }
89
+ /**
90
+ * Delete document
91
+ */
92
+ deleteDocument(id) {
93
+ const doc = this.getDocument(id);
94
+ if (!doc)
95
+ return;
96
+ // Delete file from filesystem
97
+ if (fs.existsSync(doc.storagePath)) {
98
+ fs.unlinkSync(doc.storagePath);
99
+ }
100
+ // Delete from database
101
+ const stmt = this.db.prepare('DELETE FROM documents WHERE id = ?');
102
+ stmt.run(id);
103
+ }
104
+ /**
105
+ * Get total document count
106
+ */
107
+ getDocumentCount() {
108
+ const stmt = this.db.prepare('SELECT COUNT(*) as count FROM documents');
109
+ const result = stmt.get();
110
+ return result.count;
111
+ }
112
+ /**
113
+ * Close database connection
114
+ */
115
+ close() {
116
+ this.db.close();
117
+ }
118
+ /**
119
+ * Get database instance (for testing/debugging)
120
+ */
121
+ getDatabase() {
122
+ return this.db;
123
+ }
124
+ }
125
+ //# sourceMappingURL=DocumentDatabaseService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DocumentDatabaseService.js","sourceRoot":"","sources":["../../../src/studio/services/DocumentDatabaseService.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,18 @@ export class FileService {
15
15
  getTargetDir() {
16
16
  return this.targetDir;
17
17
  }
18
+ /**
19
+ * Resolve a relative file path to a full path under targetDir.
20
+ * Prevents path traversal (e.g. ../../../etc/passwd).
21
+ */
22
+ resolvePath(filePath) {
23
+ const normalized = path.normalize(filePath).replace(/^(\.\.(\/|\\|$))+/, '');
24
+ const fullPath = path.resolve(this.targetDir, normalized);
25
+ if (!fullPath.startsWith(path.resolve(this.targetDir))) {
26
+ throw new Error('Invalid path: cannot access outside project directory');
27
+ }
28
+ return fullPath;
29
+ }
18
30
  async loadProject() {
19
31
  // Only load if it looks like a valid project to avoid errors in dashboard mode
20
32
  if (existsSync(path.join(this.targetDir, 'package.json'))) {
@@ -49,11 +61,13 @@ export class FileService {
49
61
  return files;
50
62
  }
51
63
  async readFile(filePath) {
52
- const fullPath = path.join(this.targetDir, filePath);
64
+ const fullPath = this.resolvePath(filePath);
53
65
  return fs.readFile(fullPath, 'utf-8');
54
66
  }
55
67
  async writeFile(filePath, content, commitMessage) {
56
- const fullPath = path.join(this.targetDir, filePath);
68
+ const fullPath = this.resolvePath(filePath);
69
+ const dir = path.dirname(fullPath);
70
+ await fs.mkdir(dir, { recursive: true });
57
71
  await fs.writeFile(fullPath, content, 'utf-8');
58
72
  // Auto-commit the change if a commit message is provided
59
73
  if (commitMessage) {
@@ -86,7 +100,7 @@ export class FileService {
86
100
  }
87
101
  }
88
102
  async stat(filePath) {
89
- const fullPath = path.join(this.targetDir, filePath);
103
+ const fullPath = this.resolvePath(filePath);
90
104
  const stats = await fs.stat(fullPath);
91
105
  return {
92
106
  type: stats.isDirectory() ? 'directory' : 'file',
@@ -1 +1 @@
1
- {"version":3,"file":"FileService.js","sourceRoot":"","sources":["../../../src/studio/services/FileService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"FileService.js","sourceRoot":"","sources":["../../../src/studio/services/FileService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,125 @@
1
+ import fs from 'fs-extra';
2
+ import path from 'path';
3
+ import { randomUUID } from 'crypto';
4
+ import { DocumentDatabaseService } from './DocumentDatabaseService.js';
5
+ /**
6
+ * Service for handling file uploads
7
+ * Files are stored and made available to AgentLang for embedding processing
8
+ */
9
+ export class FileUploadService {
10
+ constructor(appPath) {
11
+ this.documentsDir = path.join(appPath, 'documents');
12
+ // Initialize database service for metadata
13
+ this.dbService = new DocumentDatabaseService(appPath);
14
+ }
15
+ /**
16
+ * Generate masked filename using UUID
17
+ */
18
+ generateMaskedFilename(originalName) {
19
+ const ext = path.extname(originalName);
20
+ const uuid = randomUUID();
21
+ return `${uuid}${ext}`;
22
+ }
23
+ /**
24
+ * Upload and store a file
25
+ */
26
+ async uploadFile(file) {
27
+ // eslint-disable-next-line no-console
28
+ console.log(`Uploading file: ${file.originalname} (${file.size} bytes, ${file.mimetype})`);
29
+ // Generate masked filename
30
+ const maskedName = this.generateMaskedFilename(file.originalname);
31
+ const storagePath = path.join(this.documentsDir, maskedName);
32
+ // Save file to disk
33
+ await fs.writeFile(storagePath, file.buffer);
34
+ // eslint-disable-next-line no-console
35
+ console.log(`Saved file to: ${storagePath}`);
36
+ // Save metadata to database
37
+ const doc = this.dbService.saveDocument({
38
+ originalName: file.originalname,
39
+ maskedName,
40
+ mimeType: file.mimetype,
41
+ size: file.size,
42
+ storagePath,
43
+ uploadedAt: new Date().toISOString(),
44
+ });
45
+ // eslint-disable-next-line no-console
46
+ console.log(`Saved document metadata with ID: ${doc.id}`);
47
+ return {
48
+ id: doc.id,
49
+ originalName: doc.originalName,
50
+ maskedName: doc.maskedName,
51
+ size: doc.size,
52
+ mimeType: doc.mimeType,
53
+ uploadedAt: doc.uploadedAt,
54
+ };
55
+ }
56
+ /**
57
+ * Get file information
58
+ */
59
+ getFile(fileId) {
60
+ const doc = this.dbService.getDocument(fileId);
61
+ if (!doc)
62
+ return null;
63
+ return {
64
+ id: doc.id,
65
+ originalName: doc.originalName,
66
+ maskedName: doc.maskedName,
67
+ size: doc.size,
68
+ mimeType: doc.mimeType,
69
+ uploadedAt: doc.uploadedAt,
70
+ };
71
+ }
72
+ /**
73
+ * List all uploaded files
74
+ */
75
+ listFiles(limit = 100, offset = 0) {
76
+ const docs = this.dbService.listDocuments(limit, offset);
77
+ return docs.map(doc => ({
78
+ id: doc.id,
79
+ originalName: doc.originalName,
80
+ maskedName: doc.maskedName,
81
+ size: doc.size,
82
+ mimeType: doc.mimeType,
83
+ uploadedAt: doc.uploadedAt,
84
+ }));
85
+ }
86
+ /**
87
+ * Delete a file
88
+ */
89
+ deleteFile(fileId) {
90
+ this.dbService.deleteDocument(fileId);
91
+ }
92
+ /**
93
+ * Download a file
94
+ */
95
+ async downloadFile(fileId) {
96
+ const doc = this.dbService.getDocument(fileId);
97
+ if (!doc)
98
+ return null;
99
+ if (!fs.existsSync(doc.storagePath)) {
100
+ throw new Error(`File not found: ${doc.storagePath}`);
101
+ }
102
+ const buffer = await fs.readFile(doc.storagePath);
103
+ return {
104
+ buffer,
105
+ filename: doc.originalName,
106
+ mimeType: doc.mimeType,
107
+ };
108
+ }
109
+ /**
110
+ * Get document stats
111
+ */
112
+ getStats() {
113
+ return {
114
+ totalDocuments: this.dbService.getDocumentCount(),
115
+ storageDir: this.documentsDir,
116
+ };
117
+ }
118
+ /**
119
+ * Close database connections
120
+ */
121
+ close() {
122
+ this.dbService.close();
123
+ }
124
+ }
125
+ //# sourceMappingURL=FileUploadService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUploadService.js","sourceRoot":"","sources":["../../../src/studio/services/FileUploadService.ts"],"names":[],"mappings":"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"}
package/out/studio.js CHANGED
@@ -70,7 +70,9 @@ export async function startStudio(projectPath = '.', studioPort = 4000, serverOn
70
70
  req.path.startsWith('/env-config.js') ||
71
71
  req.path.startsWith('/workspace') || // workspace info
72
72
  req.path.startsWith('/apps') ||
73
- req.path.startsWith('/app/')) {
73
+ req.path.startsWith('/app/') ||
74
+ req.path.startsWith('/documents') // document upload routes
75
+ ) {
74
76
  return next();
75
77
  }
76
78
  // Check if this is a request for a static file with a known extension
package/out/studio.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"studio.js","sourceRoot":"","sources":["../src/studio.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"studio.js","sourceRoot":"","sources":["../src/studio.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agentlang/cli",
3
- "version": "0.11.5",
3
+ "version": "0.11.7",
4
4
  "description": "A command-line interface tool for Agentlang",
5
5
  "main": "out/main.js",
6
6
  "type": "module",
@@ -39,12 +39,12 @@
39
39
  },
40
40
  "dependencies": {
41
41
  "@agentlang/agentgen": "^0.0.6",
42
- "@agentlang/lstudio": "^0.5.3",
42
+ "@agentlang/lstudio": "^0.5.5",
43
43
  "@anthropic-ai/claude-agent-sdk": "^0.2.20",
44
44
  "@anthropic-ai/sdk": "^0.71.2",
45
45
  "@asteasolutions/zod-to-openapi": "8.4.0",
46
46
  "@redocly/cli": "^2.15.0",
47
- "agentlang": "^0.9.6",
47
+ "agentlang": "^0.9.9",
48
48
  "better-sqlite3": "^12.6.2",
49
49
  "chalk": "^5.6.2",
50
50
  "chokidar": "^5.0.0",
@@ -55,12 +55,18 @@
55
55
  "express": "^5.2.1",
56
56
  "fs-extra": "^11.3.3",
57
57
  "langium": "^4.1.3",
58
+ "mammoth": "^1.11.0",
59
+ "multer": "^2.0.2",
58
60
  "open": "^11.0.0",
61
+ "openai": "^6.16.0",
59
62
  "openapi-client-axios": "^7.8.0",
60
63
  "openapi-to-postmanv2": "^5.8.0",
61
64
  "ora": "^9.1.0",
65
+ "pdf-parse": "^2.4.5",
62
66
  "simple-git": "^3.30.0",
67
+ "sqlite-vec": "0.1.7-alpha.2",
63
68
  "tmp": "^0.2.5",
69
+ "uuid": "^13.0.0",
64
70
  "yaml": "^2.8.2",
65
71
  "zod": "^4.3.6"
66
72
  },
@@ -70,6 +76,7 @@
70
76
  "@types/cors": "^2.8.19",
71
77
  "@types/express": "^5.0.6",
72
78
  "@types/fs-extra": "^11.0.4",
79
+ "@types/multer": "^2.0.0",
73
80
  "@types/node": "^25.0.10",
74
81
  "@types/openapi-to-postmanv2": "^5.0.0",
75
82
  "@types/tmp": "^0.2.6",