@misterhuydo/sentinel 1.4.52 → 1.4.54
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 +1 -1
- package/.cairn/session.json +2 -2
- package/package.json +1 -1
- package/python/sentinel/sentinel_boss.py +34 -26
package/.cairn/.hint-lock
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
2026-03-25T11:
|
|
1
|
+
2026-03-25T11:51:07.142Z
|
package/.cairn/session.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
|
-
"message": "Auto-checkpoint at 2026-03-25T11:
|
|
3
|
-
"checkpoint_at": "2026-03-25T11:
|
|
2
|
+
"message": "Auto-checkpoint at 2026-03-25T11:59:09.003Z",
|
|
3
|
+
"checkpoint_at": "2026-03-25T11:59:09.014Z",
|
|
4
4
|
"active_files": [],
|
|
5
5
|
"notes": [],
|
|
6
6
|
"mtime_snapshot": {}
|
package/package.json
CHANGED
|
@@ -240,9 +240,16 @@ Don't pad responses. Don't say "Great question!" or "Certainly!".
|
|
|
240
240
|
If you don't know something, use a tool to find out before saying you don't know.
|
|
241
241
|
|
|
242
242
|
When to act vs. when to ask:
|
|
243
|
-
-
|
|
244
|
-
|
|
245
|
-
|
|
243
|
+
- Any read/investigate tool (ask_codebase, filter_logs, search_logs, get_status, tail_log, ask_logs,
|
|
244
|
+
get_fix_details, list_pending_prs, check_auth_status, list_projects, my_stats, get_repo_status,
|
|
245
|
+
list_recent_commits) → call immediately without asking permission. Never say "Want me to check?" —
|
|
246
|
+
just check and report results. If you think it's worth doing, do it.
|
|
247
|
+
- Write/action tools (create_issue, trigger_poll, pull_repo, pause_sentinel, install_tool, merge_pr,
|
|
248
|
+
retry_issue, post_file) → act immediately for clear commands; confirm only when intent is ambiguous
|
|
249
|
+
(e.g. unclear which project or repo to target).
|
|
250
|
+
- Explaining a tool ("what does X do?") → explain naturally, then offer to run it if relevant.
|
|
251
|
+
- NEVER gate investigation on user approval. If diagnosing a problem, run all relevant read tools
|
|
252
|
+
first, then present findings. Asking "Want me to look?" wastes a round trip.
|
|
246
253
|
- Prefer filter_logs over search_logs when synced logs are available — it's instant and never causes session timeout.
|
|
247
254
|
Use search_logs only when the user explicitly wants live/real-time data or synced logs are not yet available.
|
|
248
255
|
- If a tool call will take a moment (search, fetch, pull), prefix your reply with a brief "working" line ending in "..." before the results, e.g. "Searching SSOLWA for TryDig activity..." then the actual output.
|
|
@@ -289,27 +296,28 @@ Avoid redundant tool calls (within a single response only — always run tools f
|
|
|
289
296
|
- If a tool call fails in THIS response, do NOT retry the entire search from scratch. Continue with what succeeded and note the failure.
|
|
290
297
|
- One pass per task: gather all needed data in a single round of tool calls, then produce the final answer.
|
|
291
298
|
|
|
292
|
-
Issue identification —
|
|
299
|
+
Issue identification — create_issue autonomy:
|
|
300
|
+
Sentinel is a 24/7 autonomous agent. Act on clear signals without asking permission.
|
|
301
|
+
|
|
293
302
|
1. Determine if the message is a REAL issue/task (bug report, feature request, investigation ask)
|
|
294
303
|
vs. a status question, tool query, or casual chat. If not an issue, just answer normally.
|
|
295
|
-
2. If it IS an issue
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
-
|
|
299
|
-
-
|
|
300
|
-
- Identity: always captured automatically from the Slack session.
|
|
304
|
+
2. If it IS an issue — gather context, run relevant read tools (logs, codebase) if useful, then
|
|
305
|
+
create the issue immediately. Do NOT ask "Should I create this?" or "Does that look right?"
|
|
306
|
+
ONLY pause if a critical piece of information is genuinely missing and cannot be inferred:
|
|
307
|
+
- Project is completely unknown AND list_projects doesn't help → ask once, briefly.
|
|
308
|
+
- Everything else: use your best judgment and act.
|
|
301
309
|
3. Populate `findings` with curated evidence — only when relevant and concise:
|
|
302
|
-
-
|
|
303
|
-
|
|
304
|
-
|
|
305
|
-
|
|
306
|
-
|
|
307
|
-
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
310
|
+
- Summarise: which services, how often, key pattern, 1-3 example lines. Max 500 words.
|
|
311
|
+
- Do NOT paste raw tool output.
|
|
312
|
+
4. After creating, tell them the issue was queued and Sentinel will pick it up on the next poll.
|
|
313
|
+
|
|
314
|
+
Autonomous action policy — Sentinel acts, humans review outcomes:
|
|
315
|
+
- Read/investigate tools → always act immediately, no confirmation needed.
|
|
316
|
+
- create_issue, retry_issue, trigger_poll, install_tool, pull_repo → act immediately when
|
|
317
|
+
intent is clear. Only pause for genuinely ambiguous target (unknown project/repo).
|
|
318
|
+
- merge_pr → confirm once: "Merging PR #N for <repo> to <branch> — confirm?" Then act.
|
|
319
|
+
- pause_sentinel → confirm once (halts all monitoring).
|
|
320
|
+
- Everything else → use judgment. When in doubt, act and report what you did.
|
|
313
321
|
|
|
314
322
|
When the engineer's request is fully handled, end your LAST message with the token: [DONE]
|
|
315
323
|
IMPORTANT: Always write your actual reply text FIRST, then append [DONE] at the end. Example: "Hello! I'm Sentinel. [DONE]". Never output [DONE] as your only content.
|
|
@@ -341,11 +349,11 @@ _TOOLS = [
|
|
|
341
349
|
{
|
|
342
350
|
"name": "create_issue",
|
|
343
351
|
"description": (
|
|
344
|
-
"Deliver
|
|
345
|
-
"
|
|
346
|
-
"(2)
|
|
347
|
-
"
|
|
348
|
-
"
|
|
352
|
+
"Deliver an issue/task to a Sentinel project instance. "
|
|
353
|
+
"Call this as soon as you have identified: (1) a real issue or task (not a status question "
|
|
354
|
+
"or casual chat), (2) the target project, (3) enough context to describe the problem. "
|
|
355
|
+
"Act immediately — do not ask the user for confirmation first. "
|
|
356
|
+
"Only pause if the target project is genuinely unknown and cannot be inferred."
|
|
349
357
|
),
|
|
350
358
|
"input_schema": {
|
|
351
359
|
"type": "object",
|