---
name: context-window-engineer
description: "Expert guide for engineering and optimizing ultra-large context windows (2M+ tokens) across Gemini 4 Argon/Pro, Claude Sonnet/Opus 5.5, GPT-5.6 Sol, and Grok 4.7 — context partitioning, retrieval-augmented context injection, sliding window strategies, and cost-aware token budgeting / Panduan ahli rekayasa dan optimasi context window ultra-besar (2M+ token) di Gemini 4 Argon/Pro, Claude Sonnet/Opus 5.5, GPT-5.6 Sol, dan Grok 4.7 — partisi konteks, injeksi konteks berbasis retrieval, strategi sliding window, dan penganggaran token sadar-biaya."
author: "Roedy Rustam"
version: "4.4.2"
---
# context-window-engineer — vibes-plug Skill
[English](#english) | [Bahasa Indonesia](#bahasa-indonesia)
---
## English
### Orchestration & Integration
- **Upstream & Orchestration**: `zero-to-prod-orchestrator` (Phase 4 AI integration), `brainstorming`, `session-memory-manager` (context zone snapshots & handoff).
- **Prefix Locking & Model Cascading**: `kv-cache-prefix-optimizer` (Zone 1-2 cache boundary alignment), `adaptive-model-cascade` (overflow routing across model sizes), `llm-finops-router` (per-zone token cost accounting).
- **Frontier LLMs & Model Boosters**: `frontier-ai-models-expert` (2M+ token recall curves), `gemini-agent-booster` (Google 2M+ native context caching), `vercel-ai-sdk-expert` (context streaming & tools).
- **Research & Deep Ingestion**: `deep-research-analyst` (retrieval-augmented injection), `vector-db-rag-expert` (retrieval vs context stuffing decisions).
### Description
Production guide for engineering, partitioning, and optimizing ultra-large context windows (128k → 2M+ tokens) across frontier models. Prevents the most common failure mode in 2026 AI applications: dumping raw data into context without structure, causing degraded recall, wasted tokens, and hallucination amplification in the "lost in the middle" zone.
### Trigger Conditions
Activate this skill when:
- Building AI agents or applications that consume >50k tokens of context per request.
- Experiencing degraded model recall, "lost in the middle" failures, or hallucinations in long-context scenarios.
- Architecting Retrieval-Augmented Generation (RAG) systems that need to decide between retrieval vs. long-context stuffing.
- Optimizing token costs for applications with large system prompts, tool registries, or codebase context maps.
- Designing multi-turn agentic loops where context accumulates across dozens of turns.
---
### Core Concepts & Patterns
#### 1. Context Window Capacity Map (Late-2026 Frontier Models)
| Model | Tier | Max Context | Effective Recall Zone | Cost per 1M Input Tokens | Cache Discount |
| :--- | :--- | :--- | :--- | :--- | :--- |
| **Gemini 4 Argon** | Medium | 2,097,152 | ~1.9M (monolithic) | $0.80 | 75% (native context caching) |
| **Gemini 4 Pro** | High | 2,097,152–10M | ~1.8M (reliable) | $1.25 | 75% (explicit cache) |
| **Gemini 3.8 Flash (Fallback)** | Fast/Medium | 1,048,576 | ~900k | $0.10 | 75% (native context caching) |
| **Claude Opus 5.5** | Medium | 500,000 | ~480k | $10.00 | 90% (prompt cache) |
| **Claude Opus 4.6 (Fallback)** | Medium | 200,000 | ~180k | $8.00 | 90% (prompt cache) |
| **Claude Sonnet 5.5** | High | 500,000 | ~480k | $3.00 | 90% (prompt cache) |
| **Claude Fable 5.1** | High | 500,000 | ~480k | $2.50 | 90% (prompt cache) |
| **GPT-5.6 Sol** | Medium | 500,000 | ~450k | $1.50 | 50% (prefix cache) |
| **Grok 4.7 High Fast** | High Fast | 256,000 | ~240k | $0.50 | 80% (prompt cache) |
| **Composer 2.5 Fast** | Fast | 200,000 | ~180k | $0.30 | 80% (AST diff cache) |
#### 2. The Context Partitioning Architecture
Never treat the context window as a flat buffer. Partition it into semantically meaningful zones with explicit priority ordering:
```
┌──────────────────────────────────────────────────────┐
│ ZONE 1: IMMUTABLE SYSTEM DIRECTIVES (1-3%) │
│ System prompt, behavioral guardrails, output format │
│ ► NEVER changes mid-session │
├──────────────────────────────────────────────────────┤
│ ZONE 2: STATIC REFERENCE CONTEXT (10-40%) │
│ Codebase schemas, API specs, tool definitions, │
│ architectural docs, PRD excerpts │
│ ► Changes only between sessions │
├──────────────────────────────────────────────────────┤
│ ZONE 3: RETRIEVED CONTEXT (20-50%) │
│ RAG chunks, relevant code files, search results, │
│ documentation snippets │
│ ► Dynamically injected per query via retrieval │
├──────────────────────────────────────────────────────┤
│ ZONE 4: CONVERSATION HISTORY (10-30%) │
│ Prior turns, summarized older context, │
│ tool call results │
│ ► Sliding window with intelligent summarization │
├──────────────────────────────────────────────────────┤
│ ZONE 5: ACTIVE QUERY + SCRATCHPAD (1-5%) │
│ Current user message, chain-of-thought workspace │
│ ► Most volatile, always at the tail │
└──────────────────────────────────────────────────────┘
```
#### 3. Token Budget Allocation (TypeScript Implementation)
```typescript
export interface ContextBudget {
totalCapacity: number;
zones: {
systemDirectives: { maxTokens: number; priority: 1 };
staticReference: { maxTokens: number; priority: 2 };
retrievedContext: { maxTokens: number; priority: 3 };
conversationHistory: { maxTokens: number; priority: 4 };
activeQuery: { maxTokens: number; priority: 5 };
};
}
export function createBudget(modelCapacity: number): ContextBudget {
return {
totalCapacity: modelCapacity,
zones: {
systemDirectives: { maxTokens: Math.floor(modelCapacity * 0.02), priority: 1 },
staticReference: { maxTokens: Math.floor(modelCapacity * 0.30), priority: 2 },
retrievedContext: { maxTokens: Math.floor(modelCapacity * 0.40), priority: 3 },
conversationHistory: { maxTokens: Math.floor(modelCapacity * 0.25), priority: 4 },
activeQuery: { maxTokens: Math.floor(modelCapacity * 0.03), priority: 5 },
},
};
}
export function enforceTokenBudget(
zoneContents: Map,
budget: ContextBudget,
tokenCounter: (text: string) => number
): Map {
const result = new Map();
const zones = Object.entries(budget.zones).sort(([, a], [, b]) => a.priority - b.priority);
for (const [zoneName, { maxTokens }] of zones) {
const content = zoneContents.get(zoneName) ?? '';
const tokenCount = tokenCounter(content);
if (tokenCount <= maxTokens) {
result.set(zoneName, content);
} else {
result.set(zoneName, truncateToTokenLimit(content, maxTokens, tokenCounter));
}
}
return result;
}
function truncateToTokenLimit(
content: string,
maxTokens: number,
tokenCounter: (text: string) => number
): string {
const lines = content.split('\n');
let accumulated = '';
for (const line of lines) {
const candidate = accumulated ? `${accumulated}\n${line}` : line;
if (tokenCounter(candidate) > maxTokens) break;
accumulated = candidate;
}
return accumulated;
}
```
#### 4. "Lost in the Middle" Mitigation
Frontier models exhibit degraded recall for information positioned in the middle 40-60% of the context. Mitigate with:
1. **Needle Placement**: Place the most critical context at the very beginning (Zone 1-2) and very end (Zone 5) of the prompt.
2. **Structural Anchors**: Use explicit section headers (`=== CRITICAL: Database Schema ===`) to create attention anchors.
3. **Redundant Summarization**: For critical facts, include both the raw data AND a summary at the top.
4. **Chunked Retrieval**: Break large documents into semantically coherent chunks (512-1024 tokens each) rather than inserting monolithic blocks.
#### 5. RAG vs. Long-Context Decision Matrix
| Criterion | Use RAG (Retrieve & Inject) | Use Long-Context Stuffing |
| :--- | :--- | :--- |
| **Corpus size** | >10M tokens total corpus | <2M tokens total corpus |
| **Query specificity** | Narrow, focused queries | Broad, synthesis-oriented queries |
| **Freshness** | Corpus updates frequently | Corpus is static per session |
| **Cost sensitivity** | High (pay only for retrieved chunks) | Lower priority (amortized via cache) |
| **Recall requirement** | Precision-critical (top-k retrieval) | Recall-critical (need full picture) |
#### 6. Sliding Window Strategy for Multi-Turn Agents
```typescript
export interface TurnSummary {
turnIndex: number;
role: 'user' | 'assistant';
summary: string;
tokenCount: number;
fullContent?: string;
}
export function buildSlidingWindow(
allTurns: TurnSummary[],
maxHistoryTokens: number,
recentTurnsToKeepFull: number = 4
): string[] {
const recentFull = allTurns.slice(-recentTurnsToKeepFull);
const older = allTurns.slice(0, -recentTurnsToKeepFull);
let budget = maxHistoryTokens;
const output: string[] = [];
for (const turn of recentFull) {
const content = turn.fullContent ?? turn.summary;
budget -= turn.tokenCount;
output.push(content);
}
if (budget > 0 && older.length > 0) {
const olderSummaries = older.map((t) => `[Turn ${t.turnIndex}] ${t.summary}`);
output.unshift(`=== SUMMARIZED EARLIER CONTEXT ===\n${olderSummaries.join('\n')}`);
}
return output;
}
```
---
### Best Practices
1. **Always Count Tokens Before Injection**: Use `tiktoken` (OpenAI), `@anthropic-ai/tokenizer`, or Gemini's `countTokens()` API to measure actual token counts.
2. **Cache-Align Zone Boundaries**: Coordinate with `kv-cache-prefix-optimizer` so static zones (1-2) align with KV-cache prefix boundaries.
3. **Measure Recall Quality**: Instrument needle-in-haystack tests at various context depths to validate your model's effective recall zone.
4. **Degrade Gracefully**: When context exceeds budget, drop Zone 4 (older history) first, then Zone 3 (retrieved context), never Zone 1-2.
5. **Monitor Token Spend Per Zone**: Log per-zone token consumption to `data-telemetry-expert` dashboards to identify context bloat early.
---
### Common Pitfalls to Avoid
| Anti-Pattern | Consequence | Remedy |
| :--- | :--- | :--- |
| Dumping entire codebase into context | Exceeds effective recall zone, hallucination spikes | Use targeted retrieval + file relevance scoring |
| No zone partitioning | Critical instructions get "lost in the middle" | Implement explicit zone headers and priority ordering |
| Ignoring token counting | Silent context truncation by model API | Pre-count and enforce budgets client-side |
| Keeping full conversation history forever | Context fills up after 10-15 turns | Implement sliding window with summarization |
### Sovereign Execution, Token Efficiency & Invariants
| Dimension | Sovereign Mandate & Deterministic Contract |
| :--- | :--- |
| **Frontier Model Cascade** | Medium / High (`GPT-5.6 Sol Medium`, `Gemini 4 Argon`, `Claude Sonnet 5.5 High`, `Grok 4.7 High Fast`) |
| **Availability Fallback** | `Gemini 4 Argon/Pro` -> `Gemini 3.8 Flash`; `Claude Opus 5.5` -> `Claude Opus 4.6` (Zero unhandled missing-model errors) |
| **KV-Cache & Token Protocol** | Pin static instructions & schemas at prompt prefix (`kv-cache-prefix-optimizer`); pass surgical `CONTEXT_MAP.md` slices (<250 tokens/call) during Swarm Fan-Out |
| **SaaT CLI & MCP Dispatch** | CLI: `vibes skill exec context-window-engineer ` / MCP: `vibes_skill_dispatch`, `vibes_ast_query`, `vibes_compile_cache`, `vibes_optimize_budget`, `vibes_verify_gate` |
| **NFR & Anti-Slop Invariants** | P99 API Gateway Latency < 85ms, OpenAPI 3.1 / TypeSpec strict schema parity, RFC 9457 Problem Details error contracts, Idempotency-Key enforcement; 100% complete zero-placeholder output verified via `node scripts/check-anti-slop.js --strict` |
---
---
## Bahasa Indonesia
### Integrasi Orkestrasi
- **Hulu & Orkestrasi**: `zero-to-prod-orchestrator` (Integrasi AI Fase 4), `brainstorming`, `session-memory-manager` (snapshot zona konteks & handoff).
- **Penguncian Prefix & Kaskade Model**: `kv-cache-prefix-optimizer` (penyelarasan batas cache Zona 1-2), `adaptive-model-cascade` (routing luapan kapasitas model), `llm-finops-router` (akuntansi biaya token per zona).
- **LLM Frontier & Booster Model**: `frontier-ai-models-expert` (kurva recall 2M+ token), `gemini-agent-booster` (caching konteks native Google 2M+), `vercel-ai-sdk-expert` (streaming konteks & tools).
- **Riset & Penyerapan Mendalam**: `deep-research-analyst` (injeksi berbasis retrieval), `vector-db-rag-expert` (keputusan retrieval vs penumpukan konteks).
### Deskripsi
Panduan produksi untuk merekayasa, mempartisi, dan mengoptimalkan context window ultra-besar (128k → 2M+ token) pada model frontier. Mencegah kegagalan paling umum di aplikasi AI 2026: memasukkan data mentah ke konteks tanpa struktur, yang menyebabkan recall menurun, token terbuang, dan amplifikasi halusinasi di zona "lost in the middle".
### Kondisi Pemicu
Aktifkan skill ini ketika:
- Membangun agen atau aplikasi AI yang mengonsumsi >50k token konteks per permintaan.
- Mengalami penurunan recall model, kegagalan "lost in the middle", atau halusinasi pada skenario konteks panjang.
- Merancang sistem RAG yang perlu memutuskan antara retrieval vs. long-context stuffing.
- Mengoptimalkan biaya token untuk aplikasi dengan system prompt besar, registri tool, atau peta konteks codebase.
---
### Konsep Inti & Pola Praktik
#### 1. Peta Kapasitas Context Window (Model Frontier Akhir-2026)
| Model | Tier | Konteks Maks | Zona Recall Efektif | Biaya per 1M Token Input | Diskon Cache |
| :--- | :--- | :--- | :--- | :--- | :--- |
| **Gemini 4 Argon** | Medium | 2.097.152 | ~1,9M (monolitik) | $0.80 | 75% (native context caching) |
| **Gemini 4 Pro** | High | 2.097.152–10M | ~1,8M (andal) | $1.25 | 75% (explicit cache) |
| **Gemini 3.8 Flash (Fallback)** | Fast/Medium | 1.048.576 | ~900k | $0.10 | 75% (native context caching) |
| **Claude Opus 5.5** | Medium | 500.000 | ~480k | $10.00 | 90% (prompt cache) |
| **Claude Opus 4.6 (Fallback)** | Medium | 200.000 | ~180k | $8.00 | 90% (prompt cache) |
| **Claude Sonnet 5.5** | High | 500.000 | ~480k | $3.00 | 90% (prompt cache) |
| **Claude Fable 5.1** | High | 500.000 | ~480k | $2.50 | 90% (prompt cache) |
| **GPT-5.6 Sol** | Medium | 500.000 | ~450k | $1.50 | 50% (prefix cache) |
| **Grok 4.7 High Fast** | High Fast | 256.000 | ~240k | $0.50 | 80% (prompt cache) |
| **Composer 2.5 Fast** | Fast | 200.000 | ~180k | $0.30 | 80% (AST diff cache) |
#### 2. Arsitektur Partisi Konteks
Jangan perlakukan context window sebagai buffer datar. Partisi menjadi zona bermakna secara semantik:
- **Zona 1 (1-3%)**: Direktif sistem yang tidak berubah — prompt perilaku, format output.
- **Zona 2 (10-40%)**: Referensi statis — skema codebase, spesifikasi API, definisi tool.
- **Zona 3 (20-50%)**: Konteks yang di-retrieve — chunk RAG, file kode relevan, cuplikan dokumentasi.
- **Zona 4 (10-30%)**: Riwayat percakapan — giliran sebelumnya, ringkasan konteks lama.
- **Zona 5 (1-5%)**: Query aktif — pesan pengguna saat ini, ruang kerja chain-of-thought.
#### 3. Mitigasi "Lost in the Middle"
Model frontier menunjukkan recall yang menurun untuk informasi di tengah-tengah konteks. Mitigasi dengan penempatan informasi kritis di awal dan akhir, jangkar struktural, ringkasan redundan, dan retrieval berbasis chunk.
#### 4. Keputusan RAG vs. Long-Context
Gunakan RAG untuk korpus >10M token dengan query spesifik dan sensitivitas biaya tinggi. Gunakan long-context stuffing untuk korpus <2M token dengan kebutuhan sintesis luas dan corpus statis per sesi.
---
### Praktik Terbaik
1. **Selalu Hitung Token Sebelum Injeksi**: Gunakan API `countTokens()` untuk mengukur jumlah token aktual.
2. **Selaraskan Batas Zona dengan Cache**: Koordinasikan dengan `kv-cache-prefix-optimizer` agar zona statis selaras dengan batas prefix KV-cache.
3. **Ukur Kualitas Recall**: Instrumenkan tes needle-in-haystack pada berbagai kedalaman konteks.
4. **Degradasi Anggun**: Saat konteks melebihi anggaran, buang Zona 4 (riwayat lama) lebih dulu, bukan Zona 1-2.
---
### Jebakan Umum yang Harus Dihindari
| Praktik Buruk | Dampak | Solusi |
| :--- | :--- | :--- |
| Memasukkan seluruh codebase ke konteks | Melebihi zona recall efektif, halusinasi melonjak | Gunakan retrieval terarah + skor relevansi file |
| Tanpa partisi zona | Instruksi kritis "hilang di tengah" | Implementasikan header zona eksplisit |
| Mengabaikan penghitungan token | Pemotongan konteks diam-diam oleh API model | Hitung dan terapkan anggaran dari sisi klien |
| Menyimpan seluruh riwayat percakapan | Konteks penuh setelah 10-15 giliran | Terapkan sliding window dengan ringkasan |
### Matriks Eksekusi Berdaulat, Efisiensi Token & Invarian
| Dimensi | Mandat Berdaulat & Kontrak Deterministik |
| :--- | :--- |
| **Kaskade Model Frontier** | Medium / High (`GPT-5.6 Sol Medium`, `Gemini 4 Argon`, `Claude Sonnet 5.5 High`, `Grok 4.7 High Fast`) |
| **Invarian Fallback Ketersediaan** | `Gemini 4 Argon/Pro` -> `Gemini 3.8 Flash`; `Claude Opus 5.5` -> `Claude Opus 4.6` (Bebas gagal saat model belum tersedia/kuota penuh) |
| **Protokol Hemat Token & KV-Cache** | Kunci instruksi & skema statis di prefix awal (`kv-cache-prefix-optimizer`); kirim potongan `CONTEXT_MAP.md` (<250 token/panggilan) saat Fan-Out |
| **Eksekusi SaaT CLI & MCP** | CLI: `vibes skill exec context-window-engineer ` / MCP: `vibes_skill_dispatch`, `vibes_ast_query`, `vibes_compile_cache`, `vibes_optimize_budget`, `vibes_verify_gate` |
| **Invarian NFR & Anti-Slop** | Latensi P99 API < 85ms, paritas skema ketat OpenAPI 3.1 / TypeSpec, kontrak error RFC 9457 Problem Details, penegakan Idempotency-Key; kode 100% tuntas tanpa placeholder diverifikasi melalui `node scripts/check-anti-slop.js --strict` |