@slycode/slycode 0.2.14 → 0.2.16

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 (77) hide show
  1. package/dist/bridge/claude-utils.d.ts +2 -3
  2. package/dist/bridge/claude-utils.js +28 -17
  3. package/dist/bridge/claude-utils.js.map +1 -1
  4. package/dist/bridge/pty-handler.js +40 -0
  5. package/dist/bridge/pty-handler.js.map +1 -1
  6. package/dist/bridge/session-manager.js +3 -3
  7. package/dist/bridge/session-manager.js.map +1 -1
  8. package/dist/messaging/bridge-client.js +1 -1
  9. package/dist/messaging/channels/telegram.d.ts +25 -5
  10. package/dist/messaging/channels/telegram.js +258 -152
  11. package/dist/messaging/channels/telegram.js.map +1 -1
  12. package/dist/messaging/index.js +5 -3
  13. package/dist/messaging/index.js.map +1 -1
  14. package/dist/messaging/state.d.ts +3 -0
  15. package/dist/messaging/state.js +13 -0
  16. package/dist/messaging/state.js.map +1 -1
  17. package/dist/messaging/types.d.ts +2 -0
  18. package/dist/scripts/slycode-env-wrapper.sh +10 -1
  19. package/dist/web/.next/BUILD_ID +1 -1
  20. package/dist/web/.next/build-manifest.json +2 -2
  21. package/dist/web/.next/server/app/_global-error.html +2 -2
  22. package/dist/web/.next/server/app/_global-error.rsc +1 -1
  23. package/dist/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  24. package/dist/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  25. package/dist/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  26. package/dist/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  27. package/dist/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  28. package/dist/web/.next/server/app/_not-found.html +1 -1
  29. package/dist/web/.next/server/app/_not-found.rsc +1 -1
  30. package/dist/web/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  31. package/dist/web/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  32. package/dist/web/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  33. package/dist/web/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  34. package/dist/web/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  35. package/dist/web/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  36. package/dist/web/.next/server/app/page_client-reference-manifest.js +1 -1
  37. package/dist/web/.next/server/app/project/[id]/page_client-reference-manifest.js +1 -1
  38. package/dist/web/.next/server/chunks/src_lib_scheduler_ts_03988e3e._.js +1 -1
  39. package/dist/web/.next/server/chunks/src_lib_scheduler_ts_7120457c._.js +1 -1
  40. package/dist/web/.next/server/chunks/ssr/[root-of-the-server]__1f5fc489._.js +1 -1
  41. package/dist/web/.next/server/chunks/ssr/[root-of-the-server]__bcbe4bf2._.js +1 -1
  42. package/dist/web/.next/server/pages/404.html +1 -1
  43. package/dist/web/.next/server/pages/500.html +2 -2
  44. package/dist/web/.next/static/chunks/{cfec56fdddd52361.js → 3d5195b57fc05540.js} +1 -1
  45. package/dist/web/.next/static/chunks/59fb302a5bfd2dc0.js +4 -0
  46. package/dist/web/src/components/ClaudeTerminalPanel.tsx +31 -1
  47. package/dist/web/src/lib/scheduler.ts +11 -2
  48. package/dist/web/tsconfig.tsbuildinfo +1 -1
  49. package/lib/cli/restart.d.ts.map +1 -1
  50. package/lib/cli/restart.js +5 -9
  51. package/lib/cli/restart.js.map +1 -1
  52. package/lib/cli/start.d.ts.map +1 -1
  53. package/lib/cli/start.js +38 -10
  54. package/lib/cli/start.js.map +1 -1
  55. package/lib/cli/update.js +1 -1
  56. package/lib/cli/update.js.map +1 -1
  57. package/lib/platform/service-common.d.ts +24 -0
  58. package/lib/platform/service-common.d.ts.map +1 -0
  59. package/lib/platform/service-common.js +119 -0
  60. package/lib/platform/service-common.js.map +1 -0
  61. package/lib/platform/service-detect.d.ts.map +1 -1
  62. package/lib/platform/service-detect.js +32 -20
  63. package/lib/platform/service-detect.js.map +1 -1
  64. package/lib/platform/service-linux.d.ts +1 -1
  65. package/lib/platform/service-linux.d.ts.map +1 -1
  66. package/lib/platform/service-linux.js +10 -77
  67. package/lib/platform/service-linux.js.map +1 -1
  68. package/lib/platform/service-macos.d.ts +1 -1
  69. package/lib/platform/service-macos.d.ts.map +1 -1
  70. package/lib/platform/service-macos.js +176 -49
  71. package/lib/platform/service-macos.js.map +1 -1
  72. package/package.json +3 -4
  73. package/templates/kanban-seed.json +1 -1
  74. package/dist/web/.next/static/chunks/c5d50c930f4e26a6.js +0 -4
  75. /package/dist/web/.next/static/{y4wg5RLBkOtdMpGszS8Fs → 8LS_5MpE4jB-m4LMauTfz}/_buildManifest.js +0 -0
  76. /package/dist/web/.next/static/{y4wg5RLBkOtdMpGszS8Fs → 8LS_5MpE4jB-m4LMauTfz}/_clientMiddlewareManifest.json +0 -0
  77. /package/dist/web/.next/static/{y4wg5RLBkOtdMpGszS8Fs → 8LS_5MpE4jB-m4LMauTfz}/_ssgManifest.js +0 -0
