# oc-session-all OpenCode 插件:在任意目录下显示所有会话记录,绕过目录过滤限制。 ## 功能 - 拦截 `/session` 命令,显示所有项目的会话记录,而不仅仅是当前目录的 - 提供 `/sessions-all` 命令作为替代方案 - 按更新时间倒序显示会话列表 ## 安装 ### 方法 1:全局安装(推荐) 1. 将 `src/index.ts` 复制到全局插件目录: ```bash # Windows mkdir -p %USERPROFILE%\.config\opencode\plugins copy src\index.ts %USERPROFILE%\.config\opencode\plugins\oc-session-all.ts # Linux/macOS mkdir -p ~/.config/opencode/plugins cp src/index.ts ~/.config/opencode/plugins/oc-session-all.ts ``` 2. 重启 OpenCode ### 方法 2:项目级安装 1. 将 `src/index.ts` 复制到项目目录: ```bash mkdir -p .opencode/plugins cp src/index.ts .opencode/plugins/oc-session-all.ts ``` 2. 重启 OpenCode ## 使用方法 ### 方法 1:拦截 /session 命令 插件会自动拦截 `/session` 命令,显示所有会话记录。 ### 方法 2:使用新命令 运行 `/sessions-all` 命令来显示所有会话记录。 ## 输出示例 ``` === All Sessions (across all projects) === ID: ses_12af0b69cffeAMR3VcfAdp94Hi Title: OpenCode WSL 迁移 Directory: C:/Users/ypshidifu Created: 2026/9/20 10:00:00 Updated: 2026/9/20 15:30:00 --- ID: ses_12aeb915effez1zEjjIqf6yl1c Title: Session 2 Directory: D:/桌面/源码/mc_plugn/windowmsgbot Created: 2026/9/20 09:00:00 Updated: 2026/9/20 14:00:00 --- Total: 68 sessions ``` ## 工作原理 插件通过两种方式获取所有会话: 1. **OpenCode Client API**:尝试使用 OpenCode 的客户端 API 获取会话列表 2. **数据库直接查询**:如果 API 不可用,直接查询 SQLite 数据库 ## 配置 插件无需额外配置,安装后即可使用。 ## 故障排除 如果插件不工作: 1. 确保插件文件已正确放置在插件目录 2. 重启 OpenCode 3. 检查控制台日志是否有错误信息 4. 确保 SQLite3 命令行工具可用(用于数据库查询回退方案) ## 依赖 - OpenCode 1.18.11 或更新版本 - SQLite3 命令行工具(可选,用于数据库查询回退方案) ## 许可证 MIT