You are currently viewing tstack: bộ skill agent biến Claude Code thành dev tự merge PR

tstack: bộ skill agent biến Claude Code thành dev tự merge PR

Cái repo này không phải framework, không phải thư viện. Nó là một thư mục chứa các file skill cho agent, đúng nghĩa “dotfiles” cho AI coding assistant. Tác giả là t3dotgg (Theo, người làm T3 stack), mô tả ngắn gọn: “The agent skills I use every day. Works with Claude Code and Codex.”

Vấn đề nó giải quyết khá cụ thể: bạn dùng Claude Code hay Codex để viết code, nhưng mỗi lần muốn agent làm trọn quy trình PR thì phải gõ lại một đống prompt. tstack đóng gói mấy quy trình đó thành skill có tên, gọi bằng một câu lệnh ngắn. Ví dụ gõ “full send” là agent tự chạy hết từ chứng minh thay đổi đến merge PR.

Chín skill, mỗi cái một việc rõ ràng

Đọc bảng skill trong README là hiểu ngay triết lý: mỗi skill làm một việc, đặt tên theo đúng câu bạn sẽ nói với agent.

  • full-send: gõ “full send”, agent đưa thay đổi đến PR đã merge mà không cần ai trông. Nó chứng minh, review, tạo PR, theo dõi, merge.
  • full-stop: y như trên nhưng dừng lại khi PR sẵn sàng để bạn tự merge. Cái này thực tế hơn nếu bạn không muốn agent tự bấm nút cuối.
  • council: lấy review từ ba model của ba provider khác nhau, lặp đến khi chúng đồng ý.
  • sol-loop: review thay đổi với GPT Sol trong vòng lặp đến khi cả hai agent thống nhất.
  • file-pr: tạo PR ngắn, mở đầu bằng vấn đề chứ không phải bản liệt kê thay đổi.
  • takeover: hoàn thành PR, branch hoặc thread agent của người khác, vẫn giữ credit cho họ.
  • babysit-pr: theo dõi PR qua CI và review bot, sửa các finding thật.
  • modernize: rebase PR cũ và quyết định xem nó còn nên tồn tại không.
  • leaving-pr-comments: format comment mà agent đăng thay bạn (chạy tự động).

Điểm hay là các skill gọi nhau. full-send dùng sol-loop, file-pr, babysit-pr. full-stop dùng full-send. Nên nếu chỉ copy một file là hỏng, phải cài đủ bộ theo cây phụ thuộc. README ghi rõ cây này, hơi rối nhưng cần thiết.

Vì sao 836 sao trong một ngày

Repo tạo ngày 24/10/2026, cập nhật ngày 25/10/2026. Tức là nó mới ra và đã hút 836 sao chỉ trong khoảng một ngày. Con số đó nói lên hai thứ: cộng đồng dev đang rất đói mấy quy trình agent này, và tác giả có sẵn lượng người theo dõi.

Điểm khác biệt so với mấy repo “awesome prompts” đầy rẫy: đây là skill chạy thật, có script Python đi kèm (ngôn ngữ chính của repo là Python, chủ yếu cho script pr-wait của babysit-pr), và tác giả nói thẳng đây là bộ anh ta dùng hàng ngày, đã dọn lại để người khác xài được. Không phải demo cho đẹp.

Cái tên “tstack” cũng gợi liên tưởng đến T3 stack, nhưng đây là chuyện khác hoàn toàn. Đừng nhầm.

Cài đặt và chạy thử

Không có package manager, không có build. Chỉ cần clone rồi copy:

