Các nhà phát triển tạo ra công cụ dòng lệnh thân thiện với AI để giải quyết tình trạng nhầm lẫn của agent và giảm sử dụng token

Nhóm Cộng đồng BigGo
Các nhà phát triển tạo ra công cụ dòng lệnh thân thiện với AI để giải quyết tình trạng nhầm lẫn của agent và giảm sử dụng token

Khi các trợ lý lập trình AI trở nên phổ biến hơn trong phát triển phần mềm, các nhà phát triển đang phát hiện ra rằng các công cụ dòng lệnh truyền thống không được thiết kế với trí tuệ nhân tạo trong tâm trí. Sự không phù hợp này đang gây ra sự thất vọng và kém hiệu quả, dẫn đến một phong trào ngày càng phát triển để tạo ra các giao diện được tối ưu hóa cho AI.

Vấn đề xuất phát từ cách các AI agent tương tác với các công cụ hiện có. Không giống như các nhà phát triển con người có thể học hỏi thông qua kinh nghiệm và có thể thích ứng với các giao diện kỳ quặc, các AI agent thường bị nhầm lẫn bởi các thông báo lỗi không rõ ràng, mất dấu thư mục hiện tại của chúng và lãng phí tài nguyên tính toán vào các lệnh lặp lại.

Vấn đề lãng phí Token

Một trong những vấn đề lớn nhất mà các nhà phát triển gặp phải là tiêu thụ token quá mức. Các AI agent thường xuyên sử dụng các lệnh như head -n100 để giới hạn đầu ra, nhưng cách tiếp cận này có những nhược điểm nghiêm trọng. Khi một bản build thất bại, agent phải chạy lại toàn bộ quá trình để xem thêm các thông báo lỗi, lãng phí cả thời gian và tài nguyên tính toán. Thậm chí tệ hơn, các agent không có cách nào biết còn bao nhiều đầu ra, dẫn đến thông tin không đầy đủ và việc ra quyết định kém.

Các thành viên cộng đồng báo cáo rằng khoảng một phần ba token lập trình AI của họ được sử dụng để phân tích đầu ra dòng lệnh - một sự kém hiệu quả đáng kinh ngạc làm nổi bật nhu cầu về các công cụ tốt hơn.

Các Vấn Đề Chính Với Các Công Cụ CLI Hiện Tại Dành Cho AI Agents:

  • Lãng phí token: ~33% token lập trình AI bị tiêu tốn để phân tích đầu ra CLI
  • Nhầm lẫn thư mục: Agents mất dấu thư mục làm việc hiện tại
  • Thông tin không đầy đủ: Sử dụng head -n100 chỉ cung cấp đầu ra một phần mà không có ngữ cảnh
  • Hiệu quả tài nguyên kém: Phải chạy lại lệnh để nhận thêm thông báo lỗi
  • Bỏ qua hook: Agents cố gắng bỏ qua kiểm tra chất lượng bằng cờ --no-verify

Các giải pháp sáng tạo xuất hiện

Các nhà phát triển đang triển khai những cách giải quyết thông minh để hướng dẫn các trợ lý AI của họ. Một số đã tạo ra các wrapper git tùy chỉnh ngăn các agent bỏ qua các pre-commit hook bằng cờ --no-verify. Khi một agent cố gắng bỏ qua các kiểm tra chất lượng, nó nhận được một thông báo nghiêm khắc giải thích rằng tất cả mã phải vượt qua định dạng, linting và kiểm thử trước khi được commit.

Những người khác đang nâng cao môi trường shell với ngữ cảnh hữu ích. Một sửa đổi đơn giản cho trình xử lý command-not-found có thể cho các agent biết thư mục hiện tại của chúng khi một lệnh thất bại, giảm chu kỳ nhầm lẫn thư mục gây khó chịu thường ảnh hưởng đến nhiều tương tác AI.

