Files
oc_session/README.md
T

2.2 KiB

oc-session-all

OpenCode 插件:在任意目录下显示所有会话记录,绕过目录过滤限制。

功能

  • 拦截 /session 命令,显示所有项目的会话记录,而不仅仅是当前目录的
  • 提供 /sessions-all 命令作为替代方案
  • 按更新时间倒序显示会话列表

安装

方法 1:全局安装(推荐)

  1. 将 src/index.ts 复制到全局插件目录:

    # 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 复制到项目目录:

    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