@su-record/vibe 2.6.52 → 2.6.53

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 (81) hide show
  1. package/.env.example +37 -54
  2. package/dist/cli/auth.d.ts +2 -6
  3. package/dist/cli/auth.d.ts.map +1 -1
  4. package/dist/cli/auth.js +9 -33
  5. package/dist/cli/auth.js.map +1 -1
  6. package/dist/cli/commands/info.js +1 -1
  7. package/dist/cli/commands/slack.d.ts +1 -2
  8. package/dist/cli/commands/slack.d.ts.map +1 -1
  9. package/dist/cli/commands/slack.js +17 -27
  10. package/dist/cli/commands/slack.js.map +1 -1
  11. package/dist/cli/commands/telegram.d.ts +2 -0
  12. package/dist/cli/commands/telegram.d.ts.map +1 -1
  13. package/dist/cli/commands/telegram.js +24 -48
  14. package/dist/cli/commands/telegram.js.map +1 -1
  15. package/dist/cli/index.d.ts.map +1 -1
  16. package/dist/cli/index.js +47 -41
  17. package/dist/cli/index.js.map +1 -1
  18. package/dist/cli/llm/config.d.ts +4 -3
  19. package/dist/cli/llm/config.d.ts.map +1 -1
  20. package/dist/cli/llm/config.js +33 -37
  21. package/dist/cli/llm/config.js.map +1 -1
  22. package/dist/cli/llm/gemini-commands.d.ts.map +1 -1
  23. package/dist/cli/llm/gemini-commands.js +43 -24
  24. package/dist/cli/llm/gemini-commands.js.map +1 -1
  25. package/dist/cli/llm/gpt-commands.d.ts +1 -0
  26. package/dist/cli/llm/gpt-commands.d.ts.map +1 -1
  27. package/dist/cli/llm/gpt-commands.js +50 -37
  28. package/dist/cli/llm/gpt-commands.js.map +1 -1
  29. package/dist/cli/postinstall/main.d.ts.map +1 -1
  30. package/dist/cli/postinstall/main.js +9 -1
  31. package/dist/cli/postinstall/main.js.map +1 -1
  32. package/dist/cli/types.d.ts +59 -2
  33. package/dist/cli/types.d.ts.map +1 -1
  34. package/dist/infra/lib/autonomy/AutonomyConfig.d.ts +3 -3
  35. package/dist/infra/lib/config/GlobalConfigManager.d.ts +29 -0
  36. package/dist/infra/lib/config/GlobalConfigManager.d.ts.map +1 -0
  37. package/dist/infra/lib/config/GlobalConfigManager.js +370 -0
  38. package/dist/infra/lib/config/GlobalConfigManager.js.map +1 -0
  39. package/dist/infra/lib/embedding/EmbeddingProvider.d.ts.map +1 -1
  40. package/dist/infra/lib/embedding/EmbeddingProvider.js +3 -2
  41. package/dist/infra/lib/embedding/EmbeddingProvider.js.map +1 -1
  42. package/dist/infra/lib/gemini/auth.d.ts +1 -1
  43. package/dist/infra/lib/gemini/auth.d.ts.map +1 -1
  44. package/dist/infra/lib/gemini/auth.js +21 -19
  45. package/dist/infra/lib/gemini/auth.js.map +1 -1
  46. package/dist/infra/lib/gemini/chat.d.ts.map +1 -1
  47. package/dist/infra/lib/gemini/chat.js +5 -4
  48. package/dist/infra/lib/gemini/chat.js.map +1 -1
  49. package/dist/infra/lib/gpt/auth.d.ts.map +1 -1
  50. package/dist/infra/lib/gpt/auth.js +6 -18
  51. package/dist/infra/lib/gpt/auth.js.map +1 -1
  52. package/dist/infra/lib/gpt/chat.d.ts.map +1 -1
  53. package/dist/infra/lib/gpt/chat.js +11 -4
  54. package/dist/infra/lib/gpt/chat.js.map +1 -1
  55. package/dist/infra/lib/gpt/oauth.d.ts.map +1 -1
  56. package/dist/infra/lib/gpt/oauth.js +3 -2
  57. package/dist/infra/lib/gpt/oauth.js.map +1 -1
  58. package/dist/infra/lib/llm/auth/ConfigManager.d.ts +4 -1
  59. package/dist/infra/lib/llm/auth/ConfigManager.d.ts.map +1 -1
  60. package/dist/infra/lib/llm/auth/ConfigManager.js +6 -6
  61. package/dist/infra/lib/llm/auth/ConfigManager.js.map +1 -1
  62. package/dist/infra/orchestrator/AgentExecutor.d.ts.map +1 -1
  63. package/dist/infra/orchestrator/AgentExecutor.js +2 -1
  64. package/dist/infra/orchestrator/AgentExecutor.js.map +1 -1
  65. package/dist/infra/orchestrator/AgentManager.d.ts.map +1 -1
  66. package/dist/infra/orchestrator/AgentManager.js +2 -1
  67. package/dist/infra/orchestrator/AgentManager.js.map +1 -1
  68. package/dist/infra/orchestrator/BackgroundManager.d.ts.map +1 -1
  69. package/dist/infra/orchestrator/BackgroundManager.js +2 -1
  70. package/dist/infra/orchestrator/BackgroundManager.js.map +1 -1
  71. package/dist/infra/orchestrator/SwarmOrchestrator.d.ts.map +1 -1
  72. package/dist/infra/orchestrator/SwarmOrchestrator.js +2 -1
  73. package/dist/infra/orchestrator/SwarmOrchestrator.js.map +1 -1
  74. package/dist/infra/orchestrator/parallelResearch.d.ts.map +1 -1
  75. package/dist/infra/orchestrator/parallelResearch.js +2 -1
  76. package/dist/infra/orchestrator/parallelResearch.js.map +1 -1
  77. package/hooks/scripts/llm-orchestrate.js +3 -2
  78. package/hooks/scripts/stop-notify.js +5 -3
  79. package/hooks/scripts/utils.js +17 -0
  80. package/package.json +2 -2
  81. package/.env +0 -52
