
關於 Haystack Editor
What Is Haystack Editor
Haystack Editor 是一款桌面程式碼編輯器,骨幹是畫布,而不是一整排分頁。它沿用 VS Code,所以編輯、除錯和你熟悉的擴充功能都在,但工作區是一塊無限大的 2D 版面,你可以把檔案和函式拖到任何位置。開啟一個函式時,Haystack 會朝它呼叫的地方拉出一條線,於是程式碼的呼叫關係圖變成你看得到、排得動的東西,不用在腦中重新拼湊。
這個做法針對一個常見的困擾。在大型程式碼庫裡追一個函式,往往得在檔案之間跳來跳去,追到最後忘了自己從哪裡開始。在畫布上,相關檔案全都留在視野內,連接也不會消失。你也可以一次匯入既有的 VS Code 設定、擴充功能和快速鍵,轉換過去不必重建環境。
有些限制值得先知道。Haystack 以 PolyForm Strict 授權釋出原始碼,這和寬鬆的開源授權不一樣:你可以閱讀和編譯程式碼,但不能拿它推出自家的競品。專案很年輕、推進很快,所以藍圖上像是手動繪製連接、編輯器分組這類功能還沒完成。它是 Windows、macOS、Linux 的桌面應用程式,沒有網頁版。
Getting Started
- 從 Haystack 官網下載 Windows、macOS 或 Linux 的安裝檔
- 首次啟動時,匯入你既有的 VS Code 設定、擴充功能和快速鍵
- 開啟專案資料夾,把檔案拖到無限畫布上
- 點擊一個函式,把它呼叫的程式碼拉進來,排好編輯器並儲存版面
產品資訊
快速了解 Haystack Editor 的定價、支援平台與效能。
適合對象
這項工具最適合的使用者、任務與情境。
使用者
- 在大型程式碼庫工作的開發者:追函式路徑追到迷路,想把呼叫鏈擺在眼前的人
- 正在熟悉新程式碼庫的學生:比起一行一行讀,看檔案之間怎麼關聯更有幫助的初學者
- 做程式碼審查的團隊:想把改動的檔案和它們牽動的程式碼攤在同一塊版面上的審查者
- 需要更多空間的 VS Code 使用者:已經依賴擴充功能和設定,想要同樣的東西攤在更大畫面上的人
任務
- 理解陌生的專案:開啟進入點,讓 Haystack 把它觸及的函式拉進來
- 追蹤呼叫鏈:沿著一個函式走過好幾層,讓每一次跳轉都留在畫布上
- 跨檔案重構:移動程式碼時,把呼叫方和被呼叫方並排放在一起
- 審查 pull request:攤開被改動的檔案和它們的呼叫方,在核准前看清影響範圍
- 規劃改動:動程式碼之前,先在畫布上勾勒各部分怎麼連接
情境
- 剛加入一個新專案:第一天就看得出程式碼的輪廓,不用從資料夾名稱去猜
- 追一個錯誤:出問題的函式和它依賴的函式,都在同一個視野裡
- 用超寬螢幕:畫布把螢幕填滿,容納的程式碼比一般分頁欄多得多
- 從 VS Code 轉過來:匯入自己的設定就能繼續做事,只是改成在畫布上
- 探索開源專案:複製下來,打開畫布,把在意的部分畫成地圖
主要功能
無限畫布工作區
畫布是 Haystack Editor 的核心。你不堆疊分頁,而是把編輯器放在無邊版面上的任何位置,放大看細節、縮小看全貌。從側邊欄拖出檔案或函式,它就會待在你放下的位置,版面反映的是你怎麼思考程式碼,而不是你開啟檔案的順序。就是這個部分讓它跟一般編輯器感覺不同。
自動呼叫連接
當一段程式碼呼叫另一段,Haystack 會在兩個編輯器之間拉出連接。開啟一個函式,編輯器就把它呼叫的東西拉進來,呼叫關係圖於是在你導覽的過程中浮現。這個功能把平坦的檔案清單變成比較像地圖的東西。你可以沿著路徑走過好幾層,也不會忘記自己從哪來。
檔案總管檢視
檔案總管給你一棵檔案樹當起點,跟你對 VS Code 的期待一樣。從那裡,你把需要的東西拖到畫布上,其餘留在原地。它保留了逛專案的熟悉方式,畫布則負責處理你想一直擺在眼前的東西。對從 VS Code 過來的人來說,側邊欄馬上就順手。
鍵盤導覽
Haystack 把鍵盤導覽放在中心,你可以在編輯器之間移動、跳到程式碼,完全不用碰滑鼠。專案把快速導覽當成核心功能,而不是附加品,這在畫布上格外重要,否則平移和縮放反而會拖慢你。快速鍵沿用 VS Code,肌肉記憶繼續管用。
生成函式
編輯器內建一項 AI 功能,會幫你草擬一個函式。你描述想要的東西,它產出程式碼,接著你像放其他東西一樣,把它擺到畫布上並連接起來。它瞄準的是空白頁的那一刻:你知道函式大概長什麼樣,但不想動手打那些樣板。它跟編輯器的其他部分一起運作,不是另外開一個聊天視窗。
熟悉的 VS Code 底子
因為 Haystack 是 VS Code 的分支,編輯體驗、擴充功能、設定和快速鍵都沿用下來。你可以在首次執行時匯入現有的 VS Code 設定,你依賴的主題、快速鍵和擴充功能就會出現,不用重弄。內建的擴充功能為你使用的語言加上語言支援、自動完成和跳到定義,用的正是 VS Code 那套零件。
為寬螢幕而生
畫布在大的顯示器上才顯得出價值。在一般螢幕上,你看到的程式碼就比一整排分頁多;在超寬或多螢幕的配置下,你可以把整個子系統攤滿螢幕。釘選的編輯器能固定住螢幕的一部分,讓你同時在別處工作。這點說起來沒什麼,卻是畫布版面值得換過去的一大理由。
優缺點
優點
- 無限畫布把相關檔案和它們的呼叫連接放在同一個視野裡,不必在分頁之間跳來跳去
- 自動呼叫連接在你導覽時就把關係圖建起來,走過好幾層的路徑依然清楚
- 從 VS Code 過來的話,匯入擴充功能、設定和快速鍵就行,轉換幾乎不花設定時間
- 以桌面應用程式在 Windows、macOS、Linux 上執行,而且維持免費
- 專案每週更新,程式碼公開,你可以跟著藍圖走並回報問題
缺點
- 畫布需要時間適應,偏好單純分頁版面的人會覺得它更雜
- 專案還在早期,藍圖上像手動連接、編輯器分組這類功能還沒完成
- 沒有網頁版,你無法用瀏覽器開啟,也不能在不能安裝軟體的機器上用
- PolyForm Strict 授權讓你讀程式碼,但不能拿它推出競品,因此排除了某些用途
常見問題
Haystack Editor 是桌面程式碼編輯器,骨幹是畫布,而不是一整排分頁。它沿用 VS Code,把檔案攤在無限大的版面上,並在互相呼叫的程式碼之間拉出連接。
相關內容
探索與 Haystack Editor 相關的工具、技能與文章。
Haystack Editor 替代方案
Base Code
Base44 (Wix) · 程式設計 · 生產力Base Code 是 Base44 推出的共享雲端開發環境。團隊在對話中描述對既有 GitHub 儲存庫的修改,看著預覽確認結果,再以 Pull Request 交回工程團隊。
Google EmbeddingGemma 2
Google DeepMind · 寫作 · 圖片 · 程式設計Google EmbeddingGemma 2 是 7.4 億參數的開源模型,能把文字、程式碼、圖片、音訊與影片畫面轉成同一個 768 維空間裡的向量,在手機與筆電上就能執行。
GitGlow
GitGlow · 程式設計 · 生產力GitGlow 是桌面版 Git 用戶端,把你自己的程式碼與 AI 代理程式的變更集中在同一份審查裡,讓你在交付前看清楚機器上究竟要送出什麼。

