מה זה GitHub Spec Kit
Spec Kit הוא כלי קוד פתוח וחינמי לגמרי שפותח על ידי GitHub. הוא הופך את המפרט: המסמך שמתאר מה המוצר עושה ולמי, למקור האמת שממנו נוצר הקוד, במקום לתת לסוכן AI לכתוב קוד מתוך פרומפטים מפוזרים.
השיטה נקראת Spec-Driven Development (בקיצור SDD), ובעברית: פיתוח מונחה מפרט.

הריפו הרשמי: github.com/github/spec-kit, מעל 130 אלף כוכבים, רישיון MIT
הכלי לא קשור לסוכן מסוים. הוא עובד עם Claude Code, GitHub Copilot, Codex, Cursor, Gemini CLI ועוד עשרות סוכנים אחרים.
הבעיה שזה פותר
כשעובדים בשיטת vibe coding: זורקים פרומפטים לסוכן ומקווים לטוב, אין שום מקור אמת חוץ מהקוד עצמו. התוצאה מוכרת לכל מי שבנה משהו רציני עם AI:
- מבקשים לתקן דבר אחד, והסוכן שובר דבר אחר
- כל שיחה חדשה מתחילה מאפס, בלי זיכרון של ההחלטות הקודמות
- אין דרך לבדוק אם מה שנבנה זה באמת מה שרצינו
- גם אם כתבתם מסמך דרישות, הוא מתיישן תוך יומיים ואף אחד לא חוזר אליו
הסיבה פשוטה: לסוכן אין על מה להישען. הוא מנחש מתוך הקוד הקיים ומתוך המשפט האחרון שכתבתם.
ב-Spec Kit ההיגיון מתהפך. משהו לא עובד? לא נוגעים בקוד: מדייקים את המפרט ומריצים שוב.
איך התהליך עובד
כל שלב מייצר קובץ Markdown שמזין את השלב הבא. זה מה שנותן לסוכן הקשר מסודר במקום פרומפטים אקראיים:
| שלב | התוצר | מה קורה בו |
|---|---|---|
specify | spec.md | מתארים בשפה חופשית מה בונים ולמי, בלי מילה על טכנולוגיה |
plan | plan.md | הסוכן מחליט על הצד הטכני: stack, מבנה נתונים, איך החלקים מתחברים |
tasks | tasks.md | התוכנית מתפרקת למשימות קטנות וממוקדות בסדר תלויות נכון |
implement | קוד | רק עכשיו נוגעים בקוד. הסוכן בונה משימה אחרי משימה לפי מה שסוכם |
איך להתקין
דרישות מקדימות
- Python בגרסה 3.11 ומעלה
- uv לניהול חבילות (מומלץ) או pipx
- סוכן קוד: Claude Code, GitHub Copilot, Codex, Gemini CLI, Cursor ועוד
- Windows, macOS או Linux: כולם נתמכים, כולל סקריפטים ל-PowerShell בלי WSL
שימו לב לפני שמתקינים
החבילה specify-cli שב-PyPI מפגרת אחרי הריפו. התקנה רגילה תביא לכם גרסה ישנה עם פקודות שונות לגמרי. אני בדקתי את זה על המחשב שלי, PyPI החזיר גרסה 0.0.20 בזמן שהגרסה הנוכחית היא 1.0.1.
לכן ההתקנה הנכונה היא מהמקור, נעולה לתגית שחרור. החליפו את v1.0.1 בתגית האחרונה מעמוד ה-Releases בריפו:
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git@v1.0.1
בדיקה שהכל עלה: זו התוצאה האמיתית אצלי:

ההתקנה מהמקור, ואחריה specify version שמאשר גרסה 1.0.1
אתחול פרויקט
פקודה אחת יוצרת את כל התשתית. שימו לב שאין כאן הורדה מהרשת, התבניות ארוזות בתוך החבילה עצמה, ולכן הן תמיד תואמות לגרסת ה-CLI שהתקנתם.
specify init taskify --integration claude --script ps

