WP Trend Watcher: Dùng AI Local Tóm Tắt Tin WordPress Mỗi Tuần — Hướng Dẫn Cài Đặt Từ A Đến Z

Câu trả lời nhanh
WP Trend Watcher là tool mã nguồn mở bằng TypeScript của developer Damon Cook: lấy tin WordPress từ RSS feeds, tóm tắt bằng AI chạy local qua LM Studio hoặc Ollama, rồi để con người duyệt trước khi xuất báo cáo hàng tuần lên GitHub Pages. Bài hướng dẫn cài đặt từ A đến Z với Node.js 22, pnpm 11 và cách khắc phục lỗi thường gặp.

Nếu bạn làm WordPress chuyên nghiệp thì chắc chắn hiểu cảm giác này: mỗi tuần hàng chục bài viết từ Make WordPress, Developer Blog, WP Tavern, các blog plugin xả ra như vòi nước hàng hỏa. Đọc không xuể, không đọc thì sợ lỡ thay đổi quan trọng. Damon Cook, một developer hơn 10 năm trong hệ sinh thái WordPress, vừa xây tool mã nguồn mở tên WP Trend Watcher để giải quyết chính bài toán đó: lấy tin từ RSS feeds, tóm tắt bằng AI chạy local, rồi con người duyệt lại trước khi xuất báo cáo. Trong bài này mình sẽ hướng dẫn bạn cài đặt và chạy tool này từ A đến Z trên máy của bạn.

WP Trend Watcher là gì và tại sao đáng dùng?

WP Trend Watcher: tóm tắt tin WordPress bằng AI local

Đây là một workflow mã nguồn mở viết bằng TypeScript, công khai trên GitHub tại tài khoản colorful-tones. Tool hoạt động theo 3 bước tuần tự: thu thập bài viết mới từ danh sách RSS feeds do bạn cấu hình, gửi nội dung qua một model AI chạy trên máy local để tóm tắt, sau đó tạo báo cáo hàng tuần dạng danh sách có link kèm nhận định ngắn. Điểm mình thích nhất là triết lý của tác giả: AI chỉ tóm tắt, còn phán đoán thì vẫn thuộc về con người. Damon nói rõ anh ấy cố tình không tự động hóa toàn bộ pipeline xuất bản, vì phần “human in the loop” chính là lớp chống ảo giác quan trọng nhất.

Công cụ này hoạt động như thế nào?

Về mặt kỹ thuật, đây là một dự án Node.js với cấu trúc CLI rõ ràng. Lệnh collect quét các nguồn trong file sources.yaml và lấy bài viết trong khoảng thời gian bạn chỉ định, mặc định 7 ngày. Lệnh summarize gửi các bài đã thu thập qua một endpoint tương thích OpenAI — có thể là LM Studio, Ollama hoặc bất kỳ server LLM local nào. Cuối cùng báo cáo được render thành HTML tĩnh và publish lên GitHub Pages, kèm luôn RSS feed để người khác đăng ký theo dõi. Damon chạy tuần hàng, thử luân phiên nhiều model khác nhau như Qwen, và ghi rõ ở cuối mỗi báo cáo model nào đã được dùng — một chi tiết minh bạch mà mình đánh giá cao.

Cần chuẩn bị những gì trước khi cài?

Bạn làm theo checklist sau là đủ. Mình liệt kê đúng theo yêu cầu của repo, đừng bỏ sót mục nào:

  1. Node.js 22 — repo pin cứng version này trong file .nvmrc, nên cách dễ nhất là cài nvm rồi gõ nvm use trong thư mục dự án.
  2. pnpm 11 — repo pin qua trường packageManager. Bạn không cần cài tay, chỉ cần chạy corepack enable một lần trên máy.
  3. git để clone source.
  4. Một LLM provider chạy local — LM Studio hoặc Ollama. Lưu ý: các lệnh collect và review vẫn chạy bình thường không cần model, chỉ có summarize là bắt buộc có endpoint AI.
  5. Môi trường Unix-like — macOS, Linux hoặc WSL2 trên Windows. Tool giả định bash pipeline nên nếu bạn đang dùng Windows thuần thì cài WSL2 trước đã.

Cài đặt từng bước từ A đến Z thế nào?

Sau khi đã đủ yêu cầu trên, bạn mở terminal và gõ lần lượt các lệnh sau:

git clone https://github.com/colorful-tones/wp-trend-watcher.git
cd wp-trend-watcher
nvm use
corepack enable
pnpm install
cp .env.example .env
cp sources.example.yaml sources.yaml
pnpm collect -- --days 7
pnpm summarize

