Klad: ứng dụng vẽ tranh cho phép AI agent điều khiển bằng CLI

Công nghệ12 tháng 11, 2026·7 phút đọc

Klad là ứng dụng vẽ và làm hoạt hình 2D viết bằng Rust, cho phép coding agent vẽ trực tiếp qua dòng lệnh với cùng bộ cọ và lớp như người dùng. Mọi nét cọ được lưu dưới dạng dữ liệu có thể chỉnh sửa, mở ra cách làm việc mới giữa lập trình viên và AI khi tạo tài nguyên đồ họa cho game.

Klad: ứng dụng vẽ tranh cho phép AI agent điều khiển bằng CLI

Một lập trình viên vừa công bố Klad, ứng dụng vẽ và làm hoạt hình 2D viết bằng Rust, cho phép coding agent như Claude Code hay Codex vẽ tranh qua dòng lệnh trên cùng bản vẽ mà người dùng đang mở trong trình soạn thảo. Điểm khác biệt: mọi nét cọ đều được lưu thành dữ liệu chỉnh sửa được, thay vì ảnh pixel cố định như các mô hình tạo ảnh hiện nay.

Linh vật nhỏ được vẽ từng nét cọ bằng KladLinh vật nhỏ được vẽ từng nét cọ bằng Klad

Vẽ bằng cọ thật, chỉnh từng nét

Theo tác giả, nỗi bức xúc lớn nhất khi dùng AI agent phát triển game nằm ở khâu đồ họa: hoặc dùng mô hình tạo ảnh và "đổ xúc xắc" mỗi lần muốn sửa, hoặc để agent vẽ bằng vector. Klad ra đời để giải quyết điểm này.

Klad không tích hợp mô hình tạo ảnh nào. Agent tự quyết định vẽ gì, còn Klad cung cấp cọ, lớp và dòng thời gian. Mọi thứ đặt xuống — nét cọ với đường đi, lực ấn, cọ và màu; hình khối với các điểm; vùng tô màu — đều giữ nguyên bản chất dữ liệu. Không có chuyện tạo lại rồi cầu may: nếu một chiếc lá trông sai, người dùng chỉ sửa đúng chiếc lá đó.

Tác giả dẫn ví dụ: khi được yêu cầu vẽ "một sinh vật mầm nhỏ cho game của tôi", agent vẽ ra 4.344 nét cọ và vùng tô. Người dùng sau đó đổi màu lá, bẻ miệng, di chuyển vết nhòe, pha màu má hồng. Tiếp đó agent làm hoạt hình: các bộ phận chia thành năm nhóm, 205 keyframe di chuyển chúng, và không khung hình nào bị vẽ lại.

Cảnh vật được vẽ hoàn toàn qua dòng lệnh KladCảnh vật được vẽ hoàn toàn qua dòng lệnh Klad

Khác gì so với mô hình tạo ảnh?

Mô hình tạo ảnh trả về pixel, và cách sửa duy nhất là tạo lại. Klad lưu từng nét và từng vùng tô dưới dạng dữ liệu: vị trí, lực ấn, cọ, màu sắc. Nhiều giờ sau vẫn có thể chọn bất kỳ nét nào — của mình hay của agent — để đổi màu, bẻ cong, di chuyển hoặc xóa.

Đây là sơn thật, không chỉ vector. Nét cọ giữ đường đi và lực ấn như vector nhưng vẫn đọng lại như lớp sơn: sơn dầu chất lên tạo gờ bắt sáng, công cụ nhòe kéo lớp sơn đã có trên bản vẽ. Vết nhòe cũng là một nét cọ: di chuyển nó sau đó, Klad sẽ pha trộn lại tại vị trí mới. Bên cạnh đó, ứng dụng vẫn vẽ được vector thuần: hình khối với điểm chỉnh sửa, gradient, phát sáng và chữ thật với khoảng 50 phông chữ mã nguồn mở đi kèm.

Bộ tài nguyên đồ họa cho game vẽ bằng KladBộ tài nguyên đồ họa cho game vẽ bằng Klad

Bộ công cụ đầy đủ cho game 2D

Klad được quảng bá là ứng dụng vẽ và hoạt hình hoàn chỉnh: hơn hai chục loại cọ và trình chỉnh cọ, lớp, mặt nạ (mask), clipping, hiệu ứng, dòng thời gian với onion skin và clip, tạo khung hình trung gian (in-between) từ các khung khóa, xương (bones) có IK, cùng khả năng xuất PNG, sprite sheet hoặc thẳng vào Godot.

Với làm game, quy trình gồm vẽ khung hình khóa rồi để Klad tạo các khung trung gian theo từng bộ phận, kiểm tra đường cong chuyển động (arcs) — ví dụ bàn chân bị trượt hay bộ phận lún dưới đất — rồi tô màu mọi khung hình theo khung đầu tiên.

