
Trang 42 / 43
Chương 42
Không cần n8n: tả việc bằng lời để Claude Code viết ra quy trình tự động của riêng bạn
Bạn muốn một quy trình tự chạy: có người điền form thì hệ thống tự tra thông tin, rồi tự thêm họ vào đúng kênh chat của công ty. Trước đây, cách phổ biến là mở n8n, kéo thả hàng chục ô vuông rồi nối dây. Bài này chỉ bạn cách làm đúng việc đó bằng Claude Code: tả bằng tiếng Việt trong vài câu, nhận về một phần mềm nhỏ của riêng bạn, chạy ở đâu cũng được. Mất khoảng một buổi cho lần đầu, bạn cần Claude Code và tài khoản của các ứng dụng muốn nối.
Trước khi bắt tay vào làm, hãy hiểu n8n là gì và vì sao với người đã có Claude Code, phần lớn lý do dùng nó biến mất.
n8n là gì, hay ở đâu, dở ở đâu
n8n là công cụ tự động hóa quy trình kiểu kéo thả. Mỗi ô vuông (gọi là "node") là một bước: nhận form, gọi một dịch vụ, rẽ nhánh, gửi tin Slack. Bạn nối các ô bằng dây, và khi có sự kiện kích hoạt thì cả chuỗi tự chạy. Nó cùng họ với Zapier và Make, nhưng thiên về kỹ thuật hơn và tự cài lên máy chủ riêng được.
Vài nét lịch sử: n8n ra đời ở Berlin năm 2019. Tên đọc là "en-eight-en", viết tắt của "nodemation" (node cộng automation). Từ năm 2022 nó dùng giấy phép "Sustainable Use License": được dùng, được sửa, nhưng hạn chế bán lại thương mại, tức không phải mã nguồn mở thuần. Dự án gọi vốn rất lớn, và gần đây thêm các ô "AI Agent" để bắt kịp làn sóng trợ lý AI.
Công bằng mà nói, n8n có điểm mạnh thật:
- Trực quan: nhìn thấy luồng chạy, dễ giải thích cho người không biết code.
- Nhiều tích hợp sẵn: hàng trăm ô cho các ứng dụng phổ biến, cắm là chạy.
- Nhanh cho việc đơn giản: vài ô là xong một quy trình "khi A thì làm B".
Nhưng khi việc phức tạp dần, cái giá lộ ra:
- Phải học một hệ riêng. Cách đặt tên ô, truyền dữ liệu giữa các ô, công thức trong ô, xử lý lỗi, tất cả chỉ dùng được trong n8n.
- Bị khóa trong khung kéo thả. Logic của bạn nằm trong định dạng của n8n. Muốn dùng lại ở chỗ khác hay rời n8n là phải làm lại từ đầu.
- Phải nuôi thêm một hệ thống. Bản tự cài là thêm một dịch vụ cần dựng, cập nhật, sao lưu, canh chừng.
- Khó so sánh phiên bản và khó kiểm thử. Xem hôm qua ai sửa gì, chạy kiểm tra tự động, đều vụng về.
- Logic phức tạp thì rối như mì. Vài nhánh điều kiện, vài vòng lặp là khung kéo thả biến thành mạng nhện.
Claude Code lật ngược vấn đề
Điểm mấu chốt: ngôn ngữ tự nhiên giờ chính là cách lập trình. Với Claude Code, bạn không kéo ô, không học hệ riêng của ai. Bạn tả việc bằng tiếng Việt, nó viết ra code thật, gọi thẳng vào Slack, Jira hay Facebook, đặt lịch bằng bộ hẹn giờ có sẵn của máy chủ, và lưu lịch sử thay đổi bằng git.
- Bạn sở hữu code. Kết quả là file chạy được ở bất cứ đâu: máy bạn, một máy chủ thuê, một lịch chạy định kỳ.
- Không phải nuôi thêm hệ nào. Chỉ là một script hoặc một dịch vụ nhỏ.
- So sánh phiên bản và kiểm thử như phần mềm thật. Xem được từng dòng đã đổi, quay lại bản cũ khi cần.
- Không có trần. Cần thứ mà n8n chưa có ô? Cứ tả, Claude viết.
Quan trọng: tiếng Việt ở đây dùng để tạo ra code, không thay thế code. Claude dịch ý muốn của bạn thành phần mềm chạy lần nào cũng như nhau. Đây cũng là tinh thần của vibe coding.
Chuẩn bị
- Claude Code đã cài và đăng nhập.
- Quyền truy cập (khóa API hoặc token) của các ứng dụng muốn nối, ví dụ Slack, Jira, Microsoft Entra ID (hệ thống quản lý tài khoản nhân viên của Microsoft).
- Một chỗ để chạy: máy tính của bạn khi thử, một máy chủ thuê nhỏ khi dùng thật.
Làm từng bước
Ví dụ kinh điển của n8n: nhân viên mới điền form tạo tài khoản, một ô AI đọc thông tin, tra Entra ID và Jira, rồi rẽ nhánh "có phải quản lý không" để thêm vào kênh Slack hoặc cập nhật hồ sơ. Ta làm lại đúng việc đó.
Bước 1: Tả việc cho Claude Code. Mở Claude Code trong một thư mục trống và gõ:
Viết một dịch vụ nhỏ nhận form tạo user (tên, email, phòng ban).
Tra Microsoft Entra ID và Jira để biết họ có phải quản lý không.
Nếu là quản lý thì mời vào kênh Slack tên managers,
nếu không thì cập nhật hồ sơ Slack của họ.
Có ghi log và có test. Trước khi viết code, nêu kế hoạch ngắn cho tôi duyệt.
Bước 2: Duyệt kế hoạch. Claude sẽ liệt kê các phần: nhận form, tra cứu, quyết định, gọi Slack, ghi log, kiểm thử. Đọc và hỏi lại chỗ nào chưa rõ, ví dụ "nếu Jira không trả lời thì sao?".
Bước 3: Để Claude viết và chạy thử. Phần nhận form, tra cứu và gọi Slack đều là code tất định: cùng đầu vào thì ra cùng kết quả (xem thêm tất định và ngẫu nhiên trong AI).
Bước 4: Chỉ dùng AI ở bước cần suy xét. Có những chỗ code thường không làm được, ví dụ đọc một chức danh viết tự do như "Trưởng nhóm bán hàng miền Nam" để đoán có phải cấp quản lý. Chỉ ở chỗ đó, nhờ Claude nhúng một lệnh gọi AI chạy không giao diện (claude -p):
Ở bước quyết định, nếu chức danh không khớp danh sách có sẵn,
hãy gọi claude -p để phân loại "quản lý" hoặc "không quản lý",
chỉ nhận một trong hai từ đó, và ghi lại câu trả lời vào log.
Bước 5: Đưa lên chạy thật. Nhờ Claude viết hướng dẫn chạy trên máy chủ, lưu code vào git, và đặt cảnh báo khi có lỗi.
Kết quả mẫu
Thư mục dự án sau một buổi trông thế này:
onboarding-bot/
├── app.py (nhận form, điều phối)
├── lookup.py (tra Entra ID và Jira)
├── decide.py (quyết định, gọi claude -p khi cần)
├── slack_actions.py
├── tests/
└── README.md
Một dòng log điển hình: "Nguyễn Văn A, phòng Kinh doanh, chức danh Trưởng nhóm: quản lý (AI phân loại), đã mời vào kênh managers". Cùng chức năng như khung n8n, nhưng là phần mềm của bạn.
So sánh nhanh
| n8n | Claude Code | |
|---|---|---|
| Cách lập trình | Kéo thả ô, nối dây | Tả bằng tiếng Việt |
| Kết quả | Quy trình trong định dạng n8n | Code thật bạn sở hữu |
| Kiến thức học được | Chỉ dùng trong n8n | Kỹ năng mang đi được |
| Hạ tầng | Tự cài và bảo trì | Chạy như script thường |
| Phiên bản, kiểm thử | Vụng về | Như phần mềm thật |
| Logic phức tạp | Rối như mì | Đọc và tổ chức được |
| Giới hạn | Chờ có ô sẵn | Cần gì tả nấy |
Giới hạn cần biết
- n8n vẫn hợp lý khi bạn hoàn toàn không muốn đụng tới cửa sổ dòng lệnh, chỉ cần nối nhanh vài ứng dụng cho một việc đơn giản và cố định, hoặc cả nhóm đã quen n8n và việc chỉ dừng ở đó. Bài kết hợp Claude Code với n8n có góc nhìn dùng cả hai.
- Code do AI viết vẫn cần người kiểm. Hãy đọc kế hoạch, chạy kiểm thử, và thử với dữ liệu giả trước khi nối vào hệ thống thật.
- Giữ kỹ khóa truy cập. Không dán khóa API vào khung chat hay vào code, lưu trong file cấu hình riêng không đưa lên git.
- Bạn phải lo chỗ chạy. Không có n8n thì vẫn cần một máy bật liên tục cho các việc chạy theo lịch hay chờ form.
Câu hỏi thường gặp
Không biết code có làm theo được không? Được, nếu bạn chịu đọc kế hoạch Claude đưa ra và hỏi lại chỗ chưa hiểu. Bạn không cần tự viết code, nhưng cần hiểu việc mình muốn đủ rõ để tả.
n8n có miễn phí không? Bản tự cài dùng miễn phí cho nhu cầu nội bộ theo giấy phép của họ, còn bản trên mây tính phí theo gói. Xem trang giá hiện tại của n8n để chắc chắn.
Có nên chuyển hết quy trình n8n đang chạy sang Claude Code ngay không? Không cần. Quy trình đơn giản đang chạy ổn thì cứ để. Hãy chuyển những quy trình đang rối, hay lỗi, hoặc cần thứ n8n không có.
Khi nào nên dùng AI trong quy trình, khi nào không? Dùng code thường cho mọi bước có quy tắc rõ ràng. Chỉ gọi AI ở bước cần suy xét như đọc chữ tự do hay phân loại, và luôn ghi lại câu trả lời của AI để kiểm tra.
Chạy quy trình này tốn bao nhiêu? Phần code chạy trên một máy chủ nhỏ, chi phí thấp. Phần gọi AI tính theo lượng sử dụng, nên càng ít bước cần AI thì càng rẻ.

