Salt la conținutul principal
Workflows îi ajută pe utilizatori să definească o serie de pași care ghidează Cascade printr-un set repetitiv de sarcini, cum ar fi deploy‑ul unui serviciu sau răspunsul la comentarii din PR. Aceste Workflows sunt salvate ca fișiere Markdown, oferind utilizatorilor și echipelor lor o modalitate ușor de reprodus de a rula procese esențiale. După ce sunt salvate, Workflows pot fi rulate în Cascade printr-o comandă slash în formatul /[name-of-workflow]

Cum funcționează

Regulile oferă, în general, modelelor de limbaj de mari dimensiuni îndrumare prin furnizarea unui context persistent și reutilizabil la nivel de prompt. Fluxurile de lucru extind acest concept, oferind o succesiune structurată de pași sau prompturi la nivel de traiectorie, ghidând modelul printr-o serie de sarcini sau acțiuni interconectate.
Pentru a executa un flux de lucru, utilizatorii îl pornesc pur și simplu în Cascade folosind comanda /[workflow-name].
Puteți apela alte fluxuri de lucru dintr-un flux de lucru!

De exemplu, /workflow-1 poate include instrucțiuni precum „Call /workflow-2” și „Call /workflow-3”.
La invocare, Cascade procesează pe rând fiecare pas definit în fluxul de lucru, efectuând acțiuni sau generând răspunsuri conform specificațiilor.

Cum creezi un Workflow

Pentru a începe să lucrezi cu Workflows, fă clic pe pictograma Customizations din meniul glisant din dreapta sus din Cascade, apoi accesează panoul Workflows. Aici, poți face clic pe butonul + Workflow pentru a crea un nou Workflow. Workflows sunt salvate ca fișiere Markdown în directoarele .windsurf/workflows/ și includ un titlu, o descriere și o serie de pași cu instrucțiuni specifice pe care Cascade să le urmeze.

Descoperirea fluxurilor de lucru

Windsurf descoperă automat fluxuri de lucru din mai multe locații pentru a permite o organizare flexibilă:
  • Workspace-ul curent și subdirectoarele: Toate directoarele .windsurf/workflows/ din workspace-ul curent și subdirectoarele acestuia
  • Structura repository-ului Git: Pentru repository-urile Git, Windsurf caută și în sus, până la directorul rădăcină al repository-ului, pentru a găsi fluxuri de lucru în directoarele părinte
  • Suport pentru multiple workspace-uri: Când sunt deschise mai multe foldere în același workspace, fluxurile de lucru sunt deduplicate și afișate cu cea mai scurtă cale relativă

Locații de stocare pentru workflow-uri

Workflow-urile pot fi stocate în oricare dintre următoarele locații:
  • .windsurf/workflows/ în directorul workspace-ului curent
  • .windsurf/workflows/ în orice subdirector al workspace-ului
  • .windsurf/workflows/ în directoarele părinte până la rădăcina Git (pentru repository-urile Git)
Când creezi un workflow nou, acesta va fi salvat în directorul .windsurf/workflows/ al workspace-ului curent, nu neapărat la rădăcina Git. Fișierele workflow sunt limitate la 12.000 de caractere fiecare.

Generează un workflow cu Cascade

Poți și să îi ceri lui Cascade să îți genereze workflow‑uri! Acest lucru funcționează mai ales pentru workflow‑uri care implică o serie de pași într‑un anumit instrument CLI.

Exemple de fluxuri de lucru

Există o multitudine de cazuri de utilizare pentru fluxurile de lucru, precum:

/address-pr-comments

Acesta este un flux de lucru pe care echipa noastră îl folosește intern pentru a rezolva comentariile din PR:
1. Fă checkout pe branch‑ul PR: `gh pr checkout [id]`

2. Obține comentariile din PR

 bash
 gh api --paginate repos/[owner]/[repo]/pulls/[id]/comments | jq '.[] | {user: .user.login, body, path, line, original_line, created_at, in_reply_to_id, pull_request_review_id, commit_id}'

3. Pentru FIECARE comentariu, fă următoarele. Ține minte: abordează câte un comentariu pe rând.
 a. Afișează următorul text: „(index). De la [user] pe [file]:[lines] — [body]”
 b. Analizează fișierul și intervalul de linii.
 c. Dacă nu înțelegi comentariul, nu face nicio modificare. Cere-mi doar clarificări sau să îl implementez eu.
 d. Dacă crezi că poți face modificarea, fă-o ÎNAINTE de a trece la următorul comentariu.

4. După ce toate comentariile au fost procesate, rezumă ce ai făcut și care comentarii necesită atenția UTILIZATORULUI.

/git-workflows

Fă commit folosind formate predefinite și creează pull request‑uri cu titluri și descrieri standardizate, utilizând comenzile CLI adecvate.

/dependency-management

Automatizează instalarea sau actualizarea dependențelor proiectului pe baza unui fișier de configurare (de ex., requirements.txt, package.json).

/code-formatting

Rulează automat formatarea codului (de exemplu, Prettier, Black) și lintere (de exemplu, ESLint, Flake8) la salvarea fișierelor sau înainte de commit, pentru a menține stilul codului și a depista erorile din timp.

/run-tests-and-fix

Rulează sau adaugă teste unitare ori end‑to‑end și remediază automat erorile pentru a asigura calitatea codului înainte de commit, merge sau deploy.

/deployment

Automatizează pașii pentru a‑ți livra aplicația în diverse medii (dezvoltare, staging, producție), incluzând verificările necesare înainte de deploy sau verificările de după deploy.

/security-scan

Integrează și declanșează scanări de vulnerabilități de securitate pe baza de cod ca parte a pipeline‑ului CI/CD sau la cerere.
I