# The Agent's Output Is Too Long to Paste Anywhere — What to Do With It

Canonical: https://commareports.com/fix/agent-output-too-long-to-paste
Published: 2026-09-07

> Claude Code, Cursor and Codex produce reports far past what a Slack message, a PR comment or a ticket will hold. The limits you are hitting, and giving the agent a place to publish.

# The agent produced 40,000 words and there is nowhere to put them

An audit across the repository. A migration plan with per-file findings.
An evaluation run over two hundred cases. The agent did the work, and
now the output has to reach a human.

Every destination refuses it.

## The ceilings

| Destination               | Limit                                                  |
| ------------------------- | ------------------------------------------------------ |
| GitHub issue / PR comment | 65,536 characters — the API rejects the write          |
| Slack message             | ~4,000 characters, then it becomes a snippet file      |
| Jira / Linear description | Field-dependent, and formatting degrades first         |
| Email                     | Gmail clips past ~102 KB behind "show trimmed content" |
| A terminal scrollback     | Gone by tomorrow                                       |

The soft failures matter more than the hard ones. Long before a comment
is rejected, the wide table has collapsed, the code block has lost its
language, and the reviewer has scrolled past all of it.

## Why splitting it up is worse

The reflexes are: truncate, or paste in parts, or attach a file.

**Truncating** removes the evidence and keeps the claim. What survives is
the summary — the one part a reader cannot verify. That is exactly
backwards for output produced by a model.

**Splitting across comments** destroys the ordering the moment anyone
replies in the middle, and no one reads part four.

**Attaching a markdown or HTML file** hands the reader a download that
[Slack will not preview](/fix/slack-wont-preview-html-file),
[GitHub will not render](/fix/github-actions-artifact-html-not-viewable),
and email clients strip. If it does get opened, it opens from `file://`
with [whatever that breaks](/html-report-broken-css).

## Give the agent somewhere to publish

The agent writes the report as HTML, POSTs it, and returns a URL:

```bash
curl -sS -X POST https://commareports.com/api/v1/reports \
  -H "Authorization: Bearer $COMMA_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"title": "Dependency audit — 2026-09-07", "html": "<h1>…</h1>"}'
```

One line goes in the PR. The report stays whole.

In Claude Code, Cursor, VS Code, Zed and anything else speaking Model
Context Protocol, this is a tool call rather than a shell command — the
same scoped `comma_sk_…` token authenticates both surfaces, so revoke,
expiry and scope behave identically. Setup per client is under
[MCP setup](/mcp); the agent-side conventions are in
[where should my agent post](/agents/where-should-my-agent-post).

## The two things this changes

**Context budget.** Carrying 40,000 words of finished report through the
rest of a session is a large, permanent tax on the agent's remaining
window. A URL is a dozen tokens and the content is still there for
anyone who opens it. See
[context budgeting for AI reports](/agents/context-budgeting-ai-reports).

**Review.** A published report is a place to disagree with the agent
precisely. The reviewer selects finding #34 and writes "this one is a
false positive — the call is behind a feature flag", anchored to that
finding. The agent can read the comments back and revise
([let an agent respond to comments](/agents/let-an-agent-respond-to-comments)),
posting the next pass as a revision at the same URL rather than as a new
wall of text.

That loop is the reason not to paste: a chat message is a broadcast, and
a report with anchored comments is a conversation about specific claims.

## Try it

Comma is free — unlimited reports, unlimited commenters, unlimited
revision history.

**[Give your agent a place to publish →](https://commareports.com/)**

### Related

- [Where should my agent post](/agents/where-should-my-agent-post)
- [Share Claude Code output](/agents/share-claude-code-output) · [Cursor](/agents/share-cursor-output) · [Codex](/agents/share-codex-output)
- [Context budgeting for AI reports](/agents/context-budgeting-ai-reports)
- [MCP setup](/mcp) · [API reference](/docs/api)
