
Làm thế nào để ngừng việc trông trẻ cho các AI agent của bạn
How to Stop Babysitting Your AI Agents
Tóm tắt: Bài viết chỉ ra một vấn đề nhức nhối trong tương tác với LLM agent hiện nay: thay vì tự động hóa, chúng ta lại giống như đang "trông trẻ" do thiếu khả năng duy trì ngữ cảnh (persistent context) và quản lý trạng thái (state management) một cách hiệu quả. Để giải quyết điều này, tác giả giới thiệu "Axe" – một công cụ CLI lấy cảm hứng từ triết lý Unix: các công cụ nhỏ gọn, có thể kết hợp và chỉ làm một việc. Với Axe, developer có thể định nghĩa các agent bằng các file cấu hình (config files) dạng plain text và markdown. Điều này cho phép tích hợp sức mạnh của LLM vào các quy trình (workflows) và pipeline hiện có một cách mượt mà, y hệt như cách chúng ta sử dụng các command-line utility thông thường. Điểm cốt lõi mà bài viết muốn nhấn mạnh là: hãy tạm biệt giao diện đàm thoại (conversational interfaces) khi nói đến tự động hóa với AI agent, và thay vào đó, hãy hướng tới mô hình tập trung vào luồng dữ liệu vào/ra (input/output-centric model) và khả năng kết nối chúng lại với nhau (piped).
Mỗi lần tôi cần LLM để làm điều gì đó, nghi thức đều giống nhau. Mở một cửa sổ trò chuyện. Nhập lời nhắc. Đọc phản hồi. Quyết định xem nó có đủ tốt không. Lặp lại vào ngày mai. Đó không phải là tự động hóa mà là một công việc mới mà tôi...
Mỗi lần tôi cần LLM để làm điều gì đó, nghi thức đều giống nhau. Mở một cửa sổ trò chuyện. Nhập lời nhắc. Đọc phản hồi. Quyết định xem nó có đủ tốt không. Lặp lại vào ngày mai. Đó không phải là tự động hóa mà là một công việc mới mà tôi chưa ứng tuyển.
Phần khó chịu không phải là AI. Điều khó chịu nhất là tôi vừa là người lập lịch, vừa là người quản lý bối cảnh, vừa là người phân tích cú pháp đầu ra cùng một lúc. Tôi đang viết đi viết lại các biến thể nhắc nhở giống nhau vì không có gì tồn tại. Tôi đang xem một con quay vì không có cách nào để bắn và quên. Công cụ này được cho là đang thực hiện công việc.
Vì vậy tôi đã xây dựng một tệp nhị phân 12 MB để sửa nó.
Unix đã giải quyết được điều này
Bạn không mở cửa sổ trò chuyện để chạy grep. Bạn đưa đầu vào vào, lấy đầu ra ra và xâu chuỗi nó với thứ khác. Các công cụ nhỏ, mỗi công việc một công việc, có thể kết hợp theo thiết kế.
Triết lý Unix không thông minh mà nó đúng.. và nó đã đúng trong suốt 50 năm.
Các tác nhân AI cũng nên hoạt động theo cách tương tự. Một công việc. Đầu vào/đầu ra sạch sẽ. Kết nối với quy trình làm việc hiện có của bạn. Vấn đề là hầu hết các công cụ AI đều đi theo hướng ngược lại. Cửa sổ ngữ cảnh khổng lồ, phiên có mục đích chung, giao diện trò chuyện được gắn chặt vào nguyên tắc tự động hóa. Giao diện trò chuyện có ý nghĩa khi chúng tôi khám phá những gì LLM có thể làm.
Đã đến lúc ngừng coi mọi công việc như một cuộc trò chuyện mở.
Đây là lúc Axe xuất hiện. Axe là một CLI chạy các tác nhân LLM đơn mục đích được xác định trong các tệp cấu hình văn bản thuần túy. Bạn xác định một tác nhân, giao cho nó một công việc và chạy nó từ bất cứ nơi nào bạn chạy bất kỳ lệnh nào khác.
Nó thực sự trông như thế nào
Đây là trình đánh giá PR chạy trước mỗi lần xác nhận thông qua git hook:
git diff --cached | axe chạy người đánh giá trước
Stdin luôn được chấp nhận. Đầu ra đi đến thiết bị xuất chuẩn. Thế thôi. Không có trình hướng dẫn thiết lập, không có tầng đăng ký, không có "kết nối không gian làm việc của bạn". Móc git đã tồn tại. Axe chỉ ngồi trong đường ống.
Hoặc giả sử bạn muốn phân tích nhật ký hàng đêm. Bỏ cái này vào một công việc định kỳ:
mèo /var/log/app/error.log | máy phân tích nhật ký chạy ax
Thông tin gỡ lỗi sẽ được chuyển tới stderr để không gây ô nhiễm cho đường dẫn của bạn. Những phát hiện rõ ràng sẽ được chuyển đến thiết bị xuất chuẩn. Kết nối nó vào bất kỳ hoạt động giám sát nào bạn đã có như email, Slack hoặc tệp.
Axe không quan tâm.
Phần tôi thấy hữu ích nhất là tác nhân xâu chuỗi. Đại lý chính có thể ủy quyền cho các đại lý phụ thực hiện các nhiệm vụ phụ tập trung. Mỗi tác nhân phụ chạy với cửa sổ ngữ cảnh riêng biệt và chỉ trả về kết quả. Tác nhân trước không bao giờ nhìn thấy lý luận nội bộ, tệp trung gian, bộ nhớ làm việc hoặc thậm chí đầu ra của tác nhân phụ.
Under the hood (ngắn gọn)
Cấu hình tác nhân là TOML:
tên = "người đánh giá"
mô tả = "Đánh giá git khác biệt về vấn đề"
mô hình = "anthropic/claude-sonnet-4-20250514"
[params]
nhiệt độ = 0,3
[bộ nhớ]
đã bật = true
last_n = 10
Hướng dẫn của tác nhân nằm trong tệp SKILL.md bên cạnh cấu hình. Giảm giá đơn giản. Con người có thể đọc được, có thể kiểm soát phiên bản, có thể phân loại được. Không có cơ sở dữ liệu, không có nội dung nhúng, không có định dạng độc quyền. Nếu bạn muốn biết một tác nhân làm gì, bạn mở tệp. Nếu bạn muốn thay đổi chức năng của nó, bạn hãy chỉnh sửa tệp. Đó là toàn bộ giao diện.
Cờ --dry-run hiển thị bối cảnh được giải quyết đầy đủ, lời nhắc hệ thống, nội dung tệp kỹ năng, mọi stdin đường ống, tham số mô hình mà không cần gọi LLM. Hữu ích cho việc gỡ lỗi. Cũng hữu ích nếu bạn muốn ước tính chi phí mã thông báo trước khi bắt đầu chạy. Tôi sử dụng nó nhiều hơn tôi mong đợi.
Đại lý cũng có thể ghi nhớ trong các lần chạy. Bộ nhớ được đánh dấu đơn giản: mỗi lần chạy sẽ thêm một mục nhập có dấu thời gian vào một tệp nằm bên cạnh cấu hình. Không có cơ sở dữ liệu, không di chuyển lược đồ. Nếu có gì đó không ổn, bạn mở tệp và chỉnh sửa nó.
Nó không phải là gì
Không phải là một khuôn khổ. Không phải là một nền tảng. Không phải là cửa sổ trò chuyện. Không phải trang tổng quan SaaS có tab "Đại lý" và biểu đồ sử dụng mà bạn sẽ kiểm tra hai lần trước khi quên mất nó tồn tại.
Axe nhắm đến mức độ phụ thuộc tối thiểu. Đó là một hệ nhị phân đơn, không có daemon chạy ẩn, không có thời gian chạy để cài đặt. Nó chỉ chạy bất cứ nơi nào bạn thả nó. Được cấp phép dưới dạng Apache 2.0 và miễn phí mãi mãi, hoan nghênh các yêu cầu kéo.
Axe là người thực thi chứ không phải người lên lịch. Sử dụng cron, git hook, entr, fswatch, bất cứ thứ gì bạn đã có. Axe không muốn sở hữu quy trình làm việc của bạn. Nó muốn điều hành một đại lý một cách rõ ràng và tránh xa mọi rắc rối.
Nếu bạn muốn các đại lý cảm thấy giống như cơ sở hạ tầng thay vì các sản phẩm mà bạn phải chăm sóc, thì đây chính là mục đích của nó.
Kho lưu trữ có tại github.com/jrswab/axe.
Hãy thử đi. Xây dựng một cái gì đó kỳ lạ với nó như trình viết thông báo cam kết, trình tóm tắt nhật ký thay đổi hàng đêm, bất cứ điều gì bạn tiếp tục thực hiện theo cách thủ công.
Nếu điều đó giúp bạn không phải là người lập lịch trình, trình quản lý bối cảnh và trình phân tích cú pháp đầu ra cùng một lúc. Đó là toàn bộ vấn đề.
Tác giả: J. R. Swab