vtemian/octto

GitHub: vtemian/octto

octto 是一个基于浏览器的交互式头脑风暴工具,用于与 AI 智能体协作,解决终端输入效率低下的问题。

Stars: 391 | Forks: 26

# octto 工具 一个用于AI头脑风暴的交互式浏览器界面。告别终端输入,开始在浏览器中点击。 https://github.com/user-attachments/assets/9ba8868d-16f3-4451-9b73-6b7e1fc54655 当你描述你的想法时,octto 会打开一个交互式界面: - 点击选项而非输入 - 一次性查看所有问题 - 按任意顺序回答 - 即时查看后续问题 - 可视化地审阅最终方案 **10分钟的终端输入 → 2分钟的点击。** ## 快速开始 添加到 `~/.config/opencode/opencode.json`: ``` { "plugin": ["octto"] } ``` 选择 **octto** 智能体: ``` I want to add a caching layer to the API ``` 一个浏览器窗口将打开。点击你的答案。完成。 ## 交互式界面 ### 丰富的题型 无需再输入所有内容。从14种可视化输入类型中选择: | 类型 | 您看到的 | |------|----------| | `pick_one` | 单选按钮 | | `pick_many` | 复选框 | | `confirm` | 是/否按钮 | | `slider` | 可拖动的范围条 | | `rank` | 拖动排序 | | `rate` | 星级评分 | | `thumbs` | 赞/踩按钮 | | `show_options` | 展示优缺点的卡片 | | `show_diff` | 并排代码差异对比 | | `ask_code` | 带语法高亮的编辑器 | | `ask_text` | 文本输入(在需要时) | | `ask_image` | 图片上传 | | `ask_file` | 文件上传 | | `emoji_react` | 表情选择器 | ### 实时更新 - 当您回答完上一个问题,下一个问题即会显示 - 进度指示器显示剩余问题数 - 已完成的答案可供参考 - 最终方案渲染为可供审阅的章节 ### 并行分支 您的请求将被拆分为2-4个探索分支。所有初始问题会一次性出现: ``` ┌─ Branch 1: [question card] Request ─┼─ Branch 2: [question card] └─ Branch 3: [question card] ↓ Answer any, in any order ``` 每个分支都会深入进行直到满足需求。有些只需2个问题,有些则需要4个。 ## 幕后工作原理 ### 3个智能体 | 智能体 | 职责 | |--------|------| | **bootstrapper** | 将您的请求拆分为多个分支 | | **probe** | 判断一个分支是否需要更多问题 | | **octto** | 编排整个会话流程 | ### 流程 1. Bootstrapper 从您的请求中创建2-4个分支 2. 每个分支获得一个初始问题 → 全部在浏览器中显示 3. 您回答(点击,而非输入) 4. Probe 智能体评估:需要更多问题还是完成? 5. 重复直到所有分支完成 6. 显示最终方案供您批准 7. 设计保存到 `docs/plans/` ## 配置 可选的 `~/.config/opencode/octto.json`: ``` { "port": 3000, "agents": { "probe": { "model": "anthropic/claude-sonnet-4" } } } ``` ### 选项 | 选项 | 类型 | 默认值 | 描述 | |------|------|--------|------| | `port` | number | `0` (随机) | 用于浏览器界面服务器的固定端口 | | `agents` | object | - | 覆盖智能体模型/设置 | | `fragments` | object | - | 注入到智能体提示词中的自定义指令 | ### 片段 将自定义指令注入智能体提示词中。适用于按项目或全局自定义智能体行为。 **全局配置** (`~/.config/opencode/octto.json`): ``` { "fragments": { "octto": ["Always suggest 3 implementation approaches"], "probe": ["Include emoji in every question"], "bootstrapper": ["Focus on technical feasibility"] } } ``` **项目配置** (位于项目根目录的 `.octto/fragments.json`): ``` { "octto": ["This project uses React - focus on component patterns"], "probe": ["Ask about testing strategy for each feature"] } ``` 片段会被合并:全局片段首先加载,项目片段随后追加。每个片段都会成为添加到智能体系统提示词前的 `` 块中的一个要点。 ### 环境变量 | 变量 | 描述 | |------|------| | `OCTTO_PORT` | 覆盖端口(优先于配置文件) | 对于 Docker 工作流,设置一个固定端口: ``` OCTTO_PORT=3000 opencode ``` ## 开发 ``` bun install bun run build bun test ``` ## 许可证 MIT
标签:AI助手, AI编程工具, OpenCode集成, 交互式UI, 交互设计, 可视化输入, 多问题表单, 头脑风暴工具, 实时反馈, 并行分支, 效率提升, 数据可视化, 浏览器插件, 用户界面设计, 终端替代, 编码辅助, 自动化攻击