> ## Documentation Index
> Fetch the complete documentation index at: https://docs.befailproof.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# התחברות

> התחבר ל-FailproofAI מה-CLI כדי להפעיל תזכורות ותכונות מותאמות אישית

```bash theme={null}
failproofai auth login    # email + one-time code
failproofai auth logout   # revoke this session
failproofai auth whoami   # print the signed-in identity
```

צורת הדגל המורשת `--login` / `--logout` / `--whoami` עדיין מקובלת כשם חלופי לתאימות לאחור.

ההתחברות היא התחייבות כרצונית. מדיניות, לוח בקרה, דף `/audit`, וכל תכונה מקומית אחרת עובדים בדיוק אותו דבר בין אם אתה מחובר או לא. משטח ההתחברות קיים כך שתכונות **שדורשות** זהות יציבה (תזכורות ביקורת חוזר היום, עוד בעתיד) יש להן מקום להטביע.

## זרימת ההתחברות

```bash theme={null}
failproofai auth login
```

מבקש את הדוא״ל שלך, שולח קוד חד-פעמי בן 6 ספרות לכתובת זו, מבקש את הקוד, ובהצלחה כותב `~/.failproofai/auth.json` (מצב `0600`). אותה הפעלה אז נראית בלוח הבקרה בתוך האפליקציה — לחיצה על `[ set a reminder ]` ב-`/audit` תראה אותך כמחובר.

לוח הבקרה חושף אותה זרימה כדו-שיח מודאלי ב-`/audit` למשתמשים שלעולם לא נוגעים ב-CLI.

## התנתקות

```bash theme={null}
failproofai auth logout
```

מבטל את ההפעלה הנוכחית בשרת ומוחק את `~/.failproofai/auth.json`. אם שרת ה-API אינו ניתן להשגה, הקובץ המקומי מוסר בכל זאת — כוונה מקומית להתנתק תמיד מנצחת.

## בדיקת זהות

```bash theme={null}
failproofai auth whoami
```

הדפס `<email> (<user uuid>)` ויצא עם קוד 0 כאשר הפעלה תקפה קיימת, או `not signed in` ויצא עם קוד 1 אחרת. רענן בשקט את אסימון הגישה ברקע אם הוא בתוך דקה מפקיעה.

## תזכורת ביקורת חוזר קבועה

כאשר אתה לוחץ על **`[ set a reminder ]`** בדף `/audit` (או התחברות דרך המודאל שהכפתור מגביל דרכו), לוח הבקרה כותב קובץ בן לוויה קטן ב-`~/.failproofai/next-audit.json`:

```json theme={null}
{
  "next_audit_at": 1780765200,
  "user_email": "you@example.com",
  "set_at": 1780160574
}
```

קובץ זה מתויחס לדוא״ל שלו הוגדר עבור — עבור ההפעלה של ה-CLI ללא הפעלה אחרת מסתיר כל תזכורת ששייכת למשתמש הקודם. ההיסט ברירת המחדל הוא **7 ימים**, סדור מאוחר יותר כאשר המתזמן נוחת. נוצר עם הרשאות `0600` כמו `auth.json`.

נקודת הקצה `/api/auth/reminder` של לוח הבקרה חושפת `GET` (קריאה), `POST` (הגדרה / תזמון מחדש), ו-`DELETE` (ניקוי) ודורשת הפעלה פעילה.

## מה ב-`~/.failproofai/auth.json`

```json theme={null}
{
  "access_token": "eyJhbGc…",
  "refresh_token": "9ede3e…",
  "access_expires_at": 1780160574,
  "refresh_expires_at": 1782748974,
  "user": { "id": "<uuid>", "email": "you@example.com" }
}
```

נוצר עם הרשאות `0600` (קריאה/כתיבה בבעלות בלבד). אסימון הגישה הוא JWT HS256 של שעה אחת; אסימון הרענון הוא מחרוזת אקראית אטומה של 256 סיביות ששרת אחסן כ-`SHA-256(token)`. משחק מחדש של אסימון רענון מתגלה בצד השרת ומבטל כל הפעלה עבור המשתמש.

## משתנים סביבה

| משתנה                  | ברירת מחדל                   | מטרה                                                                     |
| ---------------------- | ---------------------------- | ------------------------------------------------------------------------ |
| `FAILPROOF_API_URL`    | `https://api.befailproof.ai` | החלף את URL בסיס שרת ה-API. שימושי לפיתוח מקומי מול שרת API מעוצב עצמאי. |
| `FAILPROOFAI_AUTH_DIR` | `~/.failproofai`             | החלף היכן מאוחסן `auth.json`. בעיקר לבדיקות.                             |

ראה [משתנים סביבה](/he/cli/environment-variables) לקבלת הרשימה המלאה.

## פתרון בעיות

**"Could not reach the api-server"** — ה-CLI לא יכול לפתוח חיבור TCP ל-`FAILPROOF_API_URL`. בדוק את הרשת שלך, או הגדר `FAILPROOF_API_URL` אם אתה מפעיל שרת API מעוצב עצמאי.

**"Rate limited"** — יותר מדי ניסיונות התחברות בחלון של 15 דקות לדוא״ל זה (5/דוא״ל) או IP (20/IP), או קיזום שלח מחדש של 30 שניות לאחר הבקשה הקודמת לאותו דוא״ל. הודעת השגיאה כוללת את חלון retry-after בשניות.

**Code rejected** — ה-OTP היה שגוי, פקע, או השורה פגעה בנעילה של 5 ניחושים שגויים שלה. הרץ `failproofai auth login` שוב כדי לבקש קוד חדש.
