Skip to content
  • Home
  • Code
  • iOS & Swift
  • Combine
  • RxSwift
  • SwiftUI
  • Flutter & Dart
  • Tutorials
  • Art
  • Blog
Fx Studio
  • Home
  • Code
  • iOS & Swift
  • Combine
  • RxSwift
  • SwiftUI
  • Flutter & Dart
  • Tutorials
  • Art
  • Blog
Tui Học AI
Written by chuotfx on July 6, 2026

Tui Học AI – Bài 5 – “Tôi xài AI lẻ tẻ” → “Tôi đóng gói AI thành sản phẩm dùng chung”

Blog

Contents

  • 1. “Anh review PR kiểu gì mà nhanh vậy?”
  • 2. Không phải dùng AI giỏi hơn, là đóng gói lại cho người khác dùng
  • 3. 3 dấu hiệu bạn chưa chuyển
    • 1. Prompt xịn nhất của bạn đang nằm trong file note cá nhân
    • 2. Task quen thuộc, bạn vẫn gõ prompt lại từ đầu
    • 3. Cái gì bạn cũng muốn dựng thành agent
  • 4. 3 dấu hiệu bạn đã chuyển
    • 1. Đồ của bạn có người khác đang dùng thật
    • 2. Bạn gọi một phát là chạy, không lục note
    • 3. Bạn nói về hiệu quả bằng số, không bằng cảm giác
  • 5. Bài tập tuần này
  • Tạm kết

Một bạn dev mới hỏi tui: “Anh review PR kiểu gì mà mười phút xong vậy?” Câu trả lời không nằm ở prompt. Nằm ở một file tui viết từ sáu tháng trước. Bài thứ năm trong series.

Đọc bài viết trước tại: Tui Học AI – Bài 4 – “Tôi dùng AI thủ công” → “Tôi xây hạ tầng để AI tự chạy”

1. “Anh review PR kiểu gì mà nhanh vậy?”

Tháng trước team tui có một bạn dev mới vào. Sáng thứ Năm, hai anh em cùng nhận việc review PR trước khi merge đợt release. Bạn ngồi bàn kế bên, mở diff, đọc từng file, gõ comment tay. Một cái PR chừng ba trăm dòng, bạn ngồi hết bốn mươi lăm phút.

Tui mở PR của mình, gõ một lệnh: /review-pr, dán link vào. Ngồi đọc lại cái checklist nó trả ra, sửa vài chỗ, gửi. Mười phút.

Bạn nhìn qua màn hình tui, hỏi đúng một câu: “Anh review kiểu gì mà nhanh vậy? Prompt anh xịn lắm hả, cho em xin với.”

Tui đưa bạn cái bạn không ngờ. Không phải một câu prompt. Là một file tên review-pr nằm trong repo chung của team, ai gõ lệnh cũng chạy, chạy ra cùng một kiểu checklist. Trong file ghi rõ nó dùng cho loại PR nào, cần đưa vào cái gì, trả ra cái gì. Bạn cài xong, chạy thử trên PR kế tiếp của bạn. Cũng ra checklist y vậy.

Sáu tháng trước tui cũng review tay y như bạn. Cái khác giữa tui của hai thời điểm không phải trình prompt. Là một lần tui chịu ngồi xuống, gói cái quy trình trong đầu mình thành một thứ có tên, để nó thôi là của riêng tui.

Đó là bước chuyển của bài này.

Tui học AI

2. Không phải dùng AI giỏi hơn, là đóng gói lại cho người khác dùng

“Tôi xài AI lẻ tẻ” → “Tôi đóng gói AI thành sản phẩm dùng chung”

Bốn bậc trước, dù bạn leo cao tới đâu, mọi thứ vẫn xoay quanh một người: bạn. Bạn prompt giỏi hơn, quản context chặt hơn, dựng được đường ống cho AI tự chạy. Nhưng tất cả nằm trong máy bạn, trong đầu bạn. Bạn nghỉ phép một tuần, mọi thứ đứng theo.

