choavis-agent 1.5.2 → 1.5.4

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/.env.example CHANGED
@@ -43,3 +43,9 @@ ALLOWED_SLACK_USERS=U12345678,U87654321
43
43
  # JIRA_URL=https://your-domain.atlassian.net
44
44
  # JIRA_USERNAME=your-email@company.com
45
45
  # JIRA_API_TOKEN=ATATT3xF...
46
+
47
+ # 모니터링 API/WebSocket 서버 포트 (기본값: 3001)
48
+ # MONITOR_PORT=3001
49
+
50
+ # 모니터링 API 인증 토큰 (미설정 시 인증 없음)
51
+ # MONITOR_TOKEN=your-secret-token
@@ -0,0 +1,7 @@
1
+ export interface ApiServer {
2
+ start(port: number): Promise<void>;
3
+ stop(): Promise<void>;
4
+ readonly port: number;
5
+ }
6
+ export declare function createApiServer(): ApiServer;
7
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/api/server.ts"],"names":[],"mappings":"AAyCA,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;CACvB;AA+HD,wBAAgB,eAAe,IAAI,SAAS,CA6E3C"}
@@ -0,0 +1,221 @@
1
+ import { createServer } from 'node:http';
2
+ import { readFileSync, existsSync } from 'node:fs';
3
+ import { resolve, extname, dirname } from 'node:path';
4
+ import { fileURLToPath } from 'node:url';
5
+ import { WebSocketServer } from 'ws';
6
+ import { eventBus } from '../events/bus.js';
7
+ import { getAllSessions } from '../agent/session.js';
8
+ import { getUsageSummary } from '../agent/usage.js';
9
+ import { getActiveAgentCount, getMaxConcurrent, getActiveKill } from '../slack/middleware.js';
10
+ import { config } from '../config.js';
11
+ import { createLogger } from '../utils/logger.js';
12
+ const log = createLogger('api');
13
+ const VERSION = '1.0.0';
14
+ const __dirname = dirname(fileURLToPath(import.meta.url));
15
+ // dist-frontend/ 는 프로젝트 루트 기준 (src/../dist-frontend)
16
+ const FRONTEND_DIR = resolve(__dirname, '../../dist-frontend');
17
+ const MIME_TYPES = {
18
+ '.html': 'text/html; charset=utf-8',
19
+ '.js': 'application/javascript; charset=utf-8',
20
+ '.css': 'text/css; charset=utf-8',
21
+ '.svg': 'image/svg+xml',
22
+ '.png': 'image/png',
23
+ '.ico': 'image/x-icon',
24
+ '.woff2': 'font/woff2',
25
+ };
26
+ function serveStatic(res, pathname) {
27
+ const relative = pathname.startsWith('/') ? pathname.slice(1) : pathname;
28
+ const filePath = resolve(FRONTEND_DIR, relative);
29
+ if (!filePath.startsWith(FRONTEND_DIR) || !existsSync(filePath))
30
+ return false;
31
+ const ext = extname(filePath);
32
+ const contentType = MIME_TYPES[ext] ?? 'application/octet-stream';
33
+ res.writeHead(200, { 'Content-Type': contentType });
34
+ res.end(readFileSync(filePath));
35
+ return true;
36
+ }
37
+ function sendJson(res, status, body) {
38
+ const json = JSON.stringify(body);
39
+ res.writeHead(status, {
40
+ 'Content-Type': 'application/json',
41
+ 'Access-Control-Allow-Origin': '*',
42
+ 'Access-Control-Allow-Methods': 'GET, DELETE, OPTIONS',
43
+ 'Access-Control-Allow-Headers': 'Authorization, Content-Type',
44
+ });
45
+ res.end(json);
46
+ }
47
+ function sendError(res, status, message) {
48
+ sendJson(res, status, { error: message });
49
+ }
50
+ function checkAuth(req, res) {
51
+ const token = config.monitorToken;
52
+ if (!token)
53
+ return true;
54
+ const authHeader = req.headers['authorization'];
55
+ if (!authHeader || authHeader !== `Bearer ${token}`) {
56
+ sendError(res, 401, 'Unauthorized');
57
+ return false;
58
+ }
59
+ return true;
60
+ }
61
+ function parseUrl(req) {
62
+ const base = `http://localhost`;
63
+ const url = new URL(req.url ?? '/', base);
64
+ return { pathname: url.pathname, searchParams: url.searchParams };
65
+ }
66
+ async function handleRequest(req, res) {
67
+ if (req.method === 'OPTIONS') {
68
+ res.writeHead(204, {
69
+ 'Access-Control-Allow-Origin': '*',
70
+ 'Access-Control-Allow-Methods': 'GET, DELETE, OPTIONS',
71
+ 'Access-Control-Allow-Headers': 'Authorization, Content-Type',
72
+ });
73
+ res.end();
74
+ return;
75
+ }
76
+ if (!checkAuth(req, res))
77
+ return;
78
+ const { pathname, searchParams } = parseUrl(req);
79
+ // GET /api/health
80
+ if (req.method === 'GET' && pathname === '/api/health') {
81
+ sendJson(res, 200, { status: 'ok', version: VERSION, uptime: process.uptime() });
82
+ return;
83
+ }
84
+ // GET /api/sessions
85
+ if (req.method === 'GET' && pathname === '/api/sessions') {
86
+ sendJson(res, 200, getAllSessions());
87
+ return;
88
+ }
89
+ // GET /api/sessions/:threadTs
90
+ if (req.method === 'GET' && pathname.startsWith('/api/sessions/')) {
91
+ const threadTs = decodeURIComponent(pathname.slice('/api/sessions/'.length));
92
+ const sessions = getAllSessions();
93
+ const found = sessions.find(s => s.threadTs === threadTs);
94
+ if (!found) {
95
+ sendError(res, 404, 'Session not found');
96
+ return;
97
+ }
98
+ sendJson(res, 200, found);
99
+ return;
100
+ }
101
+ // DELETE /api/sessions/:threadTs
102
+ if (req.method === 'DELETE' && pathname.startsWith('/api/sessions/')) {
103
+ const threadTs = decodeURIComponent(pathname.slice('/api/sessions/'.length));
104
+ const kill = getActiveKill(threadTs);
105
+ if (kill) {
106
+ kill();
107
+ sendJson(res, 200, { success: true, message: 'Agent killed' });
108
+ }
109
+ else {
110
+ sendJson(res, 200, { success: false, message: 'No active agent for this session' });
111
+ }
112
+ return;
113
+ }
114
+ // GET /api/usage?days=7
115
+ if (req.method === 'GET' && pathname === '/api/usage') {
116
+ const days = parseInt(searchParams.get('days') ?? '7', 10);
117
+ try {
118
+ const summary = await getUsageSummary(config.usage.dataDir, { days });
119
+ sendJson(res, 200, summary);
120
+ }
121
+ catch (err) {
122
+ log.error('사용량 조회 실패', { error: String(err) });
123
+ sendError(res, 500, 'Failed to get usage summary');
124
+ }
125
+ return;
126
+ }
127
+ // GET /api/system
128
+ if (req.method === 'GET' && pathname === '/api/system') {
129
+ sendJson(res, 200, {
130
+ pid: process.pid,
131
+ uptime: process.uptime(),
132
+ activeAgents: getActiveAgentCount(),
133
+ maxConcurrent: getMaxConcurrent(),
134
+ });
135
+ return;
136
+ }
137
+ // Static file serving — SPA fallback (dist-frontend/)
138
+ if (req.method === 'GET' && existsSync(FRONTEND_DIR)) {
139
+ if (serveStatic(res, pathname))
140
+ return;
141
+ // SPA fallback: 모든 미지 경로 → index.html
142
+ const indexPath = resolve(FRONTEND_DIR, 'index.html');
143
+ if (existsSync(indexPath)) {
144
+ res.writeHead(200, { 'Content-Type': 'text/html; charset=utf-8' });
145
+ res.end(readFileSync(indexPath));
146
+ return;
147
+ }
148
+ }
149
+ sendError(res, 404, 'Not found');
150
+ }
151
+ export function createApiServer() {
152
+ let httpServer = null;
153
+ let wss = null;
154
+ let _port = 0;
155
+ function broadcast(data) {
156
+ if (!wss)
157
+ return;
158
+ const msg = JSON.stringify({ type: 'update', data });
159
+ for (const client of wss.clients) {
160
+ if (client.readyState === 1 /* OPEN */) {
161
+ client.send(msg);
162
+ }
163
+ }
164
+ }
165
+ return {
166
+ get port() {
167
+ return _port;
168
+ },
169
+ async start(port) {
170
+ return new Promise((resolve, reject) => {
171
+ httpServer = createServer((req, res) => {
172
+ handleRequest(req, res).catch((err) => {
173
+ log.error('요청 처리 오류', { error: String(err) });
174
+ if (!res.headersSent)
175
+ sendError(res, 500, 'Internal server error');
176
+ });
177
+ });
178
+ // WebSocket 서버 — 같은 HTTP 서버에 /ws 경로로 업그레이드
179
+ wss = new WebSocketServer({ server: httpServer, path: '/ws' });
180
+ wss.on('connection', (ws) => {
181
+ log.info('WebSocket 클라이언트 연결');
182
+ // 연결 시 현재 세션 스냅샷 전송
183
+ ws.send(JSON.stringify({ type: 'snapshot', data: getAllSessions() }));
184
+ ws.on('close', () => {
185
+ log.info('WebSocket 클라이언트 연결 종료');
186
+ });
187
+ });
188
+ // eventBus 이벤트를 WebSocket으로 broadcast
189
+ eventBus.on('agent', broadcast);
190
+ httpServer.on('error', (err) => {
191
+ log.error('API 서버 오류', { error: String(err) });
192
+ reject(err);
193
+ });
194
+ httpServer.listen(port, () => {
195
+ _port = port;
196
+ log.info('API + WebSocket 서버 시작', { port });
197
+ resolve();
198
+ });
199
+ });
200
+ },
201
+ async stop() {
202
+ eventBus.off('agent', broadcast);
203
+ return new Promise((resolve) => {
204
+ const done = () => {
205
+ httpServer = null;
206
+ wss = null;
207
+ resolve();
208
+ };
209
+ if (wss) {
210
+ wss.close(() => {
211
+ httpServer?.close(() => done()) ?? done();
212
+ });
213
+ }
214
+ else {
215
+ httpServer?.close(() => done()) ?? done();
216
+ }
217
+ });
218
+ },
219
+ };
220
+ }
221
+ //# sourceMappingURL=server.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/api/server.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -24,6 +24,8 @@ export declare const config: {
24
24
  memory: {
25
25
  dataDir: string;
26
26
  };
