我們都在學習如何使用智能體進行程式設計。如果你身處「資訊繭房」中,可能會覺得每個人都在瘋狂追求流量最大化,一切都自動化,甚至在睡夢中啟動智能體來編寫完整的應用程式。但我看到的許多開發者的實際情況要正常得多:

他們在 VS Code 和 ChatGPT 之間來回貼上程式碼。

我發現 Copilot、Cursor 和 Antigravity 等 IDE 內建聊天介面的普及速度很慢。對於新一代開發者來說,命令列介面 (CLI) 代理程式仍然相對邊緣化。我知道這可能與你在 Twitter 上看到或聽到的情況有所不同。

總之,我以前常常吐槽開發者在IDE和網頁聊天介面之間回覆製程式碼。這週,我意識到自己也在做同樣的事,只不過用了更多終端機視窗。一個終端機視窗裡的測試失敗了,另一個終端機視窗裡有個客服正在工作。我複製錯誤訊息,貼上到客服窗口,等一會兒,再執行另一個命令,複製下一個錯誤訊息,再貼上。

我原本很酷的駭客式命令列工作流程突然感覺……沒那麼酷了。

顯而易見的解決方法是:允許代理程式讀取終端。但不太明顯的問題是:我不希望代理隨意讀取我打開的每一個終端視窗。

命令列版本的複製/貼上

我用Zellij當終端復用器。如果你用過 Tmux,它們的理念基本上相同:窗格、標籤頁、會話,以及各種終端狀態都集中在一個地方。我真的很喜歡 Zellij。不知為何,我用 Tmux 總是遇到問題,之後就再也沒用過 Tmux 了。不過,我好像是少數派。

我使用各種 CLI 編碼代理:OpenCode、Gemini CLI、Claude Code、Codex,以及我那週嘗試的其他任何工具。

一個普通的標籤頁看起來像左側的 OpenCode,右側有一個或兩個窗格,用於執行命令、觀察測試或監視開發伺服器。

圖片描述

但這兩個窗格是獨立的。代理程式不會自動知道測試窗格中發生了什麼。我的測試窗格也不知道代理程式正在嘗試除錯什麼。因此,我成了橋樑,手動來回傳遞錯誤和日誌。一遍又一遍地複製貼上。

整合代理 shell 有時有所幫助,但並非萬能之策。長時間執行的命令會消耗代理的執行時間。許多命令需要更高的權限。此外,我已經有了自己喜歡的終端佈局和工作流程。

我不想把所有事情都交給經紀人。我想讓經紀人看到我所看到的。

一切皆有意義

我最初的專案版本很簡單:賦予代理完全存取權限,讓它讀取整個 Zellij 會話,然後就大功告成了。

但是……秘密和安全是必須的。我對我的特工已經太隨意了。我正在努力改進這一點。我需要的是選定窗格的感知能力,而不是完整的終端可見性。

這成為了zellij-agent-tools的設計約束:代理程式應該只讀取我明確批准的窗格,並且該批准應該在窗格實際所在的位置可見。

澤利作為同意表面

該專案是一個 Zellij 插件加上一個本地 MCP 邊車。

Zellij 插件是面向使用者的部分。它列出窗格、請求批准、標記受關注的窗格,並允許我撤銷存取權限。

邊車是面向代理的部分。它提供了一小套 MCP 工具,以便代理可以列出已監視的窗格,並從我批准的窗格中讀取有界輸出。

我不想讓使用者同意隱藏在客服聊天介面中。我可以看到客服人員在線上呼叫工具,但我是在 Zellij 插件中批准的。我想要的是獨立的介面。 MCP 是客服人員介面,Zellij 是使用者介面。

感覺這個界線比較適合。

v1 版本的工具介面刻意設計得比較簡潔。功能只有:請求監視窗格、列出已監視的窗格、讀取有界快照、讀取遊標移動後的輸出、檢查狀態。

這樣就足以讓我不再手動複製貼上每一個錯誤了。

圖片描述

並非安全本身

我並非天真地認為代理程式很可能繞過這個限制。如果代理程式擁有我使用者的不受限制的 shell 存取權限,它或許可以直接呼叫 Zellij 命令列介面,或執行其他我意想不到的操作。

我並不是想在這裡解決惡意本地程式碼的問題,而是想讓我的日常工作流程更規範。

目標是讓簡單的路徑成為更安全的路徑:請求開啟窗格,向使用者顯示,只讀取已核准的內容,當狀態過期或撤銷時,關閉失敗。

這感覺比複製貼上的混亂或完全顯示終端要好得多。

圖片描述

更多待辦事項

這個專案我還有很多工作要做。這只是個非常粗糙的初稿。但方向感覺是對的,而且我認為它解決了一個實際存在的問題,我想其他人也會遇到這個問題。

我會繼續使用它,並不斷改進它,以優化我的工作流程。歡迎大家試用!


原文出處:https://dev.to/thisisryanswift/stop-using-your-clipboard-to-share-context-3941


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝11   💬10   ❤️1
245
🥈
我愛JS
💬2  
8
🥉
Gigi
2
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
📢 贊助商廣告 · 我要刊登