AkiDevRule 2.8.0: Từ Rule Đúng Đến Việc Được Làm Xong

AkiDevRule 2.8.0 không tăng số skill hay dựng thêm một tầng điều phối. Bản này sửa những điểm mà một bộ quy tắc có thể mô tả đúng nhưng agent vẫn dừng sai chỗ: đẩy migration an toàn lại cho người dùng, nhìn nhầm [Unreleased] thành version mới nhất, hoặc phát hành xong mà README và các record liên quan vẫn mang trạng thái cũ.

!NOTE Nguồn kiểm chứng: GitHub Release 2.8.0, toàn bộ diff 2.7.0...2.8.0, CHANGELOGrepo nguồn. Trang tổng quan dự án nằm tại akitao.com/pj/akidevrule.

Bản đồ thay đổi

NhómThay đổi chínhTác động trực tiếp
AddedQuyền thực thi migration D1, install.py --check, ref macOS codesign/TCC và AGENTS.mdÍt bàn giao việc có thể tự xác minh; biết chính xác trạng thái cài đặt; tra cứu đúng theo host và hệ điều hành
ChangedRelease record surfaces, research Amendments, tier ghế akiflowRelease bớt lệch hồ sơ; giữ lịch sử nghiên cứu mà vẫn sửa được sai sót; model tier không bị khóa vào alias Claude
FixedParser version, lệnh Windows, internal release type, Nitro API và stale headings/countsUpdate check hoạt động thật; câu lệnh đa nền tảng đúng; metadata và tài liệu không còn tự mâu thuẫn

Added: Agent sở hữu trọn migration D1 có đường lui

Trước 2.8.0, một migration chỉ thêm bảng/cột, chạy lặp an toàn và có db.pull để sao lưu vẫn có thể bị xếp vào nhóm “thay đổi database nên phải hỏi trước”. Kết quả là agent kiểm tra được mọi điều kiện nhưng chuyển phần bấm nút cuối về cho người dùng.

stack.C8 nay tách hai cánh cửa bằng khả năng đảo ngược thực tế:

  • Có đường lui: migration cộng thêm hoặc idempotent, có backup, wrangler đã cài và xác thực. Agent tự chạy backup → --local → --remote → verify → move scripts/done/ trong cùng tác vụ.
  • Không có đường lui: ALTER/DROP, sửa dữ liệu hàng loạt hoặc không có backup. Cổng ask-first vẫn giữ nguyên.

!TIP Người dùng không phải đánh đổi an toàn để lấy tự động hóa. Điểm mới là backup và hậu kiểm trở thành một phần bắt buộc của quyền thực thi, thay vì lý do để trì hoãn thực thi.

Added: install.py --check và năm trạng thái version

Lệnh kiểm tra mới chỉ đọc trạng thái, không cài hay ghi đè:

python3 install.py --check

Trên Windows:

py -3 install.py --check

Parser dùng chung bỏ qua heading [Unreleased], lấy release semver đầu tiên và phân loại thành năm trạng thái:

Trạng tháiNghĩa
missingChưa có bản AkiDevRule được cài
currentBản cài trùng bản mới nhất
updateCó bản mới hơn để cập nhật
aheadBản cài đang đi trước release public
unknownKhông đọc được version đáng tin cậy

Cùng parser này sửa lỗi cũ của hook SessionStart: cả file local lẫn remote đều mở đầu bằng [Unreleased], nên phép so sánh heading đầu tiên trước đây luôn kết luận hai phía giống nhau. .version cũng lưu thêm version=<semver>, còn cài đặt từ đúng checkout hiện tại có commit trùng HEAD và working tree sạch sẽ bỏ qua prompt ghi đè dư thừa.

Added: Hai tài liệu tra cứu cho lỗi phụ thuộc host

macOS codesign và TCC

docs/ref/macos-codesign-tcc.md gom ranh giới thường bị trộn lẫn: Gatekeeper khác TCC, Developer Tools không đồng nghĩa với quyền đọc file, TCC xét tiến trình chịu trách nhiệm, và Tauri bundle phải được codesign --force lại sau mỗi lần build nếu muốn giữ danh tính ổn định.

AGENTS.md consumer matrix

