guycoful

project-workspace

"מארגן פרויקט מפוזר לתיקיית workspace ייעודית עם שלד קבצי ניהול מלא (CLAUDE.md, SESSION_BRIEF.md, AGENTS.md, access.md, sessions-index.md), מנייד קבצים קיימים באמצעות סקריפט אוטונומי, ורושם טריגרים לקריאה אוטומטית בסשנים הבאים. הפעלה: 'תיצור תיקיית פרויקט', 'workspace לפרויקט', 'תפריד את הפרויקט', 'תנייד לתיקייה', 'תבודד פרויקט X', 'extract project', 'הפרויקט מפוזר', 'רוצה תיקייה נפרדת', 'תארגן את פרויקט X', 'תיצור workspace ל-X', 'הפרויקט צריך בית משלו', 'תרכז את הקבצים של X'."

guycoful 0 Updated 3w ago

Resources

4
GitHub

Install

npx skillscat add guycoful/project-workspace

Install via the SkillsCat registry.

SKILL.md

project-workspace: חילוץ ובידוד פרויקטים ל-workspaces ייעודיים

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

קבצים ומיקומים

  • תיקיית היעד לפרויקט: C:\Users\guyco\Desktop\פרויקט\projects\<slug>/
  • קבצי תבניות השלד (Assets):
    • AGENTS.template.md
    • CLAUDE.template.md
    • SESSION_BRIEF.template.md
    • access.template.md
    • sessions-index.template.md
  • סקריפט האוטומציה המרכזי: isolate_project.py
  • רישום טריגרים ראשי: CLAUDE.md (שורש ה-workspace הראשי)
  • רישום זיכרון ארוך-טווח: MEMORY.md (שורש ה-workspace הראשי)

🚨 חוקי ברזל בלתי מתפשרים (GOLDEN RULES - ZERO TOLERANCE)

  1. הצגה ואישור משתמש הם חוסם מוחלט (Blocker): אסור בשום אופן לנייד קבצים או לשנות את CLAUDE.md/MEMORY.md הראשיים לפני הצגת רשימת הקבצים המלאה וקבלת אישור מפורש מגיא ("כן", "בצע" או אישור בממשק).
  2. שמירה על היסטוריית Git: במידה והפרויקט מנוהל ב-Git, ניוד קבצים חייב להתבצע אך ורק באמצעות git mv. אסור להשתמש ב-mv רגיל על קבצים מנוהלים כדי לא לאבד את היסטוריית הגרסאות שלהם.
  3. מניעת דריסת מידע (No Overwrite): במידה וקיים כבר קובץ יעד בתיקיית הפרויקט החדשה, האוטומציה תדלג עליו ולא תדרוס אותו. במקרה של סתירה, יש לעצור ולשאול את גיא.
  4. אפס ניחושים והמצאות: שדות שאינם ידועים בשלב האפיון (כמו סיסמאות, כתובות IP או שמות שותפים שלא הוזכרו) ייכתבו כ-[לברר] או [טרם נקבע]. אסור להמציא פרטים על מנת למלא תבניות.
  5. עדכון זיכרון כפול: פרויקט חדש אינו נחשב "מושלם" עד שלא נוצר עבורו קובץ זיכרון יומי ב-memory/project_<slug>_workspace.md והתווסף קישור בתוך MEMORY.md.

מצבי עבודה ושלבי ביצוע

מצב A: אבחון ואיסוף מידע (Discovery)

לפני ביצוע פעולה, אסוף את הנתונים הבאים מגיא או מתוך שיחת ההקשר:

  1. שם הפרויקט (שם תצוגה): למשל "Valor", "מקפצה", "Lumina".
  2. סניף/Slug באנגלית: שם התיקייה באותיות קטנות (למשל valor, makpatza, lumina).
  3. מהות הפרויקט: תיאור תמציתי של המערכת הנבנית (למשל "מערכת ניהול לידים לסוכנות", "האתגר הפיננסי של עומרי").
  4. סוג הקשר עסקי: קובע את סגנון העבודה והגבלות ה-IP:
    • שותפות (Partnership): עבודה משותפת, חלוקת רווחים (כמו מקפצה).
    • שכיר (Employee): שעות עבודה מוגדרות, הפרדת IP מוחלטת (כמו Valor).
    • לקוח סוכנות (Client): פרויקט הטמעה מוגדר, הצעת מחיר ב-Prospero.
    • פרויקט אישי (Internal): פיתוח פנימי של גיא.
  5. בעלי עניין מרכזיים (Stakeholders): שמות, תפקידים וערוצי קשר מועדפים.
  6. מצב Git: ודא האם התיקייה מנוהלת ב-Git כדי לבחור את פקודת הניוד הנכונה.

