Show HN:WinkTerm – 與您共享同一PTY的終端AI
WinkTerm是一款開源終端工具,讓AI與使用者共享同一偽終端(PTY)會話。AI可以直接在終端輸入行中書寫命令,使用者可審查後執行。支援多模型、SSH連線、檔案傳輸、持久化聊天曆史、外部代理API等。
WinkTerm 是一個創新的開源終端工具,其核心理念是讓AI不僅能提供建議,更能直接與使用者在同一偽終端(PTY)會話中協作。與傳統的AI聊天介面不同,WinkTerm 的AI代理可以直接在使用者的終端輸入行中鍵入命令,使用者可以選擇按Enter執行、編輯或取消,從而在保持控制的同時高效協作。
該工具具備豐富的功能:共享PTY會話使AI和使用者在同一個終端程序中操作,無需複製貼上;內建的聊天功能允許使用者透過以“#”開頭的行直接在提示符下提問;側邊欄AI面板提供多會話標籤、AI生成標題和聊天/製作模式切換。此外,WinkTerm 支援持久化聊天曆史,會話儲存至 ~/.winkterm/chat_history.json,並在頁面載入時恢復,即使WebSocket重連或後端重啟也不會丟失。流式恢復功能可在重新整理或重連後恢復正在進行的AI響應,而流式佇列和後續建議則允許使用者在AI回應時排隊訊息,並獲得一鍵式後續建議。
WinkTerm 的一大亮點是其外部代理API,這是一個經過認證的HTTP介面,允許外部AI代理(如Claude Code、Cursor等)遠端驅動終端、SSH和檔案傳輸。API提供了原子執行、單次SSH執行、SSH連線管理、命名控制鍵、伺服器端grep、SSE即時輸出、操作事件流等功能。退出碼作為一等公民,避免了在輸出中檢查失敗的需要。透過預裝的Claude Code外掛或直接下載技能檔案,任何AI代理都能快速整合。WinkTerm 還支援統一會話池,內部代理和外部API共享同一終端會話池,代理建立的終端在Web UI中顯示為常規標籤。
WinkTerm 支援多種LLM後端,包括OpenAI、Anthropic、Ollama以及任何相容OpenAI的端點。使用者可以透過Docker快速部署(docker run或docker-compose up),也可下載桌面應用(Windows/macOS)。配置簡單,只需設定API金鑰和模型名稱。該工具強調“協作式運維”——AI寫命令,使用者審查後執行,而不是盲目信任。
作為一個開源專案,WinkTerm 採用Python + FastAPI + LangGraph + LangChain後端和Next.js + xterm.js前端,無資料庫依賴,配置和聊天曆史儲存在磁碟上。該專案在GitHub上積極開發,提供了詳細的文件、演示影片和案例研究(如AI代理在30分鐘內清除XMR挖礦木馬)。WinkTerm 對比Warp、Tabby、Claude Code等工具,在共享PTY、開源、自託管、Web UI、SSH+檔案傳輸、桌面應用等方面具有明顯優勢。