Hệ điều hành thực sự bên dưới

Published in TrendAI26 May 20265 min read

Hệ điều hành thực sự bên dưới

Tôi trở lại sau ba tuần nghỉ phép, mở laptop và cảm nhận ngay lập tức.

Các tầng AI mà tôi muốn xây dựng không có chỗ đứng vững chắc. Mọi thứ quan trọng vẫn dựa vào các file .env rải rác, token ngẫu nhiên và hy vọng. Nó rất mong manh. Nó chỉ là màn kịch.

Các solo founder thường bỏ qua những thứ này. Nó không hấp dẫn. Không có bản demo hào nhoáng. Không có khoảnh khắc “xem agent của tôi làm phép thuật”. Chỉ có bí mật, server, registry và deploy — những đường ống nhàm chán quyết định liệu toàn bộ hệ thống là thật hay chỉ là một nguyên mẫu thông minh khác sẽ sụp đổ khi bạn không để ý.

Tôi từ chối tiếp tục xây dựng trên cát. Vì vậy, tôi đã dành hai ngày tập trung và xây dựng nền tảng thực sự có trọng lượng.

Những gì đã được xây dựng

Năm điều, theo đúng thứ tự chúng phải được thiết lập. Không có lối tắt.

Đầu tiên, credentials. Tôi đã thiết lập OCI Vault trong khu vực Melbourne với một compartment và master key phù hợp. Ba mươi secret hiện đang nằm ở đó — nguồn thông tin đáng tin cậy duy nhất. Tôi đã tạo một secrets-index.md rõ ràng liệt kê mọi secret, nơi nó được sử dụng và OCID của nó. Lô mới nhất? Tất cả các credentials xuất bản bài viết của TrendMedia. Đã vault chúng. Đã xóa file .env cũ khỏi đĩa. Xong. Vault giờ là nguồn duy nhất. Không còn màn kịch bảo mật copy-paste nữa.

Tiếp theo, compute. Tôi đã cấp phát s06 — một instance OCI ARM sạch. Postgres chạy chỉ ràng buộc với giao diện Tailscale. Không có public IP. Không có cổng mở. Nếu bạn không ở trên mesh, bạn không thấy gì. Tôi đã tạo một superuser tos_admin, xoay vòng mật khẩu và vault nó. Ba container n8n (scheduler, automation, sandbox) hiện chia sẻ cùng một Postgres nhưng nằm trong các database riêng biệt với một encryption key được chia sẻ cho việc migration. Sandbox không thể chạm vào dữ liệu production. Phân tách rõ ràng.

Sau đó, registries. Ba file markdown đơn giản thực hiện công việc nặng nhọc: secrets-index.md, resources.md và server-map.md. Mọi thứ đều được git-tracked, diff-able và có thể đọc được bởi cả con người và agent. Tôi đã tái cấu trúc repo tos-docs — core/, bau/, projects/ — để sự thật nền tảng nằm ở nơi mọi agent có thể tìm thấy mà không cần phải săn lùng.

Sau đó, deploy. Tôi đã thiết lập cổng BUD tại bud.trendai.au trên Cloudflare Pages, được bảo vệ bởi Cloudflare Access. Một OCI service account cho phép quá trình build xác minh kết nối vault tại thời điểm deploy. Một GitHub PAT cho người dùng trendai-au xử lý tự động hóa repo. Sạch sẽ. Có thể xác minh. Không có secret được tích hợp vào các bản build.

Cuối cùng, migration. Đã chuyển instance n8n chính khỏi MySQL HeatWave đang chết dần (n8n dù sao cũng đã bỏ hỗ trợ) sang Postgres trên s06. Encryption key từng nằm ở dạng plaintext trong file docker-compose? Đã vault.

Nền tảng giờ đã thực sự vững chắc.

Bên dưới các tầng AI hào nhoáng là lớp nền tảng giúp chúng khả thi: Credentials, Compute, Registries và một đường dẫn Deploy vững chắc. Mọi thứ bên trên nó giờ đây có thể đứng trên một thứ không sụp đổ.

Foundation substrate diagram. Three vertical columns labelled Credentials, Compute, Registries. Under each, the actual components: vault (OCI Vault, ~30 secrets) | servers (s05/s06, future s07, Tailscale mesh) | files (secrets-index.md, resources.md, server-map.md). A bottom band shows Deploy (BUD portal, GitHub PAT, CF Pages). Above the columns, an upward arrow into a stylised “5 TOS Layers” block (Reasoning Kernel → BUD). Dark background, accent colour per column (teal / amber / violet), white labels.

Below the AI layers — the substrate that lets them exist.

Mớ hỗn độn ở giữa

