Everything is a File: Triết lý thiết kế từ Unix đến AI Agent

2/16/2026
10 min read

Everything is a File: Triết lý thiết kế từ Unix đến AI Agent

Bản gốc Ethan 业成

cover_imageImage 2

Tiếng vọng vượt nửa thế kỷ

Từ đầu những năm 1970 tại Bell Labs, cha đẻ của Unix, Ken Thompson và Dennis Ritchie, lần đầu tiên đưa ra một nguyên tắc thiết kế táo bạo đến mức gần như cực đoan: Everything is a file - Vạn vật đều là tập tin.

Hơn năm mươi năm sau, các framework AI Agent bùng nổ. Manus, Claude Code, OpenClaw... Chúng đến từ các nhóm khác nhau, các stack công nghệ khác nhau, các mục tiêu thương mại khác nhau, nhưng đều nhất trí đưa ra cùng một lựa chọn: sử dụng hệ thống tập tin làm bộ khung nhận thức của Agent.

Manus cung cấp cho Agent một máy ảo, các sản phẩm của nhiệm vụ được lưu trữ dưới dạng tập tin. Claude Code trực tiếp đọc và ghi trên hệ thống tập tin cục bộ của người dùng, sử dụng một tập tin CLAUDE.md để chứa tất cả các chỉ thị và ngữ cảnh. Các framework mã nguồn mở như OpenClaw cũng tổ chức việc phân tách nhiệm vụ và trạng thái trung gian bằng cấu trúc thư mục.

Khi các kỹ sư cách nhau nửa thế kỷ, đối mặt với các vấn đề kỹ thuật hoàn toàn khác nhau, nhưng lại độc lập hội tụ về cùng một giải pháp - đây không phải là sự trùng hợp ngẫu nhiên, mà là sự cộng hưởng của triết lý thiết kế.

Quyết định của Unix

Để hiểu được tầm quan trọng của điều này, trước tiên chúng ta phải quay lại xem Unix đã làm gì.

Thiết kế hệ thống tập tin của Unix được công nhận là một trong những thiết kế thanh lịch nhất trong lịch sử khoa học máy tính. Nó giải quyết một vấn đề cực kỳ phức tạp: làm thế nào để quản lý các tài nguyên phần cứng và tài nguyên dữ liệu khác nhau bằng một giao diện thống nhất và đơn giản.

Trước những năm 1970, hệ điều hành hoạt động như sau: bạn muốn đọc đĩa, bạn gọi giao diện đĩa; bạn muốn đọc băng từ, bạn gọi giao diện băng từ; bạn muốn truy cập thiết bị đầu cuối, bạn gọi giao diện thiết bị đầu cuối. Mỗi thiết bị có API riêng, mỗi API có ngữ nghĩa riêng. Nếu bạn có N loại thiết bị và M loại thao tác, độ phức tạp của hệ thống là N × M.

Thompson và Ritchie đã làm một việc có vẻ đơn giản đến mức ngớ ngẩn:

Biến mọi thứ thành tập tin. Sử dụng bốn động từ open, read, write, close để thao tác mọi thứ.

Ý nghĩa cốt lõi của nó là: tất cả các tài nguyên trong hệ điều hành - tài liệu, thư mục, ổ đĩa cứng, modem, bàn phím, máy in, thậm chí cả kết nối mạng và thông tin tiến trình - đều có thể được trừu tượng hóa thành một luồng tập tin (Stream of Bytes).

Điều này có nghĩa là bạn chỉ cần học một bộ API - open(), read(), write(), close() - là có thể thao tác tất cả các tài nguyên của máy tính.

Kể từ đó, độ phức tạp giảm từ N × M xuống còn 4 × 1. Bốn động từ, một lớp trừu tượng.

Điểm thiên tài của việc này không nằm ở danh từ "tập tin", mà nằm ở một洞察 sâu sắc hơn:

Bạn không cần biết đằng sau file descriptor là gì. Giao diện là契约.

Một fd (file descriptor) là một句柄 không trong suốt. Bạn read() nó, luồng byte sẽ xuất ra. Còn những byte này đến từ扇区 ổ cứng, bộ đệm card mạng hay đầu ra tiêu chuẩn của một tiến trình khác - bạn không quan tâm, và bạn cũng không nên quan tâm.

Đây là sức mạnh của giao diện thống nhất: nó biến sự vô tri thành một lợi thế.

Image 3

Agent đối mặt với cùng một bài toán

Bây giờ hãy nhìn lại tình cảnh của AI Agent.

