Prompt de sistema
O OpenClaw cria um prompt de sistema personalizado para cada execução do agente. O prompt é de propriedade do OpenClaw e não usa o prompt padrão do pi-coding-agent. O prompt é montado pelo OpenClaw e injetado em cada execução do agente.Estrutura
O prompt é intencionalmente compacto e usa seções fixas:- Tooling: lista atual de ferramentas + descrições curtas.
- Safety: lembrete curto de proteção para evitar comportamento de busca de poder ou de contornar supervisão.
- Skills (quando disponíveis): informa ao modelo como carregar instruções de Skills sob demanda.
- OpenClaw Self-Update: como inspecionar a configuração com segurança usando
config.schema.lookup, aplicar patches na configuração comconfig.patch, substituir a configuração completa comconfig.applye executarupdate.runsomente mediante solicitação explícita do usuário. A ferramentagateway, restrita ao proprietário, também se recusa a reescrevertools.exec.ask/tools.exec.security, incluindo aliases legadostools.bash.*que são normalizados para esses caminhos protegidos de exec. - Workspace: diretório de trabalho (
agents.defaults.workspace). - Documentation: caminho local para a documentação do OpenClaw (repositório ou pacote npm) e quando lê-la.
- Workspace Files (injected): indica que arquivos de bootstrap estão incluídos abaixo.
- Sandbox (quando ativado): indica runtime em sandbox, caminhos do sandbox e se exec elevado está disponível.
- Current Date & Time: horário local do usuário, fuso horário e formato de hora.
- Reply Tags: sintaxe opcional de tags de resposta para provedores compatíveis.
- Heartbeats: prompt de heartbeat e comportamento de ack.
- Runtime: host, SO, node, modelo, raiz do repositório (quando detectada), nível de thinking (uma linha).
- Reasoning: nível atual de visibilidade + dica para alternar com /reasoning.
- use cron para acompanhamentos futuros (
check back later, lembretes, trabalho recorrente) em vez de loops de espera comexec, truques de atraso comyieldMsou polling repetido deprocess - use
exec/processapenas para comandos que começam agora e continuam em execução em segundo plano - quando o despertar automático ao concluir estiver ativado, inicie o comando uma vez e dependa do caminho de despertar baseado em push quando ele emitir saída ou falhar
- use
processpara logs, status, entrada ou intervenção quando precisar inspecionar um comando em execução - se a tarefa for maior, prefira
sessions_spawn; a conclusão do subagente é baseada em push e é anunciada automaticamente de volta ao solicitante - não faça polling de
subagents list/sessions_listem loop apenas para aguardar a conclusão
/approve quando o resultado da ferramenta disser que aprovações no chat não estão disponíveis ou
que a aprovação manual é o único caminho.
Modos de prompt
O OpenClaw pode renderizar prompts de sistema menores para subagentes. O runtime define umpromptMode para cada execução (não é uma configuração voltada ao usuário):
full(padrão): inclui todas as seções acima.minimal: usado para subagentes; omite Skills, Memory Recall, OpenClaw Self-Update, Model Aliases, User Identity, Reply Tags, Messaging, Silent Replies e Heartbeats. Tooling, Safety, Workspace, Sandbox, Current Date & Time (quando conhecido), Runtime e contexto injetado permanecem disponíveis.none: retorna apenas a linha base de identidade.
promptMode=minimal, prompts extras injetados são rotulados como Subagent
Context em vez de Group Chat Context.
Injeção de bootstrap do workspace
Arquivos de bootstrap são recortados e anexados em Project Context para que o modelo veja contexto de identidade e perfil sem precisar lê-los explicitamente:AGENTS.mdSOUL.mdTOOLS.mdIDENTITY.mdUSER.mdHEARTBEAT.mdBOOTSTRAP.md(somente em workspaces totalmente novos)MEMORY.mdquando presente; caso contrário,memory.mdcomo fallback em minúsculas
MEMORY.md, que pode
crescer com o tempo e levar a uso de contexto inesperadamente alto e compactação mais frequente.
Observação: arquivos diáriosArquivos grandes são truncados com um marcador. O tamanho máximo por arquivo é controlado pormemory/*.mdnão são injetados automaticamente. Eles são acessados sob demanda via as ferramentasmemory_searchememory_get, portanto não contam contra a janela de contexto a menos que o modelo os leia explicitamente.
agents.defaults.bootstrapMaxChars (padrão: 20000). O conteúdo total injetado de bootstrap
entre os arquivos é limitado por agents.defaults.bootstrapTotalMaxChars
(padrão: 150000). Arquivos ausentes injetam um pequeno marcador de arquivo ausente. Quando ocorre truncamento,
o OpenClaw pode injetar um bloco de aviso em Project Context; controle isso com
agents.defaults.bootstrapPromptTruncationWarning (off, once, always;
padrão: once).
Sessões de subagente injetam apenas AGENTS.md e TOOLS.md (outros arquivos de bootstrap
são filtrados para manter o contexto do subagente pequeno).
Hooks internos podem interceptar esta etapa via agent:bootstrap para mutar ou substituir
os arquivos de bootstrap injetados (por exemplo, trocar SOUL.md por uma persona alternativa).
Se você quiser fazer o agente soar menos genérico, comece com o
Guia de personalidade do SOUL.md.
Para inspecionar quanto cada arquivo injetado contribui (bruto vs injetado, truncamento, além da sobrecarga do esquema de ferramentas), use /context list ou /context detail. Consulte Context.
Tratamento de horário
O prompt de sistema inclui uma seção dedicada Current Date & Time quando o fuso horário do usuário é conhecido. Para manter o cache do prompt estável, ele agora inclui apenas o fuso horário (sem relógio dinâmico nem formato de hora). Usesession_status quando o agente precisar da hora atual; o card de status
inclui uma linha com timestamp. A mesma ferramenta também pode opcionalmente definir uma
substituição de modelo por sessão (model=default a limpa).
Configure com:
agents.defaults.userTimezoneagents.defaults.timeFormat(auto|12|24)
Skills
Quando existem Skills elegíveis, o OpenClaw injeta uma lista compacta de Skills disponíveis (formatSkillsForPrompt) que inclui o caminho do arquivo para cada Skill. O
prompt instrui o modelo a usar read para carregar o SKILL.md no local listado
(workspace, gerenciado ou integrado). Se não houver Skills elegíveis, a
seção Skills será omitida.
A elegibilidade inclui verificadores de metadados de Skills, verificações de ambiente/configuração de runtime
e a lista efetiva de permissões de Skills do agente quando agents.defaults.skills ou
agents.list[].skills está configurado.
Documentation
Quando disponível, o prompt de sistema inclui uma seção Documentation que aponta para o diretório local da documentação do OpenClaw (sejadocs/ no workspace do repositório ou a documentação integrada
do pacote npm) e também menciona o espelho público, o repositório de origem, o Discord da comunidade e o
ClawHub (https://clawhub.ai) para descoberta de Skills. O prompt instrui o modelo a consultar primeiro a documentação local
para comportamento, comandos, configuração ou arquitetura do OpenClaw e a executar
openclaw status por conta própria quando possível (perguntando ao usuário apenas quando não tiver acesso).