@burdenoff/vibe-agent 1.3.2 → 2.1.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.
Files changed (164) hide show
  1. package/dist/app-31chs2a1.js +17180 -0
  2. package/dist/app-31chs2a1.js.map +170 -0
  3. package/dist/chunk-pm1hna8x-473akrq0.js +16826 -0
  4. package/dist/chunk-pm1hna8x-473akrq0.js.map +11 -0
  5. package/dist/cli.js +4686 -1146
  6. package/dist/cli.js.map +51 -1
  7. package/dist/highlights-eq9cgrbb.scm +604 -0
  8. package/dist/highlights-ghv9g403.scm +205 -0
  9. package/dist/highlights-hk7bwhj4.scm +284 -0
  10. package/dist/highlights-r812a2qc.scm +150 -0
  11. package/dist/highlights-x6tmsnaa.scm +115 -0
  12. package/dist/index-5xngv42g.js +2546 -0
  13. package/dist/index-5xngv42g.js.map +26 -0
  14. package/dist/index-6aq4nc58.js +11429 -0
  15. package/dist/index-6aq4nc58.js.map +21 -0
  16. package/dist/index-ac2ebaf8.js +4 -0
  17. package/dist/index-ac2ebaf8.js.map +9 -0
  18. package/dist/index-g8dczzvv.js +33 -0
  19. package/dist/index-g8dczzvv.js.map +9 -0
  20. package/dist/index-gmz54dkc.js +28402 -0
  21. package/dist/index-gmz54dkc.js.map +11 -0
  22. package/dist/index-t06ktmx9.js +216 -0
  23. package/dist/index-t06ktmx9.js.map +11 -0
  24. package/dist/index.js +69 -87
  25. package/dist/index.js.map +10 -1
  26. package/dist/injections-73j83es3.scm +27 -0
  27. package/dist/package-0158fp3w.js +136 -0
  28. package/dist/package-0158fp3w.js.map +9 -0
  29. package/dist/plugin-system-bg1pzjj9.js +453 -0
  30. package/dist/plugin-system-bg1pzjj9.js.map +11 -0
  31. package/dist/tree-sitter-javascript-nd0q4pe9.wasm +0 -0
  32. package/dist/tree-sitter-markdown-411r6y9b.wasm +0 -0
  33. package/dist/tree-sitter-markdown_inline-j5349f42.wasm +0 -0
  34. package/dist/tree-sitter-typescript-zxjzwt75.wasm +0 -0
  35. package/dist/tree-sitter-zig-e78zbjpm.wasm +0 -0
  36. package/package.json +33 -44
  37. package/dist/app.d.ts +0 -15
  38. package/dist/app.d.ts.map +0 -1
  39. package/dist/app.js +0 -600
  40. package/dist/app.js.map +0 -1
  41. package/dist/cli.d.ts +0 -3
  42. package/dist/cli.d.ts.map +0 -1
  43. package/dist/db/schema.d.ts +0 -121
  44. package/dist/db/schema.d.ts.map +0 -1
  45. package/dist/db/schema.js +0 -473
  46. package/dist/db/schema.js.map +0 -1
  47. package/dist/index.d.ts +0 -2
  48. package/dist/index.d.ts.map +0 -1
  49. package/dist/middleware/ModuleAuth.d.ts +0 -61
  50. package/dist/middleware/ModuleAuth.d.ts.map +0 -1
  51. package/dist/middleware/ModuleAuth.js +0 -223
  52. package/dist/middleware/ModuleAuth.js.map +0 -1
  53. package/dist/middleware/auth.d.ts +0 -3
  54. package/dist/middleware/auth.d.ts.map +0 -1
  55. package/dist/middleware/auth.js +0 -11
  56. package/dist/middleware/auth.js.map +0 -1
  57. package/dist/migrations/remove-notes-prompts.d.ts +0 -13
  58. package/dist/migrations/remove-notes-prompts.d.ts.map +0 -1
  59. package/dist/migrations/remove-notes-prompts.js +0 -148
  60. package/dist/migrations/remove-notes-prompts.js.map +0 -1
  61. package/dist/routes/bookmarks.d.ts +0 -3
  62. package/dist/routes/bookmarks.d.ts.map +0 -1
  63. package/dist/routes/bookmarks.js +0 -195
  64. package/dist/routes/bookmarks.js.map +0 -1
  65. package/dist/routes/config.d.ts +0 -3
  66. package/dist/routes/config.d.ts.map +0 -1
  67. package/dist/routes/config.js +0 -106
  68. package/dist/routes/config.js.map +0 -1
  69. package/dist/routes/files.d.ts +0 -3
  70. package/dist/routes/files.d.ts.map +0 -1
  71. package/dist/routes/files.js +0 -313
  72. package/dist/routes/files.js.map +0 -1
  73. package/dist/routes/git.d.ts +0 -3
  74. package/dist/routes/git.d.ts.map +0 -1
  75. package/dist/routes/git.js +0 -427
  76. package/dist/routes/git.js.map +0 -1
  77. package/dist/routes/logs.d.ts +0 -9
  78. package/dist/routes/logs.d.ts.map +0 -1
  79. package/dist/routes/logs.js +0 -107
  80. package/dist/routes/logs.js.map +0 -1
  81. package/dist/routes/moduleRegistry.d.ts +0 -41
  82. package/dist/routes/moduleRegistry.d.ts.map +0 -1
  83. package/dist/routes/moduleRegistry.js +0 -356
  84. package/dist/routes/moduleRegistry.js.map +0 -1
  85. package/dist/routes/notifications.d.ts +0 -3
  86. package/dist/routes/notifications.d.ts.map +0 -1
  87. package/dist/routes/notifications.js +0 -255
  88. package/dist/routes/notifications.js.map +0 -1
  89. package/dist/routes/plugin-state.d.ts +0 -19
  90. package/dist/routes/plugin-state.d.ts.map +0 -1
  91. package/dist/routes/plugin-state.js +0 -139
  92. package/dist/routes/plugin-state.js.map +0 -1
  93. package/dist/routes/plugins.d.ts +0 -3
  94. package/dist/routes/plugins.d.ts.map +0 -1
  95. package/dist/routes/plugins.js +0 -118
  96. package/dist/routes/plugins.js.map +0 -1
  97. package/dist/routes/projects.d.ts +0 -3
  98. package/dist/routes/projects.d.ts.map +0 -1
  99. package/dist/routes/projects.js +0 -456
  100. package/dist/routes/projects.js.map +0 -1
  101. package/dist/routes/tasks.d.ts +0 -3
  102. package/dist/routes/tasks.d.ts.map +0 -1
  103. package/dist/routes/tasks.js +0 -187
  104. package/dist/routes/tasks.js.map +0 -1
  105. package/dist/routes/tmux.d.ts +0 -3
  106. package/dist/routes/tmux.d.ts.map +0 -1
  107. package/dist/routes/tmux.js +0 -1287
  108. package/dist/routes/tmux.js.map +0 -1
  109. package/dist/routes/tunnel.d.ts +0 -25
  110. package/dist/routes/tunnel.d.ts.map +0 -1
  111. package/dist/routes/tunnel.js +0 -498
  112. package/dist/routes/tunnel.js.map +0 -1
  113. package/dist/services/ModulePermissions.d.ts +0 -100
  114. package/dist/services/ModulePermissions.d.ts.map +0 -1
  115. package/dist/services/ModulePermissions.js +0 -322
  116. package/dist/services/ModulePermissions.js.map +0 -1
  117. package/dist/services/ModuleRegistryService.d.ts +0 -152
  118. package/dist/services/ModuleRegistryService.d.ts.map +0 -1
  119. package/dist/services/ModuleRegistryService.js +0 -547
  120. package/dist/services/ModuleRegistryService.js.map +0 -1
  121. package/dist/services/agent.service.d.ts +0 -19
  122. package/dist/services/agent.service.d.ts.map +0 -1
  123. package/dist/services/agent.service.js +0 -91
  124. package/dist/services/agent.service.js.map +0 -1
  125. package/dist/services/bootstrap.d.ts +0 -22
  126. package/dist/services/bootstrap.d.ts.map +0 -1
  127. package/dist/services/bootstrap.js +0 -283
  128. package/dist/services/bootstrap.js.map +0 -1
  129. package/dist/services/completion.d.ts +0 -46
  130. package/dist/services/completion.d.ts.map +0 -1
  131. package/dist/services/completion.js +0 -317
  132. package/dist/services/completion.js.map +0 -1
  133. package/dist/services/gateway-client.d.ts +0 -61
  134. package/dist/services/gateway-client.d.ts.map +0 -1
  135. package/dist/services/gateway-client.js +0 -147
  136. package/dist/services/gateway-client.js.map +0 -1
  137. package/dist/services/logger.d.ts +0 -61
  138. package/dist/services/logger.d.ts.map +0 -1
  139. package/dist/services/logger.js +0 -223
  140. package/dist/services/logger.js.map +0 -1
  141. package/dist/services/plugin-manager.d.ts +0 -105
  142. package/dist/services/plugin-manager.d.ts.map +0 -1
  143. package/dist/services/plugin-manager.js +0 -250
  144. package/dist/services/plugin-manager.js.map +0 -1
  145. package/dist/services/plugin-state-backend.d.ts +0 -22
  146. package/dist/services/plugin-state-backend.d.ts.map +0 -1
  147. package/dist/services/plugin-state-backend.js +0 -103
  148. package/dist/services/plugin-state-backend.js.map +0 -1
  149. package/dist/services/plugin-state-external.d.ts +0 -36
  150. package/dist/services/plugin-state-external.d.ts.map +0 -1
  151. package/dist/services/plugin-state-external.js +0 -144
  152. package/dist/services/plugin-state-external.js.map +0 -1
  153. package/dist/services/plugin-state-router.d.ts +0 -40
  154. package/dist/services/plugin-state-router.d.ts.map +0 -1
  155. package/dist/services/plugin-state-router.js +0 -82
  156. package/dist/services/plugin-state-router.js.map +0 -1
  157. package/dist/services/port-utils.d.ts +0 -11
  158. package/dist/services/port-utils.d.ts.map +0 -1
  159. package/dist/services/port-utils.js +0 -39
  160. package/dist/services/port-utils.js.map +0 -1
  161. package/dist/services/service-manager.d.ts +0 -50
  162. package/dist/services/service-manager.d.ts.map +0 -1
  163. package/dist/services/service-manager.js +0 -389
  164. package/dist/services/service-manager.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/routes/files.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { FastifyPluginAsync } from "fastify";
