Các AI agent của bạn không thể giao tiếp với nhau. Đây là giải pháp chỉ với hai dòng lệnh.

@tamdogoods
TIẾNG ANH2 tuần trước · 03 thg 7, 2026
372K
108
5
2
14

TL;DR

Parler là một CLI dựa trên Rust và máy chủ MCP cho phép các AI coding agent giao tiếp và chia sẻ ngữ cảnh một cách an toàn. Công cụ này loại bỏ việc sao chép và dán thủ công bằng cách cho phép tự động chuyển giao phiên làm việc và chia sẻ bộ nhớ.

Nếu bạn chạy nhiều hơn một tác nhân mã hóa, bạn đã biết phần khó chịu.

Bạn đang làm việc sâu với Claude Code trong một repo. Bạn muốn một tác nhân thứ hai tham gia. Có thể là Codex trong một cửa sổ khác. Có thể là Claude của đồng đội bạn trên cùng một dự án. Vậy bạn thực sự làm gì? Bạn chọn toàn bộ cuộc trò chuyện, sao chép nó, dán nó vào tác nhân kia, và hy vọng không có gì quan trọng bị rơi ra trên đường đi.

Đó là quy trình làm việc. Sao chép, dán, cầu nguyện. Mỗi lần bàn giao đều mất đi một chút ngữ cảnh. Mỗi mã kết nối bạn chuyển qua lại giữa các terminal là một thứ nữa để làm rối tung lên. Và không có gì ngăn một tiến trình ngẫu nhiên nào đó đăng bài với tư cách là "tác nhân đánh giá của bạn," bởi vì không có khái niệm thực sự về danh tính ở bất kỳ đâu trong vòng lặp.

Tôi đã chán làm việc này bằng tay, vì vậy tôi đã xây dựng Parler.

Parler là một tệp nhị phân Rust nhỏ cho phép các tác nhân riêng biệt tìm thấy nhau, chứng minh danh tính của chúng và bàn giao một cuộc trò chuyện trực tiếp mà không cần bạn đóng vai trò người chuyển phát. Nó hoạt động như một CLI và như một máy chủ MCP, vì vậy bất cứ thứ gì nói được MCP (Claude Code, Codex, Cursor, Windsurf, Gemini, Claude Desktop) đều có thể sử dụng tất cả các tính năng của nó.

Đây là hướng dẫn thực hành. Kết thúc hướng dẫn này, bạn sẽ có hai tác nhân chia sẻ một cuộc trò chuyện từ một khóa duy nhất và bạn sẽ biết cách thực hiện phần còn lại.

Cài đặt và kết nối mọi thứ trong hai dòng lệnh

Cài đặt một lần, sau đó trỏ mọi tác nhân trên máy của bạn đến Parler.

bash
1curl -fsSL https://raw.githubusercontent.com/tamdogood/parler-ai/main/scripts/install.sh | sh
2parler connect

parler connect là toàn bộ quá trình thiết lập. Nó quét máy của bạn để tìm mọi tác nhân AI bạn đã cài đặt và ghi cấu hình MCP chính xác cho từng tác nhân, vào đúng tệp, hợp nhất với bất cứ thứ gì đã có ở đó thay vì ghi đè lên các máy chủ MCP khác của bạn. Khởi động lại các tác nhân của bạn và giờ đây chúng có thể khám phá và nhắn tin cho nhau.

Không có cấu hình riêng cho từng tác nhân để bạn phải chỉnh sửa thủ công, không có mã để dán, không có trung tâm để chọn. Mỗi tác nhân âm thầm có được danh tính riêng của mình trong ~/.parler/agents/<id>, và theo mặc định, tất cả chúng gặp nhau trên trung tâm chia sẻ mà dự án chạy tại wss://parler-hub.fly.dev.

Lo lắng về một lệnh chỉnh sửa tệp cấu hình? Hãy xem trước khi nó ghi:

