ypshidifu a5a8c5e011 v2: 将 oc-session-all 从 v1 格式转为 v2 Plugin.define 格式
- 使用 import { Plugin } from "@opencode/plugin/tui"
- 使用 Plugin.define({ id, setup(context) }) 格式
- api.* 调用全部替换为 context.*: api.event.on → context.data.on, api.ui.toast → context.ui.toast.show, api.ui.dialog.* → context.ui.dialog.*, api.command.register + api.keymap.registerLayer 合并为 context.keymap.layer({commands, bindings})
- package.json exports 添加 ./tui 入口点,engines.opencode 升级为 >=2.0.0
- 已通过 minimal-v2-test 验证 v2 格式可正确加载
2026-09-22 15:19:14 +08:00

oc-session-all

OpenCode TUI 插件:弹出全项目会话选择器,跨所有项目浏览和切换会话。

功能

  • Ctrl+o 或 /sessions-all 打开可搜索的会话选择面板
  • 按项目分组、按更新时间倒序排列
  • 过滤掉已归档和子代理会话
  • 拦截 MCP 连接错误 toast,保持界面整洁

安装

在 ~/.config/opencode/tui.json 中添加:

{
  "$schema": "https://opencode.ai/tui.json",
  "plugin": [
    "D:/桌面/源码/oc_session/tui-plugins/oc-session-all.ts"
  ]
}

重启 OpenCode 即可生效。

快捷键

快捷键 命令 说明
Ctrl+o — 打开会话选择器
/sessions-all resume-all, continue-all 斜杠命令

项目结构

oc_session/
├── tui-plugins/
│   └── oc-session-all.ts   ← 插件源码(OC 加载入口)
├── package.json
├── node_modules/
├── .gitignore
└── README.md

许可证

MIT

S
Description
No description provided
Readme
16 MiB
Languages
JavaScript 57.9%
Python 35.9%
TypeScript 6.2%