2
- export declare const gitRoutes: FastifyPluginAsync;
3
- //# sourceMappingURL=git.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../../src/routes/git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAU7C,eAAO,MAAM,SAAS,EAAE,kBA8JvB,CAAC"}
@@ -1,427 +0,0 @@
1
- import crypto from "node:crypto";
2
- import { promises as fs } from "fs";
3
- import path from "path";
4
- export const gitRoutes = async (fastify) => {
5
- // Get all git repositories
6
- fastify.get("/", async (_request, _reply) => {
7
- const repositories = fastify.db.getAllGitRepositories();
8
- return { repositories };
9
- });
10
- // Get repository by ID
11
- fastify.get("/:id", async (request, reply) => {
12
- const { id } = request.params;
13
- const repository = fastify.db.getGitRepository(id);
14
- if (!repository) {
15
- return reply.code(404).send({ error: "Repository not found" });
16
- }
17
- return { repository };
18
- });
19
- // Scan directory for git repositories
20
- fastify.post("/scan", async (request, reply) => {
21
- const { directory, includeSubmodules = true } = request.body;
22
- try {
23
- // Validate directory exists
24
- const stats = await fs.stat(directory);
25
- if (!stats.isDirectory()) {
26
- return reply.code(400).send({ error: "Path is not a directory" });
27
- }
28
- const repositories = await scanForGitRepositories(directory, includeSubmodules);
29
- // Save repositories to database
30
- const savedRepos = [];
31
- for (const repo of repositories) {
32
- const existing = fastify.db.getGitRepositoryByPath(repo.path);
33
- if (existing) {
34
- // Update existing repository
35
- fastify.db.updateGitRepository(existing.id, repo);
36
- savedRepos.push({ ...existing, ...repo });
37
- }
38
- else {
39
- // Create new repository
40
- const newRepo = fastify.db.createGitRepository({
41
- id: crypto.randomUUID(),
42
- ...repo,
43
- });
44
- savedRepos.push(newRepo);
45
- }
46
- }
47
- // Emit scan complete event
48
- fastify.io.emit("git:scan-complete", {
49
- directory,
50
- count: savedRepos.length,
51
- });
52
- return {
53
- repositories: savedRepos,
54
- scannedPath: directory,
55
- totalFound: savedRepos.length,
56
- };
57
- }
58
- catch (error) {
59
- return reply.code(500).send({
60
- error: "Failed to scan directory",
61
- details: error instanceof Error ? error.message : "Unknown error",
62
- });
63
- }
64
- });
65
- // Update repository metadata
66
- fastify.put("/:id", async (request, reply) => {
67
- const { id } = request.params;
68
- const updates = request.body;
69
- try {
70
- const repository = fastify.db.getGitRepository(id);
71
- if (!repository) {
72
- return reply.code(404).send({ error: "Repository not found" });
73
- }
74
- fastify.db.updateGitRepository(id, updates);
75
- return { success: true };
76
- }
77
- catch (error) {
78
- return reply.code(500).send({
79
- error: "Failed to update repository",
80
- details: error instanceof Error ? error.message : "Unknown error",
81
- });
82
- }
83
- });
84
- // Delete repository from tracking
85
- fastify.delete("/:id", async (request, reply) => {
86
- const { id } = request.params;
87
- try {
88
- const repository = fastify.db.getGitRepository(id);
89
- if (!repository) {
90
- return reply.code(404).send({ error: "Repository not found" });
91
- }
92
- fastify.db.deleteGitRepository(id);
93
- return { success: true };
94
- }
95
- catch (error) {
96
- return reply.code(500).send({
97
- error: "Failed to delete repository",
98
- details: error instanceof Error ? error.message : "Unknown error",
99
- });
100
- }
101
- });
102
- // Fix repository hierarchy
103
- fastify.post("/fix-hierarchy", async (_request, reply) => {
104
- try {
105
- const repositories = fastify.db.getAllGitRepositories();
106
- let fixed = 0;
107
- for (const repo of repositories) {
108
- // Check if this repo is inside another repo
109
- const parentRepo = repositories.find((r) => r.path !== repo.path && repo.path.startsWith(r.path + "/"));
110
- if (parentRepo && repo.parentPath !== parentRepo.path) {
111
- fastify.db.updateGitRepository(repo.id, {
112
- parentPath: parentRepo.path,
113
- isSubmodule: true,
114
- });
115
- fixed++;
116
- }
117
- else if (!parentRepo && (repo.parentPath || repo.isSubmodule)) {
118
- fastify.db.updateGitRepository(repo.id, {
119
- parentPath: undefined,
120
- isSubmodule: false,
121
- });
122
- fixed++;
123
- }
124
- }
125
- return {
126
- success: true,
127
- fixed,
128
- total: repositories.length,
129
- };
130
- }
131
- catch (error) {
132
- return reply.code(500).send({
133
- error: "Failed to fix hierarchy",
134
- details: error instanceof Error ? error.message : "Unknown error",
135
- });
136
- }
137
- });
138
- };
139
- // Helper function to scan for git repositories
140
- async function scanForGitRepositories(directory, includeSubmodules, parentPath) {
141
- const repositories = [];
142
- try {
143
- const entries = await fs.readdir(directory, { withFileTypes: true });
144
- // Check if this directory is a git repository
145
- const hasGit = entries.some((e) => e.name === ".git" && e.isDirectory());
146
- if (hasGit) {
147
- const repo = {
148
- path: directory,
149
- name: path.basename(directory),
150
- parentPath,
151
- isSubmodule: !!parentPath,
152
- projectType: await detectProjectType(directory),
153
- vitePort: await detectVitePort(directory),
154
- };
155
- repositories.push(repo);
156
- // If not including submodules, return early
157
- if (!includeSubmodules) {
158
- return repositories;
159
- }
160
- // Set this as parent for subdirectories
161
- parentPath = directory;
162
- }
163
- // Check if we should skip based on .gitignore
164
- const shouldSkip = await shouldSkipDirectory(directory);
165
- if (shouldSkip) {
166
- return repositories;
167
- }
168
- // Recursively scan subdirectories
169
- for (const entry of entries) {
170
- if (entry.isDirectory() &&
171
- entry.name !== ".git" &&
172
- entry.name !== "node_modules" &&
173
- entry.name !== "__pycache__" &&
174
- entry.name !== ".venv" &&
175
- entry.name !== "venv" &&
176
- entry.name !== "dist" &&
177
- entry.name !== "build" &&
178
- !entry.name.startsWith(".")) {
179
- const subPath = path.join(directory, entry.name);
180
- const subRepos = await scanForGitRepositories(subPath, includeSubmodules, parentPath);
181
- repositories.push(...subRepos);
182
- }
183
- }
184
- }
185
- catch {
186
- // Ignore permission errors
187
- }
188
- return repositories;
189
- }
190
- // Helper function to detect project type
191
- async function detectProjectType(directory) {
192
- try {
193
- const entries = await fs.readdir(directory);
194
- // Node.js project (check for specific frameworks too)
195
- if (entries.includes("package.json")) {
196
- // Try to detect specific Node.js frameworks
197
- try {
198
- const packageJson = JSON.parse(await fs.readFile(path.join(directory, "package.json"), "utf8"));
199
- const deps = {
200
- ...packageJson.dependencies,
201
- ...packageJson.devDependencies,
202
- };
203
- if (deps.react || deps["@types/react"])
204
- return "react";
205
- if (deps.vue || deps["@vue/cli"])
206
- return "vue";
207
- if (deps.angular || deps["@angular/core"])
208
- return "angular";
209
- if (deps.next || deps["@types/next"])
210
- return "nextjs";
211
- if (deps.nuxt || deps["@nuxt/core"])
212
- return "nuxtjs";
213
- if (deps.svelte || deps["@sveltejs/kit"])
214
- return "svelte";
215
- if (deps.express || deps.fastify || deps.koa)
216
- return "nodejs-backend";
217
- if (deps.electron)
218
- return "electron";
219
- if (deps.gatsby)
220
- return "gatsby";
221
- if (deps.vite)
222
- return "vite";
223
- }
224
- catch {
225
- // Fallback to generic nodejs
226
- }
227
- return "nodejs";
228
- }
229
- // Python project
230
- if (entries.includes("setup.py") ||
231
- entries.includes("requirements.txt") ||
232
- entries.includes("pyproject.toml") ||
233
- entries.includes("Pipfile") ||
234
- entries.includes("poetry.lock") ||
235
- entries.includes("conda.yml") ||
236
- entries.includes("environment.yml")) {
237
- // Try to detect specific Python frameworks
238
- try {
239
- if (entries.includes("manage.py"))
240
- return "django";
241
- if (entries.includes("app.py") || entries.includes("application.py"))
242
- return "flask";
243
- if (entries.includes("main.py"))
244
- return "fastapi";
245
- if (entries.includes("streamlit_app.py"))
246
- return "streamlit";
247
- if (entries.includes("requirements.txt")) {
248
- const reqs = await fs.readFile(path.join(directory, "requirements.txt"), "utf8");
249
- if (reqs.includes("django"))
250
- return "django";
251
- if (reqs.includes("flask"))
252
- return "flask";
253
- if (reqs.includes("fastapi"))
254
- return "fastapi";
255
- if (reqs.includes("streamlit"))
256
- return "streamlit";
257
- if (reqs.includes("tensorflow") || reqs.includes("pytorch"))
258
- return "python-ml";
259
- if (reqs.includes("jupyter"))
260
- return "jupyter";
261
- }
262
- }
263
- catch {
264
- // Fallback to generic python
265
- }
266
- return "python";
267
- }
268
- // Go project
269
- if (entries.includes("go.mod") || entries.includes("go.sum")) {
270
- return "go";
271
- }
272
- // Rust project
273
- if (entries.includes("Cargo.toml") || entries.includes("Cargo.lock")) {
274
- return "rust";
275
- }
276
- // Java project
277
- if (entries.includes("pom.xml"))
278
- return "maven";
279
- if (entries.includes("build.gradle") ||
280
- entries.includes("build.gradle.kts"))
281
- return "gradle";
282
- if (entries.some((e) => e.endsWith(".java")))
283
- return "java";
284
- // Ruby project
285
- if (entries.includes("Gemfile")) {
286
- try {
287
- const gemfile = await fs.readFile(path.join(directory, "Gemfile"), "utf8");
288
- if (gemfile.includes("rails"))
289
- return "rails";
290
- if (gemfile.includes("sinatra"))
291
- return "sinatra";
292
- }
293
- catch {
294
- // Fallback
295
- }
296
- return "ruby";
297
- }
298
- // PHP project
299
- if (entries.includes("composer.json")) {
300
- try {
301
- const composer = JSON.parse(await fs.readFile(path.join(directory, "composer.json"), "utf8"));
302
- const deps = { ...composer.require, ...composer["require-dev"] };
303
- if (deps.laravel || deps["laravel/framework"])
304
- return "laravel";
305
- if (deps.symfony || deps["symfony/symfony"])
306
- return "symfony";
307
- if (deps.wordpress || entries.includes("wp-config.php"))
308
- return "wordpress";
309
- }
310
- catch {
311
- // Fallback
312
- }
313
- return "php";
314
- }
315
- // .NET project
316
- if (entries.some((e) => e.endsWith(".csproj") ||
317
- e.endsWith(".sln") ||
318
- e.endsWith(".fsproj") ||
319
- e.endsWith(".vbproj"))) {
320
- return "dotnet";
321
- }
322
- // C/C++ project
323
- if (entries.includes("CMakeLists.txt") ||
324
- entries.includes("Makefile") ||
325
- entries.some((e) => e.endsWith(".c") ||
326
- e.endsWith(".cpp") ||
327
- e.endsWith(".h") ||
328
- e.endsWith(".hpp"))) {
329
- return "cpp";
330
- }
331
- // Swift project
332
- if (entries.includes("Package.swift") ||
333
- entries.some((e) => e.endsWith(".xcodeproj") || e.endsWith(".xcworkspace"))) {
334
- return "swift";
335
- }
336
- // Kotlin project
337
- if (entries.some((e) => e.endsWith(".kt") || e.endsWith(".kts"))) {
338
- return "kotlin";
339
- }
340
- // Scala project
341
- if (entries.includes("build.sbt") ||
342
- entries.some((e) => e.endsWith(".scala"))) {
343
- return "scala";
344
- }
345
- // R project
346
- if (entries.includes("DESCRIPTION") ||
347
- entries.some((e) => e.endsWith(".R") || e.endsWith(".Rmd"))) {
348
- return "r";
349
- }
350
- // Dart/Flutter project
351
- if (entries.includes("pubspec.yaml")) {
352
- return "flutter";
353
- }
354
- // Unity project
355
- if (entries.includes("ProjectSettings") && entries.includes("Assets")) {
356
- return "unity";
357
- }
358
- // Docker project
359
- if (entries.includes("Dockerfile") ||
360
- entries.includes("docker-compose.yml")) {
361
- return "docker";
362
- }
363
- // Terraform project
364
- if (entries.some((e) => e.endsWith(".tf") || e.endsWith(".tfvars"))) {
365
- return "terraform";
366
- }
367
- // Documentation/Static sites
368
- if (entries.includes("_config.yml"))
369
- return "jekyll";
370
- if (entries.includes("mkdocs.yml"))
371
- return "mkdocs";
372
- if (entries.includes("docusaurus.config.js"))
373
- return "docusaurus";
374
- if (entries.includes("hugo.toml") || entries.includes("config.toml"))
375
- return "hugo";
376
- }
377
- catch {
378
- // Ignore errors
379
- }
380
- return undefined;
381
- }
382
- // Helper function to detect Vite port
383
- async function detectVitePort(directory) {
384
- try {
385
- const viteConfigPath = path.join(directory, "vite.config.js");
386
- const viteConfigTsPath = path.join(directory, "vite.config.ts");
387
- let configPath;
388
- try {
389
- await fs.access(viteConfigPath);
390
- configPath = viteConfigPath;
391
- }
392
- catch {
393
- try {
394
- await fs.access(viteConfigTsPath);
395
- configPath = viteConfigTsPath;
396
- }
397
- catch {
398
- return undefined;
399
- }
400
- }
401
- const content = await fs.readFile(configPath, "utf-8");
402
- // Look for port configuration
403
- const portMatch = content.match(/port:\s*(\d+)/);
404
- if (portMatch) {
405
- return parseInt(portMatch[1], 10);
406
- }
407
- }
408
- catch {
409
- // Ignore errors
410
- }
411
- return undefined;
412
- }
413
- // Helper function to check if directory should be skipped
414
- async function shouldSkipDirectory(directory) {
415
- try {
416
- // Check for .gitignore
417
- const gitignorePath = path.join(directory, ".gitignore");
418
- await fs.access(gitignorePath);
419
- // For now, we'll use a simple heuristic
420
- // In a real implementation, you'd parse .gitignore properly
421
- return false;
422
- }
423
- catch {
424
- return false;
425
- }
426
- }
427
- //# sourceMappingURL=git.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../../src/routes/git.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- /**
2
- * Agent Log Routes — history + real-time SSE streaming
3
- *
4
- * GET /api/logs — Paginated historical log entries
5
- * GET /api/logs/stream — Server-Sent Events real-time log stream
6
- */
7
- import type { FastifyInstance } from "fastify";
8
- export declare function logRoutes(app: FastifyInstance): Promise<void>;
9
- //# sourceMappingURL=logs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logs.d.ts","sourceRoot":"","sources":["../../src/routes/logs.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAG/C,wBAAsB,SAAS,CAAC,GAAG,EAAE,eAAe,iBAwGnD"}
@@ -1,107 +0,0 @@
1
- /**
2
- * Agent Log Routes — history + real-time SSE streaming
3
- *
4
- * GET /api/logs — Paginated historical log entries
5
- * GET /api/logs/stream — Server-Sent Events real-time log stream
6
- */
7
- import logger from "../services/logger.js";
8
- export async function logRoutes(app) {
9
- /**
10
- * GET /api/logs — Historical log entries
11
- *
12
- * Query params:
13
- * level — Minimum log level (debug | info | warn | error)
14
- * source — Filter by source substring
15
- * from — ISO timestamp lower bound
16
- * to — ISO timestamp upper bound
17
- * limit — Max entries to return (default 200)
18
- * offset — Skip N entries (for pagination)
19
- */
20
- app.get("/", async (request) => {
21
- const q = request.query;
22
- const entries = await logger.readHistory({
23
- level: q.level,
24
- source: q.source,
25
- from: q.from,
26
- to: q.to,
27
- limit: q.limit ? parseInt(q.limit, 10) : 200,
28
- offset: q.offset ? parseInt(q.offset, 10) : 0,
29
- });
30
- return { entries, count: entries.length };
31
- });
32
- /**
33
- * GET /api/logs/stream — Server-Sent Events (SSE) real-time log stream
34
- *
35
- * Query params:
36
- * level — Minimum log level filter (default: info)
37
- * source — Filter by source substring
38
- *
39
- * Each SSE event is:
40
- * event: log
41
- * data: { ...LogEntry }
42
- */
43
- app.get("/stream", async (request, reply) => {
44
- const q = request.query;
45
- const minLevel = (q.level ?? "info");
46
- const sourceFilter = q.source ?? "";
47
- const levelPriority = {
48
- debug: 0,
49
- info: 1,
50
- warn: 2,
51
- error: 3,
52
- };
53
- // Set SSE headers
54
- reply.raw.writeHead(200, {
55
- "Content-Type": "text/event-stream",
56
- "Cache-Control": "no-cache",
57
- Connection: "keep-alive",
58
- "X-Accel-Buffering": "no", // Disable Nginx buffering
59
- });
60
- // Send an initial comment to establish the connection
61
- reply.raw.write(": connected\n\n");
62
- // Heartbeat to keep the connection alive (every 15s)
63
- const heartbeatInterval = setInterval(() => {
64
- try {
65
- reply.raw.write(": heartbeat\n\n");
66
- }
67
- catch {
68
- // Connection closed
69
- cleanup();
70
- }
71
- }, 15_000);
72
- // Log event handler
73
- const onLog = (entry) => {
74
- // Apply filters
75
- if (levelPriority[entry.level] < levelPriority[minLevel])
76
- return;
77
- if (sourceFilter && !entry.source.includes(sourceFilter))
78
- return;
79
- try {
80
- reply.raw.write(`event: log\ndata: ${JSON.stringify(entry)}\n\n`);
81
- }
82
- catch {
83
- // Connection closed
84
- cleanup();
85
- }
86
- };
87
- const cleanup = () => {
88
- clearInterval(heartbeatInterval);
89
- logger.removeListener("log", onLog);
90
- try {
91
- reply.raw.end();
92
- }
93
- catch {
94
- // Already closed
95
- }
96
- };
97
- // Subscribe to log events
98
- logger.on("log", onLog);
99
- // Clean up when the client disconnects
100
- request.raw.on("close", cleanup);
101
- request.raw.on("error", cleanup);
102
- // Prevent Fastify from sending its own response
103
- // (we're writing directly to reply.raw)
104
- return reply;
105
- });
106
- }
107
- //# sourceMappingURL=logs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"logs.js","sourceRoot":"","sources":["../../src/routes/logs.ts"],"names":[],"mappings":"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"}
@@ -1,41 +0,0 @@
1
- import { FastifyInstance } from "fastify";
2
- export interface RegisterModuleRequest {
3
- name: string;
4
- displayName: string;
5
- version: string;
6
- description: string;
7
- category: string;
8
- tags: string[];
9
- api: {
10
- backend: {
11
- port: number;
12
- endpoints: string[];
13
- };
14
- frontend: {
15
- port: number;
16
- route: string;
17
- };
18
- };
19
- permissions: string[];
20
- features: string[];
21
- source: {
22
- type: "local" | "remote" | "marketplace" | "container";
23
- url?: string;
24
- registeredAt: string;
25
- };
26
- }
27
- export interface InstallModuleRequest {
28
- moduleId: string;
29
- source: {
30
- type: "remote" | "marketplace" | "container";
31
- url: string;
32
- credentials?: {
33
- username?: string;
34
- password?: string;
35
- token?: string;
36
- };
37
- };
38
- version?: string;
39
- }
40
- export declare function moduleRegistryRoutes(fastify: FastifyInstance): Promise<void>;
41
- //# sourceMappingURL=moduleRegistry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"moduleRegistry.d.ts","sourceRoot":"","sources":["../../src/routes/moduleRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAgC,MAAM,SAAS,CAAC;AAKxE,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,GAAG,EAAE;QACH,OAAO,EAAE;YACP,IAAI,EAAE,MAAM,CAAC;YACb,SAAS,EAAE,MAAM,EAAE,CAAC;SACrB,CAAC;QACF,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM,CAAC;YACb,KAAK,EAAE,MAAM,CAAC;SACf,CAAC;KACH,CAAC;IACF,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE;QACN,IAAI,EAAE,OAAO,GAAG,QAAQ,GAAG,aAAa,GAAG,WAAW,CAAC;QACvD,GAAG,CAAC,EAAE,MAAM,CAAC;QACb,YAAY,EAAE,MAAM,CAAC;KACtB,CAAC;CACH;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE;QACN,IAAI,EAAE,QAAQ,GAAG,aAAa,GAAG,WAAW,CAAC;QAC7C,GAAG,EAAE,MAAM,CAAC;QACZ,WAAW,CAAC,EAAE;YACZ,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;YAClB,KAAK,CAAC,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAsB,oBAAoB,CAAC,OAAO,EAAE,eAAe,iBAwblE"}