Help us improve
Share bugs, ideas, or general feedback.
From fuse-ai-pilot
Explores codebases to map structure, detect architecture patterns (MVC, Clean, Hexagonal, feature-based), entry points, dependencies, and tech stacks via bash commands for JS/TS, Python, Go, Rust, PHP.
npx claudepluginhub fusengine/agents --plugin fuse-ai-pilotHow this skill is triggered — by the user, by Claude, or both
Slash command
/fuse-ai-pilot:explorationThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Session:** ${CLAUDE_SESSION_ID}
Analyzes codebase structure, tech stack, patterns, and conventions for project onboarding and exploration.
Extracts tech stack, project structure, key patterns, and conventions from codebases via package.json scans, find, grep for JS/TS, Python, Go, Rust projects. Use before PRDs or planning.
Maps unfamiliar codebases in phases: structure, entry points, data flow, patterns, landmines. Use before coding in new, inherited, or revisited projects.
Share bugs, ideas, or general feedback.
Session: ${CLAUDE_SESSION_ID}
# List root files
ls -la
# Find config files
find . -maxdepth 2 -name "package.json" -o -name "*.config.*" -o -name "pyproject.toml" -o -name "go.mod" -o -name "Cargo.toml" 2>/dev/null
# Check for common entry points
ls -la src/ app/ lib/ cmd/ 2>/dev/null
# Tree view (excluding common noise)
tree -L 3 -I 'node_modules|dist|build|.git|__pycache__|.next|target|vendor' 2>/dev/null || find . -type d -maxdepth 3 | head -50
# Identify main directories
ls -la src/ lib/ app/ internal/ pkg/ 2>/dev/null
# JavaScript/TypeScript
grep -rn "main\|index\|app.listen\|createServer\|export default" --include="*.{js,ts,jsx,tsx}" | head -20
# Python
grep -rn "if __name__\|main()\|app.run\|uvicorn" --include="*.py" | head -20
# Go
grep -rn "func main\|http.ListenAndServe" --include="*.go" | head -20
# Rust
grep -rn "fn main" --include="*.rs" | head -10
# Node.js
cat package.json 2>/dev/null | head -50
# Python
cat pyproject.toml requirements.txt setup.py 2>/dev/null | head -50
# Go
cat go.mod 2>/dev/null
# Rust
cat Cargo.toml 2>/dev/null | head -50
# PHP
cat composer.json 2>/dev/null | head -50
Search for architectural patterns:
# MVC patterns
ls -la controllers/ models/ views/ routes/ 2>/dev/null
# Clean/Hexagonal Architecture
ls -la domain/ application/ infrastructure/ interfaces/ adapters/ ports/ 2>/dev/null
# Feature-based
ls -la features/ modules/ 2>/dev/null
# Next.js App Router
ls -la app/ pages/ components/ 2>/dev/null
| Pattern | Key Directories | Indicators |
|---|---|---|
| MVC | controllers/, models/, views/ | Rails, Laravel, Express |
| Clean Architecture | domain/, application/, infrastructure/ | DDD, Use cases |
| Hexagonal | adapters/, ports/, core/ | Ports & adapters |
| Feature-based | features/[name]/ | All layers per feature |
| Layered | presentation/, business/, data/ | Traditional 3-tier |
| Monolith | Single src/ | Mixed concerns |
| Microservices | Multiple services/ | Separate repos/folders |
| Next.js App Router | app/, components/, lib/ | Server/Client components |
| Modular Monolith | modules/[name]/ | Bounded contexts |
| File | Technology |
|---|---|
package.json | Dependencies, scripts |
tsconfig.json | TypeScript config |
next.config.* | Next.js |
vite.config.* | Vite |
webpack.config.* | Webpack |
tailwind.config.* | Tailwind CSS |
.eslintrc.* | ESLint |
prisma/schema.prisma | Prisma ORM |
Detection commands:
# Framework detection
grep -l "next\|react\|vue\|angular\|svelte" package.json 2>/dev/null
# Database/ORM
ls prisma/ drizzle/ migrations/ 2>/dev/null
# State management
grep -E "zustand|redux|@reduxjs|jotai|recoil" package.json 2>/dev/null
| File | Technology |
|---|---|
pyproject.toml | Modern Python project |
requirements.txt | Dependencies |
setup.py | Package setup |
manage.py | Django |
alembic.ini | Database migrations |
Detection commands:
# Framework detection
grep -E "django|flask|fastapi|starlette" pyproject.toml requirements.txt 2>/dev/null
# ORM
grep -E "sqlalchemy|django|tortoise|peewee" pyproject.toml requirements.txt 2>/dev/null
| File | Technology |
|---|---|
go.mod | Module definition |
go.sum | Dependencies lock |
cmd/ | Entry points |
internal/ | Private packages |
pkg/ | Public packages |
Detection commands:
# Framework detection
grep -E "gin|echo|fiber|chi|gorilla" go.mod 2>/dev/null
# Database
grep -E "gorm|sqlx|ent|pgx" go.mod 2>/dev/null
| File | Technology |
|---|---|
composer.json | Dependencies |
artisan | Laravel |
bin/console | Symfony |
| File | Technology |
|---|---|
Cargo.toml | Dependencies |
src/lib.rs | Library crate |
src/main.rs | Binary crate |
# TypeScript/JavaScript
ls -la src/interfaces/ src/types/ types/ 2>/dev/null
# Check for interfaces in components (violation)
grep -r "interface.*Props\|type.*Props" --include="*.tsx" src/components/ 2>/dev/null | head -10
# Hooks for business logic
ls -la src/hooks/ hooks/ 2>/dev/null
# Check for logic in components (violation)
grep -rn "useState\|useEffect\|async" --include="*.tsx" src/components/ 2>/dev/null | wc -l
# Store files
ls -la src/stores/ stores/ src/store/ 2>/dev/null
# Store usage
grep -r "useStore\|useSelector\|create(" --include="*.{ts,tsx}" src/ 2>/dev/null | head -10
## 🗺️ Codebase Exploration: [Project Name]
### Structure Overview
- **Type**: Monolith / Microservices / Library / Monorepo
- **Tech Stack**: [Languages], [Frameworks], [Tools]
- **Architecture**: [Pattern detected]
- **Entry Points**: [Main files]
### Key Directories
src/ ├── [dir1]/ # [Purpose] ├── [dir2]/ # [Purpose] └── [dir3]/ # [Purpose]
### Dependencies
- **Runtime**: [Key dependencies]
- **Dev**: [Build tools, linters]
- **Database**: [ORM, driver]
### Architecture Patterns
- [Pattern 1]: [Evidence]
- [Pattern 2]: [Evidence]
### Code Organization
- **Interfaces**: [Location or ❌ mixed with components]
- **Business Logic**: [Location or ❌ in components]
- **State**: [Store location or ❌ prop drilling]
- **File Sizes**: [Compliant or ❌ violations found]
### Potential Issues
- ⚠️ [Issue 1]
- ⚠️ [Issue 2]
### Recommendations
- 💡 [Suggestion 1]
- 💡 [Suggestion 2]
# One-liner for quick assessment
echo "=== Package Manager ===" && ls package.json pyproject.toml go.mod Cargo.toml composer.json 2>/dev/null && echo "=== Framework ===" && head -20 package.json 2>/dev/null | grep -E "next|react|vue|express" && echo "=== Structure ===" && ls -la src/ app/ lib/ 2>/dev/null
# Count files by extension
find . -type f -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.jsx" 2>/dev/null | wc -l
find . -type f -name "*.py" 2>/dev/null | wc -l
find . -type f -name "*.go" 2>/dev/null | wc -l
# Find files > 100 lines (potential violations)
find . -name "*.ts" -o -name "*.tsx" -o -name "*.py" 2>/dev/null | xargs wc -l 2>/dev/null | sort -rn | head -20