Bậc năm đổi câu hỏi. Không còn là “tui dùng AI hiệu quả chưa”. Là “cái hiệu quả đó có sống được khi không có tui không”.

Trước, mỗi lần dùng AI là một lần lẻ tẻ. Có việc, mở chat, gõ, xong, đóng. Prompt hay thì lưu vào file note cá nhân, lần sau lục lại. Kinh nghiệm tích trong đầu, tăng theo thời gian, nhưng chỉ tăng cho một người.

Sau, những việc lặp lại được đóng thành gói. Mỗi gói có tên, có mô tả khi nào dùng, cần đưa gì vào, sẽ nhận gì ra. Gói nằm ở chỗ chung, có cách gọi nhanh, có ghi chú phiên bản. Đồng nghiệp dùng mà không cần nhắn hỏi bạn. Kinh nghiệm của bạn thành đồ dùng của team.

Có một câu test gọn cho bậc này, tui hay tự hỏi: nếu mai tui nghỉ việc, mấy thứ AI tui đang xài, team còn chạy được bao nhiêu phần? Câu trả lời là số phần trăm bạn đã thật sự lên bậc năm.

Vậy soi cụ thể thế nào? Ba dấu hiệu.

3. 3 dấu hiệu bạn chưa chuyển

1. Prompt xịn nhất của bạn đang nằm trong file note cá nhân

Tui từng có một file note chứa hơn ba chục prompt tui gom suốt một năm. Prompt review code, prompt viết test, prompt sinh tài liệu. Tui quý cái file đó lắm, coi nó là tài sản. Đến đợt tui nghỉ phép một tuần, có bạn trong team nhắn: “Anh gửi em cái prompt review hôm bữa với.” Tui lục điện thoại, dán qua chat. Bạn chạy, ra kết quả khác hẳn của tui, vì thiếu ngữ cảnh tui hay dán kèm mà tui quên dặn.

Lúc đó tui mới hiểu mình sai ở đâu. Ba chục prompt đó không phải tài sản. Nó là bí kíp cá nhân, và bí kíp cá nhân thì chết theo trí nhớ của một người. Tài sản là thứ người khác cầm lên dùng được mà không cần chủ nhân đứng kế bên giải thích.

2. Task quen thuộc, bạn vẫn gõ prompt lại từ đầu

Có những việc bạn làm với AI ba bốn lần mỗi tuần. Viết mô tả PR. Sinh test cho một hàm. Tóm tắt log lỗi. Lần nào bạn cũng mở chat, gõ lại từ đầu, mỗi lần nhớ tới đâu gõ tới đó.

Hệ quả là chất lượng output phụ thuộc trí nhớ của bạn hôm đó. Hôm tỉnh táo, bạn nhớ dặn đủ ràng buộc, output ngon. Hôm mệt, bạn quên một ý, output hụt, bạn lại tốn thêm mấy lượt sửa. Cùng một việc, mười lần làm ra mười kết quả khác nhau. Đó là dấu hiệu quy trình vẫn nằm trong đầu, chưa nằm trong gói.

3. Cái gì bạn cũng muốn dựng thành agent

Dấu hiệu này ngược đời một chút: chưa chuyển không chỉ là làm ít quá, mà còn là làm lố quá. Nghe hai chữ “agent” hoài, có bạn dựng hẳn một con agent tự chủ chỉ để làm một việc format lại commit message. Con agent tự quyết lung tung, mỗi lần chạy ra một kiểu, debug mệt hơn làm tay.

Vấn đề nằm ở chỗ chưa phân biệt được ba món khác nhau. Skill là công thức nấu ăn: việc lặp lại, phạm vi hẹp, đầu vào đầu ra rõ, gọi là chạy, lần nào chạy cũng giống lần nào. Agent là người phụ bếp được tin: giao mục tiêu, nó tự chọn tool, tự quyết bước kế tiếp. Workflow là cả dây chuyền bếp: nối nhiều Skill và Agent lại theo một luồng định sẵn. Việc chỉ cần công thức mà bạn thuê nguyên phụ bếp, đó không phải lên bậc.

