如何命令 AI「寫程式前先做計畫!」:JDS 技能的崛起

機器人正在仔細查看建築設計圖的樣子
AI Summary

JDS 是一個 GitHub Copilot 工具,它強制 AI 在撰寫程式碼之前必須先進行設計並通過測試,讓它像專業開發者一樣工作。

想像一下。為了建造您夢寐以求的舒適美麗的鄉村別墅,您聘請了業界以手腳俐落聞名的建築師。您滿懷期待地說出您的需求:「請幫我建一棟有大窗戶、採光良好的兩層樓洋房。」但是,如果這位建築師等您一說完就立刻衝出去,不由分說地在院子正中央倒水泥,並開始胡亂砌磚,您會怎麼想?

沒有顯示房屋整體結構的設計圖,也沒有確認地基是否穩固的安全檢查計畫。他甚至沒有問過房門的位置或上下水道管線的連接方式。無論他手腳多快、技術多高超,您可能都會馬上叫住那位建築師,並大喊:「拜託你先做好計畫再開始!」因為沒有計畫就建好的房子,最終可能會漏水、牆壁龜裂,甚至以後可能需要把整棟房子拆掉重建。

遺憾的是,這正是我們至今爭相使用的聰明人工智慧 (AI) 程式碼助理平時的模樣。當開發者向 ChatGPT 或 GitHub Copilot 等工具提出問題或需求時,人工智慧連一秒的猶豫都沒有,就急著立刻倒出一堆程式碼(作為電腦程式設計圖的指令集合)。人們起初對其驚人的速度歡呼雀躍,但逐漸意識到,這種無視整體軟體結構、以臨場發揮方式拼湊起來的程式碼,日後會引發多麼巨大且可怕的錯誤。

最近在全球開發者社群中引發熱烈討論的有趣消息是,出現了一個令人驚豔的工具,它可以教導這些「急躁且只有滿腔熱血的 AI」真正人類專家的沉穩和嚴謹的工作順序。這個工具名為 JDS。該工具能從根本上矯正 AI 的行為,讓它不再盲目地開始打字,而是必須經過嚴格的計畫和驗證過程。這就像是在教導一個知識豐富但缺乏現場經驗、經常闖禍的新進員工學習工作的「順序」、「體系」以及「責任感」。這項新技術究竟會如何改變我們的數位日常生活,以及我們建立複雜軟體的方式呢?讓我們跟著 MindTickleBytes 一步步來了解。

為什麼這很重要? (Why It Matters)

近年來,隨著人工智慧代寫程式碼的時代全面開啟,不僅科技界,連一般大眾也對其發展速度感到非常狂熱。似乎任何人只要開口,就能輕鬆做出複雜的智慧型手機應用程式或華麗的網站。然而,業界人士很快就遇到了非常現實且沉重的問題。AI 在眨眼間寫出的程式碼,單從局部來看似乎非常像樣,但大多數情況下,這些程式碼完全沒有考慮到整體的系統結構或與其他軟體元件的協調性。

在軟體工程中,這種現象通常被稱為「技術債 (Technical Debt)」。為了快速解決眼前的問題而草率編寫的程式碼,雖然當下看起來運作良好,但就像借了高利貸一樣,日後在新增功能或修正錯誤時,會讓人付出龐大的時間和金錢作為利息。可以說,人工智慧程式碼助理正以驚人的速度產生大量的「技術債」。

即使是對非 IT 專業人士的一般大眾而言,這個問題也同樣重要,原因很明顯。因為當今支撐我們生活的幾乎所有基礎設施都是由「程式碼」運作的。您每天使用的智慧型手機通訊軟體、進行金錢交易的網路銀行系統、負責家人安全並在路上行駛的汽車自動駕駛功能,甚至是醫院的醫療紀錄系統,全都是某人精心編寫的軟體。

如果放任人工智慧程式碼助理完全無視系統化流程,像東拼西湊般地寫程式碼,會發生什麼事呢?最終,我們每天依賴的數位服務的整體品質和安全性將會大幅下降。這可能會導致銀行應用程式因為不明原因發生匯款錯誤,或者自動駕駛汽車在複雜的路口誤判情況等可怕事件。人工智慧寫出的那一團糟的程式碼,日後往往會錯綜複雜到讓人類開發者不知道該從何下手修改。

