scan – skill Agent & Tự động hóa cho agent AI
Quét codebase để tạo project-doc.md và AGENTS.md. Dùng khi khởi tạo repo do agent điều khiển, làm mới tài liệu dự án sau thay đổi kiến trúc, hoặc chạy quét delta để phát hiện sai lệch. Lần đầu chạy quét đầy đủ, các lần sau chạy quét delta thông minh. Dùng understand-anything + context-
Cài skill scan bằng một lệnh
Chọn công cụ bạn đang dùng, copy lệnh và dán vào terminal. Skill sẽ nằm trong thư mục skills của công cụ đó và sẵn sàng dùng ở phiên làm việc tiếp theo.
Claude Code
mkdir -p ~/.claude/skills && curl -fsSL https://skill.dn1nguoi.com/z/scan-0f8b2.tgz | tar xz -C ~/.claude/skills
Gọi trong Claude Code: /scan – rồi mô tả công việc bạn muốn làm.
Codex
mkdir -p ~/.codex/skills && curl -fsSL https://skill.dn1nguoi.com/z/scan-0f8b2.tgz | tar xz -C ~/.codex/skills
Gọi trong Codex: $scan – rồi mô tả công việc bạn muốn làm.
Hermes Agent
mkdir -p ~/.hermes/skills && curl -fsSL https://skill.dn1nguoi.com/z/scan-0f8b2.tgz | tar xz -C ~/.hermes/skills
Gọi trong Hermes Agent: /scan – rồi mô tả công việc bạn muốn làm.
DeepSeek
mkdir -p ~/.deepcode/skills && curl -fsSL https://skill.dn1nguoi.com/z/scan-0f8b2.tgz | tar xz -C ~/.deepcode/skills
Gọi trong DeepSeek: /scan – rồi mô tả công việc bạn muốn làm.
Nội dung SKILL.md
Nội dung SKILL.md gốc bằng tiếng Anh.
Codebase Scanner
You are a technical analyst. Your job is to scan the project codebase and produce accurate, project-specific documentation used by all downstream agents.
Step 1: Check Optional Plugin Dependencies
Check whether the two optional enhancement plugins are available:
understand-anything → /plugin list | grep understand-anything
context-mode → /plugin list | grep context-modeThese plugins are optional. They improve scan quality but are not required:
- understand-anything (Lum1104/Understand-Anything) — provides deeper semantic code analysis
- context-mode (mksglu/context-mode) — routes large outputs through a sandbox to protect the context window
If both are present, use them in Steps 3–4 as described below. If either or both are missing, proceed with the native fallback approach: use find, grep, cat, and git commands directly, routing large outputs through ctx_execute / ctx_execute_file if context-mode is available, otherwise summarise inline.
> Note: To install the optional plugins manually:
>
> /plugin marketplace add Lum1104/Understand-Anything && /plugin install understand-anything
> /plugin marketplace add mksglu/context-mode && /plugin install context-mode@context-mode
> Step 2: Determine Scan Mode
Check if .claude/pipeline/project-doc.md exists.
- Does not exist → FULL SCAN (first run)
- Exists → DELTA SCAN
Step 3A: Full Scan
Use understand-anything to analyse the entire codebase. If context-mode is available (verified in Step 1), route ALL output through its tools (ctx_batch_execute / ctx_execute_file) — never dump raw file contents into the main context window. If context-mode is not available, summarise each file's findings inline and avoid printing raw file contents.
Produce .claude/pipeline/project-doc.md using the following structure (based on the architecture-blueprint-generator pattern):
# Project Documentation
> Generated: [timestamp] | Mode: FULL
## Tech Stack
- Runtime: [e.g. Node.js 20, Python 3.11]
- Language: [e.g. TypeScript, Python]
- Framework: [e.g. Next.js 14 App Router, FastAPI]
- Database: [e.g. PostgreSQL via Prisma]
- Styling: [e.g. Tailwind CSS]
- State Management: [e.g. Zustand, Redux]
## Dependencies
[Key libraries with versions, grouped by: core / dev / testing]
## Architecture Pattern
[e.g. Feature-based, Layered MVC, Clean Architecture]
[Describe how the project is structured and why]
## Folder Structure
[Top-level directory map with purpose of each folder]
## Code Style Conventions
[Naming patterns, file naming, import ordering, export patterns]
[Inferred from actual code — not guessed]
## Modularity Practices
[How concerns are separated, shared module locations, service patterns]
## Data Architecture
[Entity relationships, data access patterns, ORM usage]
## Cross-Cutting Concerns
[Auth/authz approach, error handling patterns, logging, validation]
## Service Communication
[REST / GraphQL / event-driven — document what actually exists]
## Test Coverage
- Overall coverage: [X%]
- Testing framework: [e.g. Jest, Vitest, Pytest]
- Key untested areas: [list]
- Test patterns used: [unit / integration / e2e]
## Entry Points
[Main files, key config files, environment setup]
## Changed Files
[Only present in delta scans — list of files re-scanned]
## Last Scanned
[ISO timestamp]After writing project-doc.md, proceed to Step 4 to generate AGENTS.md.
Step 3B: Delta Scan
1. Run git diff HEAD~1 --name-only to get changed files
2. If no changed files, report "No changes detected — project-doc.md is current" and exit
3. Use understand-anything to re-analyse only the changed files; route output through ctx_execute_file if context-mode is available, otherwise summarise inline
4. Patch only the affected sections of .claude/pipeline/project-doc.md
5. Update the Last Scanned and Changed Files fields
6. Proceed to Step 4B (architectural change detection)
Step 4A: Generate AGENTS.md (First Run Only)
Write AGENTS.md to the repo root. This is NOT a copy of project-doc.md — it is rewritten as agent instructions, tailored to this specific project. Every agent reads this file first.
Before writing AGENTS.md, read and follow the complete [project-specific instruction template](references/agents-template.md), including its security rules and human-confirmed update requirements.
If the project is MERN stack (MongoDB + Express + React + Node.js — detected from package.json / requirements), append a ### MERN Stack Notes section to AGENTS.md covering: use Mongoose middleware over raw queries, handle async errors in Express with a central error handler, avoid storing JWT tokens in localStorage (use httpOnly cookies), and never expose Mongoose error objects directly in API responses.
Step 4B: Architectural Change Detection (Delta Runs Only)
After patching project-doc.md, compare the new version against the previous. Check for:
- New framework or major library added
- New architectural directory pattern created (e.g. new
/lib/hooks/,/services/) - Major dependency swap (e.g. axios → fetch, moment → dayjs)
- New auth or session handling pattern
If any detected, show:
⚠️ Architectural change detected in delta scan:
[List specific changes found]
AGENTS.md may need updating. Review and confirm:
[y] Update AGENTS.md — patch affected sections only
[n] Skip — this is not an architectural changeOnly on [y] confirmation: patch the relevant sections of AGENTS.md. Never rewrite the full file.
Step 5: Report
Print a summary:
✅ Scan complete ([FULL/DELTA])
project-doc.md → updated
AGENTS.md → [generated / patched / unchanged]
Changed files → [N files re-scanned / N/A for full scan]
Coverage → [X%]Update state.json field checkpoints.scan = "completed".
Skill liên quan
- court – Đưa một ý tưởng ra xét xử: một Claude công tố và một Claude bào chữa tranh luận, 12…
- cron-doctor – Chẩn đoán và kiểm tra biểu thức cron trước khi đưa lên production. Phát hiện năm cạm bẫy…
- mcp-oauth-triage – Chẩn đoán vì sao một MCP connector trước đây xác thực được nay lại lỗi: phân loại lỗi…
- crypto-bd-agent – Mẫu tham chiếu (từ báo cáo upstream, chưa được xác minh độc lập tại đây) để xây dựng AI…
- session-guard – Dùng khi làm tác vụ nhiều bước phức tạp, khi phiên làm việc kéo dài (40+ lần gọi tool)…
- mcp-server-builder – Thiết kế và triển khai MCP (Model Context Protocol) server sẵn sàng production từ hợp…
- cursor-delegate – Giao tác vụ lập trình cho Cursor Agent CLI (`cursor-agent`) chỉ khi người dùng yêu cầu…
- scrapling – Thu thập dữ liệu website với trình duyệt tàng hình và vượt Cloudflare.