grill-me + graphify:AI 代理開發的拷問與地圖

grill-me + graphify:AI 代理開發的拷問與地圖

用 AI 代理寫程式時,效率瓶頸通常來自兩個地方:需求不夠清楚,或是 專案太大看不完grill-me GitHubgraphify 是目前 AI 代理工作流中極受歡迎的兩個開源模組(Skills),各自解決上述其中一個問題。兩者不衝突,反而能組成流暢的協同管線。

grill-me:動手前把需求問到透徹

grill-me 的核心機制是決策樹反向拷問。開發者提出一個想法後,它不直接動手,而是用一連串的問題逼開發者把規格說清楚。每次拷問的最終產物是一份完整的 Action Items 表格,直接當作實作規格。

實際拷問過程

拿一個真實案例來看。CareerWise 是一個職涯諮詢 AI 服務,使用者在上面詢問面試準備、履歷健檢、轉職規劃等問題。以下是用 grill-me 針對 CareerWise 學習與適應功能設計進行拷問的過程:

Q1:成本

每次回答後做 LLM 偏好分析,但沒有算過 inference cost。假設 1K users × 20 次/天,成本是多少?

回答:目前還沒有實際估算,這個量級需要先確認使用模式才能推算。

grill-me 給出的建議:

Q2:誤判防護

使用者心情不好對短回答也說「太長了」,一次 outlier 直接蓋掉正確的 detail_level,怎麼辦?

回答:單次誤判確實會汙染偏好資料,需要防護機制。

grill-me 的解法建議:

最終產出是一份結構化的 Action Items:

Priority Item
🔴 High 成本優化:有信號才跑 inference
🔴 High 誤判防護:threshold-based 偏好更新
🟡 Medium Feedback linking:加 regeneratedFrom 欄位

每個拷問分支都產出可執行的下一步,規格不需要等人來補。

graphify:專案的結構化地圖

graphify 走的是另一條路。它用 Tree-sitter 與 LLM 掃描整個專案資料夾,自動解析程式碼結構、檔案類型與文件內容,產出可供 AI 查詢的知識圖譜(graph.json)。

實際產出

針對一個 CareerWise 專案跑一次 graphify .,產生的圖譜包含 90 個節點(function、class、type、file)與 120 條以上的邊(imports / calls / contains / uses 關係),涵蓋 51 個檔案。

graphify 圖譜視覺化

局部聚焦 router 的三層分類邏輯:

router.ts ──classifyIntent()──→ layer1Rules()
                                  layer2Embedding() ──→ embed.ts
                                  layer3LLM() ──→ groq_sdk

router.ts 負責意圖分類,使用三層架構:Layer 1 用關鍵字規則秒判斷(如「嗨」→ greeting),Layer 2 用 embedding 相似度比對,Layer 3 由 LLM 判斷。Layer 2 和 Layer 3 都依賴 embed.ts 提供的向量搜尋。可參考之前的路由設計文章-CareerWise 從 Pipeline 到 Agentic:路由、提示鏈與反思模式

chat.ts 如何組合 routing 與處理 handlers:

chat.ts ──getReply()──→ getKnowledge() ──→ loadAllKnowledge()
                         buildMessages()
                         getHandler(intent) ──→ handlers/*

chat.ts 是主要的對話邏輯入口。收到使用者訊息後,先載入知識庫、組合 system prompt 與對話歷史,再透過 router.ts 分類意圖,最後派發給對應的 handler(greeting / career / resume / booking)產生回應。可參考知識庫搜尋重構文章-CareerWise 從強制注入到 Tool Use

不需要逐檔打開閱讀,AI 直接看懂誰呼叫誰、依賴誰。

graphify 的關鍵差異在於結構就是訊號。傳統 RAG 把檔案切碎後用向量相似度撈取,檔案之間的關聯全部丟失;graphify 保留每條邊並標註 EXTRACTED、INFERRED 或 AMBIGUOUS,開發者永遠知道哪些是真實的程式碼關係,哪些是 AI 推論。

功能對照表

維度 grill-me graphify
解決痛點 需求模糊、思慮不周、AI 亂猜需求 大型專案檔案繁多、重複讀檔燒 Token
運作方式 AI 主動提出一連串拷問讓人類回答 本地解析程式結構與檔案,建立知識圖譜
主要產出 清楚定義的規格邊界與行動項目 互動網狀圖(graph.html)、結構化資料(graph.json)
互動對象 針對人類開發者進行提問與確認 針對 AI 助手提供結構化檢索的 MCP / 記憶層

對 UI/UX 的影響

grill-me:從空白輸入到結構化對話

沒有 grill-me 時,開發者面對的是空白的對話輸入框。規格只能靠自己從腦袋裡擠出來,AI 收到 prompt 就開始產出。等看到結果才發現方向錯了,來回修改的情緒從期待變成沮喪。

使用 grill-me 後,對話變成結構化的問答流程。開發者不再對著空白輸入框苦思,而是回答 AI 拋出的問題就好。每次拷問結束後產出 Action Items 表格,開發者看到的是可執行的規格,不是一堆需要再消化的草稿。

graphify:從讀檔等待到圖譜導航

沒有 graphify 時,開發者的工作節奏是:餵檔案 → 等 AI 讀完 → 發現漏了 → 再餵檔案。回覆時間長,且 AI 常在不對的檔案裡找答案,答非所問。

使用 graphify 後,開發者跑一次 graphify . 產出 graph.html,打開瀏覽器就能看到整個專案的視覺化圖譜。AI 回覆時間明顯縮短,查詢特定模組時不再亂給不相關的程式碼。

還能更好的地方

目前的體驗還有改善空間:

核心效益

協同搭配建議

在實際的工程日常中,兩者可以組成流暢的管線:

  1. 探索與理解 — 剛拿到陌生專案時,先跑 graphify . 建立專案地圖,讓 AI 瞬間掌握全局核心架構
  2. 規格收斂 — 當要修改或新增功能,對 AI 提出的初步 Plan 進行檢視時,用 grill-me 進行交叉詰問,補足邊界條件

兩者連在一起用,效果遠勝單打獨鬥:graphify 讓 AI 知道專案長什麼樣,grill-me 確保 AI 做對的事。

總結:grill-me vs graphify

兩者解決的是不同階段的效率瓶頸,適合串成完整的 AI 代理工作流,正在使用 AI 代理的開發者,不妨兩個都裝起來試試。

參考資料


Agentic AI Graphify grill-me CareerWise LLM AI AI Engineering