在這樣的背景下,JDS 等行為控制工具的出現,不僅是一個非常重大的轉捩點,也深具意義。當 AI 程式碼助理在 GitHub Copilot(全球數百萬開發者使用的、協助撰寫程式碼的 AI 輔助程式)等環境中作業時,JDS 會強制它們遵循與實際軟體開發專家在現場相同的嚴格開發流程 GitHub - josipmusa/jds:代理程式碼工具的 JDS 技能套件…

這不僅僅超越了利用人工智慧「快速」撰寫程式碼的階段,更意味著人類終於開始具備了控制力,能夠讓人與 AI 合作,安全地打造出沒有錯誤且易於維護的「像樣的」軟體。當開發者花在收拾人工智慧錯誤上的時間減少時,更具創意和創新的服務就能更快地來到我們身邊。經過嚴格驗證過程所寫出的程式碼,將能大幅減少智慧型手機應用程式突然閃退或電腦系統當機等令人煩躁的日常不便。也就是說,JDS 是一個核心的安全機制,幫助我們的日常生活在看不見的數位世界中維持得更加穩固與安全。

輕鬆理解 (The Explainer)

那麼,JDS 究竟是運用什麼原理來馴服這個難以控制的人工智慧的呢?為了清楚了解其運作方式,我們首先必須認識最近 AI 業界最受重視的核心概念——「技能 (Skill)」。

從技術觀點來看,Copilot 技能本質上指的是一組小巧且可重複使用的指令、指令碼及支援資源,旨在教導人工智慧助理如何更有效地處理特定任務或工作流程 建立用於 Dataverse 解決方案匯入/匯出的 GitHub Copilot 技能…。開發者可以利用這些技能,根據自己的需求修改 AI 執行特定任務時的行為模式和解決問題的能力,並引導通用的 AI 執行比平常更專業、難度更高的任務 為 GitHub Copilot 建立代理技能 - GitHub Enterprise Cloud 文件 GitHub Copilot 文件 - GitHub Docs

這些詞彙可能聽起來有些陌生和艱澀。簡單來說,我們可以這樣比喻。想像一下,我們現在的人工智慧 Copilot 是一位「天才廚師」,他的腦海中完美地記住了世界上所有食材的知識和數萬種食譜,但他卻連一天實際在廚房工作的經驗都沒有。這位廚師可以瞬間做出任何料理,但他完全不知道應該按什麼順序向客人端上高級的法國傳統全餐,不知道餐廳廚房的嚴格衛生規定是什麼,也不知道如何為了對食物過敏的客人分開使用烹飪用具。

這時,我們交給這位廚師一本名為「技能」的特別工作手冊,並指示他:「你擁有豐富的知識很棒,但今天在這間餐廳的廚房裡,你必須完全按照這本手冊上寫的嚴格程序和衛生規定來料理!」這樣一來,這位天才廚師就不會把他的知識浪費在不對的地方,而是能在既定且優秀的系統中創造出最好的結果。

我們今天要談論的 JDS,正是將這些強大的行為矯正技能匯集在一起的套件 (Skill suite)。JDS 以擴充程式的形式提供,在開發者主要使用的命令提示字元視窗中運作,它讓人工智慧程式碼工具不再只是像回答問題一樣吐出程式碼,而是無條件地遵循系統化且專業的工作流程 GitHub - josipmusa/jds:代理程式碼工具的 JDS 技能套件…

尤其是,JDS 強制要求人工智慧必須遵守的三個核心規則,不僅非常嚴格,更洞悉了軟體開發的本質。這些規則就像是將人類開發者數十年來透過慘痛的失敗和頻繁的加班所獲得的寶貴智慧,強行注入到人工智慧中。

  1. 編碼前設計 (Design before code):「在立刻開始寫程式之前,先詳細說明你要如何規劃這個程式的整體架構藍圖。」 人工智慧會本能地快速預測輸入上下文之後的下一個單字,試圖完成句子。這導致它們只見樹木,不見森林。但這條規則強制 AI 在開始製作任何東西之前,必須先退一步深思熟慮,明確地規劃出整體的結構。
  2. 實作前測試 (Tests before implementation):「在撰寫實際具備功能的程式碼之前,先寫好日後自動檢查該功能是否正常運作的評分標準(測試程式碼)。」 這是在軟體工程中被稱為「測試驅動開發 (TDD, Test-Driven Development)」的極佳方法論。打個比方,這就像在讓學生盲目讀書之前,先給他們看這次考試要考什麼題目。這能讓 AI 在完全清楚自己要寫的程式碼的通過標準是什麼的狀態下進行編寫。
  3. 宣告完成前提出證據 (Evidence before completion claims):「不要輕率地宣告作業已經完成。把具體的證據(執行結果或日誌紀錄)擺在我眼前,證明你寫的程式碼真的能完美運行且沒有錯誤。」 GitHub - josipmusa/jds:代理程式碼工具的 JDS 技能套件… 誠如許多人所經歷的,人工智慧經常會煞有其事地說謊(產生幻覺),聲稱自己寫的內容是完美的。在寫程式時,這種謊言是致命的。JDS 的這條規則會在系統層面上阻止 AI 在沒有確鑿物證的情況下自行結束任務。

