Ce face /goal (obiectiv persistent)
/goal este varianta Hermes a „buclei Ralph”, inspirată de /goal din Codex CLI. Setezi obiectivul, prima tură pornește imediat, iar după fiecare tură un model auxiliar decide done, continue sau blocked. La continue, Hermes trimite singur un prompt de continuare în aceeași sesiune. Bugetul implicit este de 20 de ture (goals.max_turns). Orice mesaj real de la tine are prioritate, iar starea supraviețuiește la /resume.
Pentru o judecată mai strictă poți da un contract de finalizare: /goal draft <text> îl redactează automat, sau scrii pe rânduri separate câmpuri ca verify:, constraints:, boundaries: și stop when:. /goal gate add <comandă> adaugă o comandă shell care trebuie să treacă înainte ca obiectivul să fie declarat atins. Criterii noi pe parcurs se adaugă cu /subgoal.
/goal rămâne într-o singură sesiune: nu creează carduri Kanban și nu împarte munca între profiluri. Mesajele afișate sunt de forma ⊙ Goal set (20-turn budget): …, ↻ Continuing toward goal (1/20): … și, la final, ✓ Goal achieved: … sau ⏸ Goal paused — N/20 turns used. ACP nu implementează momentan /goal.
Sintaxă și opțiuni
| Opțiune / Parametru | Descriere |
|---|---|
<text> |
Setează sau înlocuiește obiectivul și pornește prima tură. |
-- <text> |
Obiectiv care începe cu un cuvânt de control (pause, status, resume…). |
draft <text> |
Redactează un contract de finalizare cu modelul auxiliar și îl setează. |
show |
Afișează contractul activ. |
status (sau fără argument) |
Obiectivul, starea și turele folosite. |
pause / resume |
Oprește bucla fără să șteargă obiectivul / o reia (contorul revine la zero). |
clear |
Șterge obiectivul. |
wait <pid> [motiv] / unwait |
Parchează bucla până se termină un proces din fundal / o reia imediat. |
gate add <cmd> | gate list | gate remove <N> | gate clear |
Porți de calitate: comenzi shell care trebuie să treacă. |
/subgoal <text> | remove <N> | clear |
Criterii suplimentare pentru obiectivul activ. |
Exemple practice
Exemplul 1: Obiectiv simplu
/goal Repară toate testele care eșuează în tests/ și asigură-te că pytest trece
Exemplul 2: Obiectiv cu contract scris direct
/goal Migrează autentificarea la JWT
verify: pytest tests/auth passes
constraints: păstrează forma răspunsului /login
boundaries: doar services/auth și testele lui
stop when: e nevoie de o migrare de schemă DB
Exemplul 3: Poartă de calitate
/goal gate add ruff check src/
Greșeli frecvente și bune practici
- Dai un obiectiv vag („îmbunătățește codul”). Judecătorul poate verifica doar ce i-ai cerut; numește rezultatul și dovada (
verify:). - Te aștepți ca
/goalsă creeze sarcini Kanban. Nu o face; pentru mai multe sarcini foloseștehermes kanban create. - Pe platformele de mesagerie setezi un obiectiv nou cât agentul lucrează. Întâi
/stop;status,pauseșiclearmerg oricând.
Întrebări & Exemple practice:
/goal (obiectiv persistent)Ai o întrebare despre /goal (obiectiv persistent) sau ai descoperit un truc, prompt sau fragment de cod util? Distribuie-l cu ceilalți membri ai comunității!
Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau resurse pentru această pagină. Dacă ai testat un prompt sau ai un snippet util, adaugă-l mai jos pentru comunitate.