Salt la conținutul principal
Memories este sistemul de partajare și salvare a contextului între conversații. În Windsurf există două mecanisme pentru acest lucru: Memories, care pot fi generate automat de Cascade, și regulile, care sunt definite manual de utilizator atât la nivel local, cât și la nivel global.

Cum să gestionezi Memories

Memories și Rules pot fi accesate și configurate oricând făcând clic pe pictograma Customizations din meniul glisant din dreapta sus din Cascade sau prin „Windsurf - Settings” în colțul din dreapta jos. Pentru a edita o memorie existentă, dă clic pe ea și apoi pe butonul Edit.

Memorii

În timpul conversației, Cascade poate genera și stoca automat memorii dacă întâlnește context pe care îl consideră util de reținut. De asemenea, îi poți cere oricând lui Cascade să creeze o memorie. Doar spune-i lui Cascade să „creeze o memorie despre …”. Memoriile generate automat de Cascade sunt asociate cu workspace-ul în care au fost create, iar Cascade le va regăsi atunci când consideră că sunt relevante. Memorii create într-un workspace nu vor fi disponibile în altul.
Crearea și utilizarea memoriilor generate automat NU consumă credite

Reguli

Utilizatorii își pot defini explicit propriile reguli pe care Cascade să le respecte. Regulile pot fi definite fie la nivel global, fie la nivel de workspace. global_rules.md - reguli aplicate în toate workspace-urile .windsurf/rules - director la nivel de workspace care conține reguli asociate cu globuri sau descrieri în limbaj natural.

Descoperirea regulilor

Windsurf descoperă automat reguli din mai multe locații pentru a oferi o organizare flexibilă:
  • Workspace-ul curent și subdirectoarele: Toate directoarele .windsurf/rules din workspace-ul tău curent și din subdirectoarele acestuia
  • Structura depozitului Git: Pentru depozitele Git, Windsurf caută și până la directorul rădăcină al repo-ului pentru a găsi reguli în directoarele părinte
  • Suport pentru multiple workspace-uri: Când sunt deschise mai multe foldere în același workspace, regulile sunt deduplicate și afișate cu cea mai scurtă cale relativă

Locații de stocare pentru Rules

Rules pot fi stocate în oricare dintre aceste locații:
  • .windsurf/rules în directorul workspace-ului curent
  • .windsurf/rules în orice subdirector al workspace-ului
  • .windsurf/rules în directoarele părinte până la rădăcina git (pentru repo-urile git)
Când creați o regulă nouă, aceasta va fi salvată în directorul .windsurf/rules al workspace-ului curent, nu neapărat la rădăcina git. Pentru a începe cu Rules, faceți clic pe pictograma Customizations din meniul glisant din dreapta sus din Cascade, apoi navigați la panoul Rules. Aici puteți face clic pe butonul + Global sau + Workspace pentru a crea reguli noi la nivel global, respectiv la nivel de workspace.
Puteți găsi șabloane de reguli exemplu, selectate de echipa Windsurf, la https://windsurf.com/editor/directory pentru a vă ajuta să începeți.
Fișierele Rules sunt limitate la 12.000 de caractere fiecare.

Moduri de activare

La nivel de regulă, poți defini cum ar trebui activată o regulă pentru Cascade. Există 4 moduri:
  1. Manual: Această regulă poate fi activată manual prin @mention în câmpul de introducere al Cascade
  2. Always On: Această regulă va fi aplicată întotdeauna
  3. Model Decision: Pe baza unei descrieri în limbaj natural a regulii, definită de utilizator, modelul decide dacă să aplice regula.
  4. Glob: Pe baza unui tipar glob definit de utilizator (de ex. .js, src/**/.ts), această regulă va fi aplicată tuturor fișierelor care se potrivesc tiparului.

Cele mai bune practici

Pentru a ajuta Cascade să îți urmeze regulile cât mai eficient, respectă aceste bune practici:
  • Păstrează regulile simple, concise și specifice. Regulile prea lungi sau vagi pot deruta Cascade.
  • Nu este nevoie să adaugi reguli generice (de ex. „scrie cod bun”), deoarece acestea sunt deja incluse în datele de antrenare ale lui Cascade.
  • Formatează regulile folosind puncte, liste numerotate și markdown. Acestea sunt mai ușor de urmat de către Cascade decât un paragraf lung. De exemplu:
# Ghiduri de Codificare 
- Limbajul de programare al proiectului meu este Python
- Folosește returnări timpurii când este posibil
- Adaugă întotdeauna documentație când creezi funcții și clase noi
  • Etichetele XML pot fi o modalitate eficientă de a transmite și de a grupa reguli similare. De exemplu:
<coding_guidelines>
- Limbajul de programare al proiectului meu este Python
- Folosește returnări timpurii când este posibil
- Adaugă întotdeauna documentație când creezi funcții și clase noi
</coding_guidelines>

Reguli la nivel de sistem (Enterprise)

Organizațiile Enterprise pot implementa reguli la nivel de sistem care se aplică la nivel global în toate workspace-urile și nu pot fi modificate de către utilizatorii finali fără permisiuni de administrator. Acest lucru este ideal pentru aplicarea unitara a standardelor de codare la nivelul întregii organizații, a politicilor de securitate și a cerințelor de conformitate. Regulile la nivel de sistem sunt încărcate din directoare specifice sistemului de operare: macOS:
/Library/Application Support/Windsurf/rules/*.md
Linux/WSL:
/etc/windsurf/rules/*.md
Windows:
C:\ProgramData\Windsurf\rules\*.md
Plasați fișierele de reguli (ca fișiere .md) în directorul corespunzător pentru sistemul de operare pe care îl utilizați. Sistemul va încărca automat toate fișierele .md din aceste directoare.

Cum funcționează regulile la nivel de sistem

Regulile la nivel de sistem sunt combinate cu regulile de workspace și regulile globale, oferind context suplimentar pentru Cascade, fără a suprascrie regulile definite de utilizator. Acest lucru permite organizațiilor să stabilească standarde de bază, permițând în același timp echipelor să adauge personalizări specifice proiectului. În interfața Windsurf, regulile la nivel de sistem sunt afișate cu eticheta „System” și nu pot fi șterse de către utilizatorii finali.
Important: Regulile la nivel de sistem ar trebui gestionate de echipa dumneavoastră IT sau de securitate. Asigurați-vă că echipele interne se ocupă de implementare, actualizări și conformitate în acord cu politicile organizației dumneavoastră. Puteți folosi instrumente și fluxuri de lucru standard, precum Mobile Device Management (MDM) sau Configuration Management, pentru a face acest lucru.