@gowelle/stint-agent 1.2.40 → 1.2.41

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/README.md CHANGED
@@ -91,6 +91,19 @@ stint daemon status
91
91
  | `stint status [--dashboard]` | Show status (use `-d` for interactive dashboard) |
92
92
  | `stint sync` | Manually sync repository information to server |
93
93
 
94
+ ### Task Operations
95
+
96
+ | Command | Description |
97
+ | ------------- | ---------------------------------- |
98
+ | `stint tasks` | List tasks for the current project |
99
+
100
+ **`stint tasks` Options:**
101
+
102
+ | Option | Description |
103
+ | ----------------------- | ---------------------------------------------- |
104
+ | `-b, --branch <branch>` | Filter tasks by specific branch |
105
+ | `-a, --all` | Show all tasks (ignore current branch context) |
106
+
94
107
  ### Commit Operations
95
108
 
96
109
  | Command | Description |
@@ -2,10 +2,10 @@ import {
2
2
  gitService,
3
3
  projectService,
4
4
  validatePidFile
5
- } from "./chunk-UBNAWBEL.js";
5
+ } from "./chunk-YLZKGUKM.js";
6
6
  import {
7
7
  authService
8
- } from "./chunk-XH2UAPVA.js";
8
+ } from "./chunk-IJAVMAOZ.js";
9
9
 
10
10
  // src/components/StatusDashboard.tsx
11
11
  import { useState, useEffect } from "react";
@@ -0,0 +1,7 @@
1
+ import {
2
+ apiService
3
+ } from "./chunk-H4PLSM7I.js";
4
+ import "./chunk-IJAVMAOZ.js";
5
+ export {
6
+ apiService
7
+ };
@@ -2,7 +2,7 @@ import {
2
2
  authService,
3
3
  config,
4
4
  logger
5
- } from "./chunk-XH2UAPVA.js";
5
+ } from "./chunk-IJAVMAOZ.js";
6
6
 
7
7
  // src/utils/circuit-breaker.ts
8
8
  var CircuitBreaker = class {
@@ -100,7 +100,7 @@ var CircuitBreaker = class {
100
100
  };
101
101
 
102
102
  // src/services/api.ts
103
- var AGENT_VERSION = "1.2.40";
103
+ var AGENT_VERSION = "1.2.41";
104
104
  var ApiServiceImpl = class {
105
105
  sessionId = null;
106
106
  circuitBreaker = new CircuitBreaker({
@@ -254,9 +254,8 @@ var ApiServiceImpl = class {
254
254
  }
255
255
  /**
256
256
  * Send heartbeat to keep session alive
257
- * @throws Error if no active session
258
257
  */
259
- async heartbeat() {
258
+ async heartbeat(stats) {
260
259
  if (!this.sessionId) {
261
260
  throw new Error("No active session");
262
261
  }
@@ -264,7 +263,8 @@ var ApiServiceImpl = class {
264
263
  const response = await this.request("/api/agent/heartbeat", {
265
264
  method: "POST",
266
265
  body: JSON.stringify({
267
- session_id: this.sessionId
266
+ session_id: this.sessionId,
267
+ ...stats
268
268
  })
269
269
  });
270
270
  if (response.notification_preferences) {
@@ -346,7 +346,7 @@ var AuthServiceImpl = class {
346
346
  return null;
347
347
  }
348
348
  try {
349
- const { apiService } = await import("./api-QIIGJ7R2.js");
349
+ const { apiService } = await import("./api-QDJ4MDEI.js");
350
350
  const user = await apiService.getCurrentUser();
351
351
  logger.info("auth", `Token validated for user: ${user.email}`);
352
352
  return user;
@@ -1,15 +1,15 @@
1
1
  import {
2
2
  apiService
3
- } from "./chunk-3AS45O54.js";
3
+ } from "./chunk-H4PLSM7I.js";
4
4
  import {
5
5
  gitService,
6
6
  projectService
7
- } from "./chunk-UBNAWBEL.js";
7
+ } from "./chunk-YLZKGUKM.js";
8
8
  import {
9
9
  authService,
10
10
  config,
11
11
  logger
12
- } from "./chunk-XH2UAPVA.js";
12
+ } from "./chunk-IJAVMAOZ.js";
13
13
 
14
14
  // src/utils/notify.ts
15
15
  import notifier from "node-notifier";
@@ -911,7 +911,7 @@ var WebSocketServiceImpl = class {
911
911
  "websocket",
912
912
  `Commit ${commit.id} marked as large, fetching full details...`
913
913
  );
914
- const { apiService: apiService2 } = await import("./api-QIIGJ7R2.js");
914
+ const { apiService: apiService2 } = await import("./api-QDJ4MDEI.js");
915
915
  const fullCommit = await apiService2.getCommit(commit.id);
916
916
  commit = {
917
917
  ...commit,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  config,
3
3
  logger
4
- } from "./chunk-XH2UAPVA.js";
4
+ } from "./chunk-IJAVMAOZ.js";
5
5
 
6
6
  // src/services/git.ts
7
7
  import simpleGit from "simple-git";
@@ -3,20 +3,20 @@ import {
3
3
  commitQueue,
4
4
  notify,
5
5
  websocketService
6
- } from "../chunk-RZM4P35S.js";
6
+ } from "../chunk-NTG3X2HK.js";
7
7
  import {
8
8
  apiService
9
- } from "../chunk-3AS45O54.js";
9
+ } from "../chunk-H4PLSM7I.js";
10
10
  import {
11
11
  gitService,
12
12
  projectService,
13
13
  removePidFile,
14
14
  writePidFile
15
- } from "../chunk-UBNAWBEL.js";
15
+ } from "../chunk-YLZKGUKM.js";
16
16
  import {
17
17
  authService,
18
18
  logger
19
- } from "../chunk-XH2UAPVA.js";
19
+ } from "../chunk-IJAVMAOZ.js";
20
20
 
21
21
  // src/daemon/runner.ts
22
22
  import "dotenv/config";
@@ -288,6 +288,12 @@ var FileWatcher = class {
288
288
  }
289
289
  }
