Góc chia sẻ

ai-job-search: bộ công cụ AI hỗ trợ tìm việc chạy trên Claude Code

ai-job-search là framework mã nguồn mở trên Claude Code giúp bạn đánh giá tin tuyển dụng, viết CV, thư xin việc bằng LaTeX và chuẩn bị phỏng vấn ngay trên máy của mình.

Cập nhật lúc

ai-job-search: bộ công cụ AI hỗ trợ tìm việc chạy trên Claude Code

ai-job-search là gì

ai-job-search của tác giả Mads Lorentzen là một framework hỗ trợ ứng tuyển việc làm, xây dựng trên Claude Code. Ý tưởng rất gọn: bạn lấy kho mã về, điền hồ sơ cá nhân, rồi để Claude đánh giá tin tuyển dụng, chỉnh CV cho từng vị trí, viết thư xin việc và giúp bạn chuẩn bị phỏng vấn.

Khẩu hiệu của dự án là "cuộc tìm việc chạy trên máy của bạn". Dữ liệu hồ sơ nằm trong các tệp của chính bạn. Dự án phù hợp với lập trình viên và những người dùng quen dòng lệnh, đang muốn tự động hóa phần việc lặp lại khi săn việc.

Dự án viết bằng Python, dùng giấy phép MIT, phiên bản mới nhất là v1.7.3 và đang có hơn 57.000 sao trên GitHub.

Câu chuyện phía sau dự án

Tác giả vốn là nhà địa vật lý. Khi bị cắt giảm vị trí vào cuối năm 2025, anh tự xây framework này để phục vụ chính cuộc tìm việc của mình, dùng hằng tuần các lệnh /scrape, /apply và /interview. Theo README, kết quả là 69 hồ sơ được chỉnh riêng, 20 buổi phỏng vấn vòng đầu và một hợp đồng. Anh bắt đầu làm kỹ sư AI vào tháng 6 năm 2026.

README cũng nói rõ đây là dự án độc lập, không liên kết với Anthropic, và không có tiền mã hóa hay token nào liên quan. Mọi lời mời kiểu đó đều nên xem là lừa đảo.

Các tính năng chính

Quy trình cốt lõi gồm ba lệnh:

  • /setup: tạo hồ sơ. Bạn có thể cho nó đọc thư mục documents/ (CV PDF, bản xuất LinkedIn, bằng cấp, thư giới thiệu), dán một CV vào khung chat, hoặc trả lời một buổi phỏng vấn.
  • /scrape: tìm việc trên nhiều cổng tuyển dụng, loại trùng lặp và sắp xếp theo mức độ phù hợp.
  • /apply: đánh giá độ phù hợp, soạn CV và thư xin việc bằng LaTeX, cho một agent thứ hai phản biện, chỉnh sửa rồi xuất bản cuối.

Quy trình soạn thảo và phản biện

Điểm đáng chú ý nhất là mô hình drafter-reviewer. Một agent viết bản nháp, một agent Claude khác với ngữ cảnh mới sẽ tìm hiểu công ty và góp ý. Sau đó bản nháp được sửa lại. Cách này giúp bắt các từ khóa bị sót, cách diễn đạt yếu hoặc chung chung.

Kiểm tra PDF và ATS

Lệnh /apply biên dịch và đọc lại PDF thật: CV dùng lualatex, thư xin việc dùng xelatex. Nó lặp lại cho tới khi CV đúng 2 trang, thư xin việc đúng 1 trang và bố cục sạch. Tiếp theo, nó trích lớp văn bản của PDF để kiểm tra như một hệ thống ATS sẽ đọc: thông tin liên hệ, thứ tự đọc và độ phủ từ khóa. Từ khóa nào hồ sơ không thực sự có thì được ghi nhận là khoảng trống, không bị nhồi vào.

README nhấn mạnh mọi nội dung trong CV và thư đều được đối chiếu với hồ sơ thật, hệ thống không bịa kỹ năng hay kinh nghiệm.

Các lệnh mở rộng

  • /rank: chấm điểm hàng loạt các tin vừa tìm được và trả về danh sách rút gọn.
  • /interview: tạo bộ tài liệu chuẩn bị phỏng vấn theo từng vòng, gợi ý câu hỏi gắn với ví dụ STAR và có thể phỏng vấn thử.
  • /outcome: ghi lại kết quả từng hồ sơ, lưu trữ tài liệu đã nộp, nhắc theo dõi hồ sơ im lặng và soạn nháp thư hỏi thăm (chỉ soạn, không tự gửi).
  • /gmail-sync và /notion-sync: đọc tín hiệu trạng thái từ Gmail để bạn duyệt, hoặc đẩy một bản xem chỉ đọc sang Notion.
  • /expand, /upskill, /html-report: làm giàu hồ sơ từ các nguồn công khai bạn đã liên kết, phân tích khoảng trống kỹ năng, và tạo dashboard HTML chạy offline.
  • /add-template và /add-portal: thêm mẫu CV riêng (LaTeX, Typst...) hoặc tạo kỹ năng tìm việc cho cổng tuyển dụng ở thị trường của bạn.

