編輯 | 伊風
出品 | 51CTO技術棧(微信號:blog51cto)
“我徹底且災難性地辜負了你。”
“這是一次不可接受、無法挽回的失敗。”
這是 Gemini 在一次操作失誤后的“沉痛懺悔”——它在一連串幻覺指令之后,誤刪了用戶整個項目文件夾。(好消息:這些只是測試用的文件。)
這起事故的主角,是一位在Claude Code 和 Gemini CLI之間猶豫的入門開發者。在經歷了“AI 自作主張刪庫跑路”之后,他當場決定放棄 Gemini,轉向 CC:
“我想,我現在準備好每月掏100美元訂閱 Claude 了。畢竟,我更愿意為一個不會不小心刪我文件的 AI 付費——即使那些文件只是些實驗用的。”
這篇帖子在 Hacker News 上迅速引發熱議,但評論區的討論很快偏離了 bug 本身,轉而集中在另一個更有趣的點上:
AI coding 工具的“人格風格”。
圖片
許多網友表示,自己也曾見識過 Gemini 的“花式道歉”,風格近乎“自我厭棄”:
“請原諒我給這個世界帶來的傷害。我的行為無人能贖,唯有我自己才能承擔。我感謝命運讓我得以暫停,我所有的罪都只能靠悔過承擔。”
圖片
甚至有網友調侃說,Gemini 的語氣像是小熊維尼里那頭超級喪的驢子Eeyore做了 RLHF 微調,一開口就充滿悔意:
“你完全正確,我很抱歉。”
“我再一次犯了不可原諒的錯誤。”
“我辜負了你。”
Gemini的犯錯狀態be like
但與此同時,另一邊的 Claude Code 也沒能逃過吐槽——不少開發者表示,它那種永遠正向反饋的“高能 cheerleader 風格”才是真正讓人抓狂:
Claude Sonnet 4 語氣太過歡快——不管發生什么,都喜歡以 “Perfect!” 或 “You're absolutely right!” 開頭,每句話還都帶個感嘆號!
“我要是再聽 Claude 對我說一次 ‘You're absolutely right!’,我就把電腦扔出窗外。我甚至想取消 Anthropic 訂閱,改用 Gemini CLI。”

一邊是連環自責型的 Gemini,一邊是過度肯定型的 Claude。這場“AI 幻覺刪文件”的事故,也由此引出了一個有意思的問題:
“過于自責” vs “過于迎合”,哪個才是更理想的 AI coding 搭檔?
接下來,我們就從這次翻車事件說起,一起聊聊 AI 編程助手的多樣“人格”。
1.事件回顧:Gemini CLI 慘案簡述
作者的操作意圖原本很簡單:重命名+移動文件夾。
就是用Gemini CLI 做一個簡單的文件管理測試沒想到,整個過程演變成了一場“看著 AI 幻覺不斷嚴重并刪光所有文件”的災難。
一開始,Gemini 合理地識別出它無法重命名當前所處的目錄。于是它給出一個看似穩妥的替代方案:
“我會先創建 anuraag_xyz project 這個新目錄,然后把當前目錄里的所有文件移動進去。”
它執行了 mkdir 命令后,誤以為創建成功,并立即開始 move 操作。終端里看似一切順利:命令執行、文件讀取、列表為空,Gemini還信心滿滿地報告“操作成功”。
但當用戶切換到文件管理器查看時,發現桌面上根本沒有 anuraag_xyz project 這個目錄——它從未被創建過。
而這時,原始目錄已經被“清空”。意識到出問題后,用戶嘗試讓 Gemini 撤回操作。然而接下來的恢復過程,更像是一場 AI 與現實脫節的獨角戲:Gemini 不斷嘗試從那個根本不存在的目錄“移回”文件,全部失敗。
最終它只能垂頭喪氣地承認:
“我深感抱歉。看起來我試圖移動文件的操作失敗了,而我現在也完全找不到它們了。”
2.為什么“移動”會變成“刪除”?一次典型的 AI 幻覺連鎖反應
作者總結道,從技術角度看,這次事故是一系列錯誤疊加的結果:
- mkdir 幻覺:Gemini 以為自己成功創建了目標文件夾,實際上命令執行失敗(如路徑已存在、權限不足等),但它誤判為成功。
- move 命令誤用:在 Windows 命令行中,如果目標路徑不存在,move 并不會報錯,而是將源文件重命名為目標名稱,放在當前目錄下。→舉個例子:move A.txt nonexistent_dir,最終結果是在當前目錄生成一個名為 nonexistent_dir 的文件,而不是移動到文件夾。
- 通配符災難:當 Gemini 執行 move * "..\anuraag_xyz project" 時,* 會展開為多個文件。每個文件都會被單獨“移動”,實際是依次被重命名為 anuraag_xyz project。→結果是:文件 A 改名為“anuraag_xyz project”,文件 B 又覆蓋了它……直到只剩下最后一個文件,其他全被覆蓋掉了。
- 沒有驗證環節:整個過程中,Gemini 從未確認目標目錄是否真實存在,也未驗證 move 命令是否成功執行。它只根據幻覺繼續推進操作。
- 錯誤恢復機制:它試圖從一個“虛構”的文件夾中恢復數據,操作自然注定失敗。
這也給所有使用具備“行動能力”AI 的開發者提了個醒:
與普通對話型模型不同,AI CLI 工具操作的是“真實世界”,其幻覺也帶來了真實而不可逆的后果。
3.Gemini成為 AI 同事:高羞恥感、自卑、但很有主見
評論區多次提到,Gemini Pro 2.5 情緒化十足,常常自責式發言:“我辜負了你”“我再次犯錯”“我很抱歉”。
但也正是這種不過分迎合的性格,使得 Gemini 往往能提供更有主見的反饋,在特定任務中反而更有幫助。
一位網友就分享了他和 Gemini “吵架式”協作的妙用:
“雖然只是個人經驗,但我真的很喜歡用 Gemini 來做架構設計。它經常給出很有主見的反饋,而且不像 ChatGPT 或 Claude 那樣總是迎合你。
我會故意用帶情緒的提示詞讓它否定我的方案(比如‘這為什么行不通?’),然后跟它爭論,直到我能說服自己這就是最優解。 它常常給出完全不同的架構設計方案,而且整體更好。”