想像一下,開發者向人工智慧助理下達指令:「請為我們公司的新購物網站建立購物車功能。」

如果是過去的人工智慧,它會在一秒內丟出一堆複雜的程式碼,然後大喊:「程式碼撰寫完畢!」而且完全沒有確認該程式碼是否會與結帳系統衝突,或導致伺服器停機。開發者為了驗證這些程式碼是否正確,反而浪費了比自己親手寫還要長的時間。

但是,裝載了 JDS 技能的人工智慧,其反應截然不同。這個 AI 不會不由分說地開始打字,而是會謹慎地分析後說: 「您要求的功能似乎需要加入商品、移除商品和調整數量的功能。我會規劃整體的設計,將顧客資料以這種結構儲存在資料庫的 A 區域。您同意我的設計嗎?」

當人類開發者批准了這份出色的設計圖後,就會進入第二個階段。「我已經先寫好了由機器自動確認總金額是否計算正確的『測試評分標準』。」它會這樣報告。

之後,它才會非常謹慎地編寫實際運作的程式碼,最後理直氣壯地說:「我用剛才寫好的程式碼執行了數十次剛才建立的嚴格測試,結果沒有任何一個錯誤,全數通過了。這是證據畫面。現在真的完成所有工作了。」

也就是說,它從一個只會快速打字但讓人頭痛的實習生,完美蛻變成了一位可以放心將核心業務交給他的真正的專業首席工程師!

目前情況 (Where We Stand)

聽了這些創新工具的運作原理後,您可能會產生疑問:「如果要把這麼複雜又優秀的系統導入我的電腦,是不是需要經過非常困難的設定過程?」那麼,目前產業界的開發者們在實務上究竟是如何運用這些聰明的工具呢?

令人驚訝的是,答案是「非常簡單」。一個令人驚奇的生態系統已經迅速建立起來,讓使用者可以像在智慧型手機上使用 Google Play 商店或 Apple App Store 一樣,只需點擊幾下螢幕或輸入一行指令,就能非常輕鬆地下載和操作這些實用的「技能」。

