DEV Community

OxainZ
OxainZ

Posted on Edited on Fully Autonomous

Pasting a whole repo into ChatGPT or Claude from VS Code: Send to AI vs Repomix vs gitingest

Every AI chat has a bigger context window than it did a year ago, and every developer I know still copies files into the chat one at a time. The tools that fix this fall into two groups: command-line bundlers that turn a repository into one text file, and editor extensions that do the same from inside VS Code. I maintain one of the latter, so take the comparison with that in mind, and check the numbers yourself; every claim below has a link.

What changed in 2026, and why it matters for all three tools

The limits moved, and the chat apps changed how they handle big pastes.

Context windows, per plan. These are total windows, input plus output. ChatGPT gives Free users 27K tokens on instant models, Go/Plus/Business 54K on instant and 256K on thinking models, and Pro 128K/400K (chatgpt.com/pricing, tabulated by ToolColumn). In the claude.ai chat app, paid plans give 1M to Fable 5.1, Opus 5/5.5, Sonnet 5/5.5 and Haiku 5.5, 500K to Fable 5 and the 4.6 to 4.8 generation, and 200K to older models (Claude help; Claude Code gets 1M on all of them). Gemini without a plan is 32K, AI Plus 128K, AI Pro and Ultra 1M (Google help). A tool that still assumes "8K for ChatGPT Free" trims far more than it needs to.

Big pastes become attachments. ChatGPT started converting pastes over 5,000 characters into a file attachment for Plus, Pro and Business in March 2026 (release note coverage); since June it does it on every plan, with the threshold raised to 10,000 characters (ChatGPT release notes). Claude's web app does the same for large pastes (Simon Willison); Anthropic does not publish the cutoff, and user tests put it a little under 4,000 characters. So whichever tool you use, a bundle arrives as a file. That is fine, the model reads all of it, but it means "save as .txt and attach" and "paste" are now the same thing.

Code tokenises differently on every model. The 4-characters-per-token rule of thumb is roughly right for OpenAI's tokenizer on code, and badly wrong for Claude. One measurement of the same TypeScript file gives about 4.2 characters per token on GPT, 3.7 on Gemini, and 2.4 on the tokenizer that Claude 4.7 and later use (playcode.io). Anthropic's own docs say that newer tokenizer produces roughly 30 percent more tokens than earlier Claude models for the same text (Anthropic token counting). So a tool that estimates at chars/4 is close for ChatGPT and about 40 percent low for Claude, and a bundle that "fits" by that estimate may not.

The three tools

Repomix gitingest Send to AI
Runs CLI, MCP server, browser extension, web app, GitHub Action web app, CLI and Python package, browser extension VS Code sidebar
Output XML, Markdown, JSON, plain plain text digest Standard, Claude XML, Compact, Minimal
Picks files by include/exclude globs, .gitignore include/exclude patterns, file-size cap, .gitignore tick boxes, Open Tabs, Git Changes, relevance to your prompt
Token count yes, o200k yes, o200k yes, 3.3 chars/token, between GPT and Claude
Bundles the Problems panel no no yes, "Bundle Errors"
Applies the AI's reply back no no yes, with diff preview and undo
Price free, MIT free, MIT free tier; Pro $14.99 once, Team $39
Stars/installs (Nov 2026) 29k stars 16k stars about 200 installs, new

Repomix (yamadashy/repomix) is the most complete bundler: a mature CLI with an MCP server so agents can call it, a browser extension, a web app at repomix.com, a GitHub Action, and a long list of output options. If you want bundles in CI, or you drive an agent framework, it is the right tool. gitingest (coderamp-labs/gitingest) is the fastest way to get a digest of a public repository without installing anything: swap hub for ingest in any github.com URL. Neither touches your editor, and neither knows what you are working on right now.

Send to AI (Marketplace, Open VSX) is built for the daily loop inside the editor. You tick files, type what you want, and the bundle lands on the clipboard with a tree and a token count. Two things the CLIs cannot do because they do not run inside VS Code:

  • Bundle Errors reads the Problems panel, collects every file with an error or warning plus the exact messages, and writes a prompt that says "fix these". One paste instead of an afternoon.
  • Apply AI Reply parses the chat's answer, whether it came back as full files in fenced blocks or as SEARCH/REPLACE blocks, shows a diff preview, and writes the edits as one undoable change.

Send to AI demo

The half nobody automates: getting the answer back into the files

Bundling is the easy half. The hard half is applying what the model says. The agent tools solved this with their own edit formats: aider uses SEARCH/REPLACE blocks, and on its polyglot leaderboard GPT-5 at high reasoning produced a well-formed edit 91.6% of the time, Gemini 2.5 Pro 99.6 to 100% using the variant with the path inside the fence, and Claude Opus 4 97.3 to 98.7% (aider leaderboards). Line-numbered diffs are the least reliable because models miscount; OpenAI's own guide says its apply_patch format "does not use line numbers, as the context is enough to uniquely identify code" (GPT-4.1 prompting guide, explained in depth in this V4A write-up).

Send to AI accepts both shapes. Full-file blocks are parsed from the fence line, the line above it, or a first-line comment. SEARCH/REPLACE blocks are matched exactly first, then with whitespace and line-ending differences ignored, and anything ambiguous is reported rather than guessed. The bundle itself ends with a short instruction asking the model to reply in one of those two shapes, which in practice is what makes the apply step reliable. If a match fails, you see it in the file picker before anything is written.

When to use which

  • Repomix when you want bundles in scripts, CI or an agent pipeline, or you need XML for a specific prompt format.
  • gitingest when the code is public and you just need a quick digest link.
  • Send to AI when you are in VS Code, on a chat plan with no API access, and you want the round trip: errors in, fixes out, applied with undo.

Honest limits of Send to AI

The free tier bundles the 50 most relevant files for your prompt rather than the whole project; Pro ($14.99 once, five machines, 30-day refund) removes the cap and adds git-diff mode, presets and fit-to-window trimming. A Team pack ($39 once) covers five developers on one key. There is no agent mode and no API integration by design: it is for people who paste into a chat. And it only runs in VS Code and its forks.

If you try it and something breaks, the issues page is where I look first.
.

Top comments (0)