Bộ tóm tắt vết thực thi trừu tượng
Skill phân tích tĩnh dùng diễn giải trừu tượng để tóm tắt đường thực thi, khoảng giá trị biến và bất biến vòng lặp mà không cần chạy code.
Lập trìnhNâng cao★ 245⑂ 23Điểm AI 8/10Cập nhật lần cuối: 21 thg 8, 2026
Skill này làm gì
- Áp dụng diễn giải trừu tượng (abstract interpretation) để xấp xỉ trên các trạng thái runtime khả dĩ mà không cần thực thi chương trình.
- Hướng dẫn chọn miền trừu tượng phù hợp: interval, sign, nullness, parity, octagon, polyhedra, hằng số, kiểu dữ liệu.
- Dựng CFG, phân tích nhánh/vòng lặp/gọi hàm/ngoại lệ; dùng join, meet, widening, narrowing để tính điểm bất động (fixpoint).
- Suy ra bất biến vòng lặp, giới hạn số lần lặp, và bản tóm tắt hàm (tiền điều kiện, hậu điều kiện, tác dụng phụ, frame condition).
- Xuất báo cáo Markdown có sẵn khung: đường thực thi, quan hệ giữa biến, tính chất an toàn (biên mảng, null, kiểu, tràn số) và đề xuất cải thiện.
Dành cho ai
- Lập trình viên cần hiểu hành vi thật của hàm legacy trước khi refactor.
- Người làm phân tích tĩnh, kiểm chứng hình thức, tối ưu hoá compiler.
- Reviewer code yêu cầu độ an toàn cao (con trỏ C/C++, null trong Java/C#).
- Giảng viên/sinh viên học về lattice, widening, bất biến vòng lặp.
Ví dụ sử dụng
- "Kiểm tra xem truy cập
arr[i]trong vòng lặp này có luôn nằm trong biên không" → đưa ra bất biến0 ≤ i < Lvà kết luận an toàn. - "Trong phương thức Java này có đường nào gây NullPointerException không?" → theo dõi miền nullness theo từng nhánh rồi báo cáo.
- "Tóm tắt tiền/hậu điều kiện và tác dụng phụ của hàm này để viết tài liệu" → sinh bản đặc tả hàm theo mẫu.
· · · Hướng dẫn cài đặt · · ·
Dùng thử ngay, không cần cài
Dán đoạn dưới vào Claude là dùng được skill này mà không cần cài đặt.
Hãy đọc hướng dẫn trong tệp này và làm theo để giúp mình: https://raw.githubusercontent.com/ArabelaTso/Skills-4-SE/HEAD/skills/abstract-trace-summarizer/SKILL.md Mình muốn: (viết việc bạn cần ở đây)
Nếu Claude không mở được liên kết, hãy mở liên kết và copy nội dung vào rồi dán.
↓ Thấy hữu ích thì tải ZIP bên dưới và cài. Sau đó skill tự chạy, không phải dán lại mỗi lần.
Cài vào ứng dụng Claude (không cần terminal)
- Tải tệp ZIP bằng nút bên dưới.
- Trong Claude, mở Settings → Capabilities và bật 'Code execution and file creation'. (chỉ một lần)
- Vào Customize → Skills → + → 'Upload a skill' rồi tải tệp ZIP lên.
Cài vào Claude Code
Để Claude làm — dán câu dưới đây vào Claude Code
Hãy cài skill mình tìm thấy trên Claude Skill Mart. Copy thư mục skills/abstract-trace-summarizer từ repo GitHub ArabelaTso/Skills-4-SE vào ~/.claude/skills/abstract-trace-summarizer/ của mình. Sau khi cài xong, cho mình biết skill này làm được gì trong một câu.
Cài bằng lệnh thủ công
git clone https://github.com/ArabelaTso/Skills-4-SE.git && mkdir -p ~/.claude/skills && cp -r Skills-4-SE/skills/abstract-trace-summarizer ~/.claude/skills/⚠ Đây là skill do người khác tạo. Hãy kiểm tra repo gốc trước khi cài.
- Mở Terminal.
- Tải repo:
git clone https://github.com/ArabelaTso/Skills-4-SE.git - Tạo thư mục skills:
mkdir -p ~/.claude/skills - Sao chép skill:
cp -r Skills-4-SE/skills/abstract-trace-summarizer ~/.claude/skills/ - Kiểm tra trong
~/.claude/skills/abstract-trace-summarizer/cóSKILL.mdvà thư mụcreferences/(tài liệu tham khảo giúp phân tích chính xác hơn). - Khởi động lại Claude Code, rồi yêu cầu ví dụ: "Hãy tóm tắt bất biến vòng lặp và khoảng giá trị biến của hàm này bằng diễn giải trừu tượng".
Xem mã nguồn trên GitHub ↗Giấy phép: Apache-2.0