Funzionalità

Subagents

Scopri come Bob usa i subagents per gestire attività mirate e autonome in contesti isolati senza inquinare la conversazione principale.

Cosa sono i subagents?

Un subagent è un agente indipendente che Bob può spawn per gestire un'attività mirata e autonoma. Viene eseguito nel proprio context window isolato, esegue il lavoro assegnato e restituisce un riepilogo dei risultati alla conversazione principale.

I subagents sono utili per attività che altrimenti aggiungerebbero grandi quantità di contenuto irrilevante alla conversazione in corso — ad esempio, esplorare in profondità una sezione di un codebase per raccogliere informazioni specifiche prima che Bob continui con l'attività principale.

Come funzionano i subagents

Quando Bob spawna un subagent:

  1. Viene creato un nuovo agente indipendente con il proprio context window.
  2. Bob gli passa una descrizione dell'attività mirata da eseguire.
  3. Ti viene chiesto di approvare lo spawn prima che inizi. Bob aspetta finché non confermi.
  4. Il subagent esegue l'attività usando i tools disponibili.
  5. Il subagent restituisce un riepilogo dei suoi risultati a Bob.
  6. Bob usa quel riepilogo per continuare la conversazione principale.

Il subagent viene eseguito separatamente dalla conversazione principale. Non condivide stato, file o risultati dei tools con Bob a meno che Bob non li passi esplicitamente nella descrizione.

Tipi di subagents

Esistono due tipi di subagents, ciascuno adatto a compiti diversi:

TipoDescrizioneIdeale per
exploreEsplorazione del codebase in sola lettura, viene eseguito su un modello più leggeroCercare e riassumere codice, trovare file rilevanti, capire la struttura
generalAccesso completo ai tools, viene eseguito sul modello predefinitoQualsiasi attività autonoma che richiede letture, scritture o comandi

Contesto e cronologia della conversazione

Per impostazione predefinita, un subagent non vede la cronologia della conversazione genitore. Questo mantiene il suo contesto snello e focalizzato sul compito in questione.

Quando un subagent ha bisogno di comprendere decisioni, vincoli o preferenze precedenti espressi nella conversazione, Bob può impostare fork_context: true per passare la cronologia della conversazione al subagent.

Restrizioni di modalità

La modalità in cui stai lavorando controlla quali tipi di subagents Bob è autorizzato a spawn. Alcune modalità consentono tutti i tipi di subagents; altre limitano lo spawn a tipi specifici o lo vietano del tutto. Se uno spawn di subagent non è consentito dalla modalità attiva, Bob completerà il lavoro direttamente senza spawning.

Quando Bob usa i subagents

Bob usa i subagents con parsimonia. Il comportamento predefinito è sempre eseguire il lavoro direttamente senza spawn di un subagent. Un subagent viene considerato solo quando tutte le seguenti condizioni sono vere:

  • L'attività è chiaramente autonoma e si ha bisogno solo di un riepilogo in risposta.
  • Aggiungerebbe un contenuto irrilevante significativo al contesto principale.
  • Non può essere realizzata con una o due chiamate dirette ai tools.

Bob non usa i subagents per:

  • Semplici letture di file o ricerche rapide.
  • Operazioni con un singolo tool.

Pannello subagents paralleli

Quando più subagents vengono eseguiti contemporaneamente — ad esempio, durante un workflow che genera diversi agenti specializzati in parallelo — vengono raggruppati in un unico pannello comprimibile nella chat.

L'intestazione del pannello mostra statistiche aggregate su tutti i subagents in esecuzione:

  • Numero di subagents completati sul totale
  • Totale degli strumenti utilizzati su tutti i subagents
  • Utilizzo di token combinato, costo e tempo trascorso
  • Un conteggio di eventuali chiamate di strumenti fallite

Espandi il pannello per vedere ogni subagent individualmente. Ogni voce individuale può essere ulteriormente espansa per ispezionare le sue chiamate di strumenti. Se un subagent incontra errori di strumenti, il conteggio dei fallimenti viene mostrato sia nell'intestazione aggregata che sulla voce individuale.

  • Attività in cui il contesto rilevante è già disponibile.

Subagents vs. subtasks

Subagents e subtasks sono concetti correlati ma distinti:

SubagentSubtask
VisibilitàViene eseguito silenziosamente in backgroundAppare nell'interfaccia con il proprio breadcrumb e conversazione
InterazioneNon interattivo — restituisce solo un riepilogoCompletamente interattivo — puoi seguire il progresso e continuare la conversazione
ScopoRaccogliere informazioni o completare un lavoro isolato senza inquinare il contesto principaleGestire un lavoro abbastanza complesso da beneficiare di un monitoraggio dedicato e di un thread separato
OutputRiepilogo restituito a BobThread di conversazione indipendente

Usa i subagents per la raccolta di informazioni in background. Usa le subtasks per lavori complessi che traggono vantaggio dalla visibilità e da una conversazione dedicata.

Personalizzare il comportamento dei subagents

Puoi controllare su cosa si concentra un subagent, come formatta il suo output e quali tool può usare creando un file persona agente in .bob/agents/. I file persona danno a un subagent un ruolo definito e un insieme di vincoli – ad esempio, un revisore di codice che produce una tabella di risultati ordinata per gravità con istruzioni esplicite di non suggerire correzioni.

Per istruzioni di configurazione ed esempi, consulta Persona agenti.

Come valuti questo argomento?