github / github/copilot-cli

Repo-level instruction files (AGENTS.md/CLAUDE.md/etc.) are not preserved across  /compact

Offen
#4,687 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

area:context-memory
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
  1. 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."
  2. 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).
  3. Continue the session with enough unrelated work/turns that automatic or manual ( /compact ) context compaction occurs at least once.
  4. After compaction, ask the agent to make further code changes and commit them in the same repo, without re-mentioning the branching rule.
  5. 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

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Ö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

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.