@misterhuydo/sentinel 1.0.58 → 1.0.59

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:06:29.625Z
1
+ 2026-03-22T14:37:46.791Z
@@ -1,6 +1,6 @@
1
1
  {
2
- "message": "Auto-checkpoint at 2026-03-22T14:28:09.441Z",
3
- "checkpoint_at": "2026-03-22T14:28:09.442Z",
2
+ "message": "Auto-checkpoint at 2026-03-22T14:38:12.904Z",
3
+ "checkpoint_at": "2026-03-22T14:38:12.905Z",
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.58",
3
+ "version": "1.0.59",
4
4
  "description": "Sentinel — Autonomous DevOps Agent installer and manager",
5
5
  "bin": {
6
6
  "sentinel": "./bin/sentinel.js"
@@ -955,6 +955,7 @@ async def _handle_with_cli(
955
955
  cfg_loader,
956
956
  store,
957
957
  slack_client=None,
958
+ user_name: str = "",
958
959
  ) -> tuple[str, bool]:
959
960
  """Fallback: use `claude --print` for users without an Anthropic API key."""
960
961
  status_json = await _run_tool("get_status", {"hours": 24}, cfg_loader, store)
@@ -989,6 +990,7 @@ async def _handle_with_cli(
989
990
 
990
991
  prompt = (
991
992
  _SYSTEM
993
+ + (f"\nYou are speaking with: {user_name}" if user_name else "")
992
994
  + f"\n\nCurrent time: {ts}"
993
995
  + f"\nSentinel status: {'⏸ PAUSED' if paused else '▶ RUNNING'}"
994
996
  + f"\nManaged repos: {', '.join(repos) if repos else '(none configured)'}"
@@ -1050,6 +1052,7 @@ async def handle_message(
1050
1052
  cfg_loader,
1051
1053
  store,
1052
1054
  slack_client=None,
1055
+ user_name: str = "",
1053
1056
  ) -> tuple[str, bool]:
1054
1057
  """
1055
1058
  Process one user message through the Sentinel Boss (Claude with tool use).
@@ -1075,7 +1078,7 @@ async def handle_message(
1075
1078
 
1076
1079
  api_key = cfg_loader.sentinel.anthropic_api_key or os.environ.get("ANTHROPIC_API_KEY", "")
1077
1080
  if not api_key:
1078
- return await _handle_with_cli(message, history, cfg_loader, store, slack_client=slack_client)
1081
+ return await _handle_with_cli(message, history, cfg_loader, store, slack_client=slack_client, user_name=user_name)
1079
1082
 
1080
1083
  client = anthropic.Anthropic(api_key=api_key)
1081
1084
 
@@ -1086,6 +1089,7 @@ async def handle_message(
1086
1089
  known_projects = [_read_project_name(d) for d in _find_project_dirs()]
1087
1090
  system = (
1088
1091
  _SYSTEM
1092
+ + (f"\nYou are speaking with: {user_name}" if user_name else "")
1089
1093
  + f"\n\nCurrent time: {ts}"
1090
1094
  + f"\nSentinel status: {'⏸ PAUSED' if paused else '▶ RUNNING'}"
1091
1095
  + f"\nManaged repos: {', '.join(repos) if repos else '(none configured)'}"
@@ -330,6 +330,7 @@ async def _run_turn(session: _Session, message: str, client, cfg_loader, store)
330
330
  reply, is_done = await handle_message(
331
331
  message, session.history, cfg_loader, store,
332
332
  slack_client=client,
333
+ user_name=session.user_name,
333
334
  )
334
335
  except Exception as e:
335
336
  logger.exception("Sentinel Boss error: %s", e)