Wish Ssh Code Review
/install wish-ssh-code-review
Wish SSH Code Review
Quick Reference
| Issue Type | Reference |
|---|---|
| Server setup, middleware | references/server.md |
| Session handling, security | references/sessions.md |
Review gates
Run these in order when producing a written review. Do not claim a defect in a later step until the Pass when for the current step is satisfied for the code under review.
- Locate Wish entry points — Pass when: you have at least one repo path per server surface that calls
wish.NewServer,wish.WithMiddleware, registersbubbletea.Middleware, or defines the top-levelssh.Handlerchain (list the paths explicitly). - Capture server-setup evidence — Pass when: for each path from step 1, you have the actual
wish.WithHostKey*/ host-key configuration and the full middleware list in source order as written (not recalled from memory). If graceful shutdown exists, note the file(s) whereListenAndServeandShutdownrun. - Capture session / TUI evidence — Pass when: for each
teaHandler(or equivalent), you have noted from source whethers.Pty()is checked before using window size, and whether per-session renderers (bubbletea.MakeRenderer) are used where Lipgloss styles apply. - Write findings — Pass when: each finding uses
[FILE:LINE] ISSUE_TITLE(line range allowed where needed) and points to the relevant row in Quick Reference (or the matching section inreferences/).
Review Checklist
Use alongside Review gates; for a written review, complete the gates first so each item below can be tied to cited source.
- Host keys are loaded from file or generated securely
- Middleware order is correct (logging first, auth early)
- Session context is used for per-connection state
- Graceful shutdown handles active sessions
- PTY requests are handled for terminal apps
- Connection limits prevent resource exhaustion
- Timeout middleware prevents hung connections
- BubbleTea middleware correctly configured
Critical Patterns
Server Setup
// GOOD - complete server setup
s, err := wish.NewServer(
wish.WithAddress(fmt.Sprintf("%s:%d", host, port)),
wish.WithHostKeyPath(".ssh/id_ed25519"),
wish.WithMiddleware(
logging.Middleware(), // first: log all connections
activeterm.Middleware(), // handle terminal sizing
bubbletea.Middleware(teaHandler),
),
)
if err != nil {
return fmt.Errorf("creating server: %w", err)
}
Graceful Shutdown
// BAD - abrupt shutdown
log.Fatal(s.ListenAndServe())
// GOOD - graceful shutdown
done := make(chan os.Signal, 1)
signal.Notify(done, os.Interrupt, syscall.SIGTERM)
go func() {
if err := s.ListenAndServe(); err != nil && !errors.Is(err, ssh.ErrServerClosed) {
log.Error("server error", "error", err)
}
}()
\x3C-done
ctx, cancel := context.WithTimeout(context.Background(), 30*time.Second)
defer cancel()
if err := s.Shutdown(ctx); err != nil {
log.Error("shutdown error", "error", err)
}
BubbleTea Handler
func teaHandler(s ssh.Session) (tea.Model, []tea.ProgramOption) {
pty, _, _ := s.Pty()
model := NewModel(pty.Window.Width, pty.Window.Height)
return model, []tea.ProgramOption{
tea.WithAltScreen(),
tea.WithMouseCellMotion(),
}
}
When to Load References
- Reviewing server initialization → server.md
- Reviewing authentication, session state → sessions.md
Review Questions
- Are host keys handled securely?
- Is middleware order correct?
- Is graceful shutdown implemented?
- Are PTY window sizes passed to the TUI?
- Are connection timeouts configured?
- 确保已安装 OpenClaw(本地或 Docker 部署)
- 在对话框中输入安装命令:
/install wish-ssh-code-review - 安装完成后,直接呼叫该 Skill 的名称或使用
/wish-ssh-code-review触发 - 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
Wish Ssh Code Review 是什么?
Reviews Wish SSH server code for proper middleware, session handling, and security patterns. Use when reviewing SSH server code using charmbracelet/wish. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 154 次。
如何安装 Wish Ssh Code Review?
在 OpenClaw 或 Claude Code 对话框中运行命令「/install wish-ssh-code-review」即可一键安装,无需额外配置。
Wish Ssh Code Review 是免费的吗?
是的,Wish Ssh Code Review 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。
Wish Ssh Code Review 支持哪些平台?
Wish Ssh Code Review 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。
谁开发了 Wish Ssh Code Review?
由 Kevin Anderson(@anderskev)开发并维护,当前版本 v2.3.1。