# פרק 4 - סוכנים, סאב-אייג'נטים, פלאגינים והוקים

> "Agent מנהל משימה. Sub-agent מקבל חלק קטן ומוגדר ממנה."

---

## 4.1 סוכן וסאב-אייג'נט - המנהל והעוזרים

**האנלוגיה:** אתם מנהלים פרויקט. יש לכם עוזר ראשי (הסשן שלכם). לפעמים הוא שולח מישהו לחדר אחר: "לך תבדוק את כל הציטוטים בביבליוגרפיה ותחזור עם רשימת בעיות". העוזר בחדר האחר עובד על **שולחן משלו** (קונטקסט נפרד), ומחזיר רק את השורה התחתונה.

זה **סאב-אייג'נט**. ולמה זה מעולה:
1. **הפלט הענק נשאר בחדר האחר.** ריצת בדיקות של 3,000 שורות, סריקה של 200 קבצים - לשולחן שלכם חוזרת פסקה.
2. **מקביליות.** "תחקור את התיקון של האתר, את מבנה הנתונים ואת האנליטיקס - במקביל, שלושה סוכנים נפרדים". קורה בו-זמנית.
3. **גבולות.** סוכן ביקורת שמקבל רק Read (בלי Write) לא יכול לשבור כלום.

**"תפקיד אחד, מטרה אחת, תוצר אחד."** סאב-אייג'נט טוב בודק מקורות ומחזיר רשימה. הוא לא מנהל את כל הדוקטורט.

**מתי לא:** כשהמשימות תלויות זו בזו. שני סוכנים שעורכים את אותו קובץ במקביל = בלגן. "רק כשאפשר להפריד את העבודה בלי לאבד שליטה."

### סוכנים מובנים
- **Explore** - חיפוש מהיר, קריאה בלבד. "איפה בקוד מטופל הטופס?"
- **Plan** - מחקר לפני תוכנית.
- **general-purpose** - עובד כללי עם כל הכלים.
- **claude-code-guide** - עונה על "איך עושים X בקלוד קוד?" מהתיעוד. שימושי מאוד למתחילים: פשוט תשאלו.

### להגדיר סוכן משלכם
קובץ ב-`.claude/agents/<שם>.md` (פרויקט) או `~/.claude/agents/` (גלובלי):

```markdown
---
name: proposal-reviewer
description: בודק הצעות מחיר של E.Y. AI לפני שליחה. השתמש כשמבקשים "תבדוק את ההצעה".
tools: Read, Grep, Glob
model: sonnet
---
אתה מבקר הצעות מחיר. תבדוק: גוף שני, אין em dash, מחירים תואמים לקטלוג,
אין מסלולים שלא ביקשו, ה-CTA לא "אשמח לעבוד איתכם". תחזיר רשימת בעיות עם שורות.
```
מפעילים ב-`@proposal-reviewer` או "תשתמש ב-proposal-reviewer על הקובץ". יש גם `/agents` לניהול. שדות שימושיים: `tools` (רשימת היתר), `disallowedTools`, `model`, `permissionMode`, `memory: project` (זיכרון משלו), `isolation: worktree` (עותק נפרד של הריפו).

**Fork:** `/subtask נסח בדיקות לשינויים עד עכשיו` - סאב-אייג'נט שיורש את **כל** השולחן שלכם (לא מתחיל מאפס). טוב כשההקשר חשוב, יקר יותר.

### Workflows (מתקדם)
כשיש הרבה עבודה מקבילית - "תעבור על 30 קבצים ותבדוק כל אחד משלוש זוויות" - קלוד יכול לבנות **workflow**: סקריפט קצר שמפעיל צי סוכנים, אוסף תוצאות, מאמת. באפליקציה רואים את זה בפאנל ה-tasks. המילה `ultracode` בפרומפט אומרת לקלוד "מותר לך להשתמש בכמה סוכנים שצריך" (זה יקר, שמרו למשימות שוות).

### מה זה נותן לי?
- כל משימה "מלוכלכת" (בדיקות, סריקה, מחקר רחב) -> סאב-אייג'נט. השולחן נשאר נקי, המכסה נמתחת.
- סוכן-מבקר קבוע לכל תוצר שיוצא ללקוח.

---

## 4.2 Worktrees - עותק של המשרד לכל עובד

בפרויקטי גיט, אפליקציית הדסקטופ נותנת **לכל סשן חדש עותק מבודד של התיקייה** (git worktree, בתוך `.claude/worktrees/`). סשן א' עורך את הכותרת, סשן ב' משכתב את הפוטר - אף אחד לא דורך על השני. בסוף עושים merge.

בטרמינל זה אופציונלי: `claude --worktree`. סאב-אייג'נטים יכולים לקבל `isolation: worktree` גם הם.

**מתי זה קריטי:** שני סשנים (או קלוד וקודקס) על אותו פרויקט. פרק 6.

**מתי לא צריך:** תיקייה של מסמכים בלי גיט. (וגם אז - `git init` שווה, פרק 7.)

---

## 4.3 פלאגינים - הארגז שמביא כמה חלקים ביחד

**פלאגין** = חבילה שמתקינים פעם אחת ומקבלים: סקילים + סוכנים + הוקים + שרתי MCP + הגדרות. "Plugin הוא האריזה, לא העובד."