git clone https://github.com/t3dotgg/tstack
cp -R tstack/skills/* ~/.claude/skills/ # Claude Code
cp -R tstack/skills/* ~/.codex/skills/ # Codex

Yêu cầu môi trường:

  • GitHub CLI (gh) đã authenticate.
  • python3 cho script pr-wait của babysit-pr.
  • council và sol-loop cần subagent chạy model của provider khác. T3 Code làm việc này bằng delegate_task. Nếu không dùng T3 Code thì cần một harness chạy được mấy model đó.

Lưu ý cái thứ ba: nếu bạn chỉ có Claude Code thuần, council và sol-loop sẽ không chạy đúng như quảng cáo. Mấy skill còn lại thì ổn vì README nói chúng fallback về tool gốc khi không có tính năng T3 Code.

Ai nên dùng, dùng thế nào

Hợp nhất với người đã quen quy trình PR trên GitHub và đang để agent viết phần lớn code. Cụ thể: bạn nhờ Claude Code sửa bug, xong gõ “full stop”, agent tự tạo PR, theo dõi CI, sửa mấy comment của review bot, rồi dừng lại chờ bạn merge. Tiết kiệm được kha khá thao tác chuyển tab.

takeover là cái tôi thấy thú vị nhất về mặt ý tưởng. Làm việc nhóm kiểu async, đồng nghiệp nghỉ phép giữa chừng, PR dở dang, agent vào finish hộ mà vẫn ghi tên người kia. Nghe hay, nhưng cũng là chỗ dễ sinh chuyện nếu agent hiểu sai ngữ cảnh branch.

modernize thì đúng kiểu dọn nợ kỹ thuật: rebase PR cũ, xét xem còn đáng giữ không. Ai từng ngồi nhìn đống PR mở từ nửa năm trước sẽ thấy cái này hữu dụng.

Ưu và nhược

Ưu điểm rõ: miễn phí, license MIT, sửa thoải mái. README ngắn nhưng đủ, bảng skill rõ ràng, có ghi cây phụ thuộc giữa các skill. Tác giả còn gợi ý đặt cấu hình cá nhân (ví dụ model nào ngồi trong council) vào CLAUDE.md hoặc AGENTS.md để update skill không mất setting. Chi tiết nhỏ này cho thấy người viết đã dùng thật.

Nhược điểm: đây là repo một ngày tuổi, 836 sao nhưng chưa có gì chứng minh nó bền. Chưa có test, chưa có issue history dài, documentation nằm gọn trong một file README. Chuyện skill gọi skill nghĩa là bạn phải cài cả cụm, và nếu một skill hỏng thì mấy cái phía trên cũng hỏng theo. Phần council với sol-loop phụ thuộc vào khả năng chạy model đa provider, không phải ai cũng có sẵn.

Cũng nên đọc kỹ trước khi dùng full-send. Skill này merge PR mà không có người trông. Trên repo cá nhân thì ổn, trên repo công ty có branch protection hay quy trình review bắt buộc thì nên xài full-stop thay vì để agent tự bấm merge. Tác giả tách hai skill ra chính vì lý do đó.

So với việc tự viết prompt cho agent thì tstack tiết kiệm thời gian setup, nhưng không có gì thần kỳ. Nó là tập hợp prompt và script đã được đóng gói cẩn thận. Giá trị nằm ở chỗ tác giả đã trả giá bằng thời gian dùng thật để biết quy trình nào đáng đóng gói.

Nếu bạn đang chạy Claude Code hàng ngày và mỏi tay gõ lại mấy câu lệnh PR, clone về nghịch thử full-stop với babysit-pr trước. Hai cái đó ít rủi ro nhất. Còn full-send thì để dành cho repo cá nhân. Repo ở đây: t3dotgg/tstack.

Câu hỏi thường gặp

tstack có phải là framework hay thư viện không?

Không. tstack chỉ là một thư mục chứa các file skill cho agent, đúng nghĩa “dotfiles” cho AI coding assistant. Nó không có package manager cũng không có build, bạn chỉ cần clone repo rồi copy các file skill vào ~/.claude/skills/ hoặc ~/.codex/skills/.

full-send và full-stop khác nhau thế nào?

Cả hai đều đưa thay đổi của bạn đến PR, nhưng full-send chạy hết quy trình đến khi PR được merge mà không cần ai trông, còn full-stop dừng lại khi PR sẵn sàng để bạn tự bấm merge. Trên repo công ty có branch protection hay quy trình review bắt buộc thì nên dùng full-stop thay vì để agent tự merge.

Dùng tstack với Claude Code thuần có chạy được không?

Được, nhưng không đầy đủ. council và sol-loop cần subagent chạy model của provider khác (T3 Code làm việc này bằng delegate_task), nên nếu chỉ có Claude Code thuần thì hai skill này sẽ không chạy đúng như quảng cáo. Các skill còn lại vẫn ổn vì chúng fallback về tool gốc khi không có tính năng T3 Code.

Chia sẻ bài này

TelegramXFacebookZalo
Đăng ngày 26/10/2026 · Cập nhật 27/10/2026
Giang Na
Về tác giả: Giang Na
Người lập ra blog từ 2015 với những bài về Blogspot. Giờ tập trung vào cách đưa AI vào việc thường ngày, theo hướng thực dụng và dễ làm theo.

Giang Na

Người lập ra blog từ 2015 với những bài về Blogspot. Giờ tập trung vào cách đưa AI vào việc thường ngày, theo hướng thực dụng và dễ làm theo.