Đó là over-engineer.

Tui Học AI

4. 3 dấu hiệu bạn đã chuyển

1. Đồ của bạn có người khác đang dùng thật

Không phải “tui có share prompt cho team rồi”. Là có ít nhất một gói bạn làm ra mà đồng nghiệp đang gọi hằng tuần, không cần nhắn hỏi bạn cách dùng. Muốn vậy, gói phải tự nói được nó là gì. Đây là bộ xương một Skill thật của tui, bạn nhìn phát hiểu liền:

# SKILL: review-pr

## Khi nào dùng
Review PR backend dưới 400 dòng thay đổi.
Không dùng cho PR migration database.

## Đầu vào
- Link PR hoặc nội dung diff
- File convention của repo (nếu có)

## Quy trình
1. Đọc diff, gom thay đổi theo nhóm: logic, style, test.
2. Soi 4 nhóm lỗi: null check, error handling,
   N+1 query, tên biến lệch convention.
3. Mỗi lỗi ghi rõ file, dòng, lý do, gợi ý sửa.

## Đầu ra
Checklist markdown theo template team.
Mỗi mục gắn nhãn: blocker / nên sửa / góp ý.

Bốn phần. Khi nào dùng, đầu vào, quy trình, đầu ra. Người mới đọc xong biết ngay cái này dùng cho việc gì và không dùng cho việc gì. Cái dòng “không dùng cho PR migration” quan trọng ngang phần còn lại: gói tốt là gói biết giới hạn của mình.

2. Bạn gọi một phát là chạy, không lục note

Gói đã có rồi thì bước kế là gọi cho nhanh. Người ở bậc năm không mở file note, không copy một cục prompt năm trăm chữ dán vào chat. Họ gõ /review-pr, gõ /gen-docs, hoặc một trigger tương đương trong tool đang dùng. Ba giây, quy trình đầy đủ chạy.

Chuyện này nghe như tiểu tiết mà không phải. Copy-paste một cục prompt dài có hai cái dở. Một, mỗi lần dán là một lần có thể dán thiếu, dán bản cũ. Hai, đồng nghiệp nhìn vào không biết cục chữ đó từ đâu ra, bản nào mới nhất. Gắn vào một lệnh gọi được thì cả team luôn chạy cùng một phiên bản, và phiên bản đó nằm trong repo, có lịch sử chỉnh sửa đàng hoàng.

3. Bạn nói về hiệu quả bằng số, không bằng cảm giác

Đây là dấu hiệu đắt nhất, vì nó tách người làm sản phẩm khỏi người làm cho vui. “Cảm giác nhanh hơn nhiều” không phải là số. “Review một PR từ trung bình bốn mươi lăm phút xuống còn mười lăm” là số.

Kể bạn nghe cái lần tui buộc phải học dấu hiệu này. Hồi mới đem review-pr cho team dùng, tech lead hỏi tui một câu rất tỉnh: “Nó giúp được bao nhiêu, có số không em?” Tui đứng hình, vì tui chỉ có cảm giác. Thế là ba tuần sau đó tui ngồi đếm. Đếm thời gian review trung bình trước và sau. Đếm bao nhiêu comment AI đề xuất được giữ lại trong review thật, bao nhiêu bị bỏ. Ra hai con số: thời gian review giảm còn khoảng một phần ba, và cứ mười comment nó đề xuất thì team giữ khoảng bảy. Con số bảy phần mười đó còn quý hơn lời khen, vì nó chỉ luôn chỗ cần sửa: ba comment bị bỏ rơi vào đúng hai nhóm lỗi, tui cắt bớt hai nhóm đó khỏi quy trình, tỷ lệ giữ tăng lên. Không có số thì không có vòng cải thiện đó. Chỉ có cảm giác, và cảm giác thì không maintain được.

5. Bài tập tuần này

Ba mươi phút, một việc duy nhất.

Nghĩ lại tuần vừa rồi, chọn ra một việc bạn nhờ AI làm từ ba lần trở lên. Việc gì cũng được: viết mô tả PR, sinh test, tóm log lỗi.

Đóng gói nó thành một file SKILL.md theo đúng bốn phần bạn thấy ở trên. Khi nào dùng, và khi nào đừng dùng. Đầu vào cần gì. Quy trình mấy bước. Đầu ra dạng gì. Viết như thể người đọc chưa từng thấy bạn dùng AI bao giờ.

Xong, gửi file cho đúng một đồng nghiệp, kèm một câu: “Ông chạy thử cái này giùm tui, đừng hỏi tui gì hết, kẹt chỗ nào ghi lại chỗ đó.”

Cái cần có sau khi làm: một file SKILL.md nằm ở chỗ team lấy được, và một phản hồi thật từ người đã chạy thử. Tuần sau hỏi lại bạn đó một câu thôi: “Có dùng lại lần hai không?” Nếu có, bạn vừa tạo ra tài sản đầu tiên. Nếu không, hỏi vì sao, rồi sửa gói. Câu “vì sao không dùng lại” chính là bài học bậc năm đắt nhất mà không sách nào dạy được.

Tui Học AI

Tạm kết

Nếu bài này chỉ giữ lại một câu: kinh nghiệm dùng AI của bạn chỉ thành tài sản khi người khác dùng được nó mà không cần bạn đứng kế bên.

Prompt xịn để trong note cá nhân là bí kíp, không phải tài sản. Việc lặp lại thì đóng gói, gắn lệnh gọi. Và hiệu quả thì đo bằng số, vì số mới cho bạn vòng cải thiện.

Nhớ bạn dev mới đầu bài không? Hai tuần sau bạn gửi tui một file gen-test.md bạn tự đóng gói, kèm câu: “Em đưa cho bạn ngồi cạnh chạy thử rồi, nó dùng lại lần hai luôn anh.” Bạn vào team sau tui ba năm. Nhưng khoảnh khắc đó, bạn đã đứng ở bậc năm rồi.

Hết bậc năm, bạn có trong tay những gói chạy được và người thật đang dùng. Bậc kế tiếp là một câu chuyện khác hẳn: thôi làm việc với một AI, bắt đầu điều phối nhiều AI chạy song song, như dẫn một dàn nhạc.

Cảm ơn bạn đã đọc bài viết này!

FacebookTweetPinYummlyLinkedInPrintEmailShares0

Related Posts:

  • Tui Học AI
    Tui Học AI – Bài 2 – "Tôi ra lệnh cho AI" → "Tôi…
  • Tui Học AI
    Tui Học AI – Bài 1 – "AI trả lời tôi" → "Tôi kiểm…
  • Tui Học AI
    Tui Học AI – Bài 4 – "Tôi dùng AI thủ công" → "Tôi…
  • Tui Học AI
    Tui Học AI – Bài 3 – "Tôi hỏi AI" → "Tôi quản lý mọi…
Tags: AI, blog, TuiHocAI
Written by chuotfx

Hãy ngồi xuống, uống miếng bánh và ăn miếng trà. Chúng ta cùng nhau đàm đạo về đời, về code nhóe!

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Donate – Buy me a coffee!

Fan page

Fx Studio

Tags

Actor Advanced Swift Agentic Coding for iOS AI AntiGravity api Apple Intelligence basic ios tutorial blog ci/cd closure collectionview combine concurrency Context Engineering crashlytics dart dart basic dart tour Declarative delegate design pattern firebase flavor flutter GCD Google Stitch iOS MVVM optional Prompt engineering Prompt for Coding protocol Python rxswift Swift Swift 5.5 SwiftData SwiftUI SwiftUI Notes tableview testing TuiHocAI UI/UX unittest

Recent Posts

  • Tui Học AI – Bài 5 – “Tôi xài AI lẻ tẻ” → “Tôi đóng gói AI thành sản phẩm dùng chung”
  • Prompt Engineering đang được Context Engineering hấp thụ
  • Bắt đầu với Loop Engineering
  • Tui Học AI – Bài 4 – “Tôi dùng AI thủ công” → “Tôi xây hạ tầng để AI tự chạy”
  • Guided Generation – Khi Swift type trở thành hợp đồng với model
  • Foundation Models và “Hello World” trong 10 phút
  • Skill Boundary (P/L/R): dạy kỹ năng biết khi nào nên dừng
  • Context – Cung cấp ít hơn để đạt kết quả tốt hơn
  • Tui Học AI – Bài 3 – “Tôi hỏi AI” → “Tôi quản lý mọi thứ AI nhìn thấy”
  • Đừng xoá hàm này (phần 1)

You may also like:

  • Tui Học AI – Bài 2 – "Tôi ra lệnh cho AI" → "Tôi…
    Tui Học AI
  • Tui Học AI – Bài 4 – "Tôi dùng AI thủ công" → "Tôi…
    Tui Học AI
  • Tui Học AI - Bài 0 - Bạn đang dùng AI ở level nào?…
    TuiHocAI
  • Tui Học AI – Bài 3 – "Tôi hỏi AI" → "Tôi quản lý mọi…
    Tui Học AI
  • Tui Học AI – Bài 1 – "AI trả lời tôi" → "Tôi kiểm…
    Tui Học AI

Archives

  • July 2026 (4)
  • June 2026 (13)
  • May 2026 (2)
  • April 2026 (5)
  • March 2026 (5)
  • February 2026 (1)
  • January 2026 (10)
  • December 2025 (1)
  • October 2025 (1)
  • September 2025 (4)
  • August 2025 (5)
  • July 2025 (10)
  • June 2025 (1)
  • May 2025 (2)
  • April 2025 (1)
  • March 2025 (8)
  • January 2025 (7)
  • December 2024 (4)
  • September 2024 (1)
  • July 2024 (1)
  • June 2024 (1)
  • May 2024 (4)
  • April 2024 (2)
  • March 2024 (5)
  • January 2024 (4)
  • February 2023 (1)
  • January 2023 (2)
  • November 2022 (2)
  • October 2022 (1)
  • September 2022 (5)
  • August 2022 (6)
  • July 2022 (7)
  • June 2022 (8)
  • May 2022 (5)
  • April 2022 (1)
  • March 2022 (3)
  • February 2022 (5)
  • January 2022 (4)
  • December 2021 (6)
  • November 2021 (8)
  • October 2021 (8)
  • September 2021 (8)
  • August 2021 (8)
  • July 2021 (9)
  • June 2021 (8)
  • May 2021 (7)
  • April 2021 (11)
  • March 2021 (12)
  • February 2021 (3)
  • January 2021 (3)
  • December 2020 (3)
  • November 2020 (9)
  • October 2020 (7)
  • September 2020 (17)
  • August 2020 (1)
  • July 2020 (3)
  • June 2020 (1)
  • May 2020 (2)
  • April 2020 (3)
  • March 2020 (20)
  • February 2020 (5)
  • January 2020 (2)
  • December 2019 (12)
  • November 2019 (12)
  • October 2019 (19)
  • September 2019 (17)
  • August 2019 (10)

About me

Education, Mini Game, Digital Art & Life of coders
Contacts:
[email protected]

Fx Studio

  • Home
  • About me
  • Contact us
  • Mail
  • Privacy Policy
  • Donate
  • Sitemap

Categories

  • Art (1)
  • Blog (99)
  • Code (11)
  • Combine (22)
  • Flutter & Dart (24)
  • iOS & Swift (106)
  • RxSwift (37)
  • SwiftUI (80)
  • Tutorials (111)

Newsletter

Stay up to date with our latest news and posts.
Loading

    Copyright © 2026 Fx Studio - All rights reserved.