Jithendrag22

Sift — Git skill for Claude Code

Git community

A context budget for CI.

How to install Sift

This entry records only its repository, not the path inside it, so there is no exact command to give. Open Jithendrag22/sift and copy the folder into ~/.claude/skills/, or the file into ~/.claude/agents/.

What Sift does

A context budget for CI. The bundle-size bot, for agent configuration — measures the always-on context tax of your CLAUDE.md, skills and subagents, diffs it per pull request, and fails the build when it grows.

Alternatives in Git

  • Worktree Deliver — Commit all work, push, and create a pull request from the current worktree 23.4k ★
  • Yeet — Stage, commit, push code, and open a GitHub pull request via CLI 14.6k ★
  • Generate PR Description — You are tasked with generating a comprehensive pull request description following the repository's standard te 10k ★

README

Sift

**A context budget for CI.** The bundle-size bot, for agent configuration.

[![tests](https://github.com/Jithendrag22/sift/actions/workflows/tests.yml/badge.svg)](https://github.com/Jithendrag22/sift/actions/workflows/tests.yml) [![license](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![python](https://img.shields.io/badge/python-3.9%2B-blue.svg)](#requirements) [![dependencies](https://img.shields.io/badge/dependencies-none-brightgreen.svg)](#requirements)

Your `CLAUDE.md`, your skills, your subagents load into **every session, for every engineer, on every task**. Nobody is watching the total.

Sift puts the number on the pull request that moved it.


### ❌ Context budget — FAIL

████████████████████████████  2,534 / 1,000 always-on tokens  (253%)

+2,469 always-on tokens vs base.

That prefix is cache-written once at 2× and re-read at 0.1× on each of ~45 turns,
so it bills as +15,801 input tokens per session (×6.4).

| file                                       | kind         |  was |  now |      Δ |
|--------------------------------------------|--------------|-----:|-----:|-------:|
| CLAUDE.md                                  | instructions |   23 | 1908 | +1,885 |
| .claude/skills/changelog-writer/SKILL.md   | skill        |    0 |  118 |   +118 |

Why

Agent configuration grows the way dependency trees grow: one reasonable addition at a time, each individually defensible, nobody watching the total.

JavaScript did not solve bundle bloat by being clever. It solved it **socially** — by putting the number on the pull request that caused it, while someone could still change their mind. Agent configuration has no such number.

And the cost is not only money:

source finding
Anthropic, Tool Search Tool Cutting always-loaded tool definitions from ~77K to ~8.7K tokens raised MCP accuracy 49% → 74% (Opus 4) and **79.5