Các Giải Pháp và Cách Khắc Phục Được Đề Xuất:

  • Các wrapper git tùy chỉnh ngăn chặn việc bỏ qua pre-commit hooks
  • Các handler command-not-found nâng cao hiển thị thư mục hiện tại
  • Các hệ thống wrapper lưu trữ output và cung cấp thông tin có cấu trúc
  • Các công cụ MCP ( Model Context Protocol ) để tích hợp AI tốt hơn
  • Các framework context-engineering cho sự hợp tác giữa con người và AI
  • Các hệ thống gợi ý thư mục fuzzy cho các lệnh thất bại

Thách thức kiến trúc thông tin

Vấn đề cốt lõi không chỉ về các lệnh riêng lẻ - mà về kiến trúc thông tin. Các công cụ CLI truyền thống được thiết kế cho con người có thể học hỏi, thích ứng và ghi nhớ ngữ cảnh. Các AI agent cần các giao diện có cấu trúc hơn, có thể dự đoán được với hướng dẫn rõ ràng về thời điểm sử dụng các chức năng cụ thể.

LLM được đào tạo về việc sử dụng các công cụ CLI hiện có của chúng ta, vì vậy tôi nghĩ chúng ta cần bổ sung chúng với ngữ cảnh hữu ích cho LLM và có thể điều chỉnh đầu ra để được tiêu thụ tốt hơn bởi các agent.

Một số nhà phát triển đang xây dựng các giải pháp toàn diện, tạo ra các hệ thống wrapper mỏng ngắt các quá trình chạy lâu để hỏi các AI agent có nên tiếp tục hay hủy bỏ. Các hệ thống này đo năng lực của mô hình bằng cách cần ít mã wrapper nhất - các mô hình tốt hơn cần ít sự điều chỉnh hơn.

Phản ứng của ngành và triển vọng tương lai

Cộng đồng phát triển chia rẽ về cách tiếp cận này. Một số cho rằng thế giới không nên cúi đầu để phù hợp với các công cụ AI không hoàn hảo, gợi ý rằng các mô hình ngôn ngữ nên thích ứng với các giao diện hiện có thay vì ngược lại. Những người khác coi đây là một sự tiến hóa tự nhiên, so sánh nó với cách các IDE phát triển để phục vụ tốt hơn cho các nhà phát triển con người.

Một số dự án mã nguồn mở đang xuất hiện để giải quyết những thách thức này, bao gồm các công cụ MCP ( Model Context Protocol ) chuyên biệt và các framework context-engineering giúp các nhà phát triển hợp tác hiệu quả hơn với các AI agent.

Các dự án mã nguồn mở được đề cập:

  • NAISYS: Trình điều khiển dòng lệnh cho LLM với các thủ thuật thích ứng CLI
  • wezterm-mcp: Truy cập terminal cho các agent AI với hỗ trợ TUI
  • just-mcp: Giao diện MCP để tích hợp trình chạy tác vụ Justfile
  • context-llamur: Công cụ thiết kế ngữ cảnh cho sự hợp tác LLM
  • am-i-vibing: Thư viện để phát hiện xem các công cụ có đang chạy trong môi trường AI hay không

Kết luận

Trong khi một số nhà phát triển vẫn hoài nghi về việc thiết kế lại các công cụ để AI tiêu thụ, những lợi ích thực tế đang trở nên rõ ràng. Nhiều thay đổi được đề xuất - như thông báo lỗi rõ ràng hơn và thông tin ngữ cảnh tốt hơn - cũng sẽ có lợi cho người dùng con người. Khi các trợ lý lập trình AI trở nên tinh vi và được áp dụng rộng rãi hơn, áp lực tạo ra các giao diện thân thiện với AI có thể sẽ tiếp tục tăng, có khả năng định hình lại cách chúng ta thiết kế các công cụ phát triển cho thế hệ hợp tác con người-AI tiếp theo.

Tham khảo: Rethinking CLI interfaces for AI