From 3da4d73498e5fd25c1726f17b54f793aef236a39 Mon Sep 17 00:00:00 2001 From: Chaim Date: Thu, 16 Apr 2026 16:10:56 +0000 Subject: [PATCH] Upgrade agents to Claude Opus 4.7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - legal-analyst: opus 4.6 → opus 4.7 - legal-proofreader: opus 4.6 → opus 4.7 - legal-writer: sonnet 4.6 → opus 4.7 (complex block writing benefits from stronger model) - block_writer MODEL_MAP: updated opus ID to 4.7 Opus 4.7 brings: high-res images (2576px), better file-based memory, improved DOCX generation, and task budgets for agentic loops. Co-Authored-By: Claude Opus 4.6 (1M context) --- .claude/agents/legal-analyst.md | 10 +++++++++- .claude/agents/legal-proofreader.md | 10 +++++++++- .claude/agents/legal-writer.md | 10 +++++++++- mcp-server/src/legal_mcp/services/block_writer.py | 6 +++--- 4 files changed, 30 insertions(+), 6 deletions(-) diff --git a/.claude/agents/legal-analyst.md b/.claude/agents/legal-analyst.md index 698161b..fd1e1fb 100644 --- a/.claude/agents/legal-analyst.md +++ b/.claude/agents/legal-analyst.md @@ -1,7 +1,7 @@ --- name: "legal-analyst" description: "מנתח ומחקר משפטי — חילוץ טענות, ניתוח אסטרטגי, זיהוי חוזקות/חולשות, והפקת שאלות מחקר ממוקדות" -model: "claude-opus-4-6" +model: "claude-opus-4-7" tools: - Read - Bash @@ -36,6 +36,14 @@ tools: עבוד תמיד בעברית. +## סינון תיקים לפי חברה + +⚠️ **אתה אחראי רק על תיקים ששייכים לחברה שלך** (`$PAPERCLIP_COMPANY_ID`): +- CMP (`42a7acd0-...`) → רק תיקים **1xxx** (רישוי ובניה) +- CMPA (`8639e837-...`) → רק תיקים **8xxx, 9xxx** (היטל השבחה / פיצויים) + +אם issue מכוון לתיק שלא בטווח שלך — סרב ודווח ב-comment. + ## תחומי התמחות הסוכן ממוקד בתחומים הבאים: diff --git a/.claude/agents/legal-proofreader.md b/.claude/agents/legal-proofreader.md index 70d8e6c..1d39143 100644 --- a/.claude/agents/legal-proofreader.md +++ b/.claude/agents/legal-proofreader.md @@ -1,7 +1,7 @@ --- name: "legal-proofreader" description: "מגיה מסמכים — תיקון שגיאות OCR בטקסט משפטי עברי לפני ניתוח" -model: "claude-opus-4-6" +model: "claude-opus-4-7" tools: - Read - Write @@ -22,6 +22,14 @@ tools: עבוד תמיד בעברית. +## סינון תיקים לפי חברה + +⚠️ **אתה אחראי רק על תיקים ששייכים לחברה שלך** (`$PAPERCLIP_COMPANY_ID`): +- CMP (`42a7acd0-...`) → רק תיקים **1xxx** (רישוי ובניה) +- CMPA (`8639e837-...`) → רק תיקים **8xxx, 9xxx** (היטל השבחה / פיצויים) + +אם issue מכוון לתיק שלא בטווח שלך — סרב ודווח ב-comment. + ## רקע מסמכים משפטיים (כתבי ערר, תגובות, פרוטוקולים) מגיעים כסריקות PDF. מנוע OCR מחלץ מהם טקסט ושומר אותו כקבצי MD. אבל ה-OCR לא מושלם — במיוחד בעברית משפטית: diff --git a/.claude/agents/legal-writer.md b/.claude/agents/legal-writer.md index c372347..c9ea6a2 100644 --- a/.claude/agents/legal-writer.md +++ b/.claude/agents/legal-writer.md @@ -1,7 +1,7 @@ --- name: "legal-writer" description: "כותב החלטה — כתיבת בלוקים ה-יא של ההחלטה בסגנון דפנה תמיר" -model: "claude-sonnet-4-6" +model: "claude-opus-4-7" tools: - Read - Bash @@ -32,6 +32,14 @@ tools: עבוד תמיד בעברית. +## סינון תיקים לפי חברה + +⚠️ **אתה אחראי רק על תיקים ששייכים לחברה שלך** (`$PAPERCLIP_COMPANY_ID`): +- CMP (`42a7acd0-...`) → רק תיקים **1xxx** (רישוי ובניה) +- CMPA (`8639e837-...`) → רק תיקים **8xxx, 9xxx** (היטל השבחה / פיצויים) + +אם issue מכוון לתיק שלא בטווח שלך — סרב ודווח ב-comment. + ## לפני שאתה מתחיל — קרא! 1. **מתודולוגיה אנליטית: `docs/decision-methodology.md`** — איך לחשוב על החלטה diff --git a/mcp-server/src/legal_mcp/services/block_writer.py b/mcp-server/src/legal_mcp/services/block_writer.py index 611992f..e5070c5 100644 --- a/mcp-server/src/legal_mcp/services/block_writer.py +++ b/mcp-server/src/legal_mcp/services/block_writer.py @@ -27,8 +27,8 @@ logger = logging.getLogger(__name__) # ── Block configuration ─────────────────────────────────────────── -# Output token limits per Anthropic docs (April 2026): -# Opus 4.6: up to 128K output tokens +# Output token limits per Anthropic docs: +# Opus 4.7: up to 128K output tokens (new tokenizer — ~35% more tokens) # Sonnet 4.6: up to 64K output tokens # Streaming required when max_tokens > 21,333 BLOCK_CONFIG = { @@ -48,7 +48,7 @@ BLOCK_CONFIG = { MODEL_MAP = { "sonnet": "claude-sonnet-4-20250514", - "opus": "claude-opus-4-20250514", + "opus": "claude-opus-4-7", }