Nội dung:
Tôi đã xây dựng một hệ thống tên là Violet, biến Claude Code thành một thứ gần giống một đội vận hành AI hơn là một trợ lý đơn lẻ. Đã mở mã nguồn framework — muốn chia sẻ nó làm gì và như thế nào, trong trường hợp ai đó thấy nó hữu ích hoặc muốn điều chỉnh các mẫu.
Thay vì một phiên Claude làm mọi thứ, các tác vụ đi qua một hệ thống phân cấp:
Bạn (người) | Violet (tác nhân COO — phân loại, ủy quyền, kiểm toán) | +- Hội đồng Cố vấn E.I.K. (3 tác nhân, thảo luận có cấu trúc) | Phát triển — “cần thay đổi điều gì?” | Cải thiện — “điều này có thực sự đúng không?” | Sự sắc bén — “chúng ta đang bỏ lỡ điều gì?” | +- Các tác nhân miền (hoạt động lâm sàng, cơ sở hạ tầng homelab, dữ liệu đào tạo, v.v.)
Khi một thứ gì đó phức tạp đến, Violet sẽ gửi nó đến hội đồng cố vấn. Cả ba tác nhân đều phân tích nó một cách độc lập (Vòng 1), sau đó đọc công việc của nhau và phản hồi (Vòng 2). Dừng lại — không có sự qua lại vô tận. Violet tổng hợp kết quả, kiểm toán nó dựa trên một danh sách kiểm tra 6 điểm và trình bày nó.
Các tác vụ đơn giản bỏ qua hội đồng và đi thẳng đến tác nhân miền phù hợp.
Giao thức thảo luận có cấu trúc — Hội đồng 3 tác nhân với điểm dừng cứng 2 vòng là điều tôi khuyên bạn nên thử ngay cả khi bạn bỏ qua mọi thứ khác. Việc có các tác nhân với phong cách tư duy thực sự khác biệt (không chỉ là các nhãn khác nhau) sẽ bắt được những thứ mà một tác nhân đơn lẻ bỏ lỡ. Phát triển thúc đẩy, Cải thiện kiểm tra sự thật, Sự sắc bén tìm ra những điểm mù. Hai vòng là đủ để làm nổi bật sự bất đồng thực sự mà không bị xoắn ốc.
Bộ nhớ liên tục giữa các phiên — Các tệp bộ nhớ được chia sẻ (STATE.md, DECISIONS.md, CORRECTIONS.md, HANDOFF.md) mà các tác nhân đọc khi bắt đầu phiên và ghi vào khi kết thúc phiên. Nó đơn giản nhưng nó có nghĩa là hệ thống không quên những gì đã xảy ra ngày hôm qua. SQLite + FTS5 + nhúng vector cho những thứ nặng hơn.
Mẫu giàn giáo tác nhân — Operations/_Template/ là một giàn giáo đã sẵn sàng để sao chép cho các tác nhân miền mới. Thả vào các chỉ thị, công cụ và tài liệu nhận dạng của bạn — bạn có một tác nhân mới với các rào cản.
Các cấp độ tin cậy trên mọi thứ — Mọi tuyên bố đều được gắn thẻ Cao/Trung bình/Thấp/Suy đoán. Nghe có vẻ nhỏ, nhưng nó thay đổi cách bạn đọc đầu ra AI khi bạn có thể thấy trong nháy mắt những gì nó tự tin so với đoán.
Chuyển giao kiến thức từ đám mây sang cục bộ — Các phiên trên đám mây (Claude) biên dịch các mảnh kiến thức thành một hạt nhân bộ nhớ cục bộ. Các phiên cục bộ (Ollama) tải các mảnh đó. Mô hình cục bộ trở nên thông minh hơn về mặt chức năng sau mỗi phiên mà không cần đào tạo lại. Đây là phần mà tôi hào hứng nhất về lâu dài.
Mọi tác nhân đều chạy trên cả Claude Code (đám mây) và một CLI cục bộ tùy chỉnh được kết nối với Ollama. Cùng một danh tính tác nhân, cùng một bộ nhớ, thời gian chạy khác nhau. Đám mây để phân tích nặng, cục bộ để các hoạt động thường lệ và làm việc ngoại tuyến. Hạt nhân bộ nhớ kết nối chúng.
-
Không phải là sản phẩm SaaS, không phải là một startup, không phải là một framework mà bạn cài đặt bằng pip
-
Nó là một kiến trúc tham chiếu — một hệ thống làm việc mà bạn có thể đọc, điều chỉnh và xây dựng
-
Được xây dựng cho một người vận hành duy nhất quản lý nhiều miền (phần mềm, tài chính, nghiên cứu lâm sàng, cơ sở hạ tầng, bảo mật)
-
Nếu bạn đã sử dụng Claude Code và muốn tổ chức các tác nhân của mình thành một thứ có cấu trúc hơn, đây là một điểm khởi đầu
-
Kho: Purple-Directive: Violet — framework đầy đủ
-
Thời gian chạy cục bộ: Purple-Directive: CLI — Ollama + MCP agent CLI
Rất vui được trả lời các câu hỏi về bất kỳ mẫu nào. Claude đã hỗ trợ tôi trong suốt dự án. README đi sâu vào kiến trúc, giao thức và các quyết định thiết kế.