anthropics / anthropics/claude-code
Channels: allow an image param on notifications/claude/channel
- 主要语言
- Python
- 星标
- 145k
- 派生
- 23.1k
- PR 合并指标
- PR 指标待抓取
描述
## Request
`notifications/claude/channel` takes `params: { content: string, meta?: Record }`. A channel plugin that bridges a chat network (Telegram in our case) receives photos with captions, but can only deliver the caption as text; the model then has to call a tool to fetch the file and a second one to read it.
Precedent already in the binary: `notifications/message` (Chrome extension) accepts `params.image: { type: "base64", media_type: image/jpeg|png|gif|webp, data }`. The same optional field on `notifications/claude/channel` would let a channel deliver a photo as a real image block in the same turn as its caption.
## Why it matters
Chat channels are image-heavy (screenshots, photos of whiteboards, receipts). Today every image costs two extra tool calls and a round trip before the model can see it. Channel prompts are also enqueued with `skipAttachments: true`, so an `@path` mention in `content` is not expanded either, which is fine for trust reasons but leaves no path to a native image block.
## Proposal
- `params.image?: { type: "base64", media_type: "image/jpeg" | "image/png" | "image/gif" | "image/webp", data: string }` (or `images?: [...]`), rendered as an image block after the `` text.
- Apply the existing image size limits; ignore or reject unsupported types.
- Document it on the channels reference page next to `content` and `meta`.
Version: Claude Code 2.1.267 (Bun single-file build on Linux).
贡献指南
这个仓库没有索引到贡献指南
调研方向
Start by reading the existing notifications/message image handling and the notifications/claude/channel parameter path, then inspect the channels reference page. Done means channel prompts can carry the supported base64 image types alongside content, existing size limits apply, unsupported types are handled, and the reference documents the field.
由索引模型根据 Issue 内容生成。
评估
- 领域
- api, documentation
- Issue 类型
- 功能
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 活跃
- 描述清晰度
- 基本清楚
- 新手友好度
- 64/100