27
+ monitorPort: number;
28
+ monitorToken: string | undefined;
27
29
  };
28
30
  type MutableKey = 'model' | 'permissionMode';
29
31
  export declare function setRuntimeConfig(key: MutableKey, value: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BlB,CAAC;AAGF,KAAK,UAAU,GAAG,OAAO,GAAG,gBAAgB,CAAC;AAE7C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAErE"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAyBA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiClB,CAAC;AAGF,KAAK,UAAU,GAAG,OAAO,GAAG,gBAAgB,CAAC;AAE7C,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAErE"}
package/dist/config.js CHANGED
@@ -51,6 +51,8 @@ export const config = {
51
51
  memory: {
52
52
  dataDir: process.env.MEMORY_DATA_DIR || resolve(__dirname, '../.memory'),
53
53
  },
54
+ monitorPort: parseInt(process.env.MONITOR_PORT ?? '3001', 10),
55
+ monitorToken: process.env.MONITOR_TOKEN,
54
56
  };
55
57
  export function setRuntimeConfig(key, value) {
56
58
  config.agent[key] = value;
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { EventEmitter } from 'node:events';
2
+ export type AgentEventType = 'agent:start' | 'agent:stream' | 'agent:complete' | 'agent:error' | 'agent:killed' | 'session:update';
3
+ export interface AgentEvent {
4
+ type: AgentEventType;
5
+ threadTs: string;
6
+ timestamp: number;
7
+ data: Record<string, unknown>;
8
+ }
9
+ export declare const eventBus: EventEmitter;
10
+ export declare function emitAgentEvent(type: AgentEventType, threadTs: string, data: Record<string, unknown>): void;
11
+ //# sourceMappingURL=bus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bus.d.ts","sourceRoot":"","sources":["../../src/events/bus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C,MAAM,MAAM,cAAc,GACtB,aAAa,GACb,cAAc,GACd,gBAAgB,GAChB,aAAa,GACb,cAAc,GACd,gBAAgB,CAAC;AAErB,MAAM,WAAW,UAAU;IACzB,IAAI,EAAE,cAAc,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AASD,eAAO,MAAM,QAAQ,EAAE,YAAkC,CAAC;AAE1D,wBAAgB,cAAc,CAC5B,IAAI,EAAE,cAAc,EACpB,QAAQ,EAAE,MAAM,EAChB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC5B,IAAI,CASN"}
@@ -0,0 +1,19 @@
1
+ import { EventEmitter } from 'node:events';
2
+ class AgentEventBus extends EventEmitter {
3
+ constructor() {
4
+ super();
5
+ this.setMaxListeners(50);
6
+ }
7
+ }
8
+ export const eventBus = new AgentEventBus();
9
+ export function emitAgentEvent(type, threadTs, data) {
10
+ const event = {
11
+ type,
12
+ threadTs,
13
+ timestamp: Date.now(),
14
+ data,
15
+ };
16
+ eventBus.emit('agent', event);
17
+ eventBus.emit(type, event);
18
+ }
19
+ //# sourceMappingURL=bus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bus.js","sourceRoot":"","sources":["../../src/events/bus.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAiB3C,MAAM,aAAc,SAAQ,YAAY;IACtC;QACE,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;IAC3B,CAAC;CACF;AAED,MAAM,CAAC,MAAM,QAAQ,GAAiB,IAAI,aAAa,EAAE,CAAC;AAE1D,MAAM,UAAU,cAAc,CAC5B,IAAoB,EACpB,QAAgB,EAChB,IAA6B;IAE7B,MAAM,KAAK,GAAe;QACxB,IAAI;QACJ,QAAQ;QACR,SAAS,EAAE,IAAI,CAAC,GAAG,EAAE;QACrB,IAAI;KACL,CAAC;IACF,QAAQ,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC9B,QAAQ,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC7B,CAAC"}
package/dist/index.js CHANGED
@@ -3,7 +3,9 @@ import { createApp } from './slack/app.js';
3
3
  import { registerHandlers } from './slack/handlers.js';
4
4
  import { loadSessions, saveSessionsSync } from './agent/session.js';
5
5
  import { injectAtlassianEnv } from './credentials/atlassian.js';
6
+ import { createApiServer } from './api/server.js';
6
7
  import { createLogger } from './utils/logger.js';
8
+ import { config } from './config.js';
7
9
  const log = createLogger('main');
8
10
  async function main() {
9
11
  // 세션 복원
@@ -16,6 +18,10 @@ async function main() {
16
18
  // Slack 앱 생성 및 핸들러 등록
17
19
  const app = createApp();
18
20
  registerHandlers(app);
21
+ // API + WebSocket 서버 시작
22
+ const apiServer = createApiServer();
23
+ await apiServer.start(config.monitorPort);
24
+ log.info('모니터링 API 서버 시작', { port: config.monitorPort });
19
25
  // 앱 시작
20
26
  await app.start();
21
27
  log.info('Choavis Agent가 실행 중입니다 (Socket Mode)');
@@ -23,11 +29,17 @@ async function main() {
23
29
  const shutdown = async () => {
24
30
  log.info('종료 시작');
25
31
  try {
26
- saveSessionsSync(); // 동기 저장 — process.exit() 전에 완료 보장
32
+ saveSessionsSync();
27
33
  }
28
34
  catch (e) {
29
35
  log.error('세션 저장 실패', { error: String(e) });
30
36
  }
37
+ try {
38
+ await apiServer.stop();
39
+ }
40
+ catch {
41
+ // 무시
42
+ }
31
43
  try {
32
44
  await app.stop();
33
45
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEjC,KAAK,UAAU,IAAI;IACjB,QAAQ;IACR,YAAY,EAAE,CAAC;IAEf,mDAAmD;IACnD,MAAM,YAAY,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAChD,IAAI,YAAY,EAAE,CAAC;QACjB,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChC,CAAC;IAED,sBAAsB;IACtB,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAEtB,OAAO;IACP,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;IAClB,GAAG,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IAEjD,oBAAoB;IACpB,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClB,IAAI,CAAC;YACH,gBAAgB,EAAE,CAAC,CAAC,kCAAkC;QACxD,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,CAAC;AACvB,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAErC,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;AAEjC,KAAK,UAAU,IAAI;IACjB,QAAQ;IACR,YAAY,EAAE,CAAC;IAEf,mDAAmD;IACnD,MAAM,YAAY,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAChD,IAAI,YAAY,EAAE,CAAC;QACjB,GAAG,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;IAChC,CAAC;IAED,sBAAsB;IACtB,MAAM,GAAG,GAAG,SAAS,EAAE,CAAC;IACxB,gBAAgB,CAAC,GAAG,CAAC,CAAC;IAEtB,wBAAwB;IACxB,MAAM,SAAS,GAAG,eAAe,EAAE,CAAC;IACpC,MAAM,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAC1C,GAAG,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IAEzD,OAAO;IACP,MAAM,GAAG,CAAC,KAAK,EAAE,CAAC;IAClB,GAAG,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;IAEjD,oBAAoB;IACpB,MAAM,QAAQ,GAAG,KAAK,IAAI,EAAE;QAC1B,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClB,IAAI,CAAC;YACH,gBAAgB,EAAE,CAAC;QACrB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,GAAG,CAAC,KAAK,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QAC9C,CAAC;QACD,IAAI,CAAC;YACH,MAAM,SAAS,CAAC,IAAI,EAAE,CAAC;QACzB,CAAC;QAAC,MAAM,CAAC;YACP,KAAK;QACP,CAAC;QACD,IAAI,CAAC;YACH,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;QACnB,CAAC;QAAC,MAAM,CAAC;YACP,eAAe;QACjB,CAAC;QACD,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC,CAAC;IAEF,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;IAC5C,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,GAAG,EAAE,CAAC,KAAK,QAAQ,EAAE,CAAC,CAAC;AAC/C,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;IACnB,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC3C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/slack/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AAiClD,OAAO,KAAK,EAAE,WAAW,EAA+B,MAAM,YAAY,CAAC;AA8B3E,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAEf;AA2bD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAkP/C"}
1
+ {"version":3,"file":"handlers.d.ts","sourceRoot":"","sources":["../../src/slack/handlers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,GAAG,EAAE,MAAM,aAAa,CAAC;AAkClD,OAAO,KAAK,EAAE,WAAW,EAA+B,MAAM,YAAY,CAAC;AA8B3E,wBAAsB,oBAAoB,CACxC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,WAAW,EACnB,MAAM,CAAC,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAEf;AAocD,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,GAAG,GAAG,IAAI,CAkP/C"}
@@ -2,6 +2,7 @@ import { Assistant } from '@slack/bolt';
2
2
  import { runAgent, runSession } from '../agent/runner.js';
3
3
  import { getSession, setSession, clearSession, getWorkDir, setWorkDir, isBotStarted, markBotStarted } from '../agent/session.js';
4
4
  import { enqueue, getQueueSize } from '../agent/queue.js';
5
+ import { emitAgentEvent } from '../events/bus.js';
5
6
  import { formatResponse, splitMessage } from './formatter.js';
6
7
  import { resolveSessionFromLink } from './link-resolver.js';
7
8
  import { config } from '../config.js';
@@ -83,6 +84,8 @@ async function handleIncoming(opts) {
83
84
  await enqueue(threadTs, async () => {
84
85
  incrementActiveCount();
85
86
  const startTime = Date.now();
87
+ let hadError = false;
88
+ emitAgentEvent('agent:start', threadTs, { userId: userId || 'unknown' });
86
89
  let responseTs;
87
90
  await setTypingStatus(client, channel, threadTs, '처리 중...');
88
91
  // 3. AbortController로 타임아웃 관리
@@ -271,6 +274,8 @@ async function handleIncoming(opts) {
271
274
  }
272
275
  catch (error) {
273
276
  log.error('처리 오류', { error: String(error), threadTs });
277
+ hadError = true;
278
+ emitAgentEvent('agent:error', threadTs, { error: String(error) });
274
279
  const errMsg = `:x: 오류가 발생했습니다: ${error instanceof Error ? error.message : '알 수 없는 오류'}`;
275
280
  if (responseTs) {
276
281
  await bestEffort(() => client.chat.update({ channel, ts: responseTs, text: errMsg }), 'chat.update(error)');
@@ -280,6 +285,12 @@ async function handleIncoming(opts) {
280
285
  }
281
286
  }
282
287
  finally {
288
+ if (abortController.signal.aborted) {
289
+ emitAgentEvent('agent:killed', threadTs, {});
290
+ }
291
+ else if (!hadError) {
292
+ emitAgentEvent('agent:complete', threadTs, {});
293
+ }
283
294
  deleteActiveKill(threadTs);
284
295
  clearTimeout(timeoutHandle);
285
296
  await setTypingStatus(client, channel, threadTs, '');
@@ -1 +1 @@
1
- {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/slack/handlers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"handlers.js","sourceRoot":"","sources":["../../src/slack/handlers.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,8 +1,9 @@
1
1
  {
2
2
  "name": "choavis-agent",
3
- "version": "1.5.2",
3
+ "version": "1.5.4",
4
4
  "description": "Slack ↔ Claude Code bridge agent",
5
5
  "type": "module",
6
+ "main": "dist-electron/main.js",
6
7
  "bin": {
7
8
  "choavis-agent": "dist/cli.js"
8
9
  },
@@ -19,21 +20,59 @@
19
20
  ],
20
21
  "dependencies": {
21
22
  "@slack/bolt": "^4.6.0",
22
- "dotenv": "^16.4.7"
23
+ "dotenv": "^16.4.7",
24
+ "electron-updater": "^6.3.9",
25
+ "ws": "^8.19.0"
23
26
  },
24
27
  "devDependencies": {
25
28
  "@types/node": "^22.13.4",
29
+ "@types/ws": "^8.18.1",
30
+ "concurrently": "^9.0.0",
31
+ "electron": "^34.0.0",
32
+ "electron-builder": "^25.1.8",
26
33
  "tsx": "^4.19.2",
27
34
  "typescript": "^5.7.3",
28
35
  "vitest": "^4.0.18"
29
36
  },
37
+ "build": {
38
+ "appId": "com.choavis.agent",
39
+ "productName": "Choavis Agent",
40
+ "files": [
41
+ "dist-electron/**/*",
42
+ "dist-frontend/**/*",
43
+ "package.json"
44
+ ],
45
+ "extraResources": [
46
+ {
47
+ "from": "dist",
48
+ "to": "app/dist"
49
+ }
50
+ ],
51
+ "publish": {
52
+ "provider": "github",
53
+ "owner": "musinsa",
54
+ "repo": "choavis-agent"
55
+ },
56
+ "mac": {
57
+ "target": [
58
+ "dmg"
59
+ ],
60
+ "category": "public.app-category.developer-tools"
61
+ }
62
+ },
30
63
  "engines": {
31
64
  "node": ">=20"
32
65
  },
33
66
  "scripts": {
34
- "dev": "tsx src/index.ts",
35
- "build": "tsc",
36
- "start": "node dist/index.js",
67
+ "dev": "concurrently \"pnpm run dev:agent\" \"pnpm run dev:frontend\"",
68
+ "dev:agent": "tsx src/index.ts",
69
+ "dev:frontend": "cd frontend && vite",
70
+ "build": "pnpm run build:agent && pnpm run build:frontend && pnpm run build:electron",
71
+ "build:agent": "tsc -p tsconfig.json",
72
+ "build:frontend": "cd frontend && vite build",
73
+ "build:electron": "tsc -p electron/tsconfig.json && node -e \"require('fs').writeFileSync('dist-electron/package.json', JSON.stringify({type:'commonjs'}))\"",
74
+ "start": "electron .",
75
+ "dist:mac": "pnpm run build && electron-builder --mac",
37
76
  "test": "vitest run",
38
77
  "test:watch": "vitest"
39
78
  }