Skip to content

feat: ? menu, Ask, plugins; v0.0.11 - #19

Merged
codejunction merged 4 commits into
mainfrom
feature/ask-plugins
Oct 10, 2026
Merged

codejunction merged 4 commits into
mainfrom
feature/ask-plugins

Conversation

@codejunction

Copy link
Copy Markdown
Owner
  • ? menu at the shell prompt: commands, bookmarks, plugin commands
  • Ask (? question or Ctrl+I, sd ask): one command for the terminal's shell and OS, typed not run; ask_agent / ask_model settings
  • Plugins via shelldeck.plugins entry points: commands, event handlers, Plugins page, sd plugin list|enable|disable|run, docs/plugins.md, examples/shelldeck-docker
  • Fixes: first ? in a new terminal, ? after page load, input queued while socket connects, empty Enter left terminal running, skill frontmatter YAML
  • Release v0.0.11: version, lock, CHANGELOG

- ? on empty shell prompt opens inline menu at cursor: commands, bookmarks, plugin commands, Ask
- Ask: agent's model writes one command for terminal's shell+OS, typed not run; sd ask
- ask_agent / ask_model settings
- plugins via shelldeck.plugins entry points: commands (?docker ps, sd docker ps), event handlers
- sd plugin list|enable|disable|run; reference plugin examples/shelldeck-docker
- fix: shelldeck skill frontmatter not valid YAML, agents hid skill
- fix: empty Enter left terminal marked running until next command
- ignore xterm auto-replies (CPR, DA, focus, OSC) in keystroke tracking; new ConPTY made first line look edited, ? went to shell
- Ask keeps menu open: spinner, then command (Enter inserts, Shift+Enter runs), edit question to ask again, errors in place
- Ctrl+I at empty prompt opens Ask box, like Devin Desktop terminal Command
- menu placed from cursor cell, not xterm textarea (stale in new pane)
- long generated commands wrap
- decode agent output as UTF-8
- Plugins page (sidebar More): status, package, errors, commands with Run, events, enable/disable
- @command(usage="<container>"): ? menu fills `docker logs ` to type args, Run asks for them, CLI shows usage
- Ask sees plugin commands; model may answer `?docker logs web`, menu runs it, sd ask prints `sd docker logs web`
- plugin code runs through PluginError guard: sys.exit/any error never stops server; entry point name must match plugin
- server tells page on connect if shell at prompt (replayed screen has no prompt marks): ? after page load works
- input typed while socket connects is queued, not dropped
- typed command name ranks above Ask in ? menu
- docs/plugins.md: writing a plugin guide
@codejunction
codejunction merged commit 123dc59 into main Oct 10, 2026
10 checks passed
@codejunction
codejunction deleted the feature/ask-plugins branch October 10, 2026 17:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant