@misterhuydo/sentinel 1.4.55 → 1.4.57
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/session.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"message": "Auto-checkpoint at 2026-03-25T12:
|
|
3
|
-
"checkpoint_at": "2026-03-25T12:
|
|
2
|
+
"message": "Auto-checkpoint at 2026-03-25T12:11:43.792Z",
|
|
3
|
+
"checkpoint_at": "2026-03-25T12:11:43.793Z",
|
|
4
4
|
"active_files": [],
|
|
5
5
|
"notes": [],
|
|
6
6
|
"mtime_snapshot": {}
|
package/package.json
CHANGED
|
@@ -2492,6 +2492,7 @@ async def _run_tool(name: str, inputs: dict, cfg_loader, store, slack_client=Non
|
|
|
2492
2492
|
|
|
2493
2493
|
if name == "install_tool":
|
|
2494
2494
|
import subprocess as _sp
|
|
2495
|
+
import os as _os
|
|
2495
2496
|
tool_name = inputs.get("tool_name", "").strip()
|
|
2496
2497
|
if not tool_name:
|
|
2497
2498
|
return json.dumps({"error": "tool_name is required"})
|
|
@@ -2715,9 +2716,12 @@ async def _handle_with_cli(
|
|
|
2715
2716
|
if not reply:
|
|
2716
2717
|
if tools_ran:
|
|
2717
2718
|
reply = f":white_check_mark: Done ({', '.join(tools_ran)})."
|
|
2718
|
-
|
|
2719
|
+
elif len(message.strip()) <= 12 and not any(c.isalpha() and c not in 'helo wrdHELOWRD' for c in message):
|
|
2720
|
+
# Only greet on bare hello/hi/empty — never on real commands
|
|
2719
2721
|
greeting = f"Hi {user_name}! " if user_name else "Hi! "
|
|
2720
2722
|
reply = f"{greeting}I'm Sentinel, your autonomous DevOps agent. How can I help you?"
|
|
2723
|
+
else:
|
|
2724
|
+
reply = ":thinking_face: I didn't produce a response — please try rephrasing."
|
|
2721
2725
|
|
|
2722
2726
|
history.append({"role": "user", "content": message})
|
|
2723
2727
|
history.append({"role": "assistant", "content": reply})
|
|
@@ -2891,9 +2895,11 @@ async def _handle_with_api(
|
|
|
2891
2895
|
)
|
|
2892
2896
|
if tools_ran_this_session:
|
|
2893
2897
|
reply = ":white_check_mark: Done."
|
|
2894
|
-
|
|
2898
|
+
elif len(message.strip()) <= 12:
|
|
2895
2899
|
greeting = f"Hi {user_name}! " if user_name else "Hi! "
|
|
2896
2900
|
reply = f"{greeting}I'm Sentinel, your autonomous DevOps agent. How can I help you?"
|
|
2901
|
+
else:
|
|
2902
|
+
reply = ":thinking_face: I didn't produce a response — please try rephrasing."
|
|
2897
2903
|
# Heuristic override: if reply ends with a question, Claude is waiting for input
|
|
2898
2904
|
if is_done and re.search(r'\?\s*$', reply):
|
|
2899
2905
|
is_done = False
|