dropped

agent
Security Audit
Warn
Health Warn
  • License — License: MIT
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 5 GitHub stars
Code Pass
  • Code scan — Scanned 4 files during light audit, no dangerous patterns found
Permissions Pass
  • Permissions — No dangerous permissions requested

No AI report is available for this listing yet.

SUMMARY

See what your AI coding agent silently drops from its instruction files. A byte-exact truncation X-ray for AGENTS.md / CLAUDE.md / .cursorrules.

README.md

dropped

CI
Release
License: MIT

See exactly what your AI coding agent reads from your instruction files, and what it silently drops.

Tools like Codex truncate AGENTS.md past a hard limit (32 KiB) with no warning. Every rule past the cut is simply never sent to the model. Your agent looks like it's ignoring you. It never saw the instruction.

dropped is a fast, offline CLI that shows you the cut line, exactly where it lands, and which of your rules fall off the back.

dropped showing what Codex silently truncates from an oversized AGENTS.md

$ dropped --target codex AGENTS.md

AGENTS.md  ·  43.5 KiB / 32.0 KiB (codex, bytes)  ✂ TRUNCATED
  cut at byte 32768 (line 44, col 1380)
  source: https://github.com/openai/codex/issues/7138 (verified 2026-06-16)

  ✓ (frontmatter)                 64 B
  ✓ Project Agent Instructions    87 B
  ✓   Build & Run                   6.1 KiB
  ✓   Code Style                    6.1 KiB
  ✓   Testing                       6.1 KiB
  ✓   Architecture                  6.1 KiB
  ✓   Database                      6.1 KiB
  ✂   Dependencies                  kept 1.4 KiB · dropped 4.6 KiB  ← cut lands here
  ✗   Logging                       6.1 KiB dropped
  ✗   Release & Secrets Handling    857 B dropped     ← "never push to main", never read

That last line is the whole point: the rule you most needed the agent to follow was silently thrown away.

Install

# Homebrew (after first release)
brew install phrypy/tap/dropped

# Go
go install github.com/phrypy/dropped@latest

Single static binary, no runtime, no network, no telemetry.

Usage

dropped --target codex                  # check AGENTS.md against Codex's real limit
dropped --target codex --ci .           # exit 1 if anything truncates (use in CI)
dropped --limit 12000 --unit chars f    # check against a manual limit
dropped AGENTS.md                        # measurement only: section sizes, no verdict
dropped --json --target codex            # machine-readable (schemaVersion-tagged)
dropped --list-tools                     # known tools and their sourced limits

Point it at files or directories. Directories are scanned for AGENTS.md (nested), CLAUDE.md, and .cursorrules.

Exit codes: 0 ok · 1 truncation found (with --ci) · 2 usage error.

How it works (and what it deliberately doesn't do)

dropped reads your instruction file from disk and counts it in the same unit the tool truncates by (bytes for Codex, characters for others), then locates the cut at the exact byte offset. Sections are drawn on top of that offset, so a rule that's half-cut is shown as half-cut, never rounded.

It ships only the deterministic, verifiable case: hard byte/char limits, where the answer is exact and you can check it yourself. It does not guess token-window counts against proprietary tokenizers (numbers nobody can verify), and it does not hook your agent at runtime. If a flag isn't trustworthy, it isn't here. That discipline is the feature.

The limits table

Every limit in limits.toml cites a source and a verification date. dropped refuses to load a row without them. This table is the project's shared knowledge of "what truncates where," and it's the easiest thing to contribute to.

Tool File Limit Unit Source
codex AGENTS.md 32,768 bytes openai/codex#7138
windsurf .windsurfrules 12,000 chars Cascade docs
windsurf (global) global_rules.md 6,000 chars Cascade docs

Cursor, Claude Code, Gemini CLI, and opencode have no documented hard cut (they consume the context budget instead), so they run in measurement mode only.

Know a tool's limit? Add a row.

Roadmap

  • v1 (now): byte/char-exact truncation X-ray, --ci gate, JSON, community limits table.
  • Next: file-path staleness lint (flag rules that reference files which no longer exist; path-only, near-zero false positives).
  • The north star: "did my agent actually obey?" Golden tests that assert an agent follows specific rules. Truncation is just the first way a rule gets ignored.

FAQ

Why is my AI coding agent ignoring my AGENTS.md / instructions?
Often because the file is over the tool's size limit and the part past the cut is never sent to the model. The agent isn't disobeying, it never received those lines. Run dropped --target codex to see exactly what's dropped.

Does Codex truncate AGENTS.md?
Yes. Codex caps AGENTS.md at 32 KiB (32,768 bytes, the project_doc_max_bytes default) and silently drops anything past it, with no warning in the TUI.

What is the AGENTS.md size limit?
For Codex it is 32 KiB. There is no single cross-tool limit; each tool differs, which is why dropped keeps a sourced table. Run dropped --list-tools to see the known limits.

What is the Windsurf rules file character limit?
Windsurf (Cascade) limits each workspace rules file to 12,000 characters and the global rules file (global_rules.md) to 6,000 characters. Split rules across multiple files to stay under it.

Do Cursor, Claude Code, or Gemini CLI have a rules-file size limit?
No documented hard truncation cap (as of June 2026). Their instruction files (.cursor/rules, CLAUDE.md, GEMINI.md) consume the shared context budget instead of being cut at a fixed size, so dropped reports them in measurement mode but gives no truncation verdict.

How do I see what my AI coding agent actually reads?
Point dropped at your repo. dropped . lists every instruction file and its size; dropped --target <tool> shows the exact byte where the file is cut and which rules survive, are partially cut, or are dropped entirely.

How do I check this in CI?
dropped --target codex --ci . exits non-zero if any instruction file would be truncated, so you can fail a build before an over-long AGENTS.md ships.

Contributing

The fastest contribution is a new limit row. See CONTRIBUTING.md. Issues tagged good first issue are tool limits waiting to be added.

License

MIT © Brian Yong

Reviews (0)

No results found