開源遊戲引擎Godot上周更新貢獻規範,開始禁止使用自主AI代理(Autonomous AI Agent)提交程式碼,並禁止利用AI產生大段程式碼投稿,同時要求開發者若使用AI輔助撰寫程式碼必須主動揭露。
近來生成式AI與AI代理工具大幅降低程式碼撰寫門檻,卻也使開源專案收到愈來愈多AI生成的程式碼拉取請求(Pull Request,PR),導致維護者審查負擔增加,也引發程式碼品質、責任歸屬及開源治理等討論。
Godot即說,近年專案收到的PR持續增加,AI生成程式碼又進一步降低投稿門檻,使待審查PR持續累積,但維護者人力並未同步增加。此外,PR審查雖然繁瑣,但維護者願意投入時間,是因為這也是指導新貢獻者的過程,未來可能培養出新的維護者或審查者;但若回饋只是被AI模型吸收,而非用於培養人類開發者,志工就更難繼續投入審查工作。
這使得Godot決定更新貢獻規範,一是將新貢獻者定義為主分支中成功合併PR不超過3次的開發者,在未經維護者同意前,不得提交新功能或大幅重構程式碼,須先透過修正Bug及改善文件等工作熟悉專案。
其次是禁止使用自主AI代理(Autonomous AI Agent)或Vibe Coding(透過提示詞由AI生成大部分程式碼)等高度依賴AI的開發方式提交程式碼,違反規定者將會直接遭GitHub儲存庫自動封鎖,失去向Godot官方GitHub提交PR的權限。
亦明文規定AI只能用於程式碼補全、正規表示式(Regex)、尋找及取代等輔助工作,不得用來產生大段實質程式碼;若開發者使用AI協助撰寫程式碼,必須在PR討論中主動揭露。
除了Godot之外,專門推動Zig程式語言的Zig Software Foundation也在今年4月於官方行為準則中祭出了嚴格的AI規範,直接提出No LLM/No AI政策,禁止LLM生成的程式碼、文字、改寫、編輯、翻譯、腦力激盪或尋找程式錯誤,幾乎是全面禁止LLM用於專案貢獻。
Zig Software Foundation社群副總裁Loris Cro解釋,維護開源專案看起來像是取得免費的程式碼,事實上,審查及修改別人的PR通常比自己寫還要花時間,但他們仍舊願意去指導或培養新人,注重的是人才培育而非只是程式碼。他認為AI產生大量低品質投稿,增加維護者的審查成本,提高貢獻者與維護者之間的溝通及信任成本,而且或者也無法承擔之後的維護;既然維護資源有限,Zig寧可將時間投入願意深入理解程式架構、與團隊建立長期合作關係的貢獻者,而非重度依賴LLM的開發者。