Skip to content

Context Graph Compressor

Convert long AI conversations into portable conversation state graphs for LLM handoffs.

Install

$git clone https://github.com/Adityapal67/context-graph-compressor

Install command taken from the project's README or registry entry. Always review code before running it.

context-graph-compressor

A Claude skill that compresses any chat conversation into a minimal, portable JSON context graph — so you can continue the same conversation in a new chat or a different LLM at a fraction of the token cost.


The Problem

Every message in a long chat re-sends the entire history:

Turn 50:  [turn1 + turn2 + ... + turn49 + your message]  →  ~15,000 tokens

The Solution

Compress the chat once, paste the output into a new session:

New chat turn 1:  [compressed graph ~400 tokens + your message]  →  done

Same context. 97% fewer tokens.


Why This Is Different

Several context-handling solutions already exist. Here's how this one compares:

This skill Claude's built-in compaction Handoff skills (Smithery / ClaudSkills)
Works across sessions ✅ Export & paste anywhere ❌ Same chat only ✅
Works with other LLMs ✅ GPT, Gemini, Mistral, etc. ❌ Claude only ❌ Claude Code only
Output format JSON graph Internal (not exportable) Plain text / markdown bullets
Machine-readable ✅ Structured, parseable ❌ ❌
Importance tagging ✅ h/m/l per node ❌ ❌
Status tracking ✅ open/resolved/deferred/blocked ❌ ❌
Graph relationships ✅ depends_on, resolves, supersedes... ❌ ❌
Assumptions explicit ✅ A node type with confidence ❌ ❌
Downloadable file ✅ .json ❌ ❌
Token target ~400–800 tokens Varies, not optimized Varies

In plain terms

Claude's built-in compaction kicks in automatically when a chat gets too long — but it works silently inside the same conversation. You can't export it, restart clean, or take it to another LLM. It's a life raft, not a handoff.

Existing handoff skills produce a markdown bullet list — readable by humans, but not structured enough for a machine. There's no importance ranking, no node graph, no way to programmatically filter what a new LLM should prioritize. And they're all built for Claude Code, not Claude.ai.

This skill treats context as data, not prose. The JSON graph is structured so any LLM can parse it, importance tags tell the receiving model what it must know vs. what's optional, and compact mode is explicitly optimized to hit the lowest possible token count for the handoff — not just "shorter than the original."


What It Outputs

A structured JSON graph with two modes:

compact (default) — for new chat handoff

~300–500 tokens. Abbreviated keys, telegraphic summaries, no fluff.

{
  "v": 1,
  "mode": "compact",
  "desc": "Building a JWT-secured Spring Boot API with MySQL.",
  "n": [
    {
      "id": "n1",
      "t": "F",
      "i": "h",
      "s": "Spring Boot 3.2, Java 21, MySQL. Maven. Constructor injection throughout.",
      "c": [
        { "id": "n1.1", "t": "F", "i": "m", "s": "DB: app_db. ddl-auto=update. Config in application.yml." }
      ]
    },
    {
      "id": "n2",
      "t": "P",
      "i": "h",
      "s": "403 on all endpoints fixed: added .requestMatchers('/auth/**').permitAll() before anyRequest().authenticated()."
    }
  ],
  "handoff": "Continue a Spring Boot JWT API project. Stack: Java 21, MySQL, JPA. Auth working (403 fixed). N+1 query fixed with @EntityGraph. Refresh tokens deferred."
}

Similar plugs

Turn any codebase, with its docs, SQL schemas, configs, and PDFs, into a queryable knowledge graph. A /graphify skill for Claude Code, Cursor, Codex, and Gemini CLI: local…

Why use many token when few token do trick. Viral skill + proxy for coding agents that cuts 65% of tokens by talking like a caveman.

The 1st Collaborative AI Design Agent Workspace. Local-first and open source. Create prototypes, websites, apps, dashboards, presentations, images, and videos with your team…