Đầu tuần, đầu óc tôi quay cuồng. Thiết lập hiện có giống như một tháp Jenga — n8n nói chuyện với một database mà nó không nên sử dụng, Supabase làm quá nhiều việc, secret nằm rải rác ở ba nơi. Chạm vào một mảnh và toàn bộ mọi thứ có cảm giác như có thể sụp đổ.

Điều giúp tôi thoát khỏi bế tắc thật đơn giản: Tôi đã sử dụng Claude CLI như một đối tác tư duy. Mảnh nhỏ nhất trước. Cô lập. Xác minh. Tiếp tục.

Vault trước — khung trống. Một secret. Mục registry. Secret tiếp theo. Trong vòng vài giờ, sự hỗn loạn đã biến thành một chuỗi rõ ràng.

Bài học không chỉ mang tính kỹ thuật. Khi một hệ thống cảm thấy quá rối rắm để chạm vào, nút thắt cổ chai thực sự hiếm khi là hệ thống. Đó là thứ tự bạn chọn để gỡ rối nó.

Những quyết định quan trọng

Tôi đã đưa ra bốn quyết định đáng chú ý:

OCI Vault thay vì HashiCorp Vault, 1Password hoặc sops. Chúng tôi đã sử dụng OCI. Thêm một control plane khác không có ý nghĩa gì. 1Password rất tốt cho con người, không phải cho tự động hóa. Sops tốt cho git secret nhưng vô dụng cho việc thu hồi tập trung. OCI Vault được hỗ trợ bởi KMS và nằm ngay cạnh các workload. – Tailscale mesh thay vì raw OCI VPC peering. Đơn giản hơn. Mã hóa end-to-end. Và quan trọng là, nó hoạt động sạch sẽ trên các OCI account riêng biệt — điều này quan trọng vì agent runtime trong tương lai sẽ nằm trên account riêng của nó. – Postgres thay vì MySQL. Thực ra không phải là một lựa chọn — n8n đã ngừng hỗ trợ MySQL và buộc tôi phải làm vậy. Tốt. Postgres đã hoạt động rất ổn định kể từ khi chuyển đổi, và các công cụ xung quanh nó rõ ràng là vượt trội. – Markdown registries thay vì một database phức tạp. Tôi muốn nghĩ về hạ tầng giống như cách tôi nghĩ về code — dưới dạng các diff rõ ràng trong một pull request. Markdown trong git mang lại cho tôi điều đó. Agent có thể đọc nó dễ dàng. Tôi trong tương lai xem xét các thay đổi sau ba tháng cũng có thể đọc nó dễ dàng. Đơn giản là thắng lợi.

Điều này thực sự cho phép gì

s07 — agent runtime chuyên dụng — là bước tiếp theo. Nó sẽ đọc từ các registry, chỉ lấy các credentials cần thiết từ vault (không bao giờ giữ các credentials tồn tại lâu dài) và giữ trạng thái làm việc trong Postgres.

Với lớp nền tảng này, các tầng TOS thực sự — Reasoning Kernel, Memory & Data, Orchestration, Agents và BUD — có thể được xây dựng trên một thứ vững chắc thay vì hy vọng và băng keo.

Luận điểm, xem xét lại

Bỏ chữ “AI” khỏi “AI Operating System” và những gì còn lại vẫn phải là một operating system thực sự.

Đó là những gì hai ngày này nói về: lớp nền tảng không hấp dẫn, không hào nhoáng, chịu tải bên dưới mọi thứ khác. Bỏ qua nó và tất cả phép thuật agent bên trên nó chỉ là màn kịch.

Câu hỏi tôi luôn tự hỏi mình — và bây giờ hỏi bạn — là đây:

Đâu là lớp nền tảng nhàm chán trong _doanh nghiệp của bạn_ mà bạn đã tránh né vì nó không có cảm giác như nơi phép thuật xảy ra?

Hãy làm lớp đó trước. Mọi thứ khác sẽ trở nên khả thi.

Linh hồn của hệ thống nằm ở nền tảng.

Xây dựng nó đúng cách, và thực tế bắt đầu uốn cong theo hướng có lợi cho bạn.

Feature Image: A wide editorial illustration in two complementary halves blending into one frame. Left half: a relaxed solo founder at a clean home-office desk, soft morning light, “first day back” mood — laptop open, coffee, calm. Right half: a subtle architectural x-ray overlay beneath and around the desk — glowing server racks, key/vault icons, network lines connecting nodes, a clean geometric infrastructure diagram visible like circuitry under the floor. The two halves blend at the centre, not split sharply. Warm-cool palette: amber and soft cream merging into deep blue and electric teal. Modern flat editorial illustration with cinematic depth. No text. No readable code. Optimistic, grounded, honest. 16:9 aspect.