290
290
  }
291
+ /**
292
+ * Get the number of watched projects
293
+ */
294
+ getWatchedCount() {
295
+ return this.watchers.size;
296
+ }
291
297
  };
292
298
 
293
299
  // src/daemon/sync.ts
@@ -638,7 +644,20 @@ function startHeartbeat() {
638
644
  heartbeatInterval = setInterval(async () => {
639
645
  if (isShuttingDown) return;
640
646
  try {
641
- await apiService.heartbeat();
647
+ const memoryUsage = process.memoryUsage();
648
+ await apiService.heartbeat({
649
+ websocket_connected: websocketService.isConnected(),
650
+ queue_size: commitQueue.getQueueLength(),
651
+ watched_projects_count: fileWatcher.getWatchedCount ? fileWatcher.getWatchedCount() : 0,
652
+ memory_usage: {
653
+ rss: Math.round(memoryUsage.rss / 1024 / 1024),
654
+ // MB
655
+ heapTotal: Math.round(memoryUsage.heapTotal / 1024 / 1024),
656
+ heapUsed: Math.round(memoryUsage.heapUsed / 1024 / 1024),
657
+ external: Math.round(memoryUsage.external / 1024 / 1024)
658
+ },
659
+ uptime: Math.floor(process.uptime())
660
+ });
642
661
  healthMonitor.recordHeartbeat();
643
662
  logger.debug("daemon", "Heartbeat sent successfully");
644
663
  } catch (error) {
package/dist/index.js CHANGED
@@ -2,10 +2,10 @@
2
2
  import {
3
3
  commitQueue,
4
4
  websocketService
5
- } from "./chunk-RZM4P35S.js";
5
+ } from "./chunk-NTG3X2HK.js";
6
6
  import {
7
7
  apiService
8
- } from "./chunk-3AS45O54.js";
8
+ } from "./chunk-H4PLSM7I.js";
9
9
  import {
10
10
  getPidFilePath,
11
11
  gitService,
@@ -14,14 +14,14 @@ import {
14
14
  projectService,
15
15
  spawnDetached,
16
16
  validatePidFile
17
- } from "./chunk-UBNAWBEL.js";
17
+ } from "./chunk-YLZKGUKM.js";
18
18
  import {
19
19
  __commonJS,
20
20
  __toESM,
21
21
  authService,
22
22
  config,
23
23
  logger
24
- } from "./chunk-XH2UAPVA.js";
24
+ } from "./chunk-IJAVMAOZ.js";
25
25
 
26
26
  // node_modules/semver/internal/constants.js
27
27
  var require_constants = __commonJS({
@@ -2657,7 +2657,7 @@ function registerStatusCommand(program2) {
2657
2657
  try {
2658
2658
  const { render } = await import("ink");
2659
2659
  const { createElement } = await import("react");
2660
- const { StatusDashboard } = await import("./StatusDashboard-NGRPLDM7.js");
2660
+ const { StatusDashboard } = await import("./StatusDashboard-VKR5SXS4.js");
2661
2661
  render(createElement(StatusDashboard, { cwd }));
2662
2662
  return;
2663
2663
  } catch (error) {
@@ -4928,7 +4928,7 @@ Tasks for project ${chalk15.cyan(linkedProject.projectId)}`
4928
4928
  });
4929
4929
 
4930
4930
  // src/index.ts
4931
- var AGENT_VERSION = "1.2.40";
4931
+ var AGENT_VERSION = "1.2.41";
4932
4932
  var program = new Command2();
4933
4933
  program.name("stint").description("Stint Agent - Local daemon for Stint Project Assistant").version(AGENT_VERSION, "-v, --version", "output the current version").addHelpText(
4934
4934
  "after",
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@gowelle/stint-agent",
3
- "version": "1.2.40",
3
+ "version": "1.2.41",
4
4
  "description": "Local agent for Stint - Project Assistant",
5
5
  "author": "Gowelle John <gowelle.john@icloud.com>",
6
6
  "license": "MIT",
7
7
  "type": "module",
8
8
  "bin": {
9
- "stint": "./dist/index.js"
9
+ "stint": "dist/index.js"
10
10
  },
11
11
  "files": [
12
12
  "dist",
@@ -1,7 +0,0 @@
1
- import {
2
- apiService
3
- } from "./chunk-3AS45O54.js";
4
- import "./chunk-XH2UAPVA.js";
5
- export {
6
- apiService
7
- };