@@ -38,8 +38,7 @@ const path = __importStar(require("path"));
38
38
  const fs = __importStar(require("fs"));
39
39
  const os = __importStar(require("os"));
40
40
  const child_process_1 = require("child_process");
41
- const workspace_1 = require("../cli/workspace");
42
- const SERVICES = ['web', 'bridge', 'messaging'];
41
+ const service_common_1 = require("./service-common");
43
42
  function hasSystemd() {
44
43
  try {
45
44
  (0, child_process_1.execSync)('systemctl --user --version', { stdio: 'pipe' });
@@ -64,40 +63,10 @@ function getUnitDir() {
64
63
  }
65
64
  return dir;
66
65
  }
67
- /**
68
- * Load .env from the workspace and return key=value pairs.
69
- * Needed because systemd services don't inherit the user's .env.
70
- */
71
- function loadEnvFile(workspace) {
72
- const envFile = path.join(workspace, '.env');
73
- const vars = {};
74
- if (!fs.existsSync(envFile))
75
- return vars;
76
- for (const line of fs.readFileSync(envFile, 'utf-8').split('\n')) {
77
- const trimmed = line.trim();
78
- if (!trimmed || trimmed.startsWith('#'))
79
- continue;
80
- const eq = trimmed.indexOf('=');
81
- if (eq > 0) {
82
- const key = trimmed.slice(0, eq);
83
- const val = trimmed.slice(eq + 1);
84
- if (val)
85
- vars[key] = val; // Only include non-empty values
86
- }
87
- }
88
- return vars;
89
- }
90
- function resolveWrapperScript(workspace) {
91
- const packageDir = (0, workspace_1.resolvePackageDir)(workspace);
92
- const wrapperPath = packageDir
93
- ? path.join(packageDir, 'dist', 'scripts', 'slycode-env-wrapper.sh')
94
- : path.join(workspace, 'packages', 'slycode', 'src', 'platform', 'slycode-env-wrapper.sh');
95
- return wrapperPath;
96
- }
97
66
  function generateUnit(service, workspace, config) {
98
67
  const nodePath = process.execPath;
99
- const resolvedPackage = resolveEntryPoint(service, workspace);
100
- const wrapperScript = resolveWrapperScript(workspace);
68
+ const resolvedPackage = (0, service_common_1.resolveEntryPoint)(service, workspace);
69
+ const wrapperScript = (0, service_common_1.resolveWrapperScript)(workspace);
101
70
  const bridgeUrl = `http://127.0.0.1:${config.ports.bridge}`;
102
71
  const host = config.host || '127.0.0.1';
103
72
  let description;
@@ -148,22 +117,6 @@ ${envLines.join('\n')}
148
117
  WantedBy=default.target
149
118
  `;
150
119
  }
151
- function resolveEntryPoint(service, workspace) {
152
- const packageDir = (0, workspace_1.resolvePackageDir)(workspace);
153
- const distDir = packageDir ? path.join(packageDir, 'dist') : null;
154
- // Web uses server.js (Next.js standalone), others use index.js
155
- const entryFile = service === 'web' ? 'server.js' : 'index.js';
156
- if (distDir) {
157
- const distPath = path.join(distDir, service, entryFile);
158
- if (fs.existsSync(distPath))
159
- return distPath;
160
- }
161
- // Fallback to local dev build
162
- if (service === 'web') {
163
- return path.join(workspace, 'web', 'node_modules', '.bin', 'next');
164
- }
165
- return path.join(workspace, service, 'dist', 'index.js');
166
- }
167
120
  function checkLinger() {
168
121
  try {
169
122
  const output = (0, child_process_1.execSync)(`loginctl show-user ${os.userInfo().username} -p Linger --value 2>/dev/null`, { encoding: 'utf-8', stdio: ['pipe', 'pipe', 'pipe'] });
@@ -173,26 +126,6 @@ function checkLinger() {
173
126
  return false;
174
127
  }
175
128
  }
176
- /**
177
- * Determine which services should be installed.
178
- * Skips messaging if no channel tokens are configured.
179
- */
180
- function getEnabledServices(config, envVars) {
181
- const enabled = [];
182
- for (const svc of SERVICES) {
183
- if (!config.services[svc]) {
184
- console.log(` ⊘ ${svc}: disabled in config — skipping`);
185
- continue;
186
- }
187
- if (svc === 'messaging' && !envVars.TELEGRAM_BOT_TOKEN && !envVars.SLACK_TOKEN) {
188
- console.log(` ⊘ messaging: no channels configured — skipping`);
189
- console.log(' (add TELEGRAM_BOT_TOKEN to .env, then run service install again)');
190
- continue;
191
- }
192
- enabled.push(svc);
193
- }
194
- return enabled;
195
- }
196
129
  async function install(workspace, config) {
197
130
  if (!hasSystemd()) {
198
131
  console.error('systemd is not available on this system.');
@@ -201,10 +134,10 @@ async function install(workspace, config) {
201
134
  }
202
135
  ensureXdgRuntime();
203
136
  const unitDir = getUnitDir();
204
- const envVars = loadEnvFile(workspace);
137
+ const envVars = (0, service_common_1.loadEnvFile)(workspace);
205
138
  console.log('Installing systemd user services...');
206
139
  console.log('');
207
- const enabled = getEnabledServices(config, envVars);
140
+ const enabled = (0, service_common_1.getEnabledServices)(config, envVars);
208
141
  if (enabled.length === 0) {
209
142
  console.error('No services to install.');
210
143
  return;
@@ -213,7 +146,7 @@ async function install(workspace, config) {
213
146
  // Validate entry points before installing
214
147
  const installable = [];
215
148
  for (const svc of enabled) {
216
- const entryPoint = resolveEntryPoint(svc, workspace);
149
+ const entryPoint = (0, service_common_1.resolveEntryPoint)(svc, workspace);
217
150
  if (!fs.existsSync(entryPoint)) {
218
151
  console.warn(` \u2717 ${svc}: entry point not found: ${entryPoint}`);
219
152
  continue;
@@ -226,7 +159,7 @@ async function install(workspace, config) {
226
159
  return;
227
160
  }
228
161
  // Ensure env wrapper script is executable
229
- const wrapperScript = resolveWrapperScript(workspace);
162
+ const wrapperScript = (0, service_common_1.resolveWrapperScript)(workspace);
230
163
  if (!fs.existsSync(wrapperScript)) {
231
164
  console.error(` ✗ env wrapper not found: ${wrapperScript}`);
232
165
  console.error('Is slycode installed correctly?');
@@ -294,7 +227,7 @@ async function remove() {
294
227
  ensureXdgRuntime();
295
228
  console.log('Removing systemd user services...');
296
229
  // Disable first (prevents restart loops), then stop with timeout
297
- for (const svc of SERVICES) {
230
+ for (const svc of service_common_1.SERVICES) {
298
231
  try {
299
232
  (0, child_process_1.execSync)(`systemctl --user disable slycode-${svc}`, { stdio: 'pipe' });
300
233
  }
@@ -324,13 +257,13 @@ async function status() {
324
257
  }
325
258
  // Check if any unit files exist
326
259
  const unitDir = getUnitDir();
327
- const hasUnits = SERVICES.some(svc => fs.existsSync(path.join(unitDir, `slycode-${svc}.service`)));
260
+ const hasUnits = service_common_1.SERVICES.some(svc => fs.existsSync(path.join(unitDir, `slycode-${svc}.service`)));
328
261
  if (!hasUnits) {
329
262
  console.log(' No services installed.');
330
263
  console.log(' Install with: slycode service install');
331
264
  return;
332
265
  }
333
- for (const svc of SERVICES) {
266
+ for (const svc of service_common_1.SERVICES) {
334
267
  const unitPath = path.join(unitDir, `slycode-${svc}.service`);
335
268
  if (!fs.existsSync(unitPath)) {
336
269
  console.log(` slycode-${svc}: not installed`);
@@ -1 +1 @@
1
- {"version":3,"file":"service-linux.js","sourceRoot":"","sources":["../../src/platform/service-linux.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service-linux.js","sourceRoot":"","sources":["../../src/platform/service-linux.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
- import { type SlyCodeConfig } from '../cli/workspace';
1
+ import type { SlyCodeConfig } from '../cli/workspace';
2
2
  export declare function serviceMacos(action: 'install' | 'remove' | 'status', workspace: string, config: SlyCodeConfig): Promise<void>;
3
3
  //# sourceMappingURL=service-macos.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"service-macos.d.ts","sourceRoot":"","sources":["../../src/platform/service-macos.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,aAAa,EAAqB,MAAM,kBAAkB,CAAC;AAyKzE,wBAAsB,YAAY,CAChC,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,EACvC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAMf"}
1
+ {"version":3,"file":"service-macos.d.ts","sourceRoot":"","sources":["../../src/platform/service-macos.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAiTtD,wBAAsB,YAAY,CAChC,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,EACvC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,aAAa,GACpB,OAAO,CAAC,IAAI,CAAC,CAMf"}
@@ -38,8 +38,7 @@ const path = __importStar(require("path"));
38
38
  const fs = __importStar(require("fs"));
39
39
  const os = __importStar(require("os"));
40
40
  const child_process_1 = require("child_process");
41
- const workspace_1 = require("../cli/workspace");
42
- const SERVICES = ['web', 'bridge', 'messaging'];
41
+ const service_common_1 = require("./service-common");
43
42
  function getLaunchAgentsDir() {
44
43
  const dir = path.join(os.homedir(), 'Library', 'LaunchAgents');
45
44
  if (!fs.existsSync(dir)) {
@@ -50,45 +49,48 @@ function getLaunchAgentsDir() {
50
49
  function plistPath(service) {
51
50
  return path.join(getLaunchAgentsDir(), `com.slycode.${service}.plist`);
52
51
  }
53
- function resolveEntryPoint(service, workspace) {
54
- const distPath = path.join(workspace, 'node_modules', '@slycode', 'slycode', 'dist', service, 'index.js');
55
- if (fs.existsSync(distPath))
56
- return distPath;
57
- return path.join(workspace, service, 'dist', 'index.js');
58
- }
59
- function resolveWrapperScript(workspace) {
60
- const packageDir = (0, workspace_1.resolvePackageDir)(workspace);
61
- const wrapperPath = packageDir
62
- ? path.join(packageDir, 'dist', 'scripts', 'slycode-env-wrapper.sh')
63
- : path.join(workspace, 'packages', 'slycode', 'src', 'platform', 'slycode-env-wrapper.sh');
64
- return wrapperPath;
65
- }
66
52
  function generatePlist(service, workspace, config) {
67
53
  const nodePath = process.execPath;
68
- const entryPoint = resolveEntryPoint(service, workspace);
69
- const wrapperScript = resolveWrapperScript(workspace);
54
+ const entryPoint = (0, service_common_1.resolveEntryPoint)(service, workspace);
55
+ const wrapperScript = (0, service_common_1.resolveWrapperScript)(workspace);
70
56
  const label = `com.slycode.${service}`;
71
57
  const logDir = path.join(os.homedir(), '.slycode', 'logs');
72
58
  const logPath = path.join(logDir, `${service}.log`);
73
59
  const bridgeUrl = `http://127.0.0.1:${config.ports.bridge}`;
60
+ const host = config.host || '127.0.0.1';
74
61
  if (!fs.existsSync(logDir)) {
75
62
  fs.mkdirSync(logDir, { recursive: true });
76
63
  }
64
+ // Build service-specific env entries matching Linux systemd units
77
65
  let envEntries;
78
66
  switch (service) {
79
67
  case 'web':
80
68
  envEntries = ` <key>PORT</key>
81
69
  <string>${config.ports.web}</string>
70
+ <key>HOST</key>
71
+ <string>${host}</string>
72
+ <key>HOSTNAME</key>
73
+ <string>${host}</string>
82
74
  <key>BRIDGE_URL</key>
83
75
  <string>${bridgeUrl}</string>`;
84
76
  break;
85
77
  case 'bridge':
86
- envEntries = ` <key>BRIDGE_PORT</key>
87
- <string>${config.ports.bridge}</string>`;
78
+ envEntries = ` <key>PORT</key>
79
+ <string>${config.ports.bridge}</string>
80
+ <key>BRIDGE_PORT</key>
81
+ <string>${config.ports.bridge}</string>
82
+ <key>BRIDGE_HOST</key>
83
+ <string>127.0.0.1</string>
84
+ <key>HOST</key>
85
+ <string>127.0.0.1</string>`;
88
86
  break;
89
87
  case 'messaging':
90
- envEntries = ` <key>MESSAGING_SERVICE_PORT</key>
88
+ envEntries = ` <key>PORT</key>
91
89
  <string>${config.ports.messaging}</string>
90
+ <key>MESSAGING_SERVICE_PORT</key>
91
+ <string>${config.ports.messaging}</string>
92
+ <key>HOST</key>
93
+ <string>127.0.0.1</string>
92
94
  <key>BRIDGE_URL</key>
93
95
  <string>${bridgeUrl}</string>`;
94
96
  break;
@@ -112,6 +114,10 @@ function generatePlist(service, workspace, config) {
112
114
  </array>
113
115
  <key>EnvironmentVariables</key>
114
116
  <dict>
117
+ <key>HOME</key>
118
+ <string>${os.homedir()}</string>
119
+ <key>PATH</key>
120
+ <string>${process.env.PATH}</string>
115
121
  <key>NODE_ENV</key>
116
122
  <string>production</string>
117
123
  <key>SLYCODE_HOME</key>
@@ -122,6 +128,8 @@ ${envEntries}
122
128
  <true/>
123
129
  <key>RunAtLoad</key>
124
130
  <true/>
131
+ <key>ThrottleInterval</key>
132
+ <integer>10</integer>
125
133
  <key>StandardOutPath</key>
126
134
  <string>${logPath}</string>
127
135
  <key>StandardErrorPath</key>
@@ -130,12 +138,66 @@ ${envEntries}
130
138
  </plist>
131
139
  `;
132
140
  }
141
+ /**
142
+ * Check if a launchd agent is loaded (regardless of whether it's running).
143
+ */
144
+ function isAgentLoaded(service) {
145
+ try {
146
+ (0, child_process_1.execSync)(`launchctl list com.slycode.${service} 2>/dev/null`, {
147
+ encoding: 'utf-8',
148
+ stdio: ['pipe', 'pipe', 'pipe'],
149
+ });
150
+ return true;
151
+ }
152
+ catch {
153
+ return false;
154
+ }
155
+ }
156
+ /**
157
+ * Check if a launchd agent is running (has a PID).
158
+ */
159
+ function getAgentPid(service) {
160
+ try {
161
+ const output = (0, child_process_1.execSync)(`launchctl list com.slycode.${service} 2>/dev/null`, {
162
+ encoding: 'utf-8',
163
+ stdio: ['pipe', 'pipe', 'pipe'],
164
+ });
165
+ const pidMatch = output.match(/"PID"\s*=\s*(\d+)/);
166
+ return pidMatch ? parseInt(pidMatch[1], 10) : null;
167
+ }
168
+ catch {
169
+ return null;
170
+ }
171
+ }
133
172
  async function install(workspace, config) {
173
+ const envVars = (0, service_common_1.loadEnvFile)(workspace);
134
174
  console.log('Installing launchd user agents...');
175
+ console.log('');
176
+ const enabled = (0, service_common_1.getEnabledServices)(config, envVars);
177
+ if (enabled.length === 0) {
178
+ console.error('No services to install.');
179
+ return;
180
+ }
181
+ console.log('');
182
+ // Validate entry points before installing
183
+ const installable = [];
184
+ for (const svc of enabled) {
185
+ const entryPoint = (0, service_common_1.resolveEntryPoint)(svc, workspace);
186
+ if (!fs.existsSync(entryPoint)) {
187
+ console.warn(` \u2717 ${svc}: entry point not found: ${entryPoint}`);
188
+ continue;
189
+ }
190
+ installable.push(svc);
191
+ }
192
+ if (installable.length === 0) {
193
+ console.error('No services have valid entry points. Is slycode installed?');
194
+ console.error('Try: cd ' + workspace + ' && npm install');
195
+ return;
196
+ }
135
197
  // Ensure env wrapper script is executable
136
- const wrapperScript = resolveWrapperScript(workspace);
198
+ const wrapperScript = (0, service_common_1.resolveWrapperScript)(workspace);
137
199
  if (!fs.existsSync(wrapperScript)) {
138
- console.error(` env wrapper not found: ${wrapperScript}`);
200
+ console.error(` \u2717 env wrapper not found: ${wrapperScript}`);
139
201
  console.error('Is slycode installed correctly?');
140
202
  return;
141
203
  }
@@ -143,52 +205,117 @@ async function install(workspace, config) {
143
205
  fs.chmodSync(wrapperScript, 0o755);
144
206
  }
145
207
  catch { /* ok if already executable */ }
146
- for (const svc of SERVICES) {
208
+ for (const svc of installable) {
147
209
  const plist = generatePlist(svc, workspace, config);
148
210
  const dest = plistPath(svc);
211
+ // Unload first for idempotency (ignore errors — may not be loaded)
212
+ try {
213
+ (0, child_process_1.execSync)(`launchctl unload "${dest}"`, { stdio: 'pipe' });
214
+ }
215
+ catch { /* ok */ }
149
216
  fs.writeFileSync(dest, plist);
150
- (0, child_process_1.execSync)(`launchctl load "${dest}"`, { stdio: 'inherit' });
151
- console.log(` \u2713 Loaded com.slycode.${svc}`);
217
+ try {
218
+ (0, child_process_1.execSync)(`launchctl load "${dest}"`, { stdio: 'pipe' });
219
+ console.log(` \u2713 Loaded com.slycode.${svc}`);
220
+ }
221
+ catch (e) {
222
+ console.error(` \u2717 Failed to load com.slycode.${svc}: ${e.message || e}`);
223
+ }
152
224
  }
225
+ // Clean up stale plists for services not in the enabled set
226
+ for (const svc of service_common_1.SERVICES) {
227
+ if (!installable.includes(svc)) {
228
+ const dest = plistPath(svc);
229
+ if (fs.existsSync(dest)) {
230
+ try {
231
+ (0, child_process_1.execSync)(`launchctl unload "${dest}"`, { stdio: 'pipe' });
232
+ }
233
+ catch { /* ok */ }
234
+ fs.unlinkSync(dest);
235
+ console.log(` \u2298 Removed stale plist for ${svc}`);
236
+ }
237
+ }
238
+ }
239
+ // Wait for services to stabilize
153
240
  console.log('');
154
- console.log('All launchd agents installed and loaded.');
241
+ console.log('Waiting for services to start...');
242
+ await new Promise((r) => setTimeout(r, 3000));
243
+ // Verify each service
244
+ let allOk = true;
245
+ for (const svc of installable) {
246
+ const pid = getAgentPid(svc);
247
+ if (pid) {
248
+ console.log(` \u2713 com.slycode.${svc} is running (PID ${pid})`);
249
+ }
250
+ else if (isAgentLoaded(svc)) {
251
+ console.warn(` \u2717 com.slycode.${svc} loaded but not running (crashed?)`);
252
+ console.log(` Check logs: ~/.slycode/logs/${svc}.log`);
253
+ allOk = false;
254
+ }
255
+ else {
256
+ console.warn(` \u2717 com.slycode.${svc} failed to load`);
257
+ console.log(` Check logs: ~/.slycode/logs/${svc}.log`);
258
+ allOk = false;
259
+ }
260
+ }
261
+ console.log('');
262
+ if (allOk) {
263
+ console.log('All launchd agents installed and running.');
264
+ }
265
+ else {
266
+ console.log('Some services failed. Check ~/.slycode/logs/<service>.log for details.');
267
+ }
155
268
  }
156
269
  async function remove() {
157
270
  console.log('Removing launchd user agents...');
158
- for (const svc of SERVICES) {
271
+ let removedAny = false;
272
+ for (const svc of service_common_1.SERVICES) {
159
273
  const dest = plistPath(svc);
160
- if (fs.existsSync(dest)) {
161
- try {
162
- (0, child_process_1.execSync)(`launchctl unload "${dest}"`, { stdio: 'pipe' });
163
- }
164
- catch { /* ok */ }
165
- fs.unlinkSync(dest);
166
- console.log(` \u2713 Removed com.slycode.${svc}`);
274
+ if (!fs.existsSync(dest))
275
+ continue;
276
+ // Unload first, then delete plist
277
+ try {
278
+ (0, child_process_1.execSync)(`launchctl unload "${dest}"`, { stdio: 'pipe' });
279
+ }
280
+ catch (e) {
281
+ console.warn(` ! Could not unload com.slycode.${svc}: ${e.message || 'unknown error'}`);
167
282
  }
283
+ fs.unlinkSync(dest);
284
+ console.log(` \u2713 Removed com.slycode.${svc}`);
285
+ removedAny = true;
286
+ }
287
+ if (removedAny) {
288
+ console.log('');
289
+ console.log('Launchd agents removed.');
290
+ }
291
+ else {
292
+ console.log(' No agents were installed.');
168
293
  }
169
- console.log(' \u2713 Launchd agents removed');
170
294
  }
171
295
  async function status() {
172
- for (const svc of SERVICES) {
296
+ const logDir = path.join(os.homedir(), '.slycode', 'logs');
297
+ // Check if any plists exist
298
+ const hasAny = service_common_1.SERVICES.some(svc => fs.existsSync(plistPath(svc)));
299
+ if (!hasAny) {
300
+ console.log(' No services installed.');
301
+ console.log(' Install with: slycode service install');
302
+ return;
303
+ }
304
+ for (const svc of service_common_1.SERVICES) {
173
305
  const dest = plistPath(svc);
174
306
  if (!fs.existsSync(dest)) {
175
307
  console.log(` com.slycode.${svc}: not installed`);
176
308
  continue;
177
309
  }
178
- try {
179
- const output = (0, child_process_1.execSync)(`launchctl list com.slycode.${svc} 2>/dev/null`, {
180
- encoding: 'utf-8',
181
- stdio: ['pipe', 'pipe', 'pipe'],
182
- });
183
- const pidMatch = output.match(/"PID"\s*=\s*(\d+)/);
184
- if (pidMatch) {
185
- console.log(` com.slycode.${svc}: running (PID ${pidMatch[1]})`);
186
- }
187
- else {
188
- console.log(` com.slycode.${svc}: loaded but not running`);
189
- }
310
+ const pid = getAgentPid(svc);
311
+ if (pid) {
312
+ console.log(` com.slycode.${svc}: running (PID ${pid})`);
313
+ }
314
+ else if (isAgentLoaded(svc)) {
315
+ console.log(` com.slycode.${svc}: loaded but not running`);
316
+ console.log(` Check logs: ${path.join(logDir, `${svc}.log`)}`);
190
317
  }
191
- catch {
318
+ else {
192
319
  console.log(` com.slycode.${svc}: not loaded`);
193
320
  }
194
321
  }
@@ -1 +1 @@
1
- {"version":3,"file":"service-macos.js","sourceRoot":"","sources":["../../src/platform/service-macos.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service-macos.js","sourceRoot":"","sources":["../../src/platform/service-macos.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@slycode/slycode",
3
- "version": "0.2.14",
3
+ "version": "0.2.16",
4
4
  "description": "AI-powered development workspace with kanban, terminal bridge, and skill management",
5
5
  "bin": {
6
6
  "slycode": "bin/slycode.js",
@@ -49,12 +49,11 @@
49
49
  "express": "^4.21.2",
50
50
  "multer": "^1.4.5-lts.1",
51
51
  "node-pty": "^1.0.0",
52
- "node-telegram-bot-api": "^0.66.0",
53
52
  "openai": "^4.78.0",
54
53
  "ws": "^8.18.0"
55
54
  },
56
55
  "devDependencies": {
57
- "typescript": "^5.3.0",
58
- "@types/node": "^20.0.0"
56
+ "@types/node": "^20.0.0",
57
+ "typescript": "^5.3.0"
59
58
  }
60
59
  }
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "schemaVersion": 1,
3
3
  "cards": [],
4
- "lastUpdated": "2026-03-22T00:38:18.488Z"
4
+ "lastUpdated": "2026-03-22T10:00:17.912Z"
5
5
  }