Cập nhật tháng 10/2026. Muse Code vẫn đang beta: tên lệnh, danh sách skill dựng sẵn và hành vi mặc định có thể đổi giữa các bản. Mọi chi tiết trong bài được đối chiếu với tài liệu tại dev.meta.ai/docs; trước khi áp dụng cho dự án khách, hãy chạy muse --help và /help để kiểm tra bản bạn đang dùng.
Bài này dành cho ai: lập trình viên, freelancer và trưởng nhóm kỹ thuật đã cài Muse Code, chạy được vài phiên và giờ muốn dùng nó cho việc lớn trên dự án thật, chẳng hạn rà toàn bộ website WordPress của khách.
Bạn sẽ nắm được gì: bốn lớp cấu hình của một dự án Muse Code; cách dùng và tự viết skill; cách chia việc lớn cho nhiều subagent; cách đặt quyền, sandbox và hook theo dự án; cách duyệt kết quả qua git; 3 prompt mẫu, lỗi thường gặp và bài tập.
Thời gian đọc: khoảng 13 phút, thực hành thêm 1–2 giờ.
Bài Muse Code của Meta: cài đặt, đặt quyền an toàn và giao việc song song cho subagent đã đi qua phần nhập môn. Bài này đi tiếp: biến Muse Code thành công cụ của dự án, để ai trong đội mở kho mã cũng có cùng quy ước, cùng skill, cùng giới hạn quyền. Ví dụ xuyên suốt: kiểm tra toàn bộ trang dịch vụ của một website WordPress và dựng bộ test để lần sau khỏi kiểm tay.

1. Bốn lớp cấu hình của một dự án Muse Code
Theo trang cấu hình và trang mở rộng trong tài liệu chính thức, những gì Muse Code nạp khi mở một dự án chia thành các lớp sau:
Quy ước
AGENTS.md (hoặc CLAUDE.md, .agents/AGENTS.md, .claude/CLAUDE.md). Tệp ở thư mục sâu hơn ghi đè tệp nông hơn; quy tắc dự án ghi đè quy tắc người dùng.
Bộ nhớ
.agents/memory/ gồm tệp chỉ mục MEMORY.md và mỗi chủ đề một tệp Markdown, commit cùng kho để cả đội dùng chung.
Skills
Hướng dẫn đóng gói, nạp khi cần. Skill của dự án nằm ở .agents/skills/<tên-skill>/SKILL.md.
Hook và workflow
Hook dự án ở .muse/hooks.json; workflow nhiều agent lưu ở .agents/workflows/<tên>.js.
Phần cá nhân nằm ở ~/.config/muse/settings.json: mô hình mặc định, hồ sơ quyền, máy chủ MCP, hook cá nhân. Tệp này bắt buộc có "schema_version": 1; không có tệp thì Muse Code dùng mặc định.
Lưu ý: quy ước, skill và hook của dự án chỉ nạp sau khi bạn tin cậy workspace, còn bộ nhớ đã commit thì nạp cả khi chưa tin cậy. Với kho mã lạ, đọc MEMORY.md trước.
2. Thiết lập dự án WordPress từng bước
Đưa phần mã cần làm vào git
Với WordPress, thường chỉ cần child theme, plugin tự viết và thư mục test, không đưa cả lõi WordPress hay thư mục uploads vào kho. Commit sạch, tạo nhánh làm việc. Chia việc cho subagent bằng worktree chỉ chạy được trong kho git.
Viết quy ước và đặt guardrail
Chạy muse init để tạo AGENTS.md (thêm --dry-run để xem trước). Ghi lệnh chạy test, URL staging, thư mục không được sửa. Quy tắc “không được nới” đặt trong .agents/AGENTS.md: theo công thức Immutable guardrails của Meta, mọi lần agent sửa tệp trong .agents/ đều dừng chờ người duyệt, chỉ có cho phép một lần hoặc huỷ.
Chọn hồ sơ quyền mặc định
Phiên mới bắt đầu ở hồ sơ Auto-review (ngoài ra có Ask me, Read-only, Unrestricted); đổi mặc định bằng khoá permissions.default_profile. Chọn “luôn cho phép trong workspace” khi được hỏi sẽ lưu quy tắc theo tiền tố lệnh, chỉ trong dự án đó. Không lưu được quy tắc cho phép rộng với python, bash, node; quy tắc chặn luôn thắng.
Cho phép mạng đúng chỗ
Mặc định --sandbox-network proxy-only: mỗi đích đến được duyệt riêng, nên lần đầu gọi tới staging bạn sẽ được hỏi. Đừng chuyển sang enabled chỉ để khỏi bị hỏi.
Bật skill và kiểm tra danh sách
Chạy muse skills list để xem skill nào đang có và đến từ đâu (dựng sẵn, người dùng, dự án, plugin). Skill tự viết của dự án bật bằng muse skills enable <tên-skill> --scope project. Chi tiết cách viết ở phần 3.
Chỉ thêm hook khi thật cần
Hook gắn với một sự kiện như PreToolUse, PostToolUse, SubagentStop. Tài liệu nhấn mạnh hook chạy ngoài sandbox và cơ chế duyệt; tệp hook sai định dạng bị bỏ qua kèm cảnh báo, sửa xong thì mở phiên mới.
3. Skills: dùng bản dựng sẵn và tự viết cho quy trình của đội
Bản hiện tại có sẵn vài skill gọi bằng lệnh gạch chéo, ví dụ /plan (lập kế hoạch, chờ duyệt), /grilling (hỏi từng câu để chốt yêu cầu), /grill-with-docs (như trên và ghi quyết định vào tệp bạn chỉ định) và /taste (tránh kiểu giao diện “trông như AI làm”). Danh sách đổi theo bản, nên tin vào muse skills list trên máy bạn.
Tự viết skill khi một quy trình lặp lại nhiều lần, ví dụ “rà một trang dịch vụ theo checklist công ty”: tạo .agents/skills/ra-trang-dich-vu/SKILL.md mô tả khi nào dùng, các bước, định dạng báo cáo, rồi kiểm tra bằng muse skills validate. Muse Code cũng quét .claude/skills, .codex/skills và có lệnh muse skills import --from claude để dùng lại skill sẵn có, đúng tinh thần bài CLAUDE.md và AGENTS.md cho dự án web.
4. Subagent fan-out: chia việc lớn cho nhiều agent
Fan-out: trong một lượt, agent chính sinh nhiều agent con, mỗi con một việc độc lập; agent chính theo dõi, nhắn hướng dẫn, huỷ và thu kết quả. Bạn xem bằng /subagents.
- Sức chứa: mặc định 8 agent chạy đồng thời tính cả agent gốc, chỉnh bằng
agents.execution_capacity(1–64) trong settings. Sinh thêm thì xếp hàng chờ, không báo lỗi. - Tách worktree: agent con có quyền ghi nên chạy trong worktree riêng; agent chỉ đọc thì không cần. Nếu bị từ chối với lỗi
worktree_isolation_unavailable, khởi động lại bằngmuse --subagent-worktree-isolation. - Huỷ là “ngừng việc mới”, không phải hoàn tác. Agent con đang ghi dở vẫn có thể ghi xong; worktree không cần thì tự dọn.

