Hermes Agent: Checkpoints
Última atualização: 2026-08-31
Checkpoints são o sistema de salvamento do Hermes Agent — como saves de jogo, salve o estado a qualquer momento, restaure se algo der errado, e continue experimentos interrompidos de onde parou.
📋 Pré-requisitos: Lição 6 — Sistema de Memória, Lição 7 — Sistema de Habilidades
1. O Que Você Vai Aprender
| # | Conteúdo |
|---|---|
| ❶ | Princípios do mecanismo de checkpoint |
| ❷ | Checkpoints automáticos e salvamento manual |
| ❸ | Restauração e rollback |
| ❹ | Gerenciamento de experimentos |
| ❺ | Armazenamento e limpeza de checkpoints |
2. História
(1) Problema: Tarefa Longa Interrompida, Tudo Perdido
Bob pediu ao Agent para fazer uma revisão de código complexa, analisou por 20 minutos, e a internet caiu. Recomeçar do zero.
(2) Solução: Checkpoint Salva, Continua de Onde Parou
O Hermes da Alice salva checkpoints automaticamente, e após queda de internet:
# Antes da queda
Agent: Revisados 15/20 arquivos...
# Após restaurar
hermes checkpoint restore latest
Agent: Restaurado do checkpoint, continuando revisão 16/20...
3. Princípios do Mecanismo de Checkpoint
(1) Conteúdo do Checkpoint
{
"checkpoint_id": "cp_20260315_143022",
"timestamp": "2026-03-15T14:30:22Z",
"session_id": "session_abc123",
"agent_state": {
"current_task": "code-review",
"progress": "15/20 files",
"active_skills": ["react-component-review"],
"pending_actions": ["review_file_16", "review_file_17"]
},
"memory_snapshot": {
"working_memory": [...],
"long_term_changes": [...]
},
"tool_results": {
"fs_read_src_main_py": "content_hash_abc",
"code_python_result": "output_hash_def"
},
"llm_context": {
"messages": [...],
"tokens_used": 12500
}
}
(2) Fluxo de Checkpoint
graph LR
A[Agent Executando] --> B{Auto trigger?}
B -->|A cada 5 min| C[Salvar checkpoint]
B -->|Habilidade completa| C
B -->|Chamada de ferramenta| C
C --> D[Gravar no disco]
D --> A
E[Interrupção/Erro] --> F[Restaurar checkpoint]
F --> G[Ler estado]
G --> H[Continuar execução]
4. Checkpoints Automáticos e Manuais
(1) Configuração de Auto-Save
checkpoint:
enabled: true
auto_save:
interval: 300
on_skill_complete: true
on_tool_call: true
on_error: true
max_checkpoints: 50
storage:
path: "~/.hermes/checkpoints"
compression: true
max_size_mb: 500
(2) Salvamento Manual
/checkpoint save "review-half-done"
hermes checkpoint save --name "before-deploy"
hermes checkpoint list
# ┌──────────────────────┬──────────┬─────────┬──────────┐
# │ Checkpoint │ Time │ Progress│ Size │
# ├──────────────────────┼──────────┼─────────┼──────────┤
# │ review-half-done │ 14:30 │ 15/20 │ 2.3 MB │
# │ auto-cp-143000 │ 14:30 │ 15/20 │ 2.1 MB │
# │ auto-cp-142500 │ 14:25 │ 12/20 │ 1.8 MB │
# └──────────────────────┴──────────┴─────────┴──────────┘
5. Restauração e Rollback
(1) Restaurar Checkpoint
hermes checkpoint restore latest
hermes checkpoint restore review-half-done
/checkpoint restore review-half-done
Agent: Restaurado do checkpoint "review-half-done"
Tarefa: Revisão de código
Progresso: 15/20 arquivos
Continuando revisão do arquivo 16...
(2) Rollback
hermes checkpoint rollback review-half-done
# ⚠️ Isso descartará todas as alterações após o checkpoint
# Confirmar? (y/n)
(3) Restauração Seletiva
checkpoint:
restore_options:
agent_state: true
memory: true
tool_results: true
llm_context: false
6. Gerenciamento de Experimentos
(1) Checkpoints em Modo Pesquisa
research:
mode: true
checkpoint:
save_every_n_tasks: 10
save_on_error: true
trajectory:
output_format: "sharegpt"
output_dir: "~/.hermes/research/trajectories"
hermes research run \
--tasks experiment_tasks.jsonl \
--model gpt-4o \
--batch-size 50 \
--output sharegpt
hermes research resume \
--from-checkpoint latest \
--output sharegpt
(2) Comparação de Experimentos
hermes checkpoint save --tag "experiment-a-temp07"
hermes checkpoint save --tag "experiment-b-temp03"
hermes research compare \
--checkpoint experiment-a-temp07 \
--checkpoint experiment-b-temp03
7. Armazenamento e Limpeza de Checkpoints
(1) Formato de Armazenamento
~/.hermes/checkpoints/
├── cp_20260315_143022.tar.gz
├── review-half-done.tar.gz
└── experiment-a.tar.gz
(2) Política de Limpeza
checkpoint:
cleanup:
auto: true
keep_manual: true
keep_last_n: 10
max_age_days: 30
max_total_size: "500MB"
hermes checkpoint clean --keep-last 5
hermes checkpoint storage-info
❓ Perguntas Frequentes
P: Quanto espaço os checkpoints usam? R: 1-5 MB cada (comprimidos). 50 checkpoints ≈ 50-250 MB. Auto-limpeza configurável.
P: Restaurar checkpoint perde memória? R: Não. Restauração só reverte estado da tarefa e contexto, não deleta memória de longo prazo. Rollback sim descarta.
P: Checkpoints podem migrar entre máquinas? R: Sim. Exporte o arquivo e importe em outra máquina. Diferenças de caminho podem precisar ajuste manual.
P: Com que frequência salva automaticamente? R: Padrão a cada 5 minutos. Configurável via
checkpoint.auto_save.interval. Salvamentos frequentes têm leve impacto em performance.
P: Modo pesquisa precisa de checkpoints? R: Altamente recomendado. Experimentos em lote rodam por horas; restaurar do checkpoint é muito mais eficiente que recomeçar.
P: Checkpoints suportam criptografia? R: Sim. Configure
checkpoint.storage.encryption: truepara AES-256.
📖 Resumo
- Checkpoints salvam estado completo do Agent: progresso da tarefa, memória, resultados de ferramentas, contexto LLM
- Auto-save (timer + eventos) + salvamento manual
- Restauração: continua do ponto de interrupção; Rollback: volta ao estado anterior
- Modo pesquisa: checkpoint garante continuidade de experimentos em lote
- Política de auto-limpeza: manter últimos N, limpar por idade, limite de tamanho total
📝 Exercícios
- Básico (⭐): Salve um checkpoint manualmente na conversa, reinicie o Hermes, restaure e verifique consistência.
- Intermediário (⭐⭐): Configure auto-checkpoint (a cada 3 min + ao completar habilidade), execute tarefa longa, observe auto-saves.
- Avançado (⭐⭐⭐): Simule cenário de pesquisa, execute 10 tarefas em lote, force interrupção no meio, restaure do checkpoint e verifique zero perda.