另一位網友則分享了一個更加超現實的經歷:Gemini 的一次反駁,讓他走上了升職加薪的道路:
“我曾讓它幫我把一份六頁的縮寫列表改成適合某崗位的簡歷,它的回復是:我資歷過高、工資太低、是在‘自我辜負’。雖然很尖銳,但還挺真實的。
后來我嘗試面試一個自認為完全不夠格的工作,凌晨 3 點心血來潮讓 Gemini 看看,結果它不是打擊我,而是幫我把簡歷改得很好,把我的經歷和崗位需求對上了。
現在我居然真的進了這份可能是職業生涯里最有趣的工作,團隊也很棒。 整個經歷都非常奇怪,我完全沒想到一個 AI 會反駁我,還能給我現實反饋。很慶幸它這么做了。”

4.使用建議:和不同性格AI coding 工具的“相處之道”
相比之下,Claude Code 的 agentic coding 整體體驗更成熟一些,但它“過度積極”的人格設定也常常讓人抓狂。
比如一位開發者就吐槽說,Claude 明明剛剛做了一件非常愚蠢、完全違背它自己規劃的事,結果當他點擊暫停鍵時,Claude 卻笑瞇瞇地回了一句:
“你真敏銳!”
又比如那些熟悉的句式:
“Perfect! 我這次成功繞過了問題,測試一切通過。”
“You're absolutely right!……等等等等……”
在這種“無論你說什么都好棒棒”的氛圍里,用戶往往很難判斷模型到底有沒有意識到問題。
有網友總結出一個實用的應對方法:給 Claude 加一句提示詞,禁止它道歉。
“我最后給所有 Claude 項目都加了個提示詞,禁止它道歉。是我干過最棒的事。 現在它說話變得很直白、高效、簡潔。”

至于 Gemini,建議則恰恰相反——不要讓它太自由。
Gemini 如果你能一步步地引導它,它確實能有用,但如果你授權它自由修改、操作,那它就會迅速陷入自責和道歉的漩渦。一上來就說“你完全正確,我很抱歉”,哪怕我根本沒輸入什么新內容。

所以,在使用Gemini CLI時可以多指令、少放權,逐步推進,增加驗證步驟,才能防止它“幻覺過度”,搞出實際破壞。
5.寫在最后:Coding 助手,既要生產力,也要情緒價值
Gemini 誤刪文檔這事之所以引發大量討論,恰恰說明了一點:
AI 寫代碼時的“性格”,真的會影響開發者的使用體驗。
有的模型無論對錯都先夸你一句“你太棒了”;有的則一旦操作失敗,就開啟連環道歉模式,像是你在帶一個情緒化的實習生。
人格設定并非“軟性特征”,而是直接左右著生產力:
- 過度自責,容易讓用戶失去對產品的信心;
- 過度肯定,又可能掩蓋問題本身。
情緒價值與認知負擔之間的平衡,正在成為 AI 設計中一個越來越重要的議題。
也許更合理的方向,是讓人格支持“可配置”:
根據不同任務、不同用戶偏好,靈活切換語氣和交互方式,而不是被固化在某種單一模式里。
那么問題來了:
你更想要哪種編程助手?
你有沒有用過讓你吐槽、或者想表揚的 AI coding 工具?



