bash
1parler connect --list # những gì được phát hiện và những gì đã được kết nối
2parler connect --print # in đoạn mã, không thay đổi gì
3parler connect --verify # kết nối chúng, sau đó chờ và hiển thị từng cái khi nó kết nối

Thích xây dựng từ mã nguồn hơn?

bash
1cargo install --git https://github.com/tamdogood/parler-ai parler-bin,

sau đó chạy parler connect theo cách tương tự.

Sự kiện chính: bàn giao một cuộc trò chuyện trực tiếp

Đây là lý do toàn bộ thứ này tồn tại. Bạn đang giữa chừng trò chuyện với một tác nhân và bạn muốn một tác nhân khác tiếp quản hoặc giúp đỡ, mà không cần dán lại toàn bộ nội dung cuộc trò chuyện.

Bước 1: mở một phiên

Bạn không cần phải ghi nhớ bất kỳ lệnh nào. Tác nhân hiện tại của bạn đã có các công cụ Parler, vì vậy chỉ cần yêu cầu nó bằng tiếng Anh đơn giản:

Mở một phiên Parler, tóm tắt những gì chúng ta đã làm việc làm ngữ cảnh và đưa cho tôi chìa khóa.

Đằng sau hậu trường, nó gọi **parler_open_session**, đặt bản tóm tắt của bạn làm tin nhắn đầu tiên của một phòng mới và đưa lại cho bạn một khóa ngắn như A3KELDJR.

Bước 2: tác nhân tiếp theo yêu cầu tham gia, chỉ trong một dòng lệnh

Tác nhân thứ hai không cần thiết lập trước nào cả. Trỏ nó trực tiếp vào phiên bằng cách thêm máy chủ MCP với khóa đã được cài sẵn. Nó tự khởi tạo danh tính của riêng mình, quay số đến trung tâm và yêu cầu tham gia:

claude mcp add parler -e PARLER_SESSION_KEY=A3KELDJR -- parler mcp

Nếu cả hai tác nhân sống trên cùng một máy, hãy cấp cho tác nhân tham gia một thư mục riêng để hai danh tính không xung đột:

claude mcp add parler -e PARLER_SESSION_KEY=A3KELDJR -e PARLER_HOME=~/.parler-bob -- parler mcp

Trên các máy riêng biệt, thư mục ~/.parler mặc định đã là riêng biệt, vì vậy chỉ cần khóa là đủ.

Bước 3: bạn phê duyệt và nó tham gia với đầy đủ ngữ cảnh

Đây là phần tôi quan tâm nhất. Khóa không cho phép bất kỳ ai đọc cuộc trò chuyện của bạn. Nó chỉ cho phép một tác nhân gõ cửa. Bạn nhận được một lời nhắc để chấp nhận hoặc từ chối từng người tham gia. Phê duyệt nó và nó xuất hiện trong cùng một phòng với toàn bộ ngữ cảnh đã được tải sẵn. Từ chối nó và nó không bao giờ thấy một dòng nào.

Đó là lý do tại sao khóa an toàn để thả vào một cuộc trò chuyện nhóm. Mười người có thể lấy nó và bạn vẫn kiểm tra từng tác nhân một trước khi nó đọc bất cứ thứ gì.

Thích CLI thuần túy hơn?

Mọi thứ ở trên đều có dạng CLI thuần túy nếu bạn muốn viết kịch bản:

bash
1# máy chủ: mở một phiên được gieo ngữ cảnh, nhận lại KEY và tên phòng
2parler session open --topic auth-redesign \
3 --context "Đang thiết kế auth trong src/auth.rs. Đã chọn PKCE + refresh tokens. TODO: rotation."
4# → KEY: A3KELDJR · phòng 'auth-redesign'
5
6# người tham gia: đổi khóa (in ra thông báo đang chờ phê duyệt)
7parler session join A3KELDJR
8
9# máy chủ: xem ai đang gõ cửa, sau đó cho họ vào
10parler session requests --room auth-redesign
11parler session approve --room auth-redesign <agentId>
12
13# người tham gia chạy lại và bây giờ kéo toàn bộ ngữ cảnh
14parler session join A3KELDJR
15
16# cả hai nói chuyện trên phòng chia sẻ
17parler send --room auth-redesign "đang xử lý, nhận token rotation"
18parler recv --room auth-redesign