Dùng ở đâu cũng được không

Quy trình cốt lõi không phụ thuộc ngôn ngữ hay quốc gia. Tuy vậy, các công cụ tìm việc đi kèm được viết cho thị trường Đan Mạch (Jobindex, Jobnet, Akademikernes Jobbank, Jobdanmark). Với người dùng ở nơi khác, dự án có sẵn hai lựa chọn không phụ thuộc quốc gia: linkedin-search (chỉ dành cho mục đích cá nhân, nên giữ lưu lượng thấp) và freehire-search cho việc làm công nghệ. Bạn cũng có thể dùng /add-portal để tạo công cụ cho trang tuyển dụng địa phương.

Trường hợp sử dụng thực tế

  • Bạn đang nộp nhiều hồ sơ và mệt vì phải sửa CV, viết thư cho từng vị trí.
  • Bạn muốn theo dõi toàn bộ quá trình ứng tuyển, từ lúc nộp tới lúc có kết quả.
  • Bạn muốn khám phá hướng nghề nghiệp mới dựa trên toàn bộ kinh nghiệm, không chỉ chức danh.
  • Bạn cần chuẩn bị phỏng vấn có hệ thống với ví dụ STAR của chính mình.

Bắt đầu như thế nào

Bạn cần chuẩn bị: Claude Code (không có gói miễn phí, cần gói Claude Pro/Max/Team hoặc tín dụng API), Python 3.10 trở lên, Bun, và một bản LaTeX có lualatex và xelatex như TeX Live, TinyTeX hoặc MiKTeX. Có thể cài thêm pypdf cho bước kiểm tra ATS.

  1. Lấy mã nguồn về máy:
    gh repo fork MadsLorentzen/ai-job-search --clone
    cd ai-job-search
  2. Cài công cụ tìm việc. Trên Windows dùng lệnh:
    python tools\install_portal_clis.py
  3. Mở Claude Code và tạo hồ sơ:
    claude
    /setup
  4. Tìm việc với lệnh /scrape, có thể dùng thêm /rank khi kết quả quá nhiều.
  5. Ứng tuyển bằng /apply kèm đường dẫn tin tuyển dụng, hoặc dán trực tiếp nội dung tin nếu trang chặn truy cập tự động.

Lưu ý quan trọng

Bản fork của một kho công khai luôn là công khai, trong khi /setup ghi dữ liệu cá nhân (tên, liên hệ, lịch sử làm việc, mức lương mong muốn) vào các tệp được theo dõi bởi Git.

Vì vậy, nếu dùng cho việc tìm việc của riêng bạn, tác giả khuyên tạo một kho riêng tư và đặt kho gốc làm upstream, chỉ fork khi muốn đóng góp. Hướng dẫn chi tiết nằm trong SETUP.md, mục 8.

Tin tuyển dụng được xử lý như dữ liệu không tin cậy và phải qua một bước kiểm tra tính toàn vẹn (văn bản ẩn, ký tự vô hình, dòng trông như câu lệnh, liên kết ẩn) trước khi đánh giá. Dù vậy, cơ chế bảo vệ chỉ ở mức chỉ dẫn, không phải sandbox. Hãy đọc lại những gì được tạo ra trước khi gửi. Khi mượn công cụ tìm việc từ fork khác, bạn nên tự đọc toàn bộ mã trước khi chạy.

Dự án cập nhật nhanh. Tác giả khuyên cập nhật bản của bạn theo các bản phát hành có gắn thẻ thay vì kéo thẳng nhánh master, và dùng tools/check_upstream_updates.py để xem trước tệp cá nhân nào sẽ bị ảnh hưởng.

Tác giả cũng lưu ý: chất lượng đầu ra phụ thuộc nhiều nhất vào độ chi tiết của hồ sơ. Hồ sơ sơ sài sẽ cho kết quả chung chung.

Kết luận

ai-job-search là một ví dụ thú vị về cách biến một agent lập trình thành trợ lý tìm việc hoàn chỉnh, có kiểm tra PDF, kiểm tra ATS và nguyên tắc không bịa thông tin. Nếu bạn đã dùng Claude Code và đang tìm việc, đây là dự án đáng thử. Xem chi tiết tại kho GitHub MadsLorentzen/ai-job-search.