package/.env.example CHANGED
@@ -1,54 +1,37 @@
1
- # ─── Telegram ────────────────────────────────────────────────────────
2
- TELEGRAM_BOT_TOKEN=
3
- TELEGRAM_ALLOWED_CHAT_IDS=
4
-
5
- # ─── Discord ─────────────────────────────────────────────────────────
6
- DISCORD_BOT_TOKEN=
7
- DISCORD_ALLOWED_GUILD_IDS=
8
- DISCORD_ALLOWED_CHANNEL_IDS=
9
-
10
- # ─── Slack ───────────────────────────────────────────────────────────
11
- SLACK_BOT_TOKEN=
12
- SLACK_APP_TOKEN=
13
- SLACK_ALLOWED_CHANNELS=
14
-
15
- # ─── Gemini (API key + Search grounding) ────────────────────────────
16
- GEMINI_API_KEY=
17
-
18
- # ─── OpenAI ──────────────────────────────────────────────────────────
19
- OPENAI_API_KEY=
20
-
21
- # ─── GPT OAuth (OpenAI Codex CLI PKCE) ──────────────────────────────
22
- # Run: vibe gpt auth
23
- GPT_OAUTH_REFRESH_TOKEN=
24
-
25
- # ─── Gemini OAuth (Google Antigravity PKCE) ─────────────────────────
26
- # Run: vibe gemini auth
27
- GEMINI_OAUTH_REFRESH_TOKEN=
28
-
29
- # ─── Model Overrides (optional - uses hardcoded defaults if not set) ─
30
- # Claude (역할별 — Claude Code 네이티브)
31
- CLAUDE_ARCHITECTURE_MODEL=claude-opus-4-6 # 아키텍처, 복잡한 추론
32
- CLAUDE_RESEARCH_MODEL=claude-haiku-4-5 # 리서치, 탐색 (빠름)
33
- CLAUDE_REVIEW_MODEL=claude-haiku-4-5 # 리뷰 (빠름)
34
- CLAUDE_BACKGROUND_MODEL=claude-sonnet-4-5 # 구현, 백그라운드 작업
35
-
36
- # GPT (Chat/Reasoning — OAuth: gpt-5.3-codex, OAuth Pro: codex-spark)
37
- GPT_MODEL=gpt-5.2
38
- # Plus Plan Use: gpt-5.3-codex
39
- # Pro Plan Use: gpt-5.3-codex-spark
40
-
41
- # Gemini
42
- GEMINI_MODEL=gemini-3-pro-preview
43
- GEMINI_FLASH_MODEL=gemini-3-flash-preview
44
- GEMINI_SEARCH_MODEL=gemini-3-flash-preview
45
-
46
- GEMINI_OAUTH_MODEL=gemini-3-pro-high
47
- GEMINI_OAUTH_FLASH_MODEL=gemini-3-flash
48
-
49
- # Embedding (API Key 전용 — OAuth 미지원)
50
- EMBEDDING_MODEL=text-embedding-3-large
51
- GEMINI_EMBEDDING_MODEL=text-embedding-004
52
-
53
- # ─── Workspace ───────────────────────────────────────────────────────
54
- WORKSPACE_DIR=
1
+ # ─── VIBE Configuration ─────────────────────────────────────────────
2
+ #
3
+ # All credentials, channels, and model overrides are stored in:
4
+ # ~/.vibe/config.json
5
+ #
6
+ # Use CLI commands to configure:
7
+ # vibe setup Interactive setup wizard
8
+ # vibe gpt auth GPT OAuth (Plus/Pro)
9
+ # vibe gpt key <key> GPT API key
10
+ # vibe gemini auth Gemini OAuth
11
+ # vibe gemini key <key> Gemini API key
12
+ # vibe claude key <key> Claude API key
13
+ # vibe telegram setup <token> Telegram bot
14
+ # vibe slack setup <bot> <app> Slack bot
15
+ # vibe status Check all status
16
+ #
17
+ # Config structure (~/.vibe/config.json):
18
+ # {
19
+ # "version": "1",
20
+ # "credentials": {
21
+ # "gpt": { "apiKey": "sk-..." },
22
+ # "gemini": { "apiKey": "AIza..." }
23
+ # },
24
+ # "channels": {
25
+ # "telegram": { "botToken": "123:ABC", "allowedChatIds": ["-100..."] },
26
+ # "slack": { "botToken": "xoxb-...", "appToken": "xapp-..." }
27
+ # },
28
+ # "models": {
29
+ # "gpt": "gpt-5.2",
30
+ # "gemini": "gemini-3-pro-preview",
31
+ # "claudeBackground": "claude-sonnet-4-5"
32
+ # }
33
+ # }
34
+ #
35
+ # Environment variables are still supported as fallback:
36
+ # OPENAI_API_KEY, GEMINI_API_KEY, GPT_MODEL, etc.
37
+ # ────────────────────────────────────────────────────────────────────
@@ -1,13 +1,9 @@
1
1
  /**
2
- * LLM 인증 관련 함수 (환경변수 기반)
2
+ * LLM 인증 관련 함수 (config.json 기반)
3
3
  */
