opencode-sesh 2.0.3 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/AGENTS.md CHANGED
@@ -159,7 +159,8 @@ when opencode exits, the picker reopens with the query preserved.
159
159
  ## TUI panel (`tui-plugins/sesh-panel/tui.tsx`)
160
160
 
161
161
  - **Sidebar & Home list:** `api.slots.register` on `sidebar_content` (`sidebar.content`
162
- prepend mode — native sidebar content stays) and `home_bottom` (`home.footer`
162
+ append mode by default — native sidebar content stays above Sessions;
163
+ `sidebarPlacement: "prepend"` puts Sessions first) and `home_bottom` (`home.footer`
163
164
  prepend mode). In the sidebar, pinned directories sort first, then directory groups
164
165
  by recency; sessions within each group sort by last update regardless of pins.
165
166
  In the home list, pinned sessions sort first.
package/CHANGELOG.md CHANGED
@@ -5,6 +5,18 @@ All notable changes to this project are documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [2.1.0] - 2026-10-20
9
+
10
+ ### Added
11
+
12
+ - **tui:** Configure sessions sidebar placement
13
+
14
+ ## [2.0.4] - 2026-10-20
15
+
16
+ ### Added
17
+
18
+ - **tui:** Make the sessions sidebar optional (#24)
19
+
8
20
  ## [2.0.3] - 2026-10-17
9
21
 
10
22
  ### Fixed
@@ -500,6 +512,8 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
500
512
  - Fixture-database regression suite, TypeScript typechecking, and ShellCheck in
501
513
  CI.
502
514
 
515
+ [2.1.0]: https://github.com/ozandogrultan/opencode-sesh/compare/v2.0.4...v2.1.0
516
+ [2.0.4]: https://github.com/ozandogrultan/opencode-sesh/compare/v2.0.3...v2.0.4
503
517
  [2.0.3]: https://github.com/ozandogrultan/opencode-sesh/compare/v2.0.2...v2.0.3
504
518
  [2.0.2]: https://github.com/ozandogrultan/opencode-sesh/compare/v2.0.1...v2.0.2
505
519
  [2.0.1]: https://github.com/ozandogrultan/opencode-sesh/compare/v2.0.0...v2.0.1
package/README.md CHANGED
@@ -226,7 +226,29 @@ workspace at its directory; outside cmux it shows a toast instead.
226
226
 
227
227
  ### TUI sidebar and home list
228
228
 
229
- Click the sidebar's `search…` box to filter sessions in place; click
229
+ `sidebarPlacement` (`"append"` or `"prepend"`, default: `"append"`) places the
230
+ **Sessions** section below or above OpenCode's native sidebar sections. With
231
+ `"append"`, native todos appear above Sessions when available.
232
+
233
+ `showSidebar` (boolean, default: `true`) controls whether the **Sessions** section
234
+ appears in the sidebar. Set it to `false` to hide the section while keeping the
235
+ home list, session picker, and other commands available. OpenCode's native sidebar
236
+ is unaffected. In `cli.json`, replace the existing `"opencode-sesh"` string entry
237
+ with the object below; do not add a second entry. Keep other plugin entries and
238
+ the `opencode.json` entry unchanged:
239
+
240
+ ```json
241
+ {
242
+ "plugins": [
243
+ {
244
+ "package": "opencode-sesh",
245
+ "options": { "showSidebar": true, "sidebarPlacement": "append" }
246
+ }
247
+ ]
248
+ }
249
+ ```
250
+
251
+ When the section is visible, click its `search…` box to filter sessions in place; click
230
252
  elsewhere or press Esc to leave search. Click the **Sessions** heading to drive
231
253
  the list from the keyboard instead of the mouse (`↑`/`↓` to move, Enter to open,
232
254
  Option-P to preview, Option-S to pin a session, Option-R to pin its directory,
package/dist/tui.js CHANGED
@@ -4234,9 +4234,13 @@ function createApi(ctx) {
4234
4234
  },
4235
4235
  slots: {
4236
4236
  register(cfg) {
4237
- if (cfg.slots.sidebar_content) {
4237
+ if (cfg.slots.sidebar_content && ctx.options?.showSidebar !== false) {
4238
4238
  ctx.ui.slot({
4239
- prepend: "sidebar.content",
4239
+ ...(ctx.options?.sidebarPlacement === "prepend" ? {
4240
+ prepend: "sidebar.content"
4241
+ } : {
4242
+ append: "sidebar.content"
4243
+ }),
4240
4244
  render: cfg.slots.sidebar_content
4241
4245
  });
4242
4246
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "opencode-sesh",
3
- "version": "2.0.3",
3
+ "version": "2.1.0",
4
4
  "description": "OpenCode session browser: search, preview, and resume every session across every project from the terminal or TUI.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -3332,9 +3332,11 @@ function createApi(ctx: Plugin.Context) {
3332
3332
  },
3333
3333
  slots: {
3334
3334
  register(cfg: { order?: number; slots: Record<string, () => any> }) {
3335
- if (cfg.slots.sidebar_content) {
3335
+ if (cfg.slots.sidebar_content && ctx.options?.showSidebar !== false) {
3336
3336
  ctx.ui.slot({
3337
- prepend: "sidebar.content",
3337
+ ...(ctx.options?.sidebarPlacement === "prepend"
3338
+ ? { prepend: "sidebar.content" as const }
3339
+ : { append: "sidebar.content" as const }),
3338
3340
  render: cfg.slots.sidebar_content as any,
3339
3341
  })
3340
3342
  }