5. Ví dụ: rà 12 trang dịch vụ và dựng bộ test
Tình huống minh hoạ: website WordPress của một công ty nội thất ở Hà Nội có 12 trang dịch vụ, sửa qua tay nhiều người. Đội web 3 người cần kiểm tiêu đề, mô tả SEO, nút liên hệ, alt ảnh, liên kết hỏng, hiển thị di động, trên bản staging.
Mẫu 1: Chốt tiêu chí trước khi làm
Hỏi tôi từng câu để chốt: danh sách URL, tiêu chí đạt/không đạt cho từng mục, công cụ test, ngưỡng chấp nhận.
Ghi các quyết định đã chốt vào docs/DECISIONS.md. Chưa chạy lệnh mạng, chưa sửa tệp nào khác.
Mẫu 2: Rà song song, chỉ đọc
Chia thành 4 nhóm, mỗi nhóm 3 URL, giao mỗi nhóm cho một subagent chỉ đọc (không cần worktree).
Mỗi subagent: tải từng trang, kiểm theo đúng tiêu chí, trả về bảng gồm URL, mục, kết quả, bằng chứng (đoạn HTML hoặc mã trạng thái).
Không sửa tệp, không đăng nhập WordPress, chỉ gọi tới tên miền staging.
Khi cả 4 xong, gộp thành reports/ra-trang-dich-vu.md, xếp lỗi theo mức nghiêm trọng.
Mẫu 3: Dựng bộ test, mỗi phần một nhánh
Giao cho 3 subagent có quyền ghi, mỗi subagent một worktree riêng:
1. Test SEO: tiêu đề, mô tả, thẻ canonical của 12 trang.
2. Test liên kết và ảnh: không có liên kết trả lỗi, ảnh có alt.
3. Test giao diện di động: nút liên hệ hiện trong màn hình đầu ở khổ 390px.
Mỗi subagent chạy test của mình trên staging, commit vào nhánh riêng, báo lại lệnh chạy và kết quả.
Không sửa mã theme, không đổi tệp ngoài tests/ và package.json.
Kết quả: một báo cáo có bằng chứng và ba nhánh test để duyệt riêng. Lỗi nội dung do người sửa trên WordPress.
6. Tích hợp git: duyệt và gộp kết quả
Worktree của agent con nằm dưới .muse/worktrees/, tạo từ HEAD của agent chính và tự xoá nếu sạch; thư mục làm việc của bạn không đổi trong lúc chúng chạy. Lệnh shell không ghi được vào .git, .muse, .agents.
Quy trình duyệt: xem /subagents, đọc git diff từng worktree so với commit gốc, chạy lại test trên máy, gộp từng nhánh một.
Khi bộ test ổn, có thể chạy trong CI bằng muse exec --prompt-file ./task.txt kèm --max-model-steps. Mã thoát 0 chỉ nghĩa là lượt chạy kết thúc, không phải việc làm đúng, nên luôn chặn bằng test của bạn. Trong CI dùng --disable-approval (vẫn giữ sandbox); --yolo chỉ cho container dùng xong bỏ.