4
4
  import { LLMAuthStatus, LLMStatusMap, ClaudeCodeStatus } from './types.js';
5
5
  /**
6
- * ~/.vibe/.env 환경변수 저장 (upsert)
7
- */
8
- export declare function saveToGlobalEnv(key: string, value: string): void;
9
- /**
10
- * LLM 인증 상태 확인 (환경변수 전용)
6
+ * LLM 인증 상태 확인 (config.json 우선, process.env fallback)
11
7
  */
12
8
  export declare function getLLMAuthStatus(): LLMStatusMap;
13
9
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/cli/auth.ts"],"names":[],"mappings":"AAAA;;GAEG;AAMH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE3E;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAsBhE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,YAAY,CAoB/C;AAID;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,UAAQ,GAAG,gBAAgB,CAsCvE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAWvE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,MAAM,CAOhE;AAED,wBAAgB,eAAe,CAAC,YAAY,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAYvE"}
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/cli/auth.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAG3E;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,YAAY,CAqB/C;AAID;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,UAAQ,GAAG,gBAAgB,CAsCvE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAWvE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,GAAG,MAAM,CAOhE;AAED,wBAAgB,eAAe,CAAC,YAAY,CAAC,EAAE,gBAAgB,GAAG,MAAM,CAYvE"}
package/dist/cli/auth.js CHANGED
@@ -1,50 +1,26 @@
1
1
  /**
2
- * LLM 인증 관련 함수 (환경변수 기반)
2
+ * LLM 인증 관련 함수 (config.json 기반)
3
3
  */
4
- import os from 'os';
5
- import path from 'path';
6
- import fs from 'fs';
7
4
  import { execSync } from 'child_process';
