Coding-agent tự tiến hoá harness: thay đổi nào thật sự giúp task sau?

“Coding agents can adapt their harnesses, the software, configuration, and instructions used to run them, based on experience from earlier tasks, but whether these adaptations improve their behavior on later tasks remains unclear.”

Christoph Treude, Sebastian Baltes · 2 tác giả · Singapore Management University and Heidelberg University · 2026 · arXiv:2610.34938

Skill được patch sau mỗi phiên, nhưng có gì chứng minh nó giúp việc sau?

Mở

Coding agent ngày càng có thói quen đề xuất thay đổi harness sau khi xong một phiên, tức sửa phần mềm, cấu hình và instruction của chính nó, rồi coi đó là một dạng tiến bộ. Chưa ai trả lời được là thay đổi đó có thật sự giúp việc sau hay không. Paper này đi trắc nghiệm đúng câu hỏi đó trên đúng repository, với session mới cho mỗi biến thể, thay vì mặc định mọi tự sửa đều là cải thiện.

Paper này làm gì

Tác giả chạy Claude Code trên 30 issue của SWE-bench Verified, lấy 125 đề xuất từ kỹ năng retro, một skill yêu cầu agent rà lại phiên vừa xong và đề xuất thay đổi harness. Họ triển khai 24 đề xuất, rồi đánh giá 12 thay đổi harness trên các issue cùng repository, mỗi thay đổi chạy trong session mới có thay đổi và không có thay đổi. Mỗi đề xuất được mã hoá định tính, và kết quả so sánh cho thấy phần lớn đề xuất bám vào một sự kiện trong phiên, tức phản ứng với việc vừa gặp hơn là một nguyên tắc dài hạn, trong khi 18 trên 43 đề xuất liên quan lint khuyến nghị một thực hành bất kể chuyện gì đã xảy ra. Kết quả cũng cho thấy một số thay đổi làm phát sinh thêm công việc trên các issue không liên quan.

Phát hiện chính

  1. Paper hỏi thẳng việc agent tự thích nghi harness có thật sự cải thiện hành vi ở task sau hay không. (Coding agents can adapt their harnesses, the software, configuration, and instructions used to run them, based on experience from earlier tasks, but whether these adaptations improve their behavior on later tasks remains unclear)

  2. Claude Code chạy trên 30 issue SWE-bench Verified, 125 đề xuất được mã hoá, 24 được triển khai, 12 thay đổi được đánh giá trong session mới. (We ran Claude Code on 30 SWE-bench Verified issues, qualitatively coded the 125 proposals from \retro, implemented 24, and evaluated 12 harness changes on later issues from the same repositories in fresh sessions with and without each change)

  3. Trong bảy lần đánh giá có thông tin, hai thay đổi xoá được hành động cần giảm, một thay đổi giảm được tần suất, và bốn thay đổi không giảm gì. (Among the seven evaluations in which sessions without the change encountered the targeted problem, two changes eliminated the targeted action, one reduced its occurrence, four showed no reduction, and some changes added work on unrelated issues)

Caveat

Hạn chế tác giả nêu: tự tiến hoá harness cần nhiều hơn việc sinh ra và triển khai thay đổi, nó cần cách chứng minh thay đổi có giúp task sau, và cách sửa hoặc gỡ những thay đổi không giúp. Paper chưa đưa ra cách đó, nên cảm tính sau mỗi phiên chưa thể coi là bằng chứng.

Áp vào 5ac thế nào

5ac đã gặp đúng pattern này: sau mỗi card khó, skill lại được patch thêm một bước phòng ngừa, và câu hỏi thật sự là bước đó có giảm việc lặp lại ở card sau hay không. Cách trả lời theo paper là chạy thử trên thực tế: một nửa card tới đây giữ nguyên skill, nửa kia dùng bản patch, rồi so số lần lỗi lặp lại. Chúng tôi ghi điều đó vào gate review skill, tức mọi patch phải kèm evidence từ lần chạy sau, không nhận patch chỉ vì nghe hợp lý. Thay đổi không có bằng chứng thì bị gỡ, chứ không tích tụ dần thành một chỉ dẫn mà không ai nhớ lý do tồn tại; tương tự, một cron nhắc việc hằng ngày chỉ nên được giữ lại khi đã có lần chạy chứng minh nó bắt được lỗi thật.

Nguồn