Scan
Seth HobsonCommunityCreated by Pranay YadavDistributed by Seth Hobson
- Skill
- Content generator
- Software development
- MIT
- No issues found
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
The scan skill provides a systematic way to document a codebase and maintain project-specific instructions for AI agents. It performs an initial full scan to create project-doc.md and AGENTS.md, then uses delta scans to detect changes and drift. The skill supports optional plugins for deeper semantic analysis and context management, ensuring that documentation remains accurate as the architecture evolves.
What it does
- Generates a comprehensive project-doc.md containing stack, architecture, and style conventions.
- Creates an AGENTS.md file tailored to the project for downstream agent guidance.
- Performs delta scans to identify changes and update documentation incrementally.
- Detects architectural changes and prompts for human confirmation before updating agent instructions.
- Integrates with optional plugins for enhanced analysis and context window management.
- Maintains project state and tracks scan checkpoints.
When to use it
- When bootstrapping a new agent-driven repository.
- To refresh project documentation after significant architectural changes.
- To detect drift between the codebase and existing documentation.
- As a regular maintenance task to ensure downstream agents have current project context.
Advantages
- Ensures all agents operate with consistent, up-to-date project knowledge.
- Reduces manual documentation overhead through automated delta scanning.
- Prevents accidental updates to agent instructions by requiring human confirmation for architectural changes.
- Optimizes context usage through optional plugin integration.
Usage examples
- “scan”
- The agent performs a full scan of the repository, generating project-doc.md and AGENTS.md, and reports the completion status.
- “scan the codebase for changes”
- The agent identifies changed files since the last scan, updates project-doc.md, and notifies the user if any architectural changes require an update to AGENTS.md.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/wshobson/scan/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip scan.zip -d .agents/skills
Documentation by Pranay Yadav
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
Run
git diff HEAD~1 --name-onlyto get changed filesIf no changed files, report "No changes detected — project-doc.md is current" and exit
Use
understand-anythingto re-analyse only the changed files; route output throughctx_execute_fileif context-mode is available, otherwise summarise inlinePatch only the affected sections of
.claude/pipeline/project-doc.mdUpdate the
Last ScannedandChanged FilesfieldsProceed 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, 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".
Files
- ATTRIBUTION.mdAdded by AutoGineer931 B
- LICENSELicence file added by AutoGineer1.0 KiB
- SKILL.md6.3 KiB
- references/agents-template.md2.5 KiB
ATTRIBUTION.md
Attribution
This folder is an unmodified copy of the Agent Skill "scan", distributed by AutoGineer (https://autogineer.com/agent-skills).
Commit: 4bde3168b43c0655c4d00ea2726e631719908a6d
Created by: Pranay Yadav (https://github.com/wshobson/agents/tree/4bde3168b43c0655c4d00ea2726e631719908a6d/plugins/ship-mate/skills/scan)
Publisher: Seth Hobson (https://github.com/wshobson)
Licence: MIT License (https://github.com/wshobson/agents/blob/4bde3168b43c0655c4d00ea2726e631719908a6d/LICENSE)
Licence evidence: repository licence LICENSE
Retrieved: 2026-11-07
The skill's own files are unmodified copies. AutoGineer is not affiliated with or endorsed by the author or the publisher.
Files added by AutoGineer
ATTRIBUTION.md: this file, written by AutoGineer
LICENSE: copied from LICENSE
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Security
No issues found by our static scan· No issues found
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Created by
- Pranay Yadav
- Publisher
- Seth Hobson (Community)
- Distributed by
- Seth Hobson
- Source
- wshobson/agents · plugins/ship-mate/skills/scan · commit 4bde316
- Licence
- MIT License (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Pranay Yadav or Seth Hobson.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download scan.zip