docs/ref/agents-md-standard.md ghi rõ host nào nạp AGENTS.md, host nào ưu tiên file riêng. Điểm quan trọng: Claude Code chỉ chính thức nạp CLAUDE.md nên phải import @AGENTS.md; Gemini CLI vẫn ưu tiên GEMINI.md nếu chưa cấu hình khác; Postman Agent Mode không phải coding agent đọc cây Git. Nhờ vậy, “đã có AGENTS.md” không còn bị xem như bằng chứng mọi agent đều đã nhận chỉ dẫn.

Changed: Release phải đồng bộ đủ record surfaces

release.B7 bước 5 trước đây chủ yếu gọi tên plan và tài liệu arch/feat. Bản 2.8.0 liệt kê rõ năm bề mặt cần đối chiếu:

  1. README khi setup, command, layout hoặc hành vi tích lũy đã đổi.
  2. Task notes qua đúng workflow akidevsync-notes.
  3. Tài liệu kiến trúc/tính năng liên quan.
  4. Standards doc được project binding khi convention nó sở hữu thay đổi.
  5. CHANGELOG khớp với những record đã đóng.

Thay đổi này nhắm vào một lỗi vận hành: release có thể hoàn tất về tag và artifact nhưng hồ sơ dùng để định hướng phiên sau vẫn kể câu chuyện của bản trước.

Changed: Research được sửa bằng Amendment, không xóa lịch sử

docs.B2 vẫn coi research là bản ghi sự kiện đóng băng, nhưng không còn buộc lựa chọn giữa “để sai” và “viết lại âm thầm”. Bốn loại chỉnh sửa nay có đường xử lý riêng:

  • Cosmetic: sửa tại chỗ, không cần marker.
  • Claim sai nhưng Decision giữ nguyên: thêm mục ## Amendments có ngày và chuyển status thành amended.
  • Decision thay đổi: tạo successor document.
  • Link trong trường Decision: cập nhật tại chỗ.

Phép phân biệt ngắn gọn là: sửa lỗi này có đổi Decision không? Nếu không, Amendment đủ; nếu có, cần successor.

Changed: Ghế akiflow dùng tier thay vì alias model

Roster akiflow giờ nói top, mid, cheap, sau đó để từng host phân giải sang model của nó. Cách này tránh việc một file skill dùng chung ghi sonnet/haiku rồi vô tình buộc Cursor, agy, Codex, Kiro hoặc Grok đi qua alias không thuộc host đó. harness-facts.md có bảng host-resolution và đánh dấu phần nào đã đo, phần nào còn chưa xác nhận.

Các file agent riêng của Claude Code vẫn giữ model: sonnet/haiku: đó là cấu hình đúng ở bề mặt chỉ Claude Code đọc, không phải tier đa host trong skill dùng chung.

Fixed: Những lệch nhỏ nhưng phá hợp đồng lớn

  • Lệnh propagate trong CLAUDE.md/GEMINI.md sinh bởi installer nay dùng py -3 <repo>\install.py trên Windows, thay vì nhét đường dẫn Windows vào Bash rồi làm rơi dấu \.
  • releases.json chính thức nhận type internal; quy tắc “không gap nội dung” kiểm tra mọi section Added/Changed/Fixed/Removed.
  • Hướng dẫn Nitro trên stack hiện tại dùng event.context.cloudflare.context.waitUntil hoặc event.waitUntil, không sao chép API Nitro v3 event.req vào Nitro 2.13.
  • Heading “Shared rule source” trong GEMINI.md chuyển từ số 9 trùng lặp sang 15; số section trong tài liệu akiflow được cập nhật tương ứng.

Nên cập nhật khi nào?

Hãy cập nhật sớm nếu workflow của bạn có D1 migrations, chạy AkiDevRule trên Windows, dùng nhiều coding host, hoặc dựa vào hook kiểm tra version. Ngay cả khi không thuộc các nhóm đó, cơ chế closure re-anchor, record-surface sync và Amendment làm cho kết quả của các tác vụ nhiều bước dễ kiểm chứng hơn.

git pull && bash install.sh

Windows:

git pull
py -3 install.py

Xem Release 2.8.0, diff đầy đủ từ 2.7.0, hoặc mã nguồn AkiDevRule.