什麼是 Ray?
Ray 是什麼?
Ray 是一個跨語言、跨框架的桌面除錯伴侶,設計用於收集、組織並可視化程式碼的除錯輸出。與直接在應用程式或終端機中輸出資料不同,Ray 提供一個集中、功能豐富的環境,在這裡可以送出並以可讀、可導航的格式呈現字串、陣列、物件、查詢、電子郵件、事件等。透過 Ray,你可以在單一的專用 App 中對來自 PHP、Laravel、JavaScript 等語言的除錯資訊進行過濾、搜尋、歸檔與分析。目標很簡單:保持除錯體驗的快速、井然有序,且不打斷你的工作流程,同時提供強大工具以理解並採取行動。
Ray 3.0 引入的增強,結合了傳統除錯與 AI 輔助工作流程、HTML 元件生成,以及更豐富的圖示表示。該產品強調跨語言的一致性、IDE 導航的內嵌工具、遠端功能與靈活的資料可視化,同時也易於團隊與個人採用。
主要特性
- 集中式除錯介面:在一個桌面應用中收集並整理所有除錯輸出,而不是分散在終端與日誌中。
- 多語言與多框架支援:跨 PHP、Laravel、JavaScript 等工作;保持一致的語法與工作流程。
- 透過 SSH 的遠端除錯:連線到遠端伺服器,並直接把除錯輸出串流到 Ray,實現不修改本機程式碼即可的實時診斷。
- 歸檔與檢索訊息:保存重要輸出以便比較、審核或重現難以除錯的問題。
- 暫停與執行測量:暫停程式路徑並測量呼叫之間的時間,以找出效能瓶頸,且不需要新增額外程式碼。
- 無需 dump(自動輸出):自動從查詢、工作、例外與其他資料來源取得輸出,減少程式碼樣板。
- 跳到 IDE:可直接從 Ray 開啟相關原始位址,支援多種 IDE,快速切換上下文。
- 主題與可擴充性:可變更主題以符合工作流程,建立巨集,並以自訂客戶端或語言綁定方式擴充 Ray,支援未支援的環境。
- HTML 元件與 AI 驅動輸出:讓 AI 在 Ray 內生成 HTML 元件或原型,並與之直接互動。
- Mermaid 與 ERD 圖:生成結構化圖表以說明複雜的資料庫模式,內建檢視器。
- MCP 伺服器整合:為 AI 代理提供對 Windows 環境與工具的存取,以進行高階自動化與產生任務。
- Ray 3.0 的新功能:看看 AI 產生的內容、在應用內與 AI 輸出互動,並善用增強的圖表與視覺化工具。
- 跨平台相容性:Ray 在 macOS、Windows 與 Linux 上運作,提供跨裝置的一致除錯體驗。
- 文件與社群:完整文件與社群驅動的語言與框架支援生態。
如何使用 Ray
- 取得 Ray:從官方網站下載並安裝 Ray。授權由 Spatie 管理,定價選項包含標準價與啟動促銷價(以 Ray 3.0 為準,結帳查看定價)。
- 安裝與初始化:在開發機上啟動 Ray 桌面應用,確保 Ray 正在執行並準備接收資料。
- 從你的程式碼傳送除錯資料:使用 ray() 函數(或你語言中的等效函數)傳送字串、陣列、物件、查詢、郵件、事件,或你想檢視的資料。你可以為輸出貼上標籤以提升過濾與搜尋能力。
- 應用內呈現:Ray 以可讀、結構化的格式呈現你的資料。可依型別、來源或自訂標籤進行過濾以縮小結果,並使用搜尋功能在所有訊息中定位。
- 過濾、歸檔與精煉:為輸出附上顏色或標籤,將訊息歸檔以便日後參考,並暫停/測量執行以 isolating 問題。
- 跳到你的 IDE:從轉儲檔案直接跳到編輯器中的相關位置。Ray 支援多種流行的 IDE,方便快速導航。
- 利用 AI 與 HTML 元件:使用 Ray 的 AI 輔助功能生成 HTML 元件或原型,或以 Mermaid/ERD 圖說明複雜資料。
- 擴展與自訂:若 Ray 尚未支援你所依賴的語言或框架,可透過巨集或自訂客戶端來傳送資料。
- 如有需要遠端部署:利用透過 SSH 的遠端除錯,監控並除錯在遠端伺服器上執行的程式。
- 探索與優化:使用暫停、計時與過濾工具來定位效能問題、重現問題,並比較多次執行的輸出。
使用案例
- PHP 與 Laravel 除錯:直接將 PHP 與 Laravel 執行時資料輸出到 Ray,視覺化陣列與物件,並透過情境標籤檢查查詢。
- JavaScript 與前端除錯:捕捉類似控制台的輸出、API 回應與 Node.js 或瀏覽器端程式的事件,一切集中在同一處。
- 遠端伺服器除錯:透過 SSH 對遠端機器上的程式進行除錯,將日誌與輸出串流到 Ray 以供實時分析。
- AI 輔助開發:利用 AI 生成 HTML 元件、原型或對複雜模式的解釋,並在 Ray 內使用內建檢視器可視化結果。
- 資料庫與模式可視化:從資料流與查詢建立 Mermaid 或 ERD 圖,讓你更好地理解資料庫關係。
- 除錯工作流程的一致性:在 macOS、Windows 與 Linux 之間維持統一的除錯體驗,確保團隊不論工作站為何都保持一致。
常見問題
- 定價與授權模式是什麼? Ray 提供付費桌面授權。以最新版本為準,結帳時顯示價格,包含啟動促銷價。授權通常在設定的期間內有效(例如 1 年),並通過官方授權系統(Spatie)管理。也可能提供終身授權選項,需遵循當前條款。購買於重大版本更新前的授權,可能仍適用先前條款。
- 支援的平台有哪些? Ray 設計為跨平台,支援 macOS、Windows 與 Linux,在所有主要桌面環境中提供一致的除錯體驗。
- 支援哪些語言與框架? Ray 支援 PHP、Laravel、JavaScript,且可透過語言綁定或自訂客戶端支援其他語言。產品強調在受支援語言間維持一致的語法與工作流程。
- 我可以遠端除錯或在伺服器上除錯嗎? 可以。Ray 支援透過 SSH 進行遠端除錯,讓你連接到遠端伺服器,並將除錯輸出直接串流到 Ray,而無需修改本地應用程式。
- 搜尋、過濾與歸檔如何運作? 你可以依據類型、來源或自訂標籤過濾訊息,使用搜尋在所有訊息中定位項目,並歸檔重要輸出以供日後參考或比較。這有助於高效率地管理大量除錯資料。
- 是否有 AI 整合與 HTML 產生? Ray 3.0 引進讓 AI 生成 HTML 元件與圖表的功能,並提供 Mermaid 與 ERD 圖的內建檢視器。你也可以將 AI 輸出整合到除錯工作流程中以增強洞見。
- 如何開始? 從官方網站下載 Ray 桌面應用,查看語言綁定的文件,並透過 ray() 呼叫開始傳送資料。如果你需要客製化或擴充 Ray,可以探索巨集與自訂客戶端。
其他說明
Ray 強調一種工作流程:將除錯輸出從應用程式分離,同時仍讓資訊可取得、可搜尋、可操作。目標是提供一個強大、可擴充且跨平台的除錯環境,能與你的專案與團隊一起成長,同時保持你的開發流程。
Alternatives
PingPulse
PingPulse 提供 AI 代理可觀察性,讓您能夠追蹤代理交接、偵測停滯和循環等問題,並在只需極少程式碼整合的情況下接收行為異常的警報。
AakarDev AI
AakarDev AI 是一個強大的平台,通過無縫的向量資料庫整合簡化 AI 應用程式的開發,實現快速部署和可擴展性。
Devin
Devin 是一個 AI 編碼代理和軟體工程師,幫助開發者更快地構建更好的軟體。
imgcook
imgcook 是一款智能工具,只需點擊一下,即可將設計稿轉換為高品質、可投入生產的程式碼。
Rork
Rork 使用 AI 和 Expo (React Native) 從您的描述構建完整的、可投入生產的移動應用程式。
PromptLayer
PromptLayer 是一個用於提示管理、評估和大型語言模型 (LLM) 可觀察性的平臺,旨在增強 AI 工程工作流程。