Dữ liệu hoàn toàn thuộc về người dùng: một bản vẽ là thư mục các tệp văn bản thuần trên máy, không cần tài khoản, không phụ thuộc đám mây, và phù hợp để đưa vào git. Một chỉnh sửa chỉ thay đổi tệp của phần bị sửa.

Dành cho lập trình viên: bản vẽ là dữ liệu

Mọi thao tác trong trình soạn thảo đều có lệnh Klad tương ứng, cho nên script hay agent làm việc trên đúng bản vẽ mà người dùng đang mở. Nét cọ được đọc dưới dạng JSON, chỉnh sửa theo địa chỉ, và các lô thay đổi được áp dụng dưới dạng thao tác JSON.

  • Vẽ nét: klad stroke art.klad l4 --brush oil --path 'M100 400 C 300 200 500 600 700 400'
  • Sửa nét sau đó: klad set art.klad c4:s12 size=3.5 color=#3355aa
  • Đọc nội dung: klad strokes art.klad l4 --json
  • Đổ màu phẳng: klad fill art.klad l2 --at 820,640 --ref lines --gap 4 --color skin
  • Tạo khung trung gian: klad inbetween art.klad --layers lines,colour --from 0 --to 6
  • Xuất sang Godot: klad export art.klad --godot ../game/art
  • Hoàn tác: klad undo art.klad

Định dạng tệp được tài liệu hóa đến từng byte dưới giấy phép MIT, cho phép ứng dụng và engine khác đọc ghi bản vẽ Klad có hoặc không cần Klad.

Quy trình làm việc với agent

Tác giả mô tả bốn bước: yêu cầu agent bằng lời lẽ thường (ví dụ "một chiếc đèn lồng cho quán trọ, chiếu sáng từ trái, trên lớp riêng"); quan sát khi nét cọ hiện lên trong trình soạn thảo sau khoảng một giây; chỉ điểm bằng ghi chú ghim trên canvas hoặc chọn vùng cần sửa; và tiếp quản — tự vẽ đè lên bất kỳ nét nào, kể cả của agent.

Klad cung cấp hai "kỹ năng" agent dưới giấy phép MIT: một kỹ năng dạy cách nhìn, sửa và kiểm tra kết quả, kỹ năng còn lại dạy tay nghề — lập kế hoạch bố cục, ánh sáng trên khối, sắc độ, đường viền, màu sắc, chất liệu và cách đánh giá kết quả.

Giới hạn và giấy phép

Klad hiện ở phiên bản công khai đầu tiên: người dùng tự biên dịch, quá trình build mất khoảng mười phút lần đầu. Chạy tốt trên macOS (có lực ấn và nghiêng bút). Trên Linux chương trình chạy và vượt qua kiểm thử nhưng mới vẽ được bằng chuột. Trên Windows mã nguồn build được và kiểm thử đạt, nhưng chưa ai thực sự vẽ trên đó.

Một số tính năng còn thiếu: chọn nhiều hình khối cùng lúc, căn chỉnh và phân bố, snapping, lưới, nhập/xuất SVG. Phần xương (bones) mới ở mức xem trước. Hỗ trợ pixel art đang trong giai đoạn thử nghiệm và dự kiến lên kho mã trong tuần này.

Về giấy phép, Klad là source-available, không phải mã nguồn mở. Ứng dụng theo PolyForm Internal Use License 1.0.0: miễn phí build và dùng cho cá nhân, và trong công ty có doanh thu dưới 500.000 euro trong năm tài chính gần nhất. Công ty đạt hoặc vượt ngưỡng này cần mua giấy phép cho từng người dùng. Tác giả dự định bán bản build sẵn trên itch.io và Steam theo cách Aseprite đã làm.

Góc nhìn

Klad phản ánh một hướng đi đang hình thành trong giới công cụ sáng tạo: thay vì để AI tạo ra kết quả cuối cùng, người ta biến đầu ra của AI thành dữ liệu có cấu trúc để con người tiếp tục chỉnh sửa. Với lập trình viên và các nhóm làm game indie, mô hình này đáng chú ý vì nó giải quyết đúng điểm đau — chi phí sửa chữa một tài nguyên do AI tạo ra.

Cách Klad tổ chức bản vẽ thành thư mục tệp văn bản và đưa vào git cho phép đội ngũ làm việc theo quy trình quen thuộc của lập trình: chia nhánh, review thay đổi, hoàn tác. Tuy nhiên, vì chương trình còn ở bản đầu tiên và chưa có bản build sẵn, các nhóm nên cân nhắc kỹ trước khi đưa vào quy trình sản xuất thực tế.

Nguồn: github.com (bài gốc ngày 11 tháng 11, 2026) · Quy trình biên tập

Chia sẻ:FacebookX