[FEATURE] Claude compaction customisation control

Resolved 💬 3 comments Opened Feb 13, 2026 by vendetta96 Closed Feb 17, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

---
Feature Request

When working on long sessions that hit the ~1M token context limit, Claude Code automatically compacts the conversation by summarizing it. This process is slow and often unnecessary — in many workflows, the older context is no longer relevant.

Requested feature:

  • Add a setting to disable auto-compaction entirely, OR
  • Add a "truncate" mode that simply drops old context (e.g., keep only the most recent 20%) instead of summarizing it
  • This could be a config option like "compaction": "none" / "truncate" / "summarize" (default)

Why:

  • Compaction takes significant time on large contexts
  • For many workflows (task-by-task coding), old context has no value
  • The CLAUDE.md compact instructions help but the compaction LLM call still runs
  • Users who /clear between tasks don't benefit from summarization at all

---

Proposed Solution

Current workaround:
Using compact instructions in CLAUDE.md to aggressively drop context, but the compaction process itself still runs and takes time.

Alternative Solutions

_No response_

Priority

High - Significant impact on productivity

Feature Category

Performance and speed

Use Case Example

Use Case Example

Scenario: Developer working on a full-stack app with backend (FastAPI) and frontend (React), doing multiple unrelated tasks in one session.

Step 1: Start session. Ask Claude to explore the codebase and understand the ETL pipeline architecture. Claude reads 15+ files, generates explanations. (~200K tokens used)

Step 2: Ask Claude to fix a bug in the extraction settings UI component. Claude reads files, makes edits, tests. (~150K tokens used, total ~350K)

Step 3: Switch to backend work — add a new API endpoint for pipeline validation. Claude reads models, services, routes, writes code. (~200K tokens used, total ~550K)

Step 4: Ask Claude to refactor the DAG executor for better error handling. More file reads, exploration, code changes. (~250K tokens used, total ~800K)

Step 5: Now ask Claude to update the frontend to show execution logs. Context is approaching ~1M tokens. Auto-compaction triggers.

What happens today:

  • Claude spends time making an LLM call to summarize the entire 1M token conversation
  • The summary tries to preserve details from Steps 1-4, which are already done and irrelevant
  • Developer waits for compaction to finish before they can continue working

What should happen with "strategy": "truncate":

  • Claude instantly drops Steps 1-3 (the oldest 80%)
  • Keeps Step 4 and 5 context intact (the recent 20%)
  • No LLM call, no waiting — developer continues immediately
  • If Claude needs project context from earlier, it's in CLAUDE.md

Key point: Steps 1-3 are completed tasks. Their code changes are already saved to disk. There is zero value in summarizing "I read file X and edited line Y" from 800K
tokens ago. The files themselves are the source of truth — not the conversation history.

---

Additional Context

_No response_

View original on GitHub ↗

This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