Add expanded workflow API endpoints and update CLAUDE.md
New endpoints: outcome, direction, claims, QA validation, learning loop, document text retrieval. Updated Dockerfile and project documentation. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
145
CLAUDE.md
145
CLAUDE.md
@@ -1,48 +1,119 @@
|
||||
# עוזר משפטי (Ezer Mishpati)
|
||||
# עוזר משפטי — Legal Decision Assistant
|
||||
|
||||
מערכת AI לסיוע בניסוח החלטות משפטיות בסגנון דפנה תמיר, יו"ר ועדת הערר מחוז ירושלים.
|
||||
## רקע הפרויקט
|
||||
|
||||
## כלי MCP זמינים
|
||||
מערכת AI לסיוע בכתיבת החלטות של **ועדת ערר לתכנון ובניה, מחוז ירושלים**, בראשות **עו"ד דפנה תמיר**.
|
||||
|
||||
### ניהול תיקים
|
||||
- `case_create` - יצירת תיק ערר חדש
|
||||
- `case_list` - רשימת תיקים (סינון אופציונלי לפי סטטוס)
|
||||
- `case_get` - פרטי תיק מלאים כולל מסמכים
|
||||
- `case_update` - עדכון פרטי תיק וסטטוס
|
||||
### מה עושה ועדת ערר?
|
||||
ועדת ערר היא גוף מעין-שיפוטי שדן בעררים על החלטות ועדות מקומיות לתכנון ובניה. הוועדה מקבלת חומרי מקור (כתבי ערר, תגובות, פרוטוקולים, תכניות), דנה בטענות הצדדים, ומוציאה **החלטה כתובה מנומקת** — מסמך משפטי פורמלי שניתן לביקורת שיפוטית בבית משפט לעניינים מנהליים.
|
||||
|
||||
### מסמכים
|
||||
- `document_upload` - העלאה ועיבוד מסמך (חילוץ טקסט → chunks → embeddings)
|
||||
- `document_upload_training` - העלאת החלטה קודמת של דפנה לקורפוס
|
||||
- `document_get_text` - קבלת טקסט מחולץ
|
||||
- `document_list` - רשימת מסמכים בתיק
|
||||
### שלושה סוגי עררים
|
||||
| סוג | מספרי תיקים | טון | מאפיין |
|
||||
|-----|-------------|-----|--------|
|
||||
| רישוי ובנייה | 1xxx | חם יחסית | הקשר תכנוני רחב, אלמנטים אנושיים |
|
||||
| היטל השבחה | 8xxx | קר ומקצועי | יבש, ללא רגשות |
|
||||
| פיצויים (ס' 197) | 9xxx | קר ומקצועי | דומה להיטל השבחה |
|
||||
|
||||
### חיפוש
|
||||
- `search_decisions` - חיפוש סמנטי בהחלטות ומסמכים
|
||||
- `search_case_documents` - חיפוש בתוך תיק ספציפי
|
||||
- `find_similar_cases` - מציאת תיקים דומים
|
||||
### מטרת המערכת
|
||||
לבנות כלי עבודה שמסייע ליו"ר הוועדה לנסח החלטות:
|
||||
1. **ניהול תיקים** — ייבוא חומרי מקור, סיווג מסמכים, מעקב סטטוס
|
||||
2. **בסיס ידע** — פסיקה, ביטויי מעבר, לקחים מהחלטות קודמות, חקיקה
|
||||
3. **חיפוש סמנטי (RAG)** — מציאת תקדימים רלוונטיים ופסקאות דומות
|
||||
4. **סיוע בכתיבה** — ייצור טיוטות לפי ארכיטקטורת 12 בלוקים בסגנון דפנה
|
||||
5. **ייצוא DOCX** — מסמך מעוצב מוכן להגשה
|
||||
|
||||
### ניסוח
|
||||
- `get_style_guide` - דפוסי הסגנון של דפנה
|
||||
- `draft_section` - הרכבת הקשר לניסוח סעיף (עובדות + תקדימים + סגנון)
|
||||
- `get_decision_template` - תבנית מבנית להחלטה
|
||||
- `analyze_style` - ניתוח סגנון על הקורפוס
|
||||
### מה היה קודם (Legacy)
|
||||
המערכת הקודמת היתה **Obsidian vault** עם Claude Code skills על שרת אחר. פותחו:
|
||||
- ניתוח סגנון של 3 החלטות (הכט — דחייה, בית הכרם — קבלה חלקית, אריאלי — השוואה)
|
||||
- ארכיטקטורת 12 בלוקים מבוססת CREAC / DITA / Akoma Ntoso / Federal Judicial Center
|
||||
- כללי כתיבה (רקע ניטרלי, ללא כפילות, טענות מקוריות בלבד)
|
||||
- לקחים מהשוואת טיוטות לגרסאות סופיות
|
||||
- סקריפט ייצוא DOCX
|
||||
|
||||
### תהליך עבודה
|
||||
- `workflow_status` - סטטוס מלא לתיק
|
||||
- `processing_status` - סטטוס כללי של המערכת
|
||||
כל החומר הועבר לתיקיית `legacy/` כקריאה בלבד. **הפרויקט הנוכחי** מעביר את הידע הזה למערכת מובנית עם PostgreSQL + pgvector + n8n.
|
||||
|
||||
## תהליך עבודה טיפוסי
|
||||
---
|
||||
|
||||
1. `/new-case` → יצירת תיק חדש
|
||||
2. `/upload-doc` → העלאת כתב ערר ותשובת ועדה
|
||||
3. חיפוש תיקים דומים
|
||||
4. `/draft-decision` → ניסוח סעיף אחר סעיף
|
||||
5. עריכה ושיפור עם Claude
|
||||
6. עדכון סטטוס → final
|
||||
## מסמכי ייחוס
|
||||
|
||||
## הנחיות ניסוח
|
||||
| מסמך | תוכן | מתי לקרוא |
|
||||
|------|-------|-----------|
|
||||
| [`docs/architecture.md`](docs/architecture.md) | ארכיטקטורת המערכת, תרשים רכיבים, זרימת נתונים, 4 שכבות DB | לפני עבודה על תשתית |
|
||||
| [`docs/block-schema.md`](docs/block-schema.md) | הגדרת 12 בלוקים — content model, constraints, processing params | **לפני כל כתיבת החלטה** |
|
||||
| [`docs/migration-plan.md`](docs/migration-plan.md) | תוכנית מעבר vault → DB — טבלאות, עדיפויות, כמויות | לפני ייבוא נתונים |
|
||||
| [`memory/legal-decision-lessons.md`](memory/legal-decision-lessons.md) | לקחים מ-3 החלטות — מה עבד, מה השתנה, ביטויי מעבר חדשים | **לפני כל כתיבת החלטה** |
|
||||
| [`memory/MEMORY.md`](memory/MEMORY.md) | הקשר כללי — skills, פרויקטים שהושלמו, מבנה vault | להתמצאות כללית |
|
||||
| [`skill-legal-decision/SKILL.md`](skill-legal-decision/SKILL.md) | מדריך סגנון מלא של דפנה — טון, מבנה, ביטויים, מתודולוגיה | **לפני כל כתיבת החלטה** |
|
||||
| [`TASKS.md`](TASKS.md) | רשימת משימות המעבר לפי שלבים | מעקב התקדמות |
|
||||
|
||||
- כל ההחלטות בעברית
|
||||
- שמור על סגנון דפנה (השתמש ב-`get_style_guide` לפני ניסוח)
|
||||
- הפנה לתקדימים מהקורפוס
|
||||
- המבנה: רקע → טענות עוררים → טענות משיבים → דיון → מסקנה → החלטה
|
||||
---
|
||||
|
||||
## שרת Nautilus (158.178.131.193)
|
||||
|
||||
| שירות | תפקיד | כתובת |
|
||||
|-------|--------|-------|
|
||||
| Coolify | ניהול containers | `http://158.178.131.193:8000` |
|
||||
| PostgreSQL + pgvector | בסיס נתונים ראשי | `legal-ai-postgres` |
|
||||
| Redis | תור משימות | `legal-ai-redis` |
|
||||
| n8n | אוטומציית workflows | להגדרה |
|
||||
| Gitea | מאגר קוד | `gitea.nautilus.marcusgroup.org` |
|
||||
| ezer-mishpati-web | ממשק העלאת מסמכים | `upload.nautilus.marcusgroup.org` |
|
||||
| Infisical | ניהול סודות | `secret.dev.marcus-law.co.il` |
|
||||
|
||||
---
|
||||
|
||||
## מבנה תיקיות
|
||||
|
||||
```
|
||||
/home/chaim/legal-ai/
|
||||
├── CLAUDE.md ← הקובץ הזה
|
||||
├── TASKS.md ← משימות המעבר
|
||||
├── docs/ ← תיעוד המערכת
|
||||
│ ├── architecture.md ארכיטקטורה
|
||||
│ ├── block-schema.md 12 בלוקים (המסמך החשוב ביותר)
|
||||
│ └── migration-plan.md תוכנית מעבר vault → DB
|
||||
├── legacy/dafna-tamir/ ← vault מקורי (קריאה בלבד)
|
||||
│ ├── .claude/skills/ skills מקוריים
|
||||
│ ├── 01_Projects/ תיקים פעילים + חומרי מקור
|
||||
│ └── 04_Archive/ תיקים שהושלמו
|
||||
├── memory/ ← ידע מצטבר מהמערכת הקודמת
|
||||
│ ├── MEMORY.md אינדקס
|
||||
│ └── legal-decision-lessons.md לקחים מ-3 החלטות
|
||||
├── skill-legal-decision/ ← מדריך סגנון + references
|
||||
├── skill-legal-docx/ ← עיצוב DOCX
|
||||
├── skill-legal-assistant/ ← קטלוג מסמכים
|
||||
├── data/
|
||||
│ ├── training/ ← 4 החלטות לאימון (DOCX)
|
||||
│ ├── uploads/ ← קבצים מ-web UI
|
||||
│ └── cases/ ← תיקי עררים
|
||||
├── web/ ← קוד ezer-mishpati-web
|
||||
├── mcp-server/ ← MCP server
|
||||
├── scripts/ ← סקריפטים
|
||||
└── docker/ ← Docker configs
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## ניהול משימות — TaskMaster AI
|
||||
|
||||
הפרויקט משתמש ב-**TaskMaster AI** (MCP server) לניהול משימות מובנה:
|
||||
- **תמיד** להשתמש ב-TaskMaster לפירוק, מעקב וניהול משימות — לא ב-TASKS.md ידני
|
||||
- קובץ המשימות: `tasks/tasks.json`
|
||||
- פקודות עיקריות: `get_tasks`, `next_task`, `add_task`, `update_task`, `expand_task`
|
||||
- לפני התחלת עבודה → `next_task` כדי לדעת מה הבא לפי תלויות
|
||||
- אחרי סיום משימה → `update_task` עם status=done
|
||||
- משימה מורכבת → `expand_task` לפירוק לתתי-משימות
|
||||
|
||||
---
|
||||
|
||||
## עקרונות כתיבה קריטיים
|
||||
|
||||
1. **"מבחן השופט"** — כל החלטה חייבת להיות קריאה לשופט שלא מכיר את התיק
|
||||
2. **"רקע ניטרלי"** — בלוק ו = עובדות בלבד. אין ציטוטים מצדדים, אין מילות שיפוט
|
||||
3. **"ללא כפילות"** — בלוק י (דיון) מפנה לבלוקים קודמים, לא חוזר עליהם
|
||||
4. **"טענות מקוריות בלבד"** — בלוק ז = מכתבי טענות מקוריים בלבד. השלמות → בלוק ח
|
||||
5. **ארכיטקטורת 12 בלוקים** — ראה `docs/block-schema.md`
|
||||
|
||||
## יו"ר: עו"ד דפנה תמיר
|
||||
- מדריך סגנון מלא: `skill-legal-decision/SKILL.md`
|
||||
- סגנון מקורי (vault): `legacy/dafna-tamir/.claude/skills/legal-decision/SKILL.md`
|
||||
|
||||
Reference in New Issue
Block a user