Để hoàn thành các nhiệm vụ phức tạp, một Agent phải đối mặt với một tình huống tương tự đáng kinh ngạc với hệ điều hành của những năm 1970:

  • Bộ nhớ dai dẳng: Cửa sổ ngữ cảnh của LLM rất dễ bay hơi, chuỗi suy nghĩ biến mất theo phiên. Giống như bộ nhớ bị thu hồi sau khi quá trình thoát ra—bạn cần một nơi để lưu trữ trạng thái trung gian một cách dai dẳng, nếu không mỗi cuộc hội thoại sẽ bắt đầu lại từ đầu.
  • Ngữ cảnh tăng dần: Các tác vụ phức tạp không thể hoàn thành trong một bước. Agent cần tích lũy dần ngữ cảnh trong nhiều vòng suy luận, giống như quá trình Unix truyền trạng thái giữa nhiều lần thực thi bằng cách đọc và ghi tệp. Hệ thống tệp tự nhiên cung cấp chế độ làm việc tăng dần này "viết một chút, đọc một chút, rồi viết thêm một chút".
  • Điều phối thống nhất các công cụ và kỹ năng: Agent phải gọi các công cụ không đồng nhất như tìm kiếm, thực thi mã, tạo ảnh (Tools/Skills), giống như Unix phải quản lý các thiết bị không đồng nhất như đĩa, mạng, máy in. Bạn cần một lớp trừu tượng thống nhất, nếu không mỗi khi kết nối một công cụ mới, bạn phải viết một bộ logic tích hợp mới.
  • Ranh giới quyền hạn của Computer Use: Khi Agent có khả năng vận hành máy tính, câu hỏi "nó có thể chạm vào cái gì, không thể chạm vào cái gì" trở thành vấn đề sống còn. Hệ thống quyền tệp của Unix (rwx) cung cấp chính xác mô hình sandbox có sẵn—thư mục là ranh giới, quyền là hợp đồng.

Bốn yêu cầu. Nghe có quen không?

Đây chính xác là những vấn đề mà hệ điều hành phải đối mặt vào những năm 1970.

Bộ nhớ dai dẳng—hệ thống tệp giải quyết một cách tự nhiên, ghi là dai dẳng. Ngữ cảnh tăng dần—cấu trúc thư mục tự nó được xây dựng tăng dần, mkdir, touch, append, ngữ cảnh phát triển theo tệp. Điều phối thống nhất công cụ—bản chất của đường ống Unix: stdout của một quá trình là stdin của một quá trình khác, môi trường trung gian là luồng byte. Chuỗi công cụ của Agent cũng vậy: tệp đầu ra của bước trước là đầu vào của bước tiếp theo. Ranh giới quyền hạn—quyền rwx của hệ thống tệp, sandbox chroot, tự nhiên vạch ra "vòng tròn năng lực" cho Agent.

Vì vậy, khi các nhà thiết kế Agent framework đối mặt với câu hỏi "đặt trạng thái làm việc của Agent ở đâu", câu trả lời gần như đã được định trước: đặt trong hệ thống tệp. Bởi vì không có giải pháp đơn giản hơn nào có thể đáp ứng đồng thời bốn ràng buộc này.

Image 4Khi hệ thống cần "quản lý sự tương tác của một lượng lớn tài nguyên không đồng nhất", bạn có hai con đường:

Đường A: Thiết kế giao diện chuyên dụng cho từng loại tài nguyên. N loại tài nguyên × M loại thao tác = NM loại giao diện. Chính xác nhưng bùng nổ.

Đường B: Tìm một lớp trừu tượng đủ mỏng để tất cả các tài nguyên đều mặc cùng một chiếc áo. 4 loại thao tác × 1 lớp trừu tượng. Thô sơ nhưng có thể kết hợp.

Unix đã chọn B. Hơn năm mươi năm sau, Agent framework lại chọn B.

Image 5

Sâu hơn một lớp: Tệp là sự ngoại hóa của tư duy

Nhưng nếu chỉ dừng lại ở "sự hội tụ của các giải pháp kỹ thuật", chúng ta sẽ bỏ lỡ những điều bản chất hơn.

Hãy nhớ lại cách con người tự xử lý các nhiệm vụ phức tạp.

Bạn nhận được một dự án lớn, điều đầu tiên bạn làm không phải là bắt đầu làm việc, mà là: tạo thư mục. Thư mục gốc của dự án, thư mục con của nhiệm vụ, thư mục tài liệu tham khảo, thư mục đầu ra. Bạn sử dụng cấu trúc thư mục để phân chia nhiệm vụ hỗn loạn thành các đơn vị có thể quản lý được. Bạn sử dụng tên tệp để đặt tên cho mỗi đơn vị. Bạn sử dụng nội dung tệp để ghi lại quá trình suy nghĩ và các sản phẩm trung gian.

Hệ thống tệp không chỉ là một giải pháp lưu trữ. Nó là công cụ nguyên thủy để con người ngoại hóa tư duy.

