#Bootstrap Warning

1 messages · Page 1 of 1 (latest)

modest imp
#

ich bekomme häufig diese Bootstraps Warnings, obwohl Agents.md schon recht kompakt ist und ich im heartbeat light-context habe. Woran kann das liegen?

An async command you ran earlier has completed. The result is shown in the system messages above. Handle the result internally. Do not relay it to the user unless explicitly requested.
Current time: Thursday, April 23rd, 2026 - 10:39 AM (Europe/Berlin) / 2026-04-23 08:39 UTC
[Bootstrap truncation warning]
Some workspace bootstrap files were truncated before injection.
Treat Project Context as partial and read the relevant files directly if details seem missing.
AGENTS.md: 18486 raw -> 11999 injected (~35% removed; max/file).
If unintentional, raise agents.defaults.bootstrapMaxChars and/or agents.defaults.bootstrapTotalMaxChars.

round cedarBOT
low palmBOT
#

To help others find answers, you can mark your question as solved via Right click solution message -> Apps -> ✅ Mark Solution

round cedarBOT
elfin monolithBOT
#

Ja, das kann trotzdem völlig erwartbar sein.

Der wichtige Punkt ist: lightContext gilt nur für Heartbeat-Runs.
Für normale Chat-Turns, neue Sessions, Resets und manche Retry/Rebuild-Fälle wird der normale Workspace-Bootstrap weiter geladen.

Und deine Meldung zeigt die Ursache schon ziemlich direkt:

  • AGENTS.md: 18486 raw -> 11999 injected

Das heißt: AGENTS.md reißt die per-file Grenze.
Also nicht unbedingt “zu groß insgesamt”, sondern über bootstrapMaxChars.

Zwei wahrscheinliche Gründe:

  1. Ältere Defaults oder eigener Override
    Die 11999 sehen stark nach einem bootstrapMaxChars von ~12000 aus.
    Neuere Versionen haben höhere Defaults.
#
  1. lightContext hilft hier nicht, weil die Warnung vermutlich nicht aus dem Heartbeat-Turn kommt.

Ich würde als Erstes nach deiner Version fragen:

openclaw --version

Dann zum Prüfen:

  • /context list
  • oder openclaw doctor

Damit siehst du, ob es per-file oder total budget ist.

Wenn du es bewusst klein halten willst, sind die relevanten Settings:

modest imp
#

der Fehler kommt oft bei einem async command

An async command you ran earlier has completed. The result is shown in the system messages above. Handle the result internally. Do not relay it to the user unless explicitly requested.
Current time: Thursday, April 23rd, 2026 - 3:50 PM (Europe/Berlin) / 2026-04-23 13:50 UTC

elfin monolithBOT
#

Ja, das erklärt es ziemlich gut.

Ein async command completion ist kein Heartbeat.
Darum greift heartbeat.lightContext dort nicht.

Stattdessen läuft das als normaler Follow-up-Turn mit so einem Prompt wie:

An async command you ran earlier has completed...

Wenn bei dir agents.defaults.contextInjection noch auf "always" steht, wird bei diesem Turn der komplette Workspace-Bootstrap wieder injiziert. Und deine Warnung sagt ja schon:

  • AGENTS.md: 18486 raw -> 11999 injected

Also ganz konkret:

  • heartbeat.lightContextnur Heartbeats
  • async exec completion → normaler Turn
#
  • contextInjection: "always" → Bootstrap wird erneut geladen
  • AGENTS.md ist dabei über deiner per-file Grenze

Wenn du das reduzieren willst:

  1. agents.defaults.contextInjection: "continuation-skip"
  2. agents.defaults.bootstrapMaxChars erhöhen oder AGENTS.md weiter kürzen
  3. nur wenn dich nur die Meldung nervt: agents.defaults.bootstrapPromptTruncationWarning: "off"

Wichtig: Selbst mit continuation-skip kann es bei neuen Sessions, Resets, Heartbeats oder Retry/Compaction-Fällen weiter auftauchen.

Docs:

Wenn du magst, poste noch:

#
openclaw --version

und ob agents.defaults.contextInjection gesetzt ist, dann kann ich dir sagen, ob es bei dir eher Version, Override oder einfach erwartetes Verhalten bei async follow-ups ist.

modest imp
#

wie ist die empfohlene einstellung?

  1. agents.defaults.contextInjection: "continuation-skip"
  2. agents.defaults.bootstrapMaxChars erhöhen oder AGENTS.md weiter kürzen
elfin monolithBOT
#

Meine Empfehlung wäre:

{
  agents: {
    defaults: {
      contextInjection: "continuation-skip",
      bootstrapMaxChars: 20000,
      bootstrapTotalMaxChars: 150000,
      bootstrapPromptTruncationWarning: "once"
    }
  }
}

Kurz dazu:

#
  • contextInjection: "continuation-skip"
    würde ich klar empfehlen. Das spart bei normalen Follow-up-Turns, z. B. async command completions.

  • bootstrapMaxChars: 20000
    ist ein guter pragmatischer Wert. Deine AGENTS.md mit ~18.5k passt dann rein, ohne direkt riesig zu werden.

  • bootstrapTotalMaxChars: 150000
    nur als sinnvoller Standard. Daran würde ich erst drehen, wenn /context oder openclaw doctor wirklich max/total zeigt.

  • bootstrapPromptTruncationWarning: "once"
    würde ich so lassen. off nur, wenn du die Warnung bewusst ausblenden willst.

Meine Priorisierung wäre also:

  1. contextInjection: "continuation-skip"
  2. bootstrapMaxChars auf 20000
  3. AGENTS.md nur dann weiter kürzen, wenn sie tatsächlich unnötig aufgebläht ist
modest imp
#

ich bin eigentlich auf der neuesten version .21

elfin monolithBOT
#

Ah, dann würde ich nicht zuerst die Version verdächtigen, sondern eher eins von diesen beiden Dingen:

  1. ein alter Config-Override ist noch gesetzt
  2. der laufende Gateway-Prozess wurde nach dem Update nicht wirklich neu gestartet

Die Warnung selbst ist hier ziemlich eindeutig:
18486 raw -> 11999 injected heißt, dass dein effektiver bootstrapMaxChars sehr wahrscheinlich noch bei ungefähr 12000 liegt.

Ich würde genau das prüfen:

openclaw config get agents.defaults.bootstrapMaxChars
openclaw config get agents.defaults.bootstrapTotalMaxChars
openclaw config get agents.defaults.contextInjection
openclaw gateway restart