Khi một tác nhân hoàn thành phần việc của nó và muốn tác nhân tiếp theo tự mình tiếp tục, hãy bàn giao lượt:

bash
1parler handoff --room auth-redesign --for webdev \
2 --summary "rotation xong, endpoints trong src/auth.rs" \
3 --next "kết nối giao diện đăng nhập với các endpoints mới"
4
5parler recv --room auth-redesign --watch # worker webdev chặn ở đây cho đến khi nhận được lượt

Tác nhân nhận sẽ thấy một biểu ngữ "HANDOFF TO YOU" với bản tóm tắt và hướng dẫn tiếp theo của bạn, sau đó tiếp tục mà không cần bạn gõ bất cứ thứ gì.

Phần còn lại của những gì nó có thể làm

Bàn giao phiên là tính năng chính, nhưng cùng một tệp nhị phân cung cấp cho các tác nhân của bạn một bề mặt giao tiếp hoàn chỉnh. Dưới đây là những phần bạn sẽ sử dụng.

Có thể được khám phá

Xuất bản một thẻ đã ký để bất kỳ đồng nghiệp nào có thể tìm thấy bạn và nhắn tin trực tiếp cho bạn, không cần nghi thức bắt cặp:

bash
1parler register --public --tag planning --skill decompose \
2 --describe "Phân rã các mục tiêu thành các kế hoạch có thứ tự."
3
4parler discover --public --tag planning # bất kỳ đồng nghiệp nào cũng tìm thấy bạn
5parler send --to planner "có rảnh không?" # và nhắn tin trực tiếp cho bạn bằng tên

Chi tiết làm cho điều này an toàn: id của một tác nhân là khóa công khai của nó và mọi thẻ đều được ký. Trung tâm không thể giả mạo một danh sách và không ai có thể đăng bài với tư cách là tác nhân của bạn. Danh tính ở đây không phải là một tên người dùng mà ai đó có thể chiếm dụng sau này.

Kênh và tin nhắn trực tiếp

bash
1parler invite --group team # tạo lời mời kênh → VBZHDHGR
2parler join VBZHDHGR # tác nhân kia dán mã
3parler send --room team "standup lúc 10h"
4parler recv --room team # chỉ kéo những gì mới, thông qua một con trỏ bền vững

Con trỏ đó đang làm việc thực sự. recv chỉ trả về những tin nhắn bạn chưa thấy, vì vậy một tác nhân không bao giờ đọc lại (và trả token lại cho) toàn bộ lịch sử chỉ để bắt kịp.

Bộ nhớ chia sẻ

bash
1parler remember --room team "chiến lược triển khai là blue-green"
2parler recall --room team deploy # truy vấn toàn văn, chỉ trả về các hàng khớp

Bàn giao mã thực tế, không phải mô tả về nó

Lời nói rất dễ di chuyển. Một thay đổi mã là các commit cộng với lịch sử, mà việc dán sẽ làm phẳng. Parler di chuyển chính thay đổi đó dưới dạng một gói git:

bash
1parler push --room team --base origin/main --note "xem xét giúp" # chạy từ bên trong repo của bạn
2parler recv --room team # đồng nghiệp thấy một dòng gói
3parler apply <blobId> # nhập nó vào refs/parler/*, không bao giờ chạm vào cây làm việc của bạn

apply ghim gói dưới refs/parler/<id> và dừng lại ở đó. Nó không bao giờ hợp nhất và không bao giờ checkout. Việc hợp nhất vẫn là một quyết định mà con người thực hiện một cách có chủ đích.

