Repo-level instruction files (AGENTS.md/CLAUDE.md/etc.) are not preserved across /compact
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Shell
- Sterne
- 11.2k
- Forks
- 1.9k
- Ø Merge
- 14 Std. 16 Min.
- Gemergte PRs (30 T.)
- 6
Beschreibung
Describe the bug
(Written by Sonnet 5 as we mutually investigated the issue in-session in copilot-cli)
Early in a long session, the agent correctly read and followed a rule in the repo's AGENTS.md ("never commit directly to main ; create a topic branch first"). Mid-session, context compaction occurred. After compaction, the agent committed directly to main twice, violating the rule it had followed earlier — it had no indication the rule still applied and never re-read AGENTS.md after compaction.
Root cause: compaction summarizes conversation history, but standing repo instruction files aren't treated as pinned/reloaded — they're just facts that can get compressed away like anything else discussed early in the session.
Suggested fix: on compaction, either (a) re-inject the current contents of any active instruction files (AGENTS.md, CLAUDE.md, copilot-instructions.md, etc.) into the fresh context, or (b) explicitly prompt/require the agent to re-read them before resuming file-editing/git work post-compaction.
Impact: silent policy drift after compaction in any long session touching a repo with custom agent instructions — particularly dangerous for rules like branch protection, since a violation may not surface until a human notices.
Affected version
1.0.80
Steps to reproduce the behavior
- Open a session in a repo containing an AGENTS.md (or CLAUDE.md / copilot-instructions.md ) with an explicit git-workflow rule, e.g. "never commit directly to main ; create a topic branch first."
- Have the agent read that file early in the session (directly, or incidentally via a view / grep call) and perform at least one commit that correctly follows the rule (confirms the rule was live in context).
- Continue the session with enough unrelated work/turns that automatic or manual ( /compact ) context compaction occurs at least once.
- After compaction, ask the agent to make further code changes and commit them in the same repo, without re-mentioning the branching rule.
- Observe: the agent commits directly to the currently-checked-out default branch (e.g. main ), violating the rule it followed correctly in step 2 — with no re-read of AGENTS.md and no acknowledgment that a repo policy exists.
Expected behavior
The rule from AGENTS.md continues to be honored after compaction, either because the file's contents are re-injected into context at compaction time, or because the agent is prompted to re-read active instruction files before resuming work in that repo.
Actual: the rule silently stops being followed post-compaction, with no error, warning, or indication to the user that it had been dropped — only surfaced when the human happened to notice the resulting commits.
Additional context
No response
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Das Issue nennt aktive Anweisungsdateien (AGENTS.md, CLAUDE.md und copilot-instructions.md) sowie den /compact-Ablauf. Beginne damit nachzuverfolgen, wie die Komprimierung eine Sitzung fortsetzt und wie diese Dateien ursprünglich geladen werden. Stelle den nummerierten Workflow nach und überprüfe anschließend, dass die Arbeit nach der Komprimierung weiterhin die Branch-Regel befolgt oder die Dateien ausdrücklich erneut lädt.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- git
- Bereich
- cli, developer-experience
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Aktiv
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 48/100