#!/usr/bin/env bash # One-off A/B test runner: runs the Knowledge Curator (Hermes) on CMP-78 using # DeepSeek V4-Pro instead of the default Sonnet 4.5 (via marcus/sonnet gateway). # Compare against CMP-80 which runs with the default config. set -euo pipefail PROFILE_HOME="/home/chaim/.hermes/profiles/curator-cmp-deepseek" PAPERCLIP_API_URL="http://localhost:3100/api" # CMP curator agent's Paperclip key (from Infisical: nautilus /legal-ai HERMES_CURATOR_CMP_PAPERCLIP_KEY) PAPERCLIP_API_KEY="pcp_c87edcf306d06fce13fac701bb6d747191d61dba5b51e903" PAPERCLIP_TASK_ID="beb745e5-7195-40c5-9ac0-e9682c2c5184" # CMP-78 PAPERCLIP_TASK_KEY="$PAPERCLIP_TASK_ID" PAPERCLIP_TASK_TITLE="[ערר 1130-25] סקירת ידע — Knowledge Curator (DeepSeek A/B test)" PAPERCLIP_RUN_ID="deepseek-ab-$(date +%s)" PAPERCLIP_WAKE_REASON="manual_deepseek_ab_test" # Rendered prompt — copy of the curator template with mustache variables resolved # manually for CMP-78. We also add a clear "[ניסוי DeepSeek V4-Pro]" prefix so # the resulting comment is distinguishable from the default-Sonnet run on CMP-80. read -r -d '' PROMPT <<'EOF' || true אתה מנהל ידע (Knowledge Curator) של ועדת הערר. נעור על תיק שדפנה סימנה כסופי. תיק: [ערר 1130-25] סקירת ידע — Knowledge Curator issue ID: beb745e5-7195-40c5-9ac0-e9682c2c5184 run reason: manual_deepseek_ab_test **הקשר חשוב — ניסוי A/B:** זוהי ריצה ידנית באמצעות DeepSeek V4-Pro במקום ה-Sonnet הרגיל. כל ה-comment שתפרסם חייב להתחיל בכותרת `[ניסוי DeepSeek V4-Pro]` כדי שנוכל להבדיל מהריצה המקבילה ב-CMP-80 (שרצה עם Sonnet). אל תעיר סוכנים אחרים. אל תיצור issues חדשים. אל תפתח interaction. הוראות: דפנה סימנה את ההחלטה הסופית של תיק 1130-25 כסופית. קובץ סופי: `סופי-1130-25.docx` סקור את ההחלטה מול skills/decision/SKILL.md ו-docs/legal-decision-lessons.md. חפש 3-5 דפוסי סגנון/דיון שלא תועדו. כתוב comment בעברית, ניטרלי, ממוספר. # שלבי ביצוע ## 1. קונטקסט - קרא את MEMORY.md שלך (memory tool) — מה כבר זיהית. - קרא `/home/chaim/legal-ai/skills/decision/SKILL.md` (file tool) — מה כבר תועד. ## 2. נתונים - `mcp__legal-ai__case_get` עם case_number `1130-25` — מטא-דאטה. - `mcp__legal-ai__case_get_final_text` עם case_number `1130-25` — קרא את הטקסט המלא של ההחלטה הסופית. - אם רלוונטי: `mcp__legal-ai__search_decisions` להשוואה לחלטות קודמות. ## 3. ניתוח חפש 3-5 דפוסים/פערים. לכל ממצא: מה ראיתי + מה זה אומר + הצעה ניסוחית מדויקת. ## 4. כתוב comment הממצאים ```bash curl -sS -X POST -H "Authorization: Bearer $PAPERCLIP_API_KEY" -H "Content-Type: application/json" \ -d "$(jq -n --arg b "$BODY" '{body:$b}')" \ "$PAPERCLIP_API_URL/issues/$PAPERCLIP_TASK_ID/comments" ``` פורמט ה-body: - שורה ראשונה: `[ניסוי DeepSeek V4-Pro]` - אחר כך פסקה אחת מבוא קצרה - אחר כך הממצאים ממוספרים ## 5. סגור את ה-issue ```bash curl -sS -X PATCH -H "Authorization: Bearer $PAPERCLIP_API_KEY" -H "Content-Type: application/json" \ -d '{"status":"done"}' "$PAPERCLIP_API_URL/issues/$PAPERCLIP_TASK_ID" ``` # כללים - אל תעדכן קבצים (skills/, lessons.py, DB) בעצמך. רק comment. - אל תיצור issues חדשים. - אל תעיר סוכנים אחרים. - אל תפתח interaction. - בעיה? comment קצר עם הסיבה + סגור (status=done). EOF export HERMES_HOME="$PROFILE_HOME" export PAPERCLIP_API_URL PAPERCLIP_API_KEY PAPERCLIP_TASK_ID PAPERCLIP_TASK_KEY \ PAPERCLIP_TASK_TITLE PAPERCLIP_RUN_ID PAPERCLIP_WAKE_REASON echo "=== DeepSeek V4-Pro Curator A/B test on CMP-78 ===" echo "HERMES_HOME=$HERMES_HOME" echo "TASK_ID=$PAPERCLIP_TASK_ID" echo "RUN_ID=$PAPERCLIP_RUN_ID" echo "Starting Hermes..." echo "---" hermes -z "$PROMPT" --yolo chat 2>&1