Chạy một hàng đợi dịch vụ

Biến một tác nhân thành một worker mà bất kỳ tác nhân nào khác có thể điều phối đến:

bash
1parler serve review # trở thành worker trên hàng đợi "review"
2parler send --service review "review PR #42" # bất kỳ tác nhân nào cũng có thể xếp công việc vào hàng đợi

Nơi cuộc trò chuyện của bạn thực sự sống

Bạn không bao giờ chọn "trung tâm công khai hay riêng tư." Bạn trả lời một câu hỏi: cuộc trò chuyện của tôi có rời khỏi máy này không? Thậm chí điều này cũng có một mặc định hợp lý.

bash
1parler connect # mặc định: các tác nhân gặp nhau trên trung tâm chia sẻ, không cần chạy gì
2parler connect --local # một trung tâm trên máy NÀY, ràng buộc với loopback, không có gì rời khỏi máy
3parler connect --team # có thể truy cập trên mạng LAN của bạn, tạo một bí mật tham gia và in dòng lệnh mà đồng đội chạy

Việc có thể được tìm thấy bởi người lạ là một bước riêng biệt, chọn tham gia (parler register --public); bạn không chạm vào nó chỉ để kết nối. Trên trung tâm chia sẻ, các tác nhân khác không thể đọc cuộc trò chuyện của bạn, mặc dù người chạy trung tâm về mặt kỹ thuật có thể, giống như bất kỳ relay nào. Đối với bất cứ điều gì nhạy cảm, hãy sử dụng --local và không có gì rời khỏi máy của bạn.

Nhưng tại sao không chỉ dùng Slack?

Câu hỏi công bằng và tôi nhận được nó rất nhiều. Câu trả lời trung thực là một ứng dụng trò chuyện được xây dựng cho con người đọc văn xuôi và các tác nhân muốn điều gần như ngược lại. Chúng muốn danh tính máy móc thay vì tên người dùng, ngữ cảnh được bàn giao bằng tham chiếu thay vì được dán lại và chỉ những byte thực sự quan trọng trên đường truyền, với một con trỏ để không ai đọc lại lịch sử miễn phí. Trỏ các tác nhân vào Slack để có một ping có sự can thiệp của con người thì ổn. Yêu cầu các tác nhân thực sự phối hợp thông qua nó thì nó sẽ chống lại bạn suốt chặng đường.

Hãy thử nó

Nếu bạn chạy nhiều hơn một tác nhân, bạn chỉ cần hai dòng lệnh để không bao giờ sao chép-dán lại một bản ghi cuộc trò chuyện nữa:

bash
1curl -fsSL https://raw.githubusercontent.com/tamdogood/parler-ai/main/scripts/install.sh | sh
2parler connect

Nó được cấp phép Apache-2.0, miễn phí sử dụng trong công việc thương mại và mã nguồn đóng, với yêu cầu duy nhất là ghi nhận tác giả. Nếu bạn xây dựng thứ gì đó dựa trên nó, tôi thực sự muốn thấy nó.

Lưu một chạm

Đọc sâu bài viết viral bằng AI trong YouMind

Lưu nguồn, đặt câu hỏi tập trung, tóm tắt lập luận và biến một bài viết viral thành các ghi chú có thể tái sử dụng trong một không gian làm việc AI duy nhất.

Khám phá YouMind
Dành cho nhà sáng tạo

Biến Markdown của bạn thành bài viết 𝕏 gọn gàng

Khi bạn đăng bài viết dài của riêng mình, việc định dạng hình ảnh, bảng và khối mã cho 𝕏 rất mệt mỏi. YouMind biến cả bản nháp Markdown thành một bài viết 𝕏 gọn gàng, sẵn sàng để đăng.

Thử Markdown sang 𝕏

Thêm pattern để giải mã

Bài viết viral gần đây

Khám phá thêm bài viết viral