7. Lỗi thường gặp
- Quên
schema_versiontrong settings: mọi lệnh báo lỗi tệp cấu hình. Thêm"schema_version": 1ở cấp gốc. - Skill dự án không xuất hiện: chưa tin cậy workspace, hoặc mở phiên trước khi thêm skill. Kiểm tra bằng
muse skills listrồi mở phiên mới. - Fan-out những việc đụng cùng tệp: gộp sẽ xung đột. Chỉ chia việc độc lập và có giới hạn rõ; việc tuần tự làm ở luồng chính.
- Dùng hook để “chặn cho chắc”: hook chạy ngoài sandbox, viết sai có thể gây hại hơn. Ưu tiên quy tắc duyệt và sandbox trước.
8. Bài tập thực hành
- Chọn một website WordPress có bản staging, đưa child theme và thư mục test vào git, chạy
muse init, viết.agents/AGENTS.mdvới 3 quy tắc không được nới. - Viết skill
ra-trang-dich-vutrong.agents/skills/, chạymuse skills validatevà bật cho dự án. - Chạy lần lượt Mẫu 1, 2, 3 với 4–6 trang dịch vụ thật, ghi lại các lệnh bạn đã chọn “luôn cho phép”.
- Duyệt từng nhánh test bằng
git diff, gộp nhánh đạt, rồi thử sai một tiêu đề trên staging xem test có bắt được không.
Muốn so Muse Code với các công cụ khác cho cùng tình huống, đọc thêm So sánh trợ lý lập trình AI cho đội nhỏ.
Thuật ngữ cần biết
- Fan-out: kiểu chia việc trong đó một agent chính sinh nhiều agent con chạy song song rồi gom kết quả (Meta cookbook).
- Git worktree: nhiều thư mục làm việc dùng chung một kho git, mỗi thư mục ở một nhánh hoặc commit riêng (git-scm.com).
- Hook: lệnh tự chạy khi một sự kiện xảy ra trong phiên, như trước hoặc sau khi agent dùng công cụ (tài liệu Muse Code).
- Guardrail: quy tắc và tệp được bảo vệ để agent không tự nới giới hạn của chính nó (Immutable guardrails).
Tìm hiểu thêm
- Cấu hình, tệp quy ước và bộ nhớ
- Mở rộng: skills, hook, MCP, subagent, chạy không giao diện
- Quyền, chế độ duyệt và sandbox
- Các skill dựng sẵn
- Playwright: bắt đầu viết test giao diện
Câu hỏi thường gặp
Skill viết cho Claude Code có dùng được trong Muse Code không?
Tài liệu cho biết Muse Code quét cả .claude/skills trong kho và ~/.claude/skills trên máy, đồng thời có lệnh muse skills import --from claude. Sau khi chuyển, chạy muse skills validate và thử lại trên một việc nhỏ.
Chạy nhiều subagent có tốn token hơn không?
Có. Mỗi agent con và các agent quan sát chạy nền đều tự gọi mô hình. Chỉ chia việc khi các phần thật sự độc lập và đủ lớn.
Đọc tiếp
- Bài trước (Công cụ AI): Qwen đọc ảnh tài liệu: trích bảng biểu, biên lai, ảnh sản phẩm và kiểm chứng kết quả OCR
- Nên đọc cùng: Muse Code của Meta: cài đặt, đặt quyền an toàn và giao việc song song cho subagent
- Bài sau trong chuyên mục Công cụ AI: Triển khai Claude cho cả đội: chọn gói Team hay Enterprise, phân quyền, SSO và kế hoạch 30 ngày
Muốn đội kỹ thuật dùng agent lập trình có quy ước chung, skill riêng và quy trình duyệt rõ ràng? Tham khảo chương trình đào tạo và triển khai AI của PDL.