מצב B: סריקה ומיפוי קבצים (Scanning & Mapping)

בצע סריקה לאיתור קבצים מפוזרים השייכים לפרויקט.

  1. השתמש בסריקה אוטומטית לפי מילות מפתח מזהות (שם הפרויקט, שמות האנשים, שמות שרתים).
  2. חפש גם בתיקיות משנה נפוצות כגון outputs/, docs/, plans/, וscratch/.
  3. רכז את הממצאים לטבלה ברורה:
נתיב מקורי יעד מתוכנן סיבת שיוך ביטחון (גבוה/בינוני)
outputs/lumina_brief.md projects/lumina/lumina_brief.md מכיל את שם הפרויקט גבוה
scratch/test_liron.py projects/lumina/test_liron.py לירון הוא השותף הטכנולוגי בפרויקט בינוני

מצב C: הצגה ואישור (Review & Block)

הצג את הטבלה לגיא בצורה מסודרת בעברית תקינה RTL.
שאל במפורש: "האם לאשר את ניוד הקבצים הללו ויצירת ה-Workspace ?"
עצור והמתן לתשובה!

מצב D: הרצת האוטומציה (Scaffolding & Migration)

לאחר קבלת האישור, צור קובץ קונפיגורציה זמני בשם scratch/workspace_config.json בפורמט הבא:

{
  "slug": "lumina",
  "name": "Lumina",
  "type": "לקוח סוכנות",
  "stakeholders": [
    {
      "name": "לירון",
      "role": "שותף טכנולוגי",
      "channel": "WhatsApp"
    }
  ],
  "keywords": ["lumina", "לירון", "fashion discovery"],
  "workspace_root": "C:\\Users\\guyco\\Desktop\\פרויקט",
  "execute_move": true,
  "files_to_move": [
    "outputs/lumina_brief.md",
    "scratch/test_liron.py"
  ]
}

הרז את סקריפט האוטומציה באמצעות פקודת המעטפת:

python "C:\Users\guyco\.claude\skills\project-workspace\scripts\isolate_project.py" "C:\Users\guyco\Desktop\פרויקט\scratch\workspace_config.json"

הסקריפט יבצע באופן אוטומטי ובטוח:

  1. בניית התיקייה projects/<slug>/ ותיקיית המשנה sessions/.
  2. קריאת 5 קבצי התבניות מתוך תיקיית ה-assets/ של הסקיל, החלפת תגיות הפלייסהולדר ({{SLUG}}, {{NAME}} וכו') בנתונים האמיתיים, וכתיבתם ליעד.
  3. ניוד הקבצים בפועל (עם git mv או mv לפי הצורך) לתוך תיקיית הפרויקט.
  4. עדכון CLAUDE.md הראשי ורישום סעיף הפרויקט החדש.
  5. יצירת קובץ הזיכרון memory/project_<slug>_workspace.md ועדכון הקישור ב-MEMORY.md.

מבנה קבצי הניהול שנוצרים

חמשת קבצי הניהול מוגדרים כך:

  1. CLAUDE.md: מגדיר את הנחיות העבודה של הסוכנים בתוך ה-workspace המבודד. הוא דורש התאמה של סעיף ה-conventions לפי סוג ההתקשרות (למשל, שעות עבודה, IP, או אופן הפנייה לגיא).
  2. SESSION_BRIEF.md: משמש כלוח העבודה היומי של הסוכן (Task board). הוא מכיל את המצב הנוכחי ואת הצעד הבא, ומתעדכן בכל תחילת וסיום סשן עבודה.
  3. AGENTS.md: מכיל את רשימת אנשי הקשר של הפרויקט, תפקידיהם ודרכי התקשורת איתם.
  4. access.md: מרכז את המערכות הטכנולוגיות המעורבות בפרויקט (מסדי נתונים, שרתים, APIs) ודרכי הגישה אליהם (ללא סודות חשיפים).
  5. sessions-index.md: משמש כאינדקס פגישות וסיכומי שיחות, ומקשר לסיכומי השיחות השמורים בתיקיית sessions/.

🎯 בדיקת תקינות והצלחה (Verification)

כדי לוודא שהתהליך הושלם ב-100%:

  • ודא שכל 5 קבצי הניהול קיימים בתיקייה projects/<slug>/.
  • הרץ git status וודא שהקבצים המנוידים מופיעים כ-renamed (ירוק).
  • פתח את CLAUDE.md הראשי וודא שהטריגרים מופיעים בצורה תקינה.
  • ודא שנוצר קובץ זיכרון בתיקיית memory/ ושקיים אליו מצביע ב-MEMORY.md.