**דוגמה שנגעתם בה היום:** `telegram@claude-plugins-official` הביא שרת MCP (מדבר עם טלגרם), סקיל `/telegram:access`, פקודת `/telegram:configure`. שלושה חלקים, התקנה אחת.

**מאיפה:** marketplaces. הרשמי - `claude-plugins-official` (אנתרופיק). יש בו: security-guidance, code-review, frontend-design, skill-creator, plugin-dev, ralph-loop, session-report, וקבוצת "external": telegram, discord, imessage, github, playwright, context7, linear, asana, serena.

**איך:**
```
/plugin                                   <- מנהל הפלאגינים (או + -> Plugins באפליקציה)
/plugin install security-guidance@claude-plugins-official
/plugin marketplace add anthropics/skills <- להוסיף marketplace
/reload-plugins                           <- אחרי שינוי
```
סקילים מפלאגין נקראים `/שם-פלאגין:שם-סקיל` כדי שלא יתנגשו.

**פלאגין משלכם** = תיקייה עם `.claude-plugin/plugin.json` (שם, תיאור, גרסה) + `skills/`, `agents/`, `hooks/`, `.mcp.json`. בודקים עם `claude --plugin-dir ./my-plugin`. זו הדרך לארוז את כל ה-GenOS שלי לחבילה שמישהו אחר מתקין בפקודה אחת - וזה בדיוק מה שאעשה לקהילת הלימוד.

**אזהרה:** פלאגין = הרשאות רחבות (הוקים רצים אוטומטית, MCP מתחבר החוצה). אותו צ'קליסט אבטחה מפרק 3.6, רק יותר.

---

## 4.4 הוקים (Hooks) - חוקי הבית האוטומטיים

**האנלוגיה:** מזגן שנדלק לבד ב-25 מעלות. לא צריך לבקש. הוק = פקודת מחשב שרצה **אוטומטית** באירוע מסוים. בניגוד ל-CLAUDE.md (קלוד "משתדל" לציית), הוק **תמיד** קורה. דטרמיניסטי.

**אירועים:** לפני כלי (`PreToolUse`), אחרי כלי (`PostToolUse`), תחילת סשן, סוף סשן, כשקלוד מחכה לכם (`Notification`), יצירת worktree.

**דוגמאות שימושיות למי שלא מתכנת:**
- **פינג כשקלוד מחכה לי:** הוק על Notification שמשמיע צליל / שולח הודעה. הלכתם לשתות שייק - תדעו לחזור.
- **גיבוי אוטומטי:** SessionEnd -> `git commit -am "session end"`.
- **לסנן פלט ארוך:** PreToolUse על Bash - כשמריצים בדיקות, להוסיף `| grep FAIL` כדי שקלוד יראה רק כשלים. חוסך טוקנים.
- **חסימה:** PreToolUse שמונע `rm -rf` או כתיבה לתיקיית `raw/`.
- **security-guidance:** הפלאגין של אנתרופיק הוא בעצם 6 הוקים שסורקים כל עריכת קוד.

**איפה:** `~/.claude/settings.json` (גלובלי) או `.claude/settings.json` (פרויקט):
```json
{
  "hooks": {
    "Notification": [{ "hooks": [{ "type": "command", "command": "afplay /System/Library/Sounds/Glass.aiff" }] }]
  }
}
```
או פשוט: "תוסיף לי הוק שמשמיע צליל כשאתה מחכה לי" - קלוד יודע לכתוב אותו (יש לו סקיל `update-config`). יש גם הוקים מסוג `prompt` - "האם הפקודה הזאת בטוחה? אשר או דחה" - קלוד קטן שופט.

**כלל אצבע:** אם אתם אומרים "מעכשיו, כל פעם ש-X קורה תעשה Y" - זה הוק, לא זיכרון. זיכרון קלוד יכול לשכוח. הוק לא.

---

## 4.5 הרשאות מפורטות (settings.json)

במקום לאשר כל פעם, אפשר לרשום מראש:
```json
{
  "permissions": {
    "allow": ["Bash(git status)", "Bash(npm test)", "Read", "Edit"],
    "deny": ["Bash(rm -rf*)", "Read(.env)"]
  }
}
```
יש סקיל מובנה `/fewer-permission-prompts` שסורק את ההיסטוריה שלכם ומציע רשימת allow. `settings.local.json` = הגדרות אישיות שלא עולות לגיט.

---

## 4.6 סיכום: העובדים, הארגזים והחוקים

| דבר | הוא... | דוגמה |
|---|---|---|
| Session | העוזר הראשי, שולחן אחד | "בוא נכתוב את ההצעה" |
| Sub-agent | עוזר בחדר אחר, שולחן משלו | "תבדוק את הציטוטים ותחזור" |
| Agent (מוגדר) | עוזר עם תפקיד קבוע וכלים מוגבלים | proposal-reviewer |
| Workflow | צי סוכנים לפי סקריפט | ultracode על 30 קבצים |
| Worktree | עותק של המשרד | שני סשנים על אותו אתר |
| Skill | מתכון במגירה | /ey-ai-proposal |
| Plugin | ארגז: סקילים + סוכנים + הוקים + MCP | telegram |
| Hook | חוק בית אוטומטי | צליל כשקלוד מחכה |
| CLAUDE.md | הדף על הקיר | "אין em dash" |