הפלט האמיתי: כל שלב באתחול מסומן בירוק, כולל התקנת האינטגרציה והתבניות
על Mac או Linux החליפו את ps ב-sh. אפשר גם py לסקריפטים בפייתון.
רוצים לאתחל בתיקייה שאתם כבר נמצאים בה?
specify init . --integration claude
דגלים שימושיים
| דגל | מה הוא עושה |
|---|---|
--integration <key> | בוחר את סוכן הקוד: claude, copilot, gemini, codex ועוד |
| `—script sh | ps |
--here | מאתחל בתיקייה הנוכחית במקום ליצור תיקייה חדשה |
--force | ממזג לתוך תיקייה שכבר יש בה קבצים, בלי לשאול |
--non-interactive | בלי תפריטים. חובה כשסוכן מריץ את זה בשבילכם, אחרת הוא נתקע |
--preset <id> | מתקין preset מוכן בזמן האתחול (יש 33 כאלה בקהילה) |
--extension <name> | מתקין תוסף, למשל git לניהול פיצ’רים ב-branches. חוזר על עצמו |
--ignore-agent-tools | מדלג על בדיקת הימצאות הסוכן במחשב |
מה נוצר בתיקייה
זה העץ האמיתי שנוצר אצלי אחרי הפקודה. שתי תיקיות: אחת של הסוכן ואחת של Spec Kit.

.claude/skills מכיל את הפקודות שהסוכן יריץ, ו-.specify את התבניות והסקריפטים
- .specify/templates: התבניות שמהן נבנים spec.md, plan.md ו-tasks.md
- .specify/memory/constitution.md: כללי הברזל של הפרויקט
- .specify/scripts: סקריפטי העזר שהסוכן מריץ מאחורי הקלעים
- .claude/skills/speckit-*: תשע הפקודות, כל אחת עם קובץ SKILL.md משלה
איך קוראים לפקודות אצלכם
זו נקודה שמבלבלת המון אנשים. שם הפקודה משתנה לפי הסוכן:
| הסוכן | הפקודה | הערה |
|---|---|---|
| Claude Code | /speckit-specify | מקף. מותקן כ-skill |
| Copilot / Gemini / Cursor | /speckit.specify | נקודה |
| Codex / ZCode | $speckit-specify | דולר במקום סלאש |
| Kimi | /skill:speckit-specify | קידומת skill |
השלבים זהים בכל המקרים: רק התחביר משתנה. הפלט של האתחול מדפיס לכם את הצורה המדויקת:

Spec Kit מדפיס בסוף האתחול את כל תשע הפקודות בתחביר של הסוכן שבחרתם
הפקודות: אחת אחת
specify: מה בונים
כותבים בשפה חופשית מה המוצר עושה ולמי הוא מיועד. בלי מילה על טכנולוגיה. הסוכן הופך את זה למסמך מפרט מסודר.
“אפליקציה לניהול משימות לצוותים קטנים. כל משתמש רואה רק את הפרויקטים שלו.”
plan: איך בונים
הסוכן לוקח את המפרט ומחליט על הצד הטכני. כאן, ורק כאן, נכנסים פרטי המימוש: ה-stack, מבנה הנתונים ואיך החלקים מתחברים, עם נימוק לכל החלטה.
“Next.js עם Postgres, אימות דרך Clerk, פריסה ב-Vercel.”
tasks: פירוק לעבודה
התוכנית מתפרקת ל-tasks.md: משימות קטנות וממוקדות, מסודרות לפי תלויות. זה מה שמונע מהסוכן לקפוץ באמצע ולשבור דברים.
implement: כתיבת הקוד
רק עכשיו נוגעים בקוד. הסוכן מריץ את המשימות לפי הסדר. אפשר להריץ פעם אחת על הכל, או לפצל לשלבים כשהפיצ’ר גדול.
חמש הפקודות הנוספות
- constitution: קובע את כללי הברזל של הפרויקט (אבטחה, ארכיטקטורה, תיעוד). מריצים פעם אחת בהתחלה, וכל שלב אחר כך נבחן מולם
- clarify: שואל אתכם על מקומות מעורפלים במפרט לפני שממשיכים לתכנון. עדיף לענות על חמש שאלות עכשיו מאשר לגלות טעות אחרי אלף שורות קוד
- checklist: מייצר צ’קליסט איכות למפרט, מעין בדיקות יחידה לדרישות
- analyze: בודק שהמפרט, התוכנית והמשימות לא סותרים אחד את השני. לקריאה בלבד: אם הוא מסמן בעיה, מתקנים במקור ומריצים שוב
- converge: בודק את הקוד שנבנה מול המפרט. אם יש פערים הוא מוסיף משימות חדשות, ומריצים implement שוב עד שהוא מדווח שהכל סגור
איך נראה מפרט בפועל
זו הנקודה שהכי קשה לדמיין, אז הנה דוגמה. ככה נראה spec.md אחרי הרצת specify על תיאור של אפליקציית משימות לצוותים, בדיוק לפי התבנית ש-Spec Kit מתקין:

כל סיפור משתמש מקבל עדיפות P1/P2/P3, מבחן עצמאי, ותרחישי קבלה בפורמט Given / When / Then
החלק השני הוא הדרישות וקריטריוני ההצלחה. שימו לב לסימון האדום: ככה Spec Kit מסמן משהו שהוא לא יודע, במקום לנחש:

כל דרישה ממוספרת (FR-001) וכל קריטריון הצלחה מדיד (SC-001). ה-NEEDS CLARIFICATION האדום הוא בדיוק מה ש-clarify יבוא לפתור
שימו לב מה אין כאן: אין React, אין Postgres, אין שם של ספרייה. המפרט מתאר רק מה ולמי. הטכנולוגיה נכנסת רק בשלב plan.
דוגמה מלאה מקצה לקצה
כל התהליך, מהתקנה עד קוד עובד:
uv tool install specify-cli --from git+https://github.com/github/spec-kit.git@v1.0.1
specify init taskify --integration claude --script ps
cd taskify
ואז, בתוך הסוכן (כאן בתחביר של Claude Code):
/speckit-constitution
“כל קלט משתמש עובר ולידציה. כל פונקציה מתועדת.”
/speckit-specify
“אפליקציית ניהול משימות לצוותים. משתמש יוצר פרויקטים, משייך משימות לחברי צוות, וגורר אותן בין עמודות סטטוס.”
/speckit-clarify
/speckit-plan
“Next.js, Postgres, גרירה ושחרור עם dnd-kit.”
/speckit-tasks
/speckit-analyze
/speckit-implement
/speckit-converge
בסוף התהליך יש לכם קוד עובד וגם שלושה מסמכים שמסבירים בדיוק למה הוא נראה ככה. הפיצ’ר הבא מתחיל מהם, לא מאפס.
האקוסיסטם

אתר התיעוד הרשמי: github.github.io/spec-kit
- 38 אינטגרציות לסוכני קוד: מחליפים סוכן בפקודה אחת, בלי נעילה לספק
- 157 תוספים מהקהילה, מ-90 מפתחים שונים
- 33 presets מוכנים: תהליכים מותאמים לתחומים שונים
- ה-CLI מכיל עוד תת-פקודות מעבר ל-init: check לבדיקת סביבה, self לעדכון הכלי, extension, preset, bundle ו-workflow
טיפים
- אל תזכירו טכנולוגיה בשלב specify. אם אתם כותבים React או Postgres שם, אתם מקבעים החלטות לפני שהבנתם את הבעיה
- תמיד הריצו clarify לפני plan. חמש שאלות עכשיו חוסכות שעתיים תיקונים אחר כך
- כשמשהו יוצא לא נכון: תקנו את spec.md, לא את הקוד. אחרת המפרט מתיישן והכל חוזר לנקודת ההתחלה
- לפיצ’רים גדולים, הריצו implement על שלב אחד בכל פעם במקום על הכל ביחד
- constitution הוא המקום לכללים שחוזרים בכל פרויקט, אבטחה, סגנון, תיעוד. כותבים פעם אחת ומעתיקים
- converge הוא רשת הביטחון: הוא בודק את הקוד מול המפרט ומוסיף משימות למה שנשכח
- המפרט הוא קובץ Markdown רגיל בריפו, אפשר לפתוח עליו PR, לבקש review ולנהל אותו כמו קוד
- לפרויקט קיים יש מדריך נפרד באתר, Adopting Spec Kit in an Existing Project, אל תריצו init רגיל על ריפו מלא
דברים לשים לב אליהם
- התקנה מ-PyPI מביאה גרסה ישנה. תמיד התקינו מהמקור עם תגית שחרור
- התהליך צורך יותר טוקנים מפרומפט בודד. זה משתלם לפיצ’ר אמיתי, פחות לתיקון של שורה אחת
- הפקודות זמינות רק אחרי specify init בתיקייה. אם הסוכן לא מזהה אותן, בדקו שאתם בתיקייה הנכונה
- הפיצ’ר הפעיל נקבע לפי הקובץ .specify/feature.json ולא לפי ה-branch שאתם עליו
- התיקייה .claude עלולה להכיל אסימוני גישה. Spec Kit עצמו מזהיר על זה בסוף האתחול, שקלו להוסיף אותה ל-gitignore
- Git לא מגיע מותקן כברירת מחדל. להפעלת עבודה עם branches הריצו:
specify extension add git
לינקים
- הריפו הרשמי: github.com/github/spec-kit
- כל הגרסאות (Releases): github.com/github/spec-kit/releases
- אתר התיעוד: github.github.io/spec-kit
- מדריך התחלה מהירה: github.github.io/spec-kit/quickstart.html