5
+ import { readGlobalConfig } from '../infra/lib/config/GlobalConfigManager.js';
8
6
  /**
9
- * ~/.vibe/.env 환경변수 저장 (upsert)
10
- */
11
- export function saveToGlobalEnv(key, value) {
12
- const envDir = path.join(os.homedir(), '.vibe');
13
- const envPath = path.join(envDir, '.env');
14
- if (!fs.existsSync(envDir)) {
15
- fs.mkdirSync(envDir, { recursive: true });
16
- }
17
- let content = '';
18
- if (fs.existsSync(envPath)) {
19
- content = fs.readFileSync(envPath, 'utf-8');
20
- }
21
- const regex = new RegExp(`^${key}=.*$`, 'm');
22
- if (regex.test(content)) {
23
- content = content.replace(regex, `${key}=${value}`);
24
- }
25
- else {
26
- content = content.trimEnd() + (content ? '\n' : '') + `${key}=${value}\n`;
27
- }
28
- fs.writeFileSync(envPath, content, { mode: 0o600 });
29
- process.env[key] = value;
30
- }
31
- /**
32
- * LLM 인증 상태 확인 (환경변수 전용)
7
+ * LLM 인증 상태 확인 (config.json 우선, process.env fallback)
33
8
  */
34
9
  export function getLLMAuthStatus() {
35
10
  const status = { claude: [], gpt: [], gemini: [] };
11
+ const config = readGlobalConfig();
36
12
  // GPT
37
- if (process.env.GPT_OAUTH_REFRESH_TOKEN) {
13
+ if (config.credentials?.gpt?.oauthRefreshToken || process.env.GPT_OAUTH_REFRESH_TOKEN) {
38
14
  status.gpt.push({ type: 'oauth', valid: true });
39
15
  }
40
- if (process.env.OPENAI_API_KEY) {
16
+ if (config.credentials?.gpt?.apiKey || process.env.OPENAI_API_KEY) {
41
17
  status.gpt.push({ type: 'apikey', valid: true });
42
18
  }
43
- // Gemini (환경변수 전용)
44
- if (process.env.ANTIGRAVITY_REFRESH_TOKEN || process.env.GEMINI_OAUTH_REFRESH_TOKEN) {
19
+ // Gemini
20
+ if (config.credentials?.gemini?.oauthRefreshToken || process.env.ANTIGRAVITY_REFRESH_TOKEN || process.env.GEMINI_OAUTH_REFRESH_TOKEN) {
45
21
  status.gemini.push({ type: 'oauth', valid: true });
46
22
  }
47
- if (process.env.GEMINI_API_KEY) {
23
+ if (config.credentials?.gemini?.apiKey || process.env.GEMINI_API_KEY) {
48
24
  status.gemini.push({ type: 'apikey', valid: true });
49
25
  }
50
26
  return status;
@@ -1 +1 @@
1
- {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/cli/auth.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/cli/auth.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,7 @@ LLM:
25
25
  vibe claude <cmd> Claude (key, status, logout)
26
26
  vibe gpt <cmd> GPT (auth, key, status, logout)
27
27
  vibe gemini <cmd> Gemini (auth, key, status, logout)
28
- vibe env import [path] .env → ~/.vibe/.env 복사
28
+ vibe env import [path] .env → ~/.vibe/config.json 가져오기
29
29
 
30
30
  Channels:
31
31
  vibe telegram <cmd> Telegram (setup, chat, status)
@@ -2,8 +2,7 @@
2
2
  * CLI Commands: vibe slack <subcommand>
3
3
  * Phase 4: External Interface
4
4
  *
5
- * Stores Slack credentials in ~/.vibe/slack.json
6
- * Similar pattern to vibe telegram setup.
5
+ * 설정은 ~/.vibe/config.json channels.slack에 통합 저장
7
6
  */
8
7
  export declare function slackSetup(botToken?: string, appToken?: string): void;
9
8
  export declare function slackChannel(channelId?: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/slack.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AA+BH,wBAAgB,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAoBrE;AAED,wBAAgB,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAqBrD;AAED,wBAAgB,WAAW,IAAI,IAAI,CAYlC;AAED,wBAAgB,SAAS,IAAI,IAAI,CAYhC"}
1
+ {"version":3,"file":"slack.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/slack.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAgBH,wBAAgB,UAAU,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAoBrE;AAED,wBAAgB,YAAY,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAuBrD;AAED,wBAAgB,WAAW,IAAI,IAAI,CAelC;AAED,wBAAgB,SAAS,IAAI,IAAI,CAYhC"}
@@ -2,29 +2,14 @@
2
2
  * CLI Commands: vibe slack <subcommand>
3
3
  * Phase 4: External Interface
4
4
  *
5
- * Stores Slack credentials in ~/.vibe/slack.json
6
- * Similar pattern to vibe telegram setup.
5
+ * 설정은 ~/.vibe/config.json channels.slack에 통합 저장
7
6
  */
8
- import * as fs from 'node:fs';
9
- import * as path from 'node:path';
10
- import * as os from 'node:os';
11
- const VIBE_DIR = path.join(os.homedir(), '.vibe');
12
- const SLACK_CONFIG_FILE = path.join(VIBE_DIR, 'slack.json');
7
+ import { readGlobalConfig, patchGlobalConfig, } from '../../infra/lib/config/GlobalConfigManager.js';
13
8
  function loadConfig() {
14
- try {
15
- if (!fs.existsSync(SLACK_CONFIG_FILE))
16
- return null;
17
- return JSON.parse(fs.readFileSync(SLACK_CONFIG_FILE, 'utf-8'));
18
- }
19
- catch {
20
- return null;
21
- }
9
+ return readGlobalConfig().channels?.slack ?? null;
22
10
  }
23
11
  function saveConfig(config) {
24
- if (!fs.existsSync(VIBE_DIR)) {
25
- fs.mkdirSync(VIBE_DIR, { recursive: true, mode: 0o700 });
26
- }
27
- fs.writeFileSync(SLACK_CONFIG_FILE, JSON.stringify(config, null, 2), { mode: 0o600 });
12
+ patchGlobalConfig({ channels: { slack: config } });
28
13
  }
29
14
  export function slackSetup(botToken, appToken) {
30
15
  if (!botToken || !appToken) {
@@ -41,7 +26,7 @@ export function slackSetup(botToken, appToken) {
41
26
  };
42
27
  saveConfig(config);
43
28
  console.log('Slack tokens saved');
44
- if (config.allowedChannelIds.length === 0) {
29
+ if ((config.allowedChannelIds ?? []).length === 0) {
45
30
  console.log('No allowed channels set. Use: vibe slack channel <channel-id>');
46
31
  }
47
32
  }
@@ -56,11 +41,13 @@ export function slackChannel(channelId) {
56
41
  console.log('Slack not configured. Run: vibe slack setup <bot-token> <app-token>');
57
42
  return;
58
43
  }
59
- if (config.allowedChannelIds.includes(channelId)) {
44
+ const channelIds = config.allowedChannelIds ?? [];
45
+ if (channelIds.includes(channelId)) {
60
46
  console.log(`Channel ID "${channelId}" is already in the allow list`);
61
47
  return;
62
48
  }
63
- config.allowedChannelIds.push(channelId);
49
+ channelIds.push(channelId);
50
+ config.allowedChannelIds = channelIds;
64
51
  saveConfig(config);
65
52
  console.log(`Channel ID "${channelId}" added to allow list`);
66
53
  }
@@ -70,11 +57,14 @@ export function slackStatus() {
70
57
  console.log('Slack: not configured');
71
58
  return;
72
59
  }
73
- const botPreview = config.botToken.slice(0, 8) + '...' + config.botToken.slice(-4);
74
- const appPreview = config.appToken.slice(0, 8) + '...' + config.appToken.slice(-4);
60
+ const bot = config.botToken ?? '';
61
+ const app = config.appToken ?? '';
62
+ const botPreview = bot.slice(0, 8) + '...' + bot.slice(-4);
63
+ const appPreview = app.slice(0, 8) + '...' + app.slice(-4);
75
64
  console.log(`Slack Bot Token: configured (${botPreview})`);
76
65
  console.log(`Slack App Token: configured (${appPreview})`);
77
- console.log(`Allowed channels: ${config.allowedChannelIds.length > 0 ? config.allowedChannelIds.join(', ') : 'none'}`);
66
+ const channelIds = config.allowedChannelIds ?? [];
67
+ console.log(`Allowed channels: ${channelIds.length > 0 ? channelIds.join(', ') : 'none'}`);
78
68
  }
79
69
  export function slackHelp() {
80
70
  console.log(`
@@ -85,8 +75,8 @@ Vibe Slack Commands:
85
75
  vibe slack help Show this help
86
76
 
87
77
  Get tokens from https://api.slack.com/apps
88
- Bot Token: OAuth & Permissions Bot User OAuth Token (xoxb-)
89
- App Token: Basic Information App-Level Tokens (xapp-)
78
+ Bot Token: OAuth & Permissions > Bot User OAuth Token (xoxb-)
79
+ App Token: Basic Information > App-Level Tokens (xapp-)
90
80
  `);
91
81
  }
92
82
  //# sourceMappingURL=slack.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"slack.js","sourceRoot":"","sources":["../../../src/cli/commands/slack.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack.js","sourceRoot":"","sources":["../../../src/cli/commands/slack.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,8 @@
1
1
  /**
2
2
  * CLI Commands: vibe telegram <subcommand>
3
3
  * Phase 4: External Interface
4
+ *
5
+ * 설정은 ~/.vibe/config.json channels.telegram에 통합 저장
4
6
  */
5
7
  export declare function telegramSetup(token?: string): void;
6
8
  export declare function telegramChat(chatId?: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/telegram.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAkCH,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAkBlD;AAED,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAqBlD;AAED,wBAAgB,cAAc,IAAI,IAAI,CAUrC;AAyDD,wBAAgB,aAAa,IAAI,IAAI,CA4EpC;AAED,wBAAgB,YAAY,IAAI,IAAI,CAqCnC;AAED,wBAAgB,YAAY,IAAI,IAAI,CAcnC"}
1
+ {"version":3,"file":"telegram.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/telegram.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAwBH,wBAAgB,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAkBlD;AAED,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAuBlD;AAED,wBAAgB,cAAc,IAAI,IAAI,CAYrC;AAiDD,wBAAgB,aAAa,IAAI,IAAI,CAmEpC;AAED,wBAAgB,YAAY,IAAI,IAAI,CA8BnC;AAED,wBAAgB,YAAY,IAAI,IAAI,CAcnC"}
@@ -1,31 +1,21 @@
1
1
  /**
2
2
  * CLI Commands: vibe telegram <subcommand>
3
3
  * Phase 4: External Interface
4
+ *
5
+ * 설정은 ~/.vibe/config.json channels.telegram에 통합 저장
4
6
  */
5
7
  import * as child_process from 'node:child_process';
6
8
  import * as fs from 'node:fs';
7
9
  import * as path from 'node:path';
8
- import * as os from 'node:os';
9
10
  import * as url from 'node:url';
10
- const VIBE_DIR = path.join(os.homedir(), '.vibe');
11
- const TELEGRAM_CONFIG_FILE = path.join(VIBE_DIR, 'telegram.json');
12
- const TELEGRAM_PID_FILE = path.join(VIBE_DIR, 'telegram.pid');
13
- const TELEGRAM_LOG_DIR = path.join(VIBE_DIR, 'logs');
11
+ import { readGlobalConfig, patchGlobalConfig, getVibeDir, } from '../../infra/lib/config/GlobalConfigManager.js';
12
+ const TELEGRAM_PID_FILE = path.join(getVibeDir(), 'telegram.pid');
13
+ const TELEGRAM_LOG_DIR = path.join(getVibeDir(), 'logs');
14
14
  function loadConfig() {
15
- try {
16
- if (!fs.existsSync(TELEGRAM_CONFIG_FILE))
17
- return null;
18
- return JSON.parse(fs.readFileSync(TELEGRAM_CONFIG_FILE, 'utf-8'));
19
- }
20
- catch {
21
- return null;
22
- }
15
+ return readGlobalConfig().channels?.telegram ?? null;
23
16
  }
24
17
  function saveConfig(config) {
25
- if (!fs.existsSync(VIBE_DIR)) {
26
- fs.mkdirSync(VIBE_DIR, { recursive: true, mode: 0o700 });
27
- }
28
- fs.writeFileSync(TELEGRAM_CONFIG_FILE, JSON.stringify(config, null, 2), { mode: 0o600 });
18
+ patchGlobalConfig({ channels: { telegram: config } });
29
19
  }
30
20
  export function telegramSetup(token) {
31
21
  if (!token) {
@@ -36,11 +26,11 @@ export function telegramSetup(token) {
36
26
  const existing = loadConfig();
37
27
  const config = {
38
28
  botToken: token,
39
- allowedChatIds: existing?.allowedChatIds || [],
29
+ allowedChatIds: existing?.allowedChatIds ?? [],
40
30
  };
41
31
  saveConfig(config);
42
32
  console.log('Telegram bot token saved');
43
- if (config.allowedChatIds.length === 0) {
33
+ if ((config.allowedChatIds ?? []).length === 0) {
44
34
  console.log('No allowed chat IDs set. Use: vibe telegram chat <chat-id>');
45
35
  }
46
36
  }
@@ -55,11 +45,13 @@ export function telegramChat(chatId) {
55
45
  console.log('Telegram not configured. Run: vibe telegram setup <bot-token>');
56
46
  return;
57
47
  }
58
- if (config.allowedChatIds.includes(chatId)) {
48
+ const chatIds = config.allowedChatIds ?? [];
49
+ if (chatIds.includes(chatId)) {
59
50
  console.log(`Chat ID "${chatId}" is already in the allow list`);
60
51
  return;
61
52
  }
62
- config.allowedChatIds.push(chatId);
53
+ chatIds.push(chatId);
54
+ config.allowedChatIds = chatIds;
63
55
  saveConfig(config);
64
56
  console.log(`Chat ID "${chatId}" added to allow list`);
65
57
  }
@@ -69,9 +61,11 @@ export function telegramStatus() {
69
61
  console.log('Telegram: not configured');
70
62
  return;
71
63
  }
72
- const tokenPreview = config.botToken.slice(0, 8) + '...' + config.botToken.slice(-4);
64
+ const token = config.botToken ?? '';
65
+ const tokenPreview = token.slice(0, 8) + '...' + token.slice(-4);
73
66
  console.log(`Telegram Bot: configured (${tokenPreview})`);
74
- console.log(`Allowed chats: ${config.allowedChatIds.length > 0 ? config.allowedChatIds.join(', ') : 'none'}`);
67
+ const chatIds = config.allowedChatIds ?? [];
68
+ console.log(`Allowed chats: ${chatIds.length > 0 ? chatIds.join(', ') : 'none'}`);
75
69
  }
76
70
  function readPid() {
77
71
  try {
@@ -94,7 +88,6 @@ function isProcessRunning(pid) {
94
88
  }
95
89
  }
96
90
  function ensurePlaywright() {
97
- // Check if playwright exists in node_modules
98
91
  const selfDir = path.dirname(url.fileURLToPath(import.meta.url));
99
92
  const candidates = [
100
93
  path.join(process.cwd(), 'node_modules', 'playwright'),
@@ -103,42 +96,36 @@ function ensurePlaywright() {
103
96
  const found = candidates.some((p) => fs.existsSync(p));
104
97
  if (found)
105
98
  return true;
106
- console.log('Playwright 설치되어 있지 않습니다. 자동 설치를 시작합니다...');
107
- console.log('(스크린샷/웹 캡처 기능에 필요합니다)');
99
+ console.log('Playwright not installed. Starting auto-install...');
108
100
  try {
109
101
  child_process.execSync('npm install playwright', {
110
102
  stdio: 'inherit',
111
103
  timeout: 120_000,
112
104
  });
113
- console.log('Playwright 설치 완료. Chromium 브라우저를 설치합니다...');
114
105
  child_process.execSync('npx playwright install chromium', {
115
106
  stdio: 'inherit',
116
107
  timeout: 300_000,
117
108
  });
118
- console.log('Chromium 설치 완료!');
109
+ console.log('Playwright installed!');
119
110
  return true;
120
111
  }
121
- catch (err) {
122
- console.warn('Playwright 자동 설치 실패. 스크린샷 기능 없이 시작합니다.');
123
- console.warn('수동 설치: npm install playwright && npx playwright install chromium');
112
+ catch {
113
+ console.warn('Playwright auto-install failed. Starting without screenshot support.');
124
114
  return false;
125
115
  }
126
116
  }
127
117
  export function telegramStart() {
128
- // Check if already running
129
118
  const existingPid = readPid();
130
119
  if (existingPid !== null && isProcessRunning(existingPid)) {
131
120
  console.log(`Telegram bridge is already running (PID: ${existingPid})`);
132
121
  return;
133
122
  }
134
- // Clean stale PID
135
123
  if (existingPid !== null) {
136
124
  try {
137
125
  fs.unlinkSync(TELEGRAM_PID_FILE);
138
126
  }
139
127
  catch { /* ignore */ }
140
128
  }
141
- // Validate config
142
129
  const config = loadConfig();
143
130
  if (!config) {
144
131
  console.log('Telegram not configured. Run: vibe telegram setup <bot-token>');
@@ -152,9 +139,7 @@ export function telegramStart() {
152
139
  console.log('No allowed chat IDs. Run: vibe telegram chat <chat-id>');
153
140
  return;
154
141
  }
155
- // Auto-install Playwright if missing (non-blocking: starts even if install fails)
156
142
  ensurePlaywright();
157
- // Find bridge entry point
158
143
  const __dirname = path.dirname(url.fileURLToPath(import.meta.url));
159
144
  const bridgePath = path.resolve(__dirname, '..', '..', 'bridge', 'telegram-assistant-bridge.js');
160
145
  if (!fs.existsSync(bridgePath)) {
@@ -162,27 +147,23 @@ export function telegramStart() {
162
147
  console.error('Run "npm run build" first.');
163
148
  return;
164
149
  }
165
- // Ensure log directory
166
150
  if (!fs.existsSync(TELEGRAM_LOG_DIR)) {
167
151
  fs.mkdirSync(TELEGRAM_LOG_DIR, { recursive: true, mode: 0o700 });
168
152
  }
169
153
  const logFile = path.join(TELEGRAM_LOG_DIR, 'telegram.log');
170
154
  const out = fs.openSync(logFile, 'a');
171
155
  const err = fs.openSync(logFile, 'a');
172
- // Fork bridge as detached process
173
156
  const child = child_process.fork(bridgePath, [], {
174
157
  detached: true,
175
158
  stdio: ['ignore', out, err, 'ipc'],
176
159
  env: { ...process.env, VIBE_TELEGRAM: '1' },
177
160
  });
178
- // Save PID
179
161
  const pid = child.pid;
180
162
  if (pid) {
181
163
  fs.writeFileSync(TELEGRAM_PID_FILE, String(pid), { mode: 0o600 });
182
164
  }
183
165
  child.unref();
184
166
  child.disconnect();
185
- // Verify after brief wait
186
167
  setTimeout(() => {
187
168
  const savedPid = readPid();
188
169
  if (savedPid !== null && isProcessRunning(savedPid)) {
@@ -198,7 +179,6 @@ export function telegramStop() {
198
179
  const pid = readPid();
199
180
  if (pid === null || !isProcessRunning(pid)) {
200
181
  console.log('Telegram bridge is not running');
201
- // Clean stale PID
202
182
  if (pid !== null) {
203
183
  try {
204
184
  fs.unlinkSync(TELEGRAM_PID_FILE);
@@ -211,10 +191,7 @@ export function telegramStop() {
211
191
  try {
212
192
  process.kill(pid, 'SIGTERM');
213
193
  }
214
- catch {
215
- // Process already gone
216
- }
217
- // Wait for process to exit
194
+ catch { /* Process already gone */ }
218
195
  let checks = 0;
219
196
  const interval = setInterval(() => {
220
197
  checks++;
@@ -228,7 +205,6 @@ export function telegramStop() {
228
205
  }
229
206
  else if (checks >= 10) {
230
207
  clearInterval(interval);
231
- // Force kill
232
208
  try {
233
209
  process.kill(pid, 'SIGKILL');
234
210
  }
@@ -250,8 +226,8 @@ Vibe Telegram Commands:
250
226
  vibe telegram help Show this help
251
227
 
252
228
  Start/Stop:
253
- vibe start 데몬 + 모든 인터페이스 시작
254
- vibe interface enable telegram 텔레그램만 활성화
229
+ vibe start Start daemon + all interfaces
230
+ vibe interface enable telegram Enable telegram only
255
231
 
256
232
  Get a bot token from @BotFather on Telegram.
257
233
  `);
@@ -1 +1 @@
1
- {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../../src/cli/commands/telegram.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telegram.js","sourceRoot":"","sources":["../../../src/cli/commands/telegram.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA;;GAEG;AA6EH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,qBAAqB,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/cli/index.ts"],"names":[],"mappings":";AAEA;;GAEG;AAgDH,cAAc,+BAA+B,CAAC;AAC9C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,mCAAmC,CAAC;AAClD,cAAc,iCAAiC,CAAC;AAEhD,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,qBAAqB,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAC5F,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yCAAyC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,2CAA2C,CAAC;AACnF,OAAO,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC/D,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AAEzE,OAAO,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC7D,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6CAA6C,CAAC;AAErF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,qBAAqB,EAAE,MAAM,8CAA8C,CAAC;AACrF,OAAO,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAE7E,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC"}