# opencode-look-at **Repository Path**: ai_1024/opencode-look-at ## Basic Information - **Project Name**: opencode-look-at - **Description**: OpenCode 插件,为非多模态模型提供图片识别能力 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-03-26 - **Last Updated**: 2026-03-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # opencode-look-at OpenCode 插件,为非多模态模型提供图片识别能力。 ## 功能 - 识别本地图片文件 - 识别剪贴板/粘贴的图片 - 自动调用 multimodal subagent 处理 - 支持多种图片格式(PNG、JPEG、WebP、HEIC 等) ## 安装 ### 方式一:本地文件 ```bash git clone https://gitee.com//opencode-look-at.git ~/.config/opencode/plugins/look-at cd ~/.config/opencode/plugins/look-at bun install ``` ### 方式二:配置文件 在 `opencode.json` 中添加插件路径: ```json { "$schema": "https://opencode.ai/config.json", "plugin": [ "file:///root/.config/opencode/plugins/look-at/index.ts" ] } ``` ## 配置 ### 1. 配置 multimodal subagent 在 `~/.config/opencode/opencode.json` 中配置多模态子代理: ```json { "$schema": "https://opencode.ai/config.json", "model": "bailian-coding-plan/glm-5", "agent": { "build": { "prompt_append": "当用户请求处理图片文件(如 '看看 photo.jpg')时,使用 look_at 工具。look_at 会自动处理图片并调用 multimodal subagent。" }, "multimodal": { "description": "处理图片、截图、图表等视觉内容。当用户上传图片、询问图片内容、需要OCR识别、分析图表数据时,自动调用此agent。", "mode": "subagent", "model": "bailian-coding-plan/qwen3.5-plus", "prompt": "你是一个图片识别专家,使用多模态模型直接分析图片。\n\n【重要】禁止使用任何 OCR 或图片分析工具。你的模型已具备视觉能力,必须直接查看图片内容。\n\n分析要点:\n1. 图片的主要内容\n2. 文字信息(如有)\n3. 图表数据(如有)\n4. 界面元素(如为截图)\n5. 技术细节(如为架构图或代码截图)\n\n请用中文回答。", "tools": { "task": false, "look_at": false, "read": false } } } } ``` ### 2. 配置说明 | 配置项 | 说明 | |-------|------| | `build.prompt_append` | 引导主代理使用 look_at 工具处理图片文件 | | `multimodal.model` | 多模态模型,如 `qwen3.5-plus`、`gpt-4o`、`claude-sonnet-4` | | `multimodal.tools` | 禁用 `task`、`look_at`、`read` 防止循环调用 | ### 3. 图片来源优先级 | 来源 | 触发方式 | 说明 | |-----|---------|------| | `file_path` | 用户明确指定文件路径 | 如 "看看 D:\photo.jpg" | | `image_data` | 外部程序调用传递 Base64 | 用于脚本集成 | | 自动提取 | 用户粘贴图片后调用 look_at | 无需传参,工具自动从消息提取 | **注意**:当用户粘贴图片时,非多模态模型看不到图片内容。模型只需调用 `look_at({ goal: "描述目标" })`,工具会自动从消息中提取图片。 ## 使用 ### 在 OpenCode 中调用 ``` 使用 look_at 工具识别 /path/to/image.png ``` ### 参数说明 | 参数 | 类型 | 说明 | |-----|------|------| | `file_path` | string | 本地图片文件的绝对路径 | | `image_data` | string | Base64 编码数据(用于外部程序调用) | | `goal` | string | 要从图片中提取的信息描述 | **注意**:`file_path` 和 `image_data` 可都不提供,工具会自动从消息中提取粘贴的图片。 ### 示例 ``` # 指定文件路径 look_at file_path=/path/to/screenshot.png goal="识别截图中的UI元素和布局" # 粘贴图片后(无需传 file_path/image_data) look_at goal="识别图片内容" # 多张图片时自动使用最近一张 look_at goal="分析图表数据" ``` ## 工作原理 1. **参数检查**:检查 `file_path` 或 `image_data`,未提供时从消息提取 2. **图片处理**:读取文件、转换格式(HEIC/RAW → JPEG)、Base64 编码 3. **创建子会话**:继承父会话目录,创建独立的子会话 4. **调用 multimodal subagent**:发送图片和目标描述 5. **提取响应**:从子会话消息中提取分析结果 ## 调试 ### 查看日志 ```bash # 运行时打印日志 opencode --print-logs --log-level DEBUG # 查看日志文件 cat ~/.local/share/opencode/log/*.log | grep look-at-plugin ``` ### 日志位置 - Linux/macOS: `~/.local/share/opencode/log/` - Windows: `%USERPROFILE%\.local\share\opencode\log` ## 依赖 - OpenCode >= 1.0.0 - Bun 运行时 - 多模态模型(如 `qwen3.5-plus`、`gpt-4o`、`claude-sonnet-4`) - `sharp`(图片格式转换,自动安装) ## 支持的图片格式 | 格式 | 支持方式 | |-----|---------| | JPEG, PNG, WebP, GIF, BMP, TIFF | 原生支持 | | HEIC, HEIF | 自动转换为 JPEG | | RAW (CR2, NEF, ARW, DNG 等) | 自动转换为 JPEG | ## 许可证 MIT