@misterhuydo/sentinel 1.0.63 → 1.0.64

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/.cairn/.hint-lock CHANGED
@@ -1 +1 @@
1
- 2026-03-22T14:37:46.791Z
1
+ 2026-03-22T15:53:29.003Z
@@ -1,6 +1,6 @@
1
1
  {
2
- "message": "Auto-checkpoint at 2026-03-22T14:43:35.624Z",
3
- "checkpoint_at": "2026-03-22T14:43:35.625Z",
2
+ "message": "Auto-checkpoint at 2026-03-22T15:44:29.732Z",
3
+ "checkpoint_at": "2026-03-22T15:44:29.733Z",
4
4
  "active_files": [],
5
5
  "notes": [],
6
6
  "mtime_snapshot": {}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@misterhuydo/sentinel",
3
- "version": "1.0.63",
3
+ "version": "1.0.64",
4
4
  "description": "Sentinel — Autonomous DevOps Agent installer and manager",
5
5
  "bin": {
6
6
  "sentinel": "./bin/sentinel.js"
@@ -986,6 +986,14 @@ async def _handle_with_cli(
986
986
  capture_output=True, text=True, timeout=180, env=env,
987
987
  )
988
988
  output = (result.stdout or "").strip()
989
+ if result.returncode != 0 or not output:
990
+ stderr = (result.stderr or "").strip()
991
+ logger.error(
992
+ "Boss CLI call failed (rc=%d): stdout=%r stderr=%r",
993
+ result.returncode, output[:200], stderr[:200],
994
+ )
995
+ if result.returncode != 0 and not output:
996
+ return f":warning: `claude --print` failed (exit {result.returncode}): {(result.stderr or '').strip()[:300]}", True
989
997
  except Exception as e:
990
998
  logger.error("Boss CLI call failed: %s", e)
991
999
  return f":warning: Boss unavailable: {e}", True
@@ -1004,7 +1012,8 @@ async def _handle_with_cli(
1004
1012
  is_done = "[DONE]" in reply
1005
1013
  reply = reply.replace("[DONE]", "").strip()
1006
1014
  if not reply:
1007
- reply = "Hi! I'm Sentinel, your autonomous DevOps agent. How can I help you?"
1015
+ greeting = f"Hi {user_name}! " if user_name else "Hi! "
1016
+ reply = f"{greeting}I'm Sentinel, your autonomous DevOps agent. How can I help you?"
1008
1017
 
1009
1018
  history.append({"role": "user", "content": message})
1010
1019
  history.append({"role": "assistant", "content": reply})
@@ -1090,7 +1099,8 @@ async def handle_message(
1090
1099
  is_done = "[DONE]" in reply
1091
1100
  reply = reply.replace("[DONE]", "").strip()
1092
1101
  if not reply:
1093
- reply = "Hi! I'm Sentinel, your autonomous DevOps agent. How can I help you?"
1102
+ greeting = f"Hi {user_name}! " if user_name else "Hi! "
1103
+ reply = f"{greeting}I'm Sentinel, your autonomous DevOps agent. How can I help you?"
1094
1104
  history.append({"role": "assistant", "content": response.content})
1095
1105
  return reply, is_done
1096
1106