polyai-agent 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.
Files changed (142) hide show
  1. package/README.md +464 -0
  2. package/REQUIREMENTS.md +158 -0
  3. package/dist/cli.d.ts +3 -0
  4. package/dist/cli.d.ts.map +1 -0
  5. package/dist/cli.js +500 -0
  6. package/dist/cli.js.map +1 -0
  7. package/dist/cluster-monitor/cluster-monitor.d.ts +49 -0
  8. package/dist/cluster-monitor/cluster-monitor.d.ts.map +1 -0
  9. package/dist/cluster-monitor/cluster-monitor.js +374 -0
  10. package/dist/cluster-monitor/cluster-monitor.js.map +1 -0
  11. package/dist/cluster-monitor/index.d.ts +9 -0
  12. package/dist/cluster-monitor/index.d.ts.map +1 -0
  13. package/dist/cluster-monitor/index.js +19 -0
  14. package/dist/cluster-monitor/index.js.map +1 -0
  15. package/dist/cluster-monitor/kubernetes-connector.d.ts +21 -0
  16. package/dist/cluster-monitor/kubernetes-connector.d.ts.map +1 -0
  17. package/dist/cluster-monitor/kubernetes-connector.js +109 -0
  18. package/dist/cluster-monitor/kubernetes-connector.js.map +1 -0
  19. package/dist/cluster-monitor/notifications.d.ts +26 -0
  20. package/dist/cluster-monitor/notifications.d.ts.map +1 -0
  21. package/dist/cluster-monitor/notifications.js +182 -0
  22. package/dist/cluster-monitor/notifications.js.map +1 -0
  23. package/dist/cluster-monitor/remediation.d.ts +33 -0
  24. package/dist/cluster-monitor/remediation.d.ts.map +1 -0
  25. package/dist/cluster-monitor/remediation.js +134 -0
  26. package/dist/cluster-monitor/remediation.js.map +1 -0
  27. package/dist/cluster-monitor/rules.d.ts +26 -0
  28. package/dist/cluster-monitor/rules.d.ts.map +1 -0
  29. package/dist/cluster-monitor/rules.js +133 -0
  30. package/dist/cluster-monitor/rules.js.map +1 -0
  31. package/dist/cluster-monitor/types.d.ts +184 -0
  32. package/dist/cluster-monitor/types.d.ts.map +1 -0
  33. package/dist/cluster-monitor/types.js +3 -0
  34. package/dist/cluster-monitor/types.js.map +1 -0
  35. package/dist/index.d.ts +47 -0
  36. package/dist/index.d.ts.map +1 -0
  37. package/dist/index.js +115 -0
  38. package/dist/index.js.map +1 -0
  39. package/dist/live-debugger/index.d.ts +32 -0
  40. package/dist/live-debugger/index.d.ts.map +1 -0
  41. package/dist/live-debugger/index.js +119 -0
  42. package/dist/live-debugger/index.js.map +1 -0
  43. package/dist/live-debugger/log-watcher.d.ts +19 -0
  44. package/dist/live-debugger/log-watcher.d.ts.map +1 -0
  45. package/dist/live-debugger/log-watcher.js +77 -0
  46. package/dist/live-debugger/log-watcher.js.map +1 -0
  47. package/dist/live-debugger/service-connector.d.ts +33 -0
  48. package/dist/live-debugger/service-connector.d.ts.map +1 -0
  49. package/dist/live-debugger/service-connector.js +123 -0
  50. package/dist/live-debugger/service-connector.js.map +1 -0
  51. package/dist/providers/anthropic.d.ts +9 -0
  52. package/dist/providers/anthropic.d.ts.map +1 -0
  53. package/dist/providers/anthropic.js +71 -0
  54. package/dist/providers/anthropic.js.map +1 -0
  55. package/dist/providers/base.d.ts +29 -0
  56. package/dist/providers/base.d.ts.map +1 -0
  57. package/dist/providers/base.js +14 -0
  58. package/dist/providers/base.js.map +1 -0
  59. package/dist/providers/gemini.d.ts +11 -0
  60. package/dist/providers/gemini.d.ts.map +1 -0
  61. package/dist/providers/gemini.js +73 -0
  62. package/dist/providers/gemini.js.map +1 -0
  63. package/dist/providers/index.d.ts +14 -0
  64. package/dist/providers/index.d.ts.map +1 -0
  65. package/dist/providers/index.js +38 -0
  66. package/dist/providers/index.js.map +1 -0
  67. package/dist/providers/openai.d.ts +9 -0
  68. package/dist/providers/openai.d.ts.map +1 -0
  69. package/dist/providers/openai.js +59 -0
  70. package/dist/providers/openai.js.map +1 -0
  71. package/dist/session/guardrails.d.ts +20 -0
  72. package/dist/session/guardrails.d.ts.map +1 -0
  73. package/dist/session/guardrails.js +83 -0
  74. package/dist/session/guardrails.js.map +1 -0
  75. package/dist/session/index.d.ts +6 -0
  76. package/dist/session/index.d.ts.map +1 -0
  77. package/dist/session/index.js +12 -0
  78. package/dist/session/index.js.map +1 -0
  79. package/dist/session/session-manager.d.ts +15 -0
  80. package/dist/session/session-manager.d.ts.map +1 -0
  81. package/dist/session/session-manager.js +89 -0
  82. package/dist/session/session-manager.js.map +1 -0
  83. package/dist/session/session.d.ts +63 -0
  84. package/dist/session/session.d.ts.map +1 -0
  85. package/dist/session/session.js +123 -0
  86. package/dist/session/session.js.map +1 -0
  87. package/dist/speckits/base.d.ts +9 -0
  88. package/dist/speckits/base.d.ts.map +1 -0
  89. package/dist/speckits/base.js +3 -0
  90. package/dist/speckits/base.js.map +1 -0
  91. package/dist/speckits/cluster-debugger.d.ts +3 -0
  92. package/dist/speckits/cluster-debugger.d.ts.map +1 -0
  93. package/dist/speckits/cluster-debugger.js +48 -0
  94. package/dist/speckits/cluster-debugger.js.map +1 -0
  95. package/dist/speckits/code-review.d.ts +3 -0
  96. package/dist/speckits/code-review.d.ts.map +1 -0
  97. package/dist/speckits/code-review.js +41 -0
  98. package/dist/speckits/code-review.js.map +1 -0
  99. package/dist/speckits/debugger.d.ts +3 -0
  100. package/dist/speckits/debugger.d.ts.map +1 -0
  101. package/dist/speckits/debugger.js +38 -0
  102. package/dist/speckits/debugger.js.map +1 -0
  103. package/dist/speckits/index.d.ts +11 -0
  104. package/dist/speckits/index.d.ts.map +1 -0
  105. package/dist/speckits/index.js +40 -0
  106. package/dist/speckits/index.js.map +1 -0
  107. package/dist/speckits/more-speckits.d.ts +6 -0
  108. package/dist/speckits/more-speckits.d.ts.map +1 -0
  109. package/dist/speckits/more-speckits.js +136 -0
  110. package/dist/speckits/more-speckits.js.map +1 -0
  111. package/dist/speckits/vibe-coder.d.ts +3 -0
  112. package/dist/speckits/vibe-coder.d.ts.map +1 -0
  113. package/dist/speckits/vibe-coder.js +32 -0
  114. package/dist/speckits/vibe-coder.js.map +1 -0
  115. package/dist/utils/config.d.ts +18 -0
  116. package/dist/utils/config.d.ts.map +1 -0
  117. package/dist/utils/config.js +107 -0
  118. package/dist/utils/config.js.map +1 -0
  119. package/dist/utils/file-ops.d.ts +15 -0
  120. package/dist/utils/file-ops.d.ts.map +1 -0
  121. package/dist/utils/file-ops.js +109 -0
  122. package/dist/utils/file-ops.js.map +1 -0
  123. package/dist/utils/logger.d.ts +4 -0
  124. package/dist/utils/logger.d.ts.map +1 -0
  125. package/dist/utils/logger.js +25 -0
  126. package/dist/utils/logger.js.map +1 -0
  127. package/dist/web/public/css/app.css +370 -0
  128. package/dist/web/public/index.html +91 -0
  129. package/dist/web/public/js/app.js +212 -0
  130. package/dist/web/routes/sessions.d.ts +4 -0
  131. package/dist/web/routes/sessions.d.ts.map +1 -0
  132. package/dist/web/routes/sessions.js +51 -0
  133. package/dist/web/routes/sessions.js.map +1 -0
  134. package/dist/web/routes/settings.d.ts +3 -0
  135. package/dist/web/routes/settings.d.ts.map +1 -0
  136. package/dist/web/routes/settings.js +33 -0
  137. package/dist/web/routes/settings.js.map +1 -0
  138. package/dist/web/server.d.ts +16 -0
  139. package/dist/web/server.d.ts.map +1 -0
  140. package/dist/web/server.js +76 -0
  141. package/dist/web/server.js.map +1 -0
  142. package/package.json +86 -0
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSessionRoutes = createSessionRoutes;
4
+ const express_1 = require("express");
5
+ function createSessionRoutes(sessionManager) {
6
+ const router = (0, express_1.Router)();
7
+ // GET /api/sessions — list all sessions
8
+ router.get('/', (_req, res) => {
9
+ try {
10
+ const sessions = sessionManager.listSessions();
11
+ res.json({ sessions });
12
+ }
13
+ catch (err) {
14
+ res.status(500).json({ error: String(err) });
15
+ }
16
+ });
17
+ // GET /api/sessions/:id — get session details
18
+ router.get('/:id', (req, res) => {
19
+ try {
20
+ const data = sessionManager.exportSession(req.params.id);
21
+ res.json(JSON.parse(data));
22
+ }
23
+ catch (err) {
24
+ res.status(404).json({ error: String(err) });
25
+ }
26
+ });
27
+ // DELETE /api/sessions/:id — delete session
28
+ router.delete('/:id', (req, res) => {
29
+ try {
30
+ sessionManager.deleteSession(req.params.id);
31
+ res.json({ success: true });
32
+ }
33
+ catch (err) {
34
+ res.status(404).json({ error: String(err) });
35
+ }
36
+ });
37
+ // GET /api/sessions/:id/export — export session as JSON download
38
+ router.get('/:id/export', (req, res) => {
39
+ try {
40
+ const data = sessionManager.exportSession(req.params.id);
41
+ res.setHeader('Content-Type', 'application/json');
42
+ res.setHeader('Content-Disposition', `attachment; filename="session-${req.params.id}.json"`);
43
+ res.send(data);
44
+ }
45
+ catch (err) {
46
+ res.status(404).json({ error: String(err) });
47
+ }
48
+ });
49
+ return router;
50
+ }
51
+ //# sourceMappingURL=sessions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/web/routes/sessions.ts"],"names":[],"mappings":";;AAGA,kDA8CC;AAjDD,qCAAoD;AAGpD,SAAgB,mBAAmB,CAAC,cAA8B;IAChE,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;IAExB,wCAAwC;IACxC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,cAAc,CAAC,YAAY,EAAE,CAAC;YAC/C,GAAG,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC;QACzB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,8CAA8C;IAC9C,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;QACjD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzD,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,4CAA4C;IAC5C,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;QACpD,IAAI,CAAC;YACH,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YAC5C,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,iEAAiE;IACjE,MAAM,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;QACxD,IAAI,CAAC;YACH,MAAM,IAAI,GAAG,cAAc,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;YACzD,GAAG,CAAC,SAAS,CAAC,cAAc,EAAE,kBAAkB,CAAC,CAAC;YAClD,GAAG,CAAC,SAAS,CAAC,qBAAqB,EAAE,iCAAiC,GAAG,CAAC,MAAM,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC7F,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Router } from 'express';
2
+ export declare function createSettingsRoutes(): Router;
3
+ //# sourceMappingURL=settings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../../src/web/routes/settings.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAqB,MAAM,SAAS,CAAC;AAGpD,wBAAgB,oBAAoB,IAAI,MAAM,CAgC7C"}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createSettingsRoutes = createSettingsRoutes;
4
+ const express_1 = require("express");
5
+ const config_1 = require("../../utils/config");
6
+ function createSettingsRoutes() {
7
+ const router = (0, express_1.Router)();
8
+ // GET /api/settings
9
+ router.get('/', (_req, res) => {
10
+ try {
11
+ const config = (0, config_1.loadConfig)();
12
+ // Redact API key
13
+ const { apiKey: _apiKey, ...safeConfig } = config;
14
+ res.json(safeConfig);
15
+ }
16
+ catch (err) {
17
+ res.status(500).json({ error: String(err) });
18
+ }
19
+ });
20
+ // POST /api/settings — update settings
21
+ router.post('/', (req, res) => {
22
+ try {
23
+ const { provider, model, port, logLevel } = req.body;
24
+ (0, config_1.saveConfig)({ provider: provider, model, port, logLevel });
25
+ res.json({ success: true });
26
+ }
27
+ catch (err) {
28
+ res.status(500).json({ error: String(err) });
29
+ }
30
+ });
31
+ return router;
32
+ }
33
+ //# sourceMappingURL=settings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/web/routes/settings.ts"],"names":[],"mappings":";;AAGA,oDAgCC;AAnCD,qCAAoD;AACpD,+CAA4D;AAE5D,SAAgB,oBAAoB;IAClC,MAAM,MAAM,GAAG,IAAA,gBAAM,GAAE,CAAC;IAExB,oBAAoB;IACpB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,IAAa,EAAE,GAAa,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,IAAA,mBAAU,GAAE,CAAC;YAC5B,iBAAiB;YACjB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,UAAU,EAAE,GAAG,MAAM,CAAC;YAClD,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACvB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,uCAAuC;IACvC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAY,EAAE,GAAa,EAAE,EAAE;QAC/C,IAAI,CAAC;YACH,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,IAK/C,CAAC;YACF,IAAA,mBAAU,EAAC,EAAE,QAAQ,EAAE,QAA6C,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;YAC/F,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,16 @@
1
+ import { Server as SocketIOServer } from 'socket.io';
2
+ import { SessionManager } from '../session/session-manager';
3
+ export interface WebServerOptions {
4
+ port?: number;
5
+ sessionManager: SessionManager;
6
+ apiKey?: string;
7
+ provider?: string;
8
+ }
9
+ export declare function createWebServer(options: WebServerOptions): {
10
+ app: import("express-serve-static-core").Express;
11
+ io: SocketIOServer<import("socket.io").DefaultEventsMap, import("socket.io").DefaultEventsMap, import("socket.io").DefaultEventsMap, any>;
12
+ httpServer: import("http").Server<typeof import("http").IncomingMessage, typeof import("http").ServerResponse>;
13
+ start: () => Promise<void>;
14
+ stop: () => Promise<void>;
15
+ };
16
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,MAAM,IAAI,cAAc,EAAE,MAAM,WAAW,CAAC;AAGrD,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAK5D,MAAM,WAAW,gBAAgB;IAC/B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,EAAE,cAAc,CAAC;IAC/B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,gBAAgB;;;;iBAmDrC,OAAO,CAAC,IAAI,CAAC;gBASd,OAAO,CAAC,IAAI,CAAC;EAU/B"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.createWebServer = createWebServer;
7
+ const express_1 = __importDefault(require("express"));
8
+ const http_1 = require("http");
9
+ const socket_io_1 = require("socket.io");
10
+ const path_1 = __importDefault(require("path"));
11
+ const express_rate_limit_1 = __importDefault(require("express-rate-limit"));
12
+ const sessions_1 = require("./routes/sessions");
13
+ const settings_1 = require("./routes/settings");
14
+ const logger_1 = require("../utils/logger");
15
+ function createWebServer(options) {
16
+ const port = options.port ?? 3000;
17
+ const app = (0, express_1.default)();
18
+ const httpServer = (0, http_1.createServer)(app);
19
+ const io = new socket_io_1.Server(httpServer, {
20
+ cors: { origin: '*' },
21
+ });
22
+ app.use(express_1.default.json());
23
+ app.use(express_1.default.urlencoded({ extended: true }));
24
+ // Apply rate limiting to all routes (200 req/min per IP)
25
+ const globalLimiter = (0, express_rate_limit_1.default)({
26
+ windowMs: 60 * 1000,
27
+ max: 200,
28
+ standardHeaders: true,
29
+ legacyHeaders: false,
30
+ message: { error: 'Too many requests — please slow down.' },
31
+ });
32
+ app.use(globalLimiter);
33
+ // Serve static files
34
+ app.use(express_1.default.static(path_1.default.join(__dirname, 'public')));
35
+ // API routes
36
+ app.use('/api/sessions', (0, sessions_1.createSessionRoutes)(options.sessionManager));
37
+ app.use('/api/settings', (0, settings_1.createSettingsRoutes)());
38
+ // Catch-all: serve index.html for SPA-style navigation
39
+ app.get('*', (_req, res) => {
40
+ res.sendFile(path_1.default.join(__dirname, 'public', 'index.html'));
41
+ });
42
+ // Socket.IO for real-time updates
43
+ io.on('connection', (socket) => {
44
+ logger_1.logger.debug(`Web UI client connected: ${socket.id}`);
45
+ socket.on('subscribe:session', (sessionId) => {
46
+ void socket.join(`session:${sessionId}`);
47
+ logger_1.logger.debug(`Client ${socket.id} subscribed to session ${sessionId}`);
48
+ });
49
+ socket.on('unsubscribe:session', (sessionId) => {
50
+ void socket.leave(`session:${sessionId}`);
51
+ });
52
+ socket.on('disconnect', () => {
53
+ logger_1.logger.debug(`Web UI client disconnected: ${socket.id}`);
54
+ });
55
+ });
56
+ function start() {
57
+ return new Promise((resolve) => {
58
+ httpServer.listen(port, () => {
59
+ logger_1.logger.info(`AI Agent Web UI running at http://localhost:${port}`);
60
+ resolve();
61
+ });
62
+ });
63
+ }
64
+ function stop() {
65
+ return new Promise((resolve, reject) => {
66
+ httpServer.close((err) => {
67
+ if (err)
68
+ reject(err);
69
+ else
70
+ resolve();
71
+ });
72
+ });
73
+ }
74
+ return { app, io, httpServer, start, stop };
75
+ }
76
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/web/server.ts"],"names":[],"mappings":"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"}
package/package.json ADDED
@@ -0,0 +1,86 @@
1
+ {
2
+ "name": "polyai-agent",
3
+ "version": "1.0.0",
4
+ "description": "AI-powered vibe coder, live debugger, and agent session manager — supports OpenAI, Anthropic, and Google Gemini",
5
+ "main": "dist/index.js",
6
+ "types": "dist/index.d.ts",
7
+ "bin": {
8
+ "ai-agent": "dist/cli.js",
9
+ "aac": "dist/cli.js"
10
+ },
11
+ "files": [
12
+ "dist",
13
+ "README.md",
14
+ "REQUIREMENTS.md"
15
+ ],
16
+ "scripts": {
17
+ "build": "tsc && npm run copy-assets",
18
+ "copy-assets": "copyfiles -u 1 \"src/web/public/**/*\" dist/",
19
+ "build:watch": "tsc --watch",
20
+ "start": "node dist/cli.js",
21
+ "dev": "ts-node src/cli.ts",
22
+ "test": "jest --passWithNoTests",
23
+ "test:watch": "jest --watch",
24
+ "lint": "eslint src",
25
+ "lint:fix": "eslint src --fix",
26
+ "prepublishOnly": "npm run build"
27
+ },
28
+ "keywords": [
29
+ "ai",
30
+ "cli",
31
+ "agent",
32
+ "openai",
33
+ "anthropic",
34
+ "gemini",
35
+ "vibe-coder",
36
+ "code-generation",
37
+ "debugger",
38
+ "session-manager"
39
+ ],
40
+ "author": "",
41
+ "license": "MIT",
42
+ "dependencies": {
43
+ "@anthropic-ai/sdk": "^0.39.0",
44
+ "@google/generative-ai": "^0.21.0",
45
+ "axios": "^1.7.9",
46
+ "chalk": "^4.1.2",
47
+ "chokidar": "^3.6.0",
48
+ "commander": "^12.1.0",
49
+ "diff": "^7.0.0",
50
+ "express": "^4.21.2",
51
+ "express-rate-limit": "^8.3.1",
52
+ "inquirer": "^8.2.6",
53
+ "js-yaml": "^4.1.0",
54
+ "openai": "^4.77.0",
55
+ "ora": "^5.4.1",
56
+ "socket.io": "^4.8.1",
57
+ "uuid": "^11.0.5",
58
+ "winston": "^3.17.0"
59
+ },
60
+ "devDependencies": {
61
+ "@eslint/js": "^9.19.0",
62
+ "@types/diff": "^7.0.2",
63
+ "@types/express": "^4.17.21",
64
+ "@types/inquirer": "^8.2.10",
65
+ "@types/jest": "^29.5.14",
66
+ "@types/js-yaml": "^4.0.9",
67
+ "@types/node": "^22.10.7",
68
+ "@types/uuid": "^10.0.0",
69
+ "@typescript-eslint/eslint-plugin": "^8.20.0",
70
+ "@typescript-eslint/parser": "^8.20.0",
71
+ "copyfiles": "^2.4.1",
72
+ "globals": "^14.0.0",
73
+ "eslint": "^9.19.0",
74
+ "jest": "^29.7.0",
75
+ "ts-jest": "^29.2.5",
76
+ "ts-node": "^10.9.2",
77
+ "typescript": "^5.7.3"
78
+ },
79
+ "engines": {
80
+ "node": ">=18.0.0"
81
+ },
82
+ "repository": {
83
+ "type": "git",
84
+ "url": "git+https://github.com/fury-r/polyai-agent.git"
85
+ }
86
+ }