Hai dòng cp là bước nhiều bạn hay quên. File .env chứa cấu hình model và provider — nếu bạn dùng Ollama thay cho LM Studio thì sửa endpoint tương ứng ở đây, và nếu dùng LM Studio thì nên đặt thêm WP_TREND_MAX_TOKENS=2048 để báo cáo ra ổn định, dễ đoán hơn. File sources.yaml là nơi bạn tùy biến danh sách RSS feeds — mặc định đã có các nguồn WordPress chính thống, nhưng bạn có thể thêm blog riêng, feed tiếng Việt hoặc feed plugin mà bạn đang theo dõi.

Chạy thử lần đầu cần lưu ý gì?

Lần chạy đầu tiên, mình khuyên bạn tách bạch từng giai đoạn thay vì chạy liền mạch. Chạy pnpm collect trước, kiểm tra thư mục dữ liệu xem các bài viết đã được lấy về đủ chưa, rồi mới chạy pnpm summarize. Nếu summarize báo lỗi kết nối, lỗi gần như luôn nằm ở phía LLM server: kiểm tra LM Studio hoặc Ollama đã khởi động chưa, endpoint và tên model trong .env đã khớp chưa. Với máy yếu, hãy chọn model nhỏ hơn — Damon chạy trên máy 18GB RAM khả dụng và vẫn ổn với các model 7B đến 8B lượng tử hóa.

Làm sao tự động hóa chạy hàng tuần?

Mặc định bạn chạy tay mỗi tuần, nhưng trên Linux hoặc macOS bạn có thể lên lịch bằng cron cho phần collect và summarize, còn bước duyệt và publish thì giữ thủ công. Ví dụ trên Linux:

crontab -e
# Thêm dòng sau để chạy lúc 6 giờ sáng thứ Hai hàng tuần:
0 6 * * 1 cd /path/to/wp-trend-watcher && pnpm collect -- --days 7 >> cron.log 2>&1

Sau đó bạn chỉ cần duyệt báo cáo, viết nhận định của mình vào phần comment, rồi đẩy kết quả lên repo là GitHub Pages tự cập nhật. Lưu ý: đừng automathóa luôn bước xuất bản — mất lớp duyệt tay là mất luôn giá trị cốt lõi của tool này.

Mình đánh giá WP Trend Watcher như thế nào?

Nói thật, đây chưa phải sản phẩm hoàn thiện — tác giả thừa nhận output formatting chưa deterministic, và tính năng phân tích xu hướng qua nhiều tuần vẫn đang trên giấy. Nhưng với ai đang quản lý nhiều site WordPress, đây là một mẫu hình rất đáng học: AI local xử lý phần đọc nhiều, con người giữ phần suy nghĩ. So với việc trả tiền cho các dịch vụ tin tổng hợp, giải pháp này miễn phí, dữ liệu không rời máy bạn, và bạn kiểm soát hoàn toàn nguồn tin. Nếu bạn từng đọc bài của mình về cách theo dõi bản vá WordPress khi Protect The Shire làm chậm update hay bài checklist bảo mật WordPress thời AI bằng WP-CLI, bạn sẽ thấy tool này bổ khuyết đúng mảng còn thiếu: đồng bộ thông tin thay đổi của hệ sinh thái mỗi tuần.

Gặp lỗi thường thấy thì xử lý ra sao?

Mình tổng hợp vài lỗi hay gặp và cách khắc phục:

  • Lỗi “pnpm not found” — bạn chưa chạy corepack enable, hoặc shell đang dùng Node cũ. Gõ node -v để kiểm tra, phải ra v22.
  • Summarize treo hoặc trả rỗng — model quá lớn so với RAM. Chuyển sang bản lượng tử hóa Q4 hoặc model nhỏ hơn, và đặt WP_TREND_MAX_TOKENS=2048.
  • Collect không lấy được bài — kiểm tra URL feed trong sources.yaml còn sống không bằng curl, và thử tăng --days lên trong trường hợp nguồn đăng ít.
  • Chạy trên Windows bị lỗi script — cài WSL2 và làm mọi thứ bên trong môi trường Linux, đừng cố sửa cho chạy trên PowerShell.

Cài xong thì thử chạy một tuần, so sánh báo cáo với những gì bạn tự đọc được, bạn sẽ biết tool này có xứng đáng một chỗ trên máy của mình hay không. Mình thì đã dành cho nó một góc trên con VPS thử nghiệm rồi.

Thanh Tùng

Mình là Thanh Tùng. Bạn bè gọi mình là "bác sĩ máy tính" vì hễ máy nào có vấn đề là mình muốn mò vào xem sao. Mình viết hướng dẫn theo cách mà mình mong người khác đã viết cho mình ngày xưa — từng bước rõ ràng, không bỏ sót, và nói luôn cái gì hay bị lỗi. Ngoài giờ làm mình chơi guitar, nuôi mèo, và có một con VPS riêng dành riêng cho việc cài thử đủ thứ linh tinh.

Xem tất cả bài viết →

Để lại một bình luận

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *