docs(help): bring the user guide back in line with the current app The help was written on 2026-10-14 and about forty user-visible changes merged since without touching it, so several pages described controls that no longer exist: Missions still listed four playbooks and a Save step for preferences that now save on each change, the depth editor kept its old names, notifications still had their former switches, and voice input pointed to a microphone button that is not in the composer. Every English page was re-checked claim by claim against the current labels (English UI messages) and behaviour, then the nine translations were updated to match, using each locale's own UI labels. Notable corrections: Missions (Compare two models, autosaving defaults with Apply to / Global / Reset, Subsession nesting depth, prepared hand-offs, retired-task interrupts, the named causes of "Mission Control is unavailable", standalone server support); conversations and history (reasoning/tool durations, token lines adding up the cleanup selection, presets including Nothing, timeline markers following Message content, in-place reveal of long text, Open in session, focus after send, Queue message / Steer now, Retrying); settings (notification routing table and defaults, Stats, Mode, info tips, Server setting badge, localized native menus); shortcuts (72 actions, Clear shortcut, Ctrl/Cmd+K); voice (More actions entries, Save status); files (live Workspace refresh, Show 200 more); OpenCode, install, server and updates (2.1.1 recommended, OpenCode 2 beside an older installation, version card first, private loopback listener for Missions, preview releases offered once all builds are published); providers, integrations, browser, SideCars, desktop and remote pages. Translations also repaired older drift, mainly the project-tab closing passages. The Chat settings table header (Default state, its title, item column, the thinking row and its accessible label) was still English in eight locales; it is now translated so the help can cite what users see. AGENTS.md now asks every PR changing user-visible behavior to update the affected help pages in the same PR, since CI validates structure and links but not whether the text still matches the UI; it also corrects the needs-input notification default. USER_HELP.md no longer claims native menus stay English. Validation: npm run test:help (all ten locales, 25 pages, heading ids unchanged), a full help build, and the i18n and transcript-visibility unit tests.
9.8 KiB
שליטה מרחוק
שליטה מרחוק מאפשרת לדפדפן או ללקוח שולחן עבודה מצומד להשתמש בשרת הקצה הפועל של CodeNomad בלי לפתוח יציאת רשת נכנסת. אין צורך בסיסמת שרת, ב־--host שאינו loopback או ב־VPN. זהו נתיב גישה נפרד מ־חיבורים ישירים.
הפעלה וצימוד
- במארח, פתחו הגדרות → גישה מרוחקת.
- בחרו הפעל שליטה מרחוק. המתינו ל־מוכן לחיבורים מרחוק; בשימוש ראשון הקצאת זהות המנהרה והתעודה עשויה לקחת זמן.
- תחת חיבור מכשיר נוסף, סרקו את קוד ה־QR או בחרו העתק קישור, ואז פתחו את הקישור החד־פעמי במכשיר המיועד.
- שמרו את נתוני האתר בדפדפן המצומד. פתחו שוב את כתובת המנהרה כדי להתחבר מחדש בזמן ששרת הקצה פועל.
הקישור תקף ל־חמש דקות ומצליח פעם אחת. התייחסו אליו כאישור גישה: כל מי שמנצל אותו יכול להפוך למכשיר מצומד. הקוד נמצא במקטע הכתובת, לא במחרוזת השאילתה. צור קישור צימוד חדש מבטל מיד את הקישור הקודם שלא נוצל. עצירה, כיבוי שרת הקצה וכשל במנהרה מבטלים קישורי צימוד שטרם נוצלו.
לצימוד CodeNomad נוסף לשולחן העבודה, בחרו התחבר לשרת CodeNomad בדף הבית שלו, הדביקו את הקישור ב־כתובת השרת, ובחרו התחבר. קישור צימוד פותח את החלון שלו גם מ־שמור, כי פתיחתו מנצלת את הקוד. רק מקור המנהרה נשמר כסימנייה; הקוד אינו נשמר. אימות TLS נשאר פעיל לקישורי צימוד.
ניהול מכשירים מצומדים
- במארח, חזרו אל הגדרות → גישה מרוחקת → שליטה מרחוק.
- בדקו מכשירים מצומדים ואת זמן נראה לאחרונה שלהם. כל מכשיר נקרא על שם הפלטפורמה והדפדפן שצימדו אותו, כגון
iPhone · Safari. - בחרו בטל גישה למכשיר שכבר לא אמור להתחבר.
ביטול גישה מסיים את חיבורי HTTP/SSE הנוכחיים של המכשיר וגם גישה עתידית. בצעו צימוד מחדש בקישור חדש לשחזור הגישה. מכשיר פג לאחר 30 ימים ללא שימוש. ב־מגבלת 32 מכשירים, צימוד חדש מחליף את המכשיר שנראה לפני הזמן הרב ביותר וסוגר את חיבוריו.
שרת הקצה שומר גיבובי אישורים, לא אישורי מכשיר גולמיים, ב־remote-control-devices.json תחת בסיס התצורה שלו. הלקוח מחזיק עוגיית מכשיר תחומה למארח עם Secure, HttpOnly, SameSite=Lax. חייה בדפדפן יכולים להיות ארוכים ממגבלת חוסר הפעילות של 30 יום בשרת; המרשם נשאר הסמכות. ניקוי נתוני אתר, החלפת פרופיל דפדפן או גלישה פרטית עשויים לחייב צימוד מחדש.
שינוי סיסמת גישה ישירה אינו מבטל מכשירים. עצור שליטה מרחוק מנתק את המנהרה אך שומר את רשימת המכשירים המצומדים; השתמשו ב־בטל גישה כשברצונכם להסיר הרשאה.
צימוד מחדש בלי לאבד את המקום
- אם הלקוח מציג יש לצמד מחדש את המכשיר הזה, השאירו את הדף פתוח.
- במארח, בחרו צור קישור צימוד חדש ופתחו אותו ב־אותו דפדפן/פרופיל לקוח. לשרת שמור בשולחן העבודה, התחברו מחדש בקישור הצימוד החדש כדי להשתמש שוב באחסון החלון המרוחק הקיים שלו.
- חזרו לדף הממתין ובחרו בדיקת חיבור; הבדיקה מתבצעת שוב גם כשהדף חוזר למיקוד.
ההתאוששות משמרת את הדף הפתוח והטיוטות; היא אינה חוזרת על פעולה שנכשלה. בדקו אם שליחה, תשובה או מחיקה נכנסו לתוקף לפני ניסיון חוזר. סיסמת גישה ישירה אינה יכולה לשחזר צימוד לשליטה מרחוק.
זמינות ומשך חיים
| פעולה/מצב | השפעה |
|---|---|
| הפעלת שליטה מרחוק | מחברת את שרת הקצה הזה וזוכרת את הבחירה להפעלות עתידיות. |
| סגירת הדפדפן המרוחק | אינה עוצרת את שרת הקצה במארח או מבטלת את המכשיר. |
| עצירת שליטה מרחוק | מנתקת גישה ומנקה חידוש אוטומטי בהפעלה; שומרת רשומות מכשירים. |
| כיבוי שרת הקצה / חלון שולחן העבודה האחרון נסגר והיישום יוצא | שליטה מרחוק הופכת ללא מקוונת. השירות המשותף של OpenCode יכול להמשיך לפעול, אך אינו יכול להגיש ממשק זה דרך שרת קצה עצור. |
| הפעלה לאחר השארת שליטה מרחוק מופעלת | מתחברת מחדש ברקע בלי להנפיק קישור צימוד חדש. התקנות שמעולם לא הופעלו אינן מפעילות את עצמן. |
| חידוש שנכשל או שגיאת מנהרה קטלנית | הבחירה הזכורה נשארת והמארח מציג את השגיאה; סמל הרענון בכרטיס השליטה מרחוק קורא מחדש את מצבה. הפעל שליטה מרחוק מנסה שוב מיד; עצור שליטה מרחוק מנקה את הבחירה. אחרת, הפעלה מאוחרת יותר מנסה שוב. |
חידוש אוטומטי בהפעלה מוגבל לשרת קצה אחד לכל תיקיית תצורה. אל תפעילו מארחים מתחרים עם אותה תצורה כדי להשיג קיבולת מנהרה נוספת. למארח שצריך להישאר נגיש לאחר יציאה משולחן העבודה, פרסו שרת עצמאי המנוהל בנפרד; שליטה מרחוק אינה דמון עצמאי.
ממשקים זמינים ולא זמינים
מכשירים מצומדים יכולים להשתמש ב־API רגילים של פרויקטים/שיחות, לשלוח קלט, לבדוק קבצים ולענות לאישורים/טפסים בכפוף לאותן בדיקות בעלות. צימוד הוא גישה חזקה, לא קישור שיתוף לקריאה בלבד. הוא לעולם אינו מעניק הרשאות loopback, גם שהמנהרה מעבירה תעבורה פנימית במארח.
| ממשק | דרך שליטה מרחוק |
|---|---|
| ממשק מאומת רגיל, סביבות עבודה, שיחות ו־SSE | זמין למכשיר מצומד. |
| התחברות/יציאה בסיסמה, שינויי סיסמה, אתחול אסימון מקומי | לא זמינים; נדרשים אישורי מכשיר גם אם אימות ישיר מושבת. |
| מצב שליטה מרחוק | ניתן לקריאה בידי מכשיר מצומד; הניהול אינו זמין. הפעלה/עצירה, יצירת צימוד, רשימת מכשירים וביטול גישה נשארים בנתיב הגישה של המארח. |
| ניהול חלונות מרוחקים/שרתים בשולחן העבודה ונתיבי מתווך | לא זמינים (/api/remote-servers/, /api/remote-proxy/). |
| מתווך תוכן של SideCar | לא זמין (/sidecars/). הדבר אינו אומר שכל ממשקי SideCar חסומים: לקוחות מצומדים עדיין יכולים לגשת לממשקי הרישום /api/sidecars. |
| תוכן תצוגה מקדימה וגשר אוטומציה | לא זמינים (/previews/, /api/opencode-plugin/). יכולות שולחן עבודה מקוריות אינן הופכות ליכולות דפדפן. |
| שדרוגי WebSocket | לא זמינים בכניסת שליטה מרחוק. |
השתמשו ב־חיבור ישיר מוגן כראוי כאשר תהליך עבודה מחייב ממשק מתווך/WebSocket חסום. שליטה מרחוק אינה עוברת אוטומטית לנתיב הזה.
ממסר ופרטיות
CodeNomad משתמש ב־OpenTunnel ותובע נתיב אקראי אחד בזהות המנהרה המשותפת כברירת מחדל במחשב. עצירה משחררת את הגשר של CodeNomad, לא את הזהות המשותפת המשמשת יישומים אחרים.
TLS מסתיים בשרת הקצה של CodeNomad. הממסר מעביר טקסט מוצפן ואינו יכול לקרוא תוכן יישום, אך יכול לראות שמות מארחים, זמני חיבור ונפחי תעבורה. תעודת המנהרה/המפתח הפרטי נשארים במארח. הגנו על אחסון המנהרה של המארח ועל תצורת CodeNomad כאישורי גישה; כתובת שאי אפשר לנחש אינה הרשאה.
CODENOMAD_REMOTE_CONTROL_API בוחר API של OpenTunnel באירוח עצמי; כשהוא אינו מוגדר משתמשים בשירות המתארח. הדבר משנה את פריסת המנהרה, לא את דרישות הצימוד או הממשקים החסומים. ראו אבטחה לטיפול באישורים ובאבחון.