Sự hiểu biết sâu sắc này giải thích tại sao Agent framework hội tụ về hệ thống tệp: "suy nghĩ" của LLM cần được ngoại hóa—cửa sổ ngữ cảnh của nó có giới hạn, suy luận đường dài phải dựa vào bộ nhớ bên ngoài. Và hệ thống tệp chính xác là định dạng "bộ nhớ bên ngoài" phổ biến nhất mà con người đã phát minh ra.

Từ góc độ này, CLAUDE.md của Claude Code không phải là một tệp cấu hình. Nó là một loại hợp đồng nhận thức được ngoại hóa—con người viết ý định thành tệp, Agent đọc tệp thành ý định. Tệp trở thành lớp giao diện giữa tâm trí con người và trí tuệ nhân tạo.

Image 6Điều này phù hợp đáng kinh ngạc với triết lý của đường ống Unix:

Write programs to handle text streams, because that is a universal interface. (Viết chương trình để xử lý luồng văn bản, vì đó là một giao diện phổ quát.)Thay "programs" bằng "agents", thay "text streams" bằng "files", câu nói này vẫn đúng vào năm 2026.

Quay trở lại các nguyên tắc cơ bản

Các trừu tượng vĩ đại không bao giờ lỗi thời, chúng chỉ tìm thấy các ví dụ mới trong các lĩnh vực mới.

"Giao diện thống nhất giải quyết sự phức tạp" không phải là phát minh của Unix, nó là quy luật vĩnh cửu của thiết kế hệ thống. Unix tình cờ sử dụng tên "file" để thực hiện nó. AI Agent tình cờ sử dụng hình thức "thư mục làm việc" để thực hiện lại nó.

Hệ thống thế hệ tiếp theo cũng sẽ phải đối mặt với cùng một lựa chọn: thiết kế giao diện chuyên dụng cho mọi thứ, hay tìm một lớp trừu tượng mỏng, chung và có thể kết hợp được?

Nếu lịch sử có bài học nào, thì câu trả lời đã được viết bên cạnh /dev/null:

Keep it simple. Make it compose. Everything is a file. (Giữ cho nó đơn giản. Làm cho nó có thể kết hợp. Mọi thứ đều là một file.)

Published in Technology

You Might Also Like

Cách sử dụng công nghệ điện toán đám mây: Hướng dẫn đầy đủ để xây dựng cơ sở hạ tầng đám mây đầu tiên của bạnTechnology

Cách sử dụng công nghệ điện toán đám mây: Hướng dẫn đầy đủ để xây dựng cơ sở hạ tầng đám mây đầu tiên của bạn

Cách sử dụng công nghệ điện toán đám mây: Hướng dẫn đầy đủ để xây dựng cơ sở hạ tầng đám mây đầu tiên của bạn Giới thiệu...

Cảnh báo! Cha đẻ của Claude Code thẳng thắn: Một tháng nữa không dùng Plan Mode, danh hiệu kỹ sư phần mềm sẽ biến mấtTechnology

Cảnh báo! Cha đẻ của Claude Code thẳng thắn: Một tháng nữa không dùng Plan Mode, danh hiệu kỹ sư phần mềm sẽ biến mất

Cảnh báo! Cha đẻ của Claude Code thẳng thắn: Một tháng nữa không dùng Plan Mode, danh hiệu kỹ sư phần mềm sẽ biến mất G...

2026年 Top 10 深度学习资源推荐Technology

2026年 Top 10 深度学习资源推荐

2026年 Top 10 深度学习资源推荐 随着深度学习在各个领域的迅速发展,越来越多的学习资源和工具涌现出来。本文将为您推荐2026年最值得关注的十个深度学习资源,帮助您在这一领域中快速成长。 1. Coursera Deep Learn...

Top 10 AI đại lý năm 2026: Phân tích điểm bán hàng cốt lõiTechnology

Top 10 AI đại lý năm 2026: Phân tích điểm bán hàng cốt lõi

Top 10 AI đại lý năm 2026: Phân tích điểm bán hàng cốt lõi Giới thiệu Với sự phát triển nhanh chóng của trí tuệ nhân tạo...

2026年 Top 10 AI 工具推荐:释放人工智能的真正潜力Technology

2026年 Top 10 AI 工具推荐:释放人工智能的真正潜力

2026年 Top 10 AI 工具推荐:释放人工智能的真正潜力 Trong thời đại công nghệ phát triển nhanh chóng ngày nay, trí tuệ nhân tạo (AI) đã trở ...

2026年 Top 10 AWS工具和资源推荐Technology

2026年 Top 10 AWS工具和资源推荐

2026年 Top 10 AWS工具和资源推荐 Trong lĩnh vực điện toán đám mây đang phát triển nhanh chóng, Amazon Web Services (AWS) luôn là ...