-
Notifications
You must be signed in to change notification settings - Fork 3.6k
feat: add subagents sidebar with clickable navigation and parent keybind #4865
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: dev
Are you sure you want to change the base?
Conversation
c6ff036 to
e768f4c
Compare
|
This is very nice! |
Merge PR sst#4865: Subagents sidebar with clickable navigation
|
Can't wait for this! Plz add to oc soon 🙏🏽 |
|
@rekram1-node - please review! not my PR but i've been testing in my fork and this one has been very useful. |
|
There is this other PR #4564 which is related, but i think this one is even better. |
|
Yeah our designer had some opinions on this, I will try to get this in once we have UX thought out, prolly will update this directly |
|
Absolutely love this |
|
Been using this for the past week and a half, can't live without it. |
Resolved conflicts: - packages/opencode/package.json: Updated version to 1.0.150 - packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx: Accepted upstream changes, restored double Ctrl+C exit feature (PR sst#4900) - packages/opencode/src/config/config.ts: Accepted upstream changes with super keybinds, preserved header_toggle and session_parent keybinds - script/publish.ts: Preserved fork-specific comment - .github/workflows/publish.yml: Removed (deleted in fork) - packages/ui/src/components/input.css: Removed (deleted upstream) - packages/ui/src/components/input.tsx: Removed (deleted upstream) - bun.lock: Regenerated - All package.json files: Accepted upstream version bumps - Desktop, console, enterprise files: Accepted upstream Preserved fork features: - PR sst#4900: Double Ctrl+C to exit - PR sst#4865: session_parent keybind - Fork feature: header_toggle keybind
Resolved conflicts: - packages/opencode/package.json: Updated version to 1.0.150 - packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx: Accepted upstream changes, restored double Ctrl+C exit feature (PR sst#4900) - packages/opencode/src/config/config.ts: Accepted upstream changes with super keybinds, preserved header_toggle and session_parent keybinds - script/publish.ts: Preserved fork-specific comment - .github/workflows/publish.yml: Removed (deleted in fork) - packages/ui/src/components/input.css: Removed (deleted upstream) - packages/ui/src/components/input.tsx: Removed (deleted upstream) - packages/desktop/src/context/layout.tsx: Restored fork's font/theme support - packages/desktop/src/components/font-picker.tsx: Updated to use new items function signature - packages/desktop/src/components/theme-picker.tsx: Updated to use new items function signature - bun.lock: Regenerated - All package.json files: Accepted upstream version bumps - Desktop, console, enterprise files: Accepted upstream Preserved fork features: - PR sst#4900: Double Ctrl+C to exit - PR sst#4865: session_parent keybind - Fork feature: header_toggle keybind - Fork feature: Desktop font and theme pickers
* wip: lander updates * wip: lander updates * wip: lander updates * wip: lander updates * ignore: Comment out plugin entry in opencode.jsonc Comment out the plugin entry in opencode.jsonc * chore: format code * wip: downloads * write typescript artifacts to node_modules/.ts-dist * wip: lander hero updates * wip: hero and nav updates * ignore: update download stats 2025-12-11 * wip: lander updates * fix: change terminal title to OpenCode * chore: format code * wip: add more items to download * wip: add faq to download * wip(desktop): progress * wip(desktop): progress * wip(desktop): progress * wip(desktop): progress * wip(desktop): progress * wip(desktop): progress * fix: missing font * fix: load fonts the right way * wip: social share image * tauri: always build cli in predev * wip: update lander video * Fix / Improve Github Eyes Reaction Removal (sst#5383) * Add ripgrep to Docker image (sst#5379) * fix bug causing windows builds to sometimes fail * fix: inverted text colors * allow custom mappings for all textarea actions via config * chore: format code * Update Nix flake.lock and hashes * align default input keybinds * ci: enable tauri desktop app to be published with GitHub release ID and tag name * release: v1.0.147 * chore: format code * fix share image * ci: fix tauri release asset naming to use opencode-desktop-[platform]-[arch][ext] format * release: v1.0.148 * chore: format code * temporarily remove undo/redo keybinds * release: v1.0.149 * ci: use Blacksmith runners for Linux and Windows Tauri builds to improve build performance * chore: format code * fix: free cta * wip: avatar colors * ci * chore: format code * ci: install libglib2.0-dev on Blacksmith Linux runners to fix missing glib-2.0 system library error * fix super modifier parsing * chore: format code * ci: fix Ubuntu host detection in Tauri build workflow * wip: lander updates * chore: format code * ci * wip(desktop): progress * wip(desktop): progress * wip(desktop): progress * wip(desktop): progress * wip(desktop): progress * fix: Writing to Bun.stderr causes CPU pinning to 100%. (sst#5396) * fix * ci * release: v1.0.150 * sync: merge upstream v1.0.150 into integration Resolved conflicts: - packages/opencode/package.json: Updated version to 1.0.150 - packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx: Accepted upstream changes, restored double Ctrl+C exit feature (PR sst#4900) - packages/opencode/src/config/config.ts: Accepted upstream changes with super keybinds, preserved header_toggle and session_parent keybinds - script/publish.ts: Preserved fork-specific comment - .github/workflows/publish.yml: Removed (deleted in fork) - packages/ui/src/components/input.css: Removed (deleted upstream) - packages/ui/src/components/input.tsx: Removed (deleted upstream) - packages/desktop/src/context/layout.tsx: Restored fork's font/theme support - packages/desktop/src/components/font-picker.tsx: Updated to use new items function signature - packages/desktop/src/components/theme-picker.tsx: Updated to use new items function signature - bun.lock: Regenerated - All package.json files: Accepted upstream version bumps - Desktop, console, enterprise files: Accepted upstream Preserved fork features: - PR sst#4900: Double Ctrl+C to exit - PR sst#4865: session_parent keybind - Fork feature: header_toggle keybind - Fork feature: Desktop font and theme pickers * chore: format code --------- Co-authored-by: David Hill <iamdavidhill@gmail.com> Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com> Co-authored-by: GitHub Action <action@github.com> Co-authored-by: Brendan Allan <brendonovich@outlook.com> Co-authored-by: Adam <2363879+adamdotdevin@users.noreply.github.com> Co-authored-by: Daniel Polito <danielbpolito@gmail.com> Co-authored-by: GDR! <gdr@gdr.name> Co-authored-by: Dax Raad <d@ironbay.co> Co-authored-by: Sebastian Herrlinger <hasta84@gmail.com> Co-authored-by: opencode <opencode@sst.dev> Co-authored-by: Shantur Rathore <i@shantur.com> Co-authored-by: Aiden Cline <aidenpcline@gmail.com> Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com>
This merge brings upstream changes while preserving fork-specific features: Preserved fork features: - PR sst#4898: Search in messages (Ctrl+F) - PR sst#4791: Bash output with ANSI colors - PR sst#4900: Double Ctrl+C to exit - PR sst#4709: Live token usage during streaming - PR sst#4865: Subagents sidebar with clickable navigation - PR sst#4515: Show plugins in /status - Fork-only: Toggle session header visibility Resolved conflicts: - Package versions updated to upstream v1.0.149 - Keybind type changes (cmd -> super) - Desktop context files updated with defensive API checks - UI components updated for new items prop signature - input.css/tsx renamed to text-field.css/tsx Validation: - All typechecks pass (12/12 packages) - All tests pass (281 passed, 1 skipped) 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Add goToParent() function and command palette entry for navigating to parent sessions. This completes the session_parent keybind implementation from PR sst#4865 (subagents sidebar feature). Also document critical code markers in fork-features.json for preserving this feature during upstream syncs. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
|
This would be super useful. ++ |
Resolved conflicts: - bun.lock: Regenerated from scratch - packages/*/package.json: Accept upstream version (1.0.167) - packages/extensions/zed/extension.toml: Accept upstream version Upstream changes include: - Version bump to 1.0.167 - Terminal title toggle feature added to config - MCP authentication improvements - Legal pages (privacy policy, terms of service) - Tauri package updates Fork features preserved: - PR sst#4898: Search in messages (Ctrl+F) - PR sst#4791: ANSI bash output support - PR sst#4900: Double Ctrl+C to exit - PR sst#4709: Live token usage during streaming - PR sst#4865: Subagents sidebar navigation - PR sst#4515: Show plugins in /status - PR sst#5508: Cache management commands - PR #ariane-emory: Granular file permissions - PR #fork-140: Toggle transparent background - Desktop features: slash commands, shell mode, themes, branding
Resolved conflicts: - packages/opencode/src/cli/cmd/tui/routes/session/index.tsx: Merged fork search highlighting with upstream user message markdown toggle - packages/opencode/package.json: Accept upstream v1.0.170, preserved ghostty-opentui dependency - .github/workflows/generate.yml: Keep fork-specific workflow (better error messaging) - script/publish.ts: Keep fork-specific publish script (shuvcode registry, contributors) - packages/extensions/zed/extension.toml: Accept upstream v1.0.170 - All other package.json files: Accept upstream v1.0.170 versions - bun.lock: Regenerated Preserved fork features: - PR sst#4898: Search in messages (Ctrl+F with highlighting) - PR sst#4791: Bash output with ANSI (ghostty-opentui) - PR sst#4900: Double Ctrl+C to exit - PR sst#4709: Live token usage during streaming - PR sst#4865: Subagents sidebar with clickable navigation - PR #fork-140: Toggle transparent background - Fork: Toggle session header visibility - Fork: Desktop slash commands and shell input mode - Fork: Desktop Night Owl theme - Fork: Desktop theme/font pickers and branding - Fork: Share functionality for shuv.ai - Fork: Desktop mobile responsiveness - Fork: Desktop review pane resizing New upstream feature integrated: - User message markdown toggle (enable/disable markdown rendering in user messages)
Resolved conflicts: - packages/opencode/script/publish.ts: Keep fork-specific publishing (skip Docker), adopt upstream's .cwd() syntax Added missing dependency: - ghostty-opentui: Required for PR sst#4791 (Bash output with ANSI) feature Preserved fork features: - All fork features from fork-features.json preserved - PR sst#4791 bash ANSI output - PR sst#4898 search in messages - PR sst#4900 double Ctrl+C - PR sst#4709 live token usage - PR sst#4865 subagents sidebar - All desktop/TUI customizations
Resolved conflicts: - packages/opencode/script/publish.ts: Keep ours (fork-specific publishing) Preserved fork features: - All features from PRs sst#4898, sst#4791, sst#4900, sst#4709, sst#4865, sst#4515, sst#5508 - Glob permissions (#ariane-emory/glob-permissions) - Toggle transparent background (#fork-140) - Session header visibility toggle - Desktop slash commands and shell input mode - Desktop Night Owl theme - Desktop theme/font pickers, branding, inline header - Share functionality for shuv.ai - All other fork-specific features listed in fork-features.json
Resolved conflicts: - bun.lock: regenerated - packages/opencode/package.json: version 1.0.176-1 (fork suffix) - packages/desktop/src/context/global-sync.tsx: merged retry() with defensive array check - packages/desktop/src/context/global-sdk.tsx: merged commented signal with fetch/throwOnError - packages/desktop/src/pages/layout.tsx: preserved onCleanup import - Simple version bumps: accepted upstream for all other package.json files Preserved fork features: - PR sst#4898: Search in messages - PR sst#4791: Bash output with ANSI - PR sst#4900: Double Ctrl+C to exit - PR sst#4709: Live token usage during streaming - PR sst#4865: Subagents sidebar with clickable navigation - PR sst#4515: Show plugins in /status - PR sst#5508: Cache management command - PR glob-permissions: Granular file permissions - PR fork-140: Toggle transparent background - Desktop slash commands and shell input mode - Desktop Night Owl theme - Desktop theme/font pickers, branding, and inline header - Share functionality for shuv.ai infrastructure - TUI configurable spinner styles - TUI layout density for small terminals
Resolved conflicts: - Package versions: Accept upstream 1.0.179 versions for all packages - packages/opencode/package.json: Updated version, preserved fork dependencies - packages/desktop/src/context/global-sync.tsx: Preserved fork's defensive array check - packages/desktop/src/pages/layout.tsx: Preserved fork's mobile responsiveness imports - .github/workflows/publish.yml: Keep fork-specific workflow config - packages/extensions/zed/extension.toml: Accept upstream version URLs - bun.lock: Regenerated from clean install Preserved fork features: - PR sst#4898: Search in messages - PR sst#4791: Bash output with ANSI - PR sst#4900: Double Ctrl+C to exit - PR sst#4709: Live token usage during streaming - PR sst#4865: Subagents sidebar with clickable navigation - PR sst#4515: Show plugins in /status - PR sst#5508: Cache management command - PR #ariane-emory/glob-permissions: Granular File Permissions - PR #fork-140: Toggle transparent background - Fork-only: Desktop theme/font pickers, branding, mobile responsiveness - Fork-only: Share functionality for shuv.ai infrastructure - Fork-only: TUI configurable spinners and layout density
Resolved conflicts: - bun.lock: accepted upstream version - packages/console/*/package.json: accepted upstream versions - packages/desktop/package.json: accepted upstream version - packages/enterprise/package.json: accepted upstream version - packages/extensions/zed/extension.toml: accepted upstream version - packages/function/package.json: accepted upstream version - packages/plugin/package.json: accepted upstream version - packages/sdk/js/package.json: accepted upstream version - packages/slack/package.json: accepted upstream version - packages/tauri/package.json: accepted upstream version - packages/ui/package.json: accepted upstream version - packages/util/package.json: accepted upstream version - packages/web/package.json: accepted upstream version - sdks/vscode/package.json: accepted upstream version - packages/opencode/package.json: merged (version 1.0.181-1) - packages/opencode/src/agent/agent.ts: merged fork features (minimatch, resolveFilePermission) with upstream (Log) - packages/opencode/src/session/prompt.ts: merged fork features (plugin commands) with upstream (Agent.defaultAgent) - packages/desktop/src/context/layout.tsx: merged fork features (review pane) with upstream (session pane) - packages/desktop/src/pages/session.tsx: kept fork version (mobile responsiveness, image preview, share commands) Preserved fork features: - PR sst#4898: Search in messages - PR sst#4791: Bash output with ANSI - PR sst#4900: Double Ctrl+C to exit - PR sst#4709: Live token usage during streaming - PR sst#4865: Subagents sidebar - PR sst#4515: Show plugins in /status - PR sst#5508: Cache management command - PR ariane-emory/glob-permissions: Granular file permissions - PR fork-140: Toggle transparent background - Desktop theme/font pickers and shuvcode branding - Desktop review pane resizing and share commands - Desktop mobile viewport fixes - Desktop image preview in file viewer - Shell command cwd fix for new projects - TUI configurable spinners and layout density
|
Add Subagents in the sidebar
<leader>+Up