Agent skill
scan-project-structure
[Documentation] Scan project and populate/sync docs/project-reference/project-structure-reference.md with service architecture, ports, directory tree, tech stack, and module registry.
Install this agent skill to your Project
npx add-skill https://github.com/duc01226/EasyPlatform/tree/main/.claude/skills/scan-project-structure
SKILL.md
[IMPORTANT] Use
TaskCreateto break ALL work into small tasks BEFORE starting — including tasks for each file read. This prevents context loss from long files. For simple tasks, AI MUST ask user whether to skip.
Prerequisites: MUST READ before executing:
Scan & Update Reference Doc — Read existing doc first, scan codebase for current state, diff against doc content, update only changed sections, preserve manual annotations. MUST READ
.claude/skills/shared/scan-and-update-reference-doc-protocol.mdfor full protocol and checklists.
Quick Summary
Goal: Scan the project codebase and populate docs/project-reference/project-structure-reference.md with accurate service architecture, API ports, directory tree, tech stack, and module codes.
Workflow:
- Read — Load current target doc, detect init vs sync mode
- Scan — Discover services, apps, ports, tech stack via parallel sub-agents
- Report — Write findings to external report file
- Generate — Build/update the reference doc from report
- Verify — Spot-check paths and ports
Key Rules:
- Generic — discover everything dynamically, never hardcode project-specific values
- Use
docs/project-config.jsonfor hints if available, fall back to filesystem scanning - All examples must reference real files found in this project
Be skeptical. Apply critical thinking, sequential thinking. Every claim needs traced proof, confidence percentages (Idea should be more than 80%).
Scan Project Structure
Phase 0: Read & Assess
- Read
docs/project-reference/project-structure-reference.md - Detect mode: init (placeholder only) or sync (has real content)
- If sync: note which sections exist and their line counts
Phase 1: Plan Scan Strategy
Check if docs/project-config.json exists for module lists and service maps. Plan these scan areas:
- Backend services — Find
.csproj,Dockerfile,Program.cs,launchSettings.jsonfor ports - Frontend apps — Find
angular.json,nx.json,package.json,vite.config,next.config - Infrastructure — Find
docker-compose.yml,Dockerfile, K8s manifests, CI/CD config - Tech stack — Parse
package.jsondependencies,.csprojPackageReferences, build tool configs
Phase 2: Execute Scan (Parallel Sub-Agents)
Launch 3 Explore agents in parallel:
Agent 1: Backend Services
- Glob for
**/*.csprojand**/Dockerfileto find services - Grep
launchSettings.jsonorappsettings*.jsonfor port numbers - Grep for
[ApiController]orMapControllersto find API services - List service directories with their ports
Agent 2: Frontend Apps
- Glob for
**/angular.json,**/nx.json,**/package.json(not in node_modules) - Find app entry points (
main.ts,index.tsx,App.vue) - Extract dev server ports from configs (
servecommands, proxy configs) - Identify framework versions from package.json
Agent 3: Infrastructure & Tech Stack
- Find
docker-compose*.yml— extract service definitions and port mappings - Find CI/CD configs (
.github/workflows/*.yml,azure-pipelines.yml,Jenkinsfile) - Parse primary package managers (
package.json,*.csproj) for key dependencies - Identify databases, message brokers, caching from connection strings or Docker services
Write all findings to: plans/reports/scan-project-structure-{YYMMDD}-{HHMM}-report.md
Phase 3: Analyze & Generate
Read the report file. Build these sections:
Target Sections
| Section | Content |
|---|---|
| Service Architecture | Table: Service Name, Type (API/Worker/App), Port, Dockerfile path |
| Infrastructure Ports | Table: Service (DB/MQ/Cache), Port, Credentials (if in docker-compose) |
| API Service Ports | Table: API service name, Port, Dockerfile path |
| Project Directory Tree | Top 2-3 levels of src/ directory structure |
| Tech Stack | Table: Category (Backend/Frontend/Infra), Technology, Version |
| Module Codes | Table: Module code abbreviation, Full name, Service path |
Content Rules
- Use tables for structured data (not prose)
- Include actual port numbers found in configs
- Directory tree: show only meaningful structure (skip node_modules, bin, obj)
- Tech stack: include version numbers from package.json/csproj
Phase 4: Write & Verify
- Write updated doc with
<!-- Last scanned: YYYY-MM-DD -->at top - Verify: spot-check 3 service paths exist on filesystem
- Verify: port numbers match actual config files
- Report: sections updated vs unchanged
Closing Reminders
- MUST break work into small todo tasks using
TaskCreateBEFORE starting - MUST search codebase for 3+ similar patterns before creating new code
- MUST cite
file:lineevidence for every claim (confidence >80% to act) - MUST add a final review todo task to verify work quality MANDATORY IMPORTANT MUST READ the following files before starting:
- MUST READ
.claude/skills/shared/scan-and-update-reference-doc-protocol.mdbefore starting
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
fix-parallel
[Implementation] Analyze & fix issues with parallel fullstack-developer agents
ask
[Utilities] Answer technical and architectural questions.
claude-code
[Utilities] Claude Code CLI setup, configuration, troubleshooting, and feature guidance. Triggers on claude code setup, hook not firing, MCP connection, context limit, skill creation, slash command setup.
workflow-deployment
[Workflow] Trigger Deployment & Infrastructure workflow — CI/CD pipelines, Docker, Kubernetes setup and deployment.
workflow-idea-to-pbi
[Workflow] Trigger Idea to PBI workflow — po/ba workflow: capture idea, refine to pbi, create stories, prioritize.
easy-claude-help
[Utilities] Configuration guide for the easy-claude framework — explain settings, guide users through configuring .ck.json.
Didn't find tool you were looking for?