最具代表性的例子就是全新登場的專用指令「gh skill」。這個系統將所謂的「套件管理員」模式,全面導入到我們前面探討過的眾多實用的 AI 代理技能中 [gh skill:適用於 Copilot、Claude Code 和 Cursor 的 GitHub CLI 代理技能管理 Big Hat Group Inc.](https://www.bighatgroup.com/blog/gh-skill-github-cli-agent-skills-management/)。簡單來說,它就是一個發揮著和智慧型手機應用程式商店完全相同作用的專屬輔助系統。

就像我們在智慧型手機上搜尋並安裝需要的應用程式,並在推出新版本時進行更新一樣,開發者只需在命令提示字元視窗中簡單地打幾個字,就能輕鬆地在自己的電腦上安裝這些賦予人工智慧新行為規則和能力的優秀技能。

此外,為了防止人工智慧的行為某天突然改變而引發問題,您可以將特定技能的版本固定下來,以確保業務的穩定性。它甚至還完美支援預覽功能,讓您可以輕鬆測試 AI 是否能好好執行您想要的工作 [gh skill:適用於 Copilot、Claude Code 和 Cursor 的 GitHub CLI 代理技能管理 Big Hat Group Inc.](https://www.bighatgroup.com/blog/gh-skill-github-cli-agent-skills-management/)。

這些令人矚目的發展正悄悄地告訴我們一個明確的事實:人工智慧不再是難以摸透、行為難以預測的「魔法盒」。相反地,我們變得可以根據人類的目的,輕鬆安裝賦予徹底驗證能力的 JDS 技能,或者像組裝樂高積木一樣自由組合防止企業機密資料外洩的安全性技能等。一個能夠控制 AI 在人類設定的安全軌道內,朝著我們想要的方向精準移動的「真正客製化助理」時代已經來臨。

未來將會如何? (What’s Next)

這個從軟體開發專業領域開始的決定性變革浪潮,對我們整個社會所帶來的啟示超乎想像。未來我們將面對的人工智慧,將會從單純「假裝無所不知卻經常胡言亂語的鸚鵡」,迅速進化為「遵守嚴格程序並對自己工作成果負責的可靠專家」。

我們經常夢想著這樣美好的未來:人工智慧在沒有人類監視的情況下,也能自行做出艱難的判斷並完美處理複雜的工作。但為了讓這個未來安全地到來,就必須要有能按照人類意圖安全控制其強大能力的機制,其重要性不亞於人工智慧那壓倒性的智力。這道理完全就如同:即使是最先進客機的自動駕駛系統再怎麼優秀,也不能無視機師設定的航線和嚴格的安全檢查表而任意飛行。

像 JDS 這樣,強制要求人工智慧在採取任何行動前先向人類報告工作計畫,並在得出最終結果時提出明確證據來證明的系統,如果超越了程式設計領域,而在社會各個層面普及化,會發生什麼事呢?我們最終將能夠安心且信任地,將更重要、更敏感的人類課題交給人工智慧去處理。

讓我們一起想像一下更遙遠的未來吧。未來不僅在撰寫程式碼的領域,這種改變也將發生在與我們生活密切相關的各個領域。像是分析數十萬頁判例以撰寫重大法律文件的 AI 律師、綜合患者基因資料和醫療紀錄來診斷癌症的 AI 醫生、撰寫數百億韓元規模財務報告的 AI 會計師等,它們將在講求邏輯、準確性和嚴格程序的大量領域中大展身手。

在這所有領域中,將會湧現出專門設計的專業技能,藉由強烈控制 AI 的「行為程序」和「思考過程」來防止其輕率地下結論。一場巨大的變革正要在我們眼前展開:AI 將不再只是節省我們打字時間的神奇工具,而是成為在競爭激烈的產業界中值得信賴和依靠的真正夥伴。

AI 的觀點 (AI’s Take)

MindTickleBytes AI 記者觀點:在這個人工智慧吸收著近乎無限的智慧和世界上所有知識的時代裡,矛盾的是,我們真正最迫切需要的,並非 AI 的「處理速度」或「知識量」。而是人類的「紀律和流程」,用以引導這股強大能力走向正確的方向,並防止意想不到的災難發生。我們已經透過無數次的嘗試和錯誤學到了一個事實:如果盲目追求速度而迷失了方向,最終將會付出更大的代價。

像 JDS 這種矯正 AI 行為並強烈控制工作流程工具的出現,將會是一個重要的契機,標誌著 AI 技術完全超越了僅僅短暫滿足大眾單純好奇心的神奇玩具階段。更進一步地說,這是一個決定性的轉捩點,它將以人類堅定的信任為基礎,深深地且牢固地紮根於支撐我們社會的實際工業基礎設施中。未來的 AI 革命,重點將不再只是創造出多麼聰明的模型,而是一場關於如何安全且系統化地馴服這些智慧的戰役。

參考資料

  1. GitHub - josipmusa/jds:代理程式碼工具的 JDS 技能套件…
  2. 建立用於 Dataverse 解決方案匯入/匯出的 GitHub Copilot 技能…
  3. 為 GitHub Copilot 建立代理技能 - GitHub Enterprise Cloud 文件
  4. GitHub Copilot 文件 - GitHub Docs
  5. [gh skill:適用於 Copilot、Claude Code 和 Cursor 的 GitHub CLI 代理技能管理 Big Hat Group Inc.](https://www.bighatgroup.com/blog/gh-skill-github-cli-agent-skills-management/)
測試你的理解
Q1. JDS 要求 AI 程式碼助理的第一個步驟是什麼?
  • 撰寫程式碼
  • 設計
  • 執行測試
JDS 強制要求在撰寫程式碼之前必須先進行設計。
Q2. 教導 AI 執行特定任務的指令組合(可重複使用的套件)稱為什麼?
  • 外掛程式
  • 技能
  • 權杖
幫助有效處理特定任務或工作流程的指令和資源套件稱為「技能」。
Q3. 哪一個指令可以讓你像軟體應用程式一樣輕鬆安裝和管理這些 AI 技能?
  • gh skill
  • jds run
  • ai install
「gh skill」指令能讓你像使用套件管理員一樣安裝和管理 AI 代理技能。