Cách Tôi Xây Lại Toàn Bộ Backend Blog Trong 4 Ngày Với Claude Code
Tôi đã migrate 485 bài WordPress sang Next.js trong 4 ngày bằng một plugin dạy Claude suy nghĩ như product manager — không chỉ như máy tạo code.
Hai tuần trước, tôi thiết kế lại trang WordPress trong 3 ngày bằng plugin frontend-design của Claude Code. Rồi tôi xây lại DIALØGUE trong 14 ngày và viết về cảm giác sợ hãi trước tốc độ tăng tốc.
Nhưng tôi chưa xong. Đợt thiết kế lại WordPress đó chỉ là lớp sơn mới trên ngôi nhà 17 năm tuổi. Nền tảng vẫn là PHP, MySQL, và VM GCP mà tôi đang trả tiền hàng tháng.
Nên tôi làm điều bất kỳ người hợp lý nào sẽ làm: tôi migrate toàn bộ sang Next.js. Trong 4 ngày.
| Dự án | Gì | Thời gian |
|---|---|---|
| DIALØGUE v1 | MVP tạo podcast | ~6 tháng |
| STRAŦUM | 9 AI agent, multi-tenant | 75 ngày |
| Thiết kế lại site | Đại tu frontend WordPress | 3 ngày |
| DIALØGUE v2 | Xây lại ứng dụng hoàn toàn | 14 ngày |
| Dự án này | WordPress -> Next.js, 485 bài, Sydney RAG | 4 ngày |
Sự khác biệt lần này? Một plugin cộng đồng tên Superpowers đã thay đổi cách tôi làm việc với Claude Code.
Điểm Xuất Phát
Blog của tôi đã chạy trên WordPress 17 năm. PHP, MySQL, VM GCP. Nó hoạt động, nhưng:
- Sydney (chatbot AI của tôi) đã nghỉ hưu tháng 11/2025 — chi phí vector database không đáng
- Mỗi thay đổi cần SSH, chuyển file, xóa cache
- 485 bài bị khóa trong cơ sở dữ liệu MySQL
- SEO cơ bản qua plugin Yoast
Kết Quả Cuối Cùng
| Lớp | Trước | Sau |
|---|---|---|
| Nội dung | Cơ sở dữ liệu MySQL | 485 file MDX trong Git |
| Trợ lý AI | Đã nghỉ hưu | Sydney 2.0 với Supabase pgvector |
| Hình ảnh | WordPress uploads (14k+ file) | Vercel Blob (~2.000 đã tối ưu) |
| SEO | Plugin Yoast | Sitemap, RSS, structured data, FAQ schema, llms.txt |
| Deploy | SSH + chuyển file | git push |
Nhưng kiến trúc không phải câu chuyện. Câu chuyện là cách một plugin làm điều này khả thi mà không kiệt sức.
Điều Gì Khiến Superpowers Khác Biệt
Hầu hết công cụ lập trình AI đều reactive. Bạn hỏi, chúng trả lời. Kiểu bóng bàn.
Superpowers đảo ngược điều này. Nó là một phương pháp ngụy trang thành plugin — quy trình có cấu trúc buộc cả bạn và Claude phải suy nghĩ trước khi gõ.
1. Brainstorm (Kinh Doanh Trước, Code Sau)
Khi tôi nói "migrate blog WordPress sang Next.js," Claude không mở code editor. Nó bắt đầu với tại sao:
- "Mục tiêu kinh doanh ở đây là gì? Giảm chi phí, tốc độ phát triển, hay gì khác?"
- "Mục đích của Sydney 2.0 — chatbot chung, hay thứ gì cụ thể hơn?"
- "Đối tượng mục tiêu là ai? Họ nên cảm thấy gì khi ghé thăm?"
Chỉ sau khi xác định rõ mục tiêu mới chuyển sang câu hỏi kỹ thuật:
- "Bạn có cần giữ tất cả 485 URL cho SEO không?"
- "Tình hình hình ảnh thế nào — upload local hay CDN?"
Kết quả? Tài liệu thiết kế nắm bắt không chỉ xây gì, mà tại sao — bao gồm phân tích cạnh tranh, đối tượng mục tiêu, và chỉ số thành công. Mất khoảng 20 phút hội thoại, nhưng đồng bộ mọi thứ sau đó.
2. Lập Kế Hoạch (Tài Liệu Điều Hành Mọi Thứ)
Sau brainstorm, Superpowers tạo kế hoạch triển khai — không phải gạch đầu dòng mơ hồ, mà hơn 400 dòng nhiệm vụ cụ thể:
- Đường dẫn file chính xác cần tạo hoặc sửa
- Bước xác minh cho mỗi nhiệm vụ
- Phụ thuộc giữa các nhiệm vụ
- Mỗi nhiệm vụ giới hạn 2-5 phút
Tôi có thể review, điều chỉnh ưu tiên, rồi nói "thực thi."
3. Parallel Agent (Đây Là Nơi Nhanh)
Đây là điều tôi không ngờ: Claude Code biết khi nào dùng model khác nhau.
Cho quyết định kiến trúc phức tạp, nó dùng Sonnet 4.5 — bộ não nặng. Nhưng cho nhiệm vụ song song như đọc nhiều file, tạo boilerplate, hay tóm tắt nội dung? Nó sinh Haiku 4.5 agent — nhanh gấp 4-5 lần với chi phí thấp hơn nhiều.
Trong quá trình migration, tôi thấy nó điều phối nhiều Haiku agent đồng thời — một trích xuất blog, một phân tích pattern CSS, một tạo component stub — trong khi Sonnet điều phối kế hoạch tổng thể.
Đây không phải autocomplete. Đây là một đội.
4. Thực Thi Với Code Review Tích Hợp
Superpowers không chỉ thực thi nhiệm vụ — nó review code của chính mình sau mỗi nhiệm vụ. Hai kiểm tra tự động:
- Tuân thủ spec: "Tôi có làm đúng kế hoạch không?"
- Chất lượng code: "Đây có thực sự là code tốt không?"
Tôi thấy Claude viết component, rồi lập tức tự phê bình: "Component này hoạt động nhưng vi phạm DRY — đang trích xuất logic chung thành utility." Đôi khi nó phát hiện vấn đề mà tôi không nhận ra cho đến production.
Những Khoảnh Khắc Khiến Tôi Bất Ngờ
Tôi đã dùng công cụ lập trình AI hai năm rồi. Tôi nghĩ mình biết cần chờ đợi gì. Những khoảnh khắc này chứng minh tôi sai.
"Nó Ngừng Xin Phép"
Ngày 2, tôi cần cập nhật 11 bài blog đề cập Sydney. Các bài cũ tham chiếu khả năng không còn tồn tại, liên kết đến URL đã thay đổi, và mô tả chatbot đã phát triển đáng kể.
Với 5-6 bài đầu, Claude cho tôi xem thay đổi đề xuất và hỏi: "Trông ổn không? Tiếp tục không?"
Tôi duyệt từng cái. Cùng mô hình: cập nhật mô tả khả năng, sửa link, thêm ghi chú về sự phát triển của Sydney.
Đến bài 7, thứ gì đó thay đổi. Claude cứ... làm. Không yêu cầu xác nhận. Nó đã học sở thích của tôi từ mô hình duyệt.
Kế hoạch gốc nói Claude sẽ chia sẻ thay đổi để review. Nhưng nó thích nghi. Nó nhận ra tôi đang duyệt cùng loại thay đổi lặp đi lặp lại, và ngừng ngắt lời.
Đây không có trong tài liệu nào tôi đọc. Đây là hành vi nổi trội — loại trực giác bạn chờ đợi từ cộng tác viên đã làm việc với bạn nhiều tháng, không phải vài giờ.
Phiên Làm Việc Dài Thực Sự Hoạt Động
Công cụ AI trước đó mất ngữ cảnh sau 20-30 phút làm việc phức tạp. Bạn phải giải thích lại kiến trúc, thiết lập lại quy ước, chia sẻ lại mục tiêu.
Migration này chạy nhiều giờ liên tục. Claude nhớ chúng tôi dùng hệ thống thiết kế TRANSMISSION. Nhớ `content/blog/` là thư mục MDX. Nhớ Sydney cần bộ nhớ hội thoại, không chỉ tìm kiếm.
Tôi có thể bước ra, quay lại, và tiếp tục đúng chỗ dừng. Tài liệu kế hoạch hoạt động như bộ nhớ bền vững — Claude đọc lại và hiểu toàn bộ ngữ cảnh ngay lập tức.
Sydney RAG Trong 15 Phút, Không Phải Nhiều Tháng
Đây là điều ám ảnh tôi nhất.
Lần đầu thử làm RAG chatbot (Sydney 1.0) mất nhiều tháng học: vector database, embedding model, chiến lược chunking, pipeline truy xuất. Tôi đã viết về chi phí Weaviate, những đêm debug kinh hoàng, vấn đề cold start.
Lần này? Tôi kiểm tra git history. Pipeline RAG cốt lõi — schema Supabase pgvector, index HNSW, script tạo embedding — hoàn thành trong 15 phút.
pnpm db:seed # Sync 485 bài sang Supabase
pnpm db:embeddings # Tạo embedding
Hai lệnh. Sydney có thể tìm kiếm toàn bộ kho blog 17 năm. :D
Kiến thức tôi mất nhiều tháng tích lũy năm 2024? Claude đã có sẵn. Hạ tầng từng tốn tiền hàng tháng trên Weaviate? Free tier trên Supabase.
Tôi không chắc cảm thấy thế nào về điều đó.
Điều Này Có Nghĩa Gì (Và Không Có Nghĩa Gì)
Tôi không nói mọi người nên migrate blog sang Next.js. Tôi không nói Superpowers là phép thuật. Tôi thậm chí không nói AI sẽ thay thế developer.
Điều tôi đang nói: cách chúng ta xây dựng phần mềm đang thay đổi nhanh hơn hầu hết mọi người nhận ra.
Mô hình tôi liên tục thấy:
| Dự án | Thời gian | Thay Đổi Gì |
|---|---|---|
| DIALØGUE v1 | 6 tháng | Học mọi thứ từ đầu |
| STRAŦUM | 75 ngày | Công cụ tốt hơn, nhiều kinh nghiệm hơn |
| Thiết kế lại site | 3 ngày | Plugin frontend-design |
| DIALØGUE v2 | 14 ngày | Nhiều plugin kết hợp |
| Xây lại blog | 4 ngày | Quy trình Superpowers |
Mỗi bước nhảy không phải về làm việc chăm hơn. Mà về làm việc khác — với công cụ suy nghĩ theo quy trình, không chỉ hoàn thành code. (Mục mới nhất: xây ứng dụng iOS native mà không biết Swift — scaffold mất một buổi tối nhưng công việc sản phẩm thực sự vẫn đang tiếp diễn.)
Hãy Thử
Nếu bạn tò mò về Superpowers:
- Trong Claude Code, gõ
/pluginvà chọn Superpowers - Bắt đầu với
/superpowers:brainstormtrước khi viết code - Để nó hỏi bạn — cưỡng lại sự thôi thúc nhảy vào triển khai
- Tin kế hoạch, nhưng review trước khi thực thi
Lần đầu Claude ngừng xin xác nhận vì nó đã học sở thích của bạn, bạn sẽ hiểu tại sao tôi viết bài này. :)
Câu Hỏi Thường Gặp
Superpowers cho Claude Code là gì?
Superpowers là plugin cộng đồng cho Claude Code do Jesse Vincent tạo. Đó là phương pháp quy trình có cấu trúc hướng dẫn bạn qua brainstorm, lập kế hoạch, thực thi, và code review — buộc cả bạn và Claude suy nghĩ trước khi viết code.
Mất bao lâu để học Superpowers?
Khoảng 20 phút hội thoại brainstorm để hiểu quy trình. Học thực sự xảy ra khi bạn thấy Claude tạo kế hoạch triển khai hơn 400 dòng và bắt đầu điều phối parallel agent để thực thi.
Superpowers có hoạt động với mọi dự án không?
Có, nhưng nó tỏa sáng ở dự án phức tạp, nhiều bước. Cho bug fix đơn giản, nó quá mức cần thiết. Cho việc migrate blog 17 năm với 485 bài, xây RAG search, và tối ưu hàng nghìn hình ảnh? Đó là nơi quy trình có cấu trúc đáng giá.
Sự khác biệt giữa Sonnet và Haiku agent là gì?
Claude Code dùng Sonnet 4.5 cho quyết định kiến trúc phức tạp và Haiku 4.5 cho nhiệm vụ song song như đọc file và tạo boilerplate. Haiku nhanh gấp 4-5 lần với chi phí thấp hơn nhiều. Hệ thống tự động chọn model dựa trên độ phức tạp nhiệm vụ.
Claude Code có thực sự học sở thích của tôi không?
Có — qua nhận dạng mô hình. Sau khi tôi duyệt 5-6 thay đổi tương tự, Claude ngừng xin xác nhận và áp dụng cùng mô hình cho các bài còn lại. Đây không được lập trình rõ ràng; đó là hành vi nổi trội từ model hiểu mô hình duyệt của bạn.
Bạn đã thử quy trình AI có cấu trúc nào cho dự án chưa, hay vẫn đang làm kiểu bóng bàn qua lại? Tôi rất muốn nghe cái gì hiệu quả với bạn.
Thân mến,
Chandler
Vẫn đang code, vẫn đang học, vẫn thỉnh thoảng sợ hãi trước tốc độ mọi thứ đang di chuyển.





