Awesome-claude-code identify-entry-points
Finds application entry points — Controllers, Actions, Console Commands, Event Handlers, Message Consumers, route definitions, middleware, and scheduled tasks. Maps HTTP/CLI/async entry points to their handlers.
install
source · Clone the upstream repo
git clone https://github.com/dykyi-roman/awesome-claude-code
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/dykyi-roman/awesome-claude-code "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/identify-entry-points" ~/.claude/skills/dykyi-roman-awesome-claude-code-identify-entry-points && rm -rf "$T"
manifest:
skills/identify-entry-points/SKILL.mdsource content
Entry Points Identifier
Overview
Identifies all entry points into the application — HTTP routes, CLI commands, event handlers, message consumers, and scheduled tasks. Maps each entry point to its handler and the business operation it triggers.
Detection Patterns
HTTP Entry Points
Controllers / Actions
# Symfony controllers Grep: "#\\[Route\\(" --glob "**/*.php" Grep: "@Route\\(" --glob "**/*.php" Grep: "extends.*AbstractController" --glob "**/*.php" # Laravel controllers Grep: "extends Controller" --glob "**/Controller/**/*.php" Grep: "Route::(get|post|put|patch|delete)" --glob "**/routes/*.php" # ADR Actions Grep: "__invoke.*Request" --glob "**/Action/**/*.php" Grep: "class.*Action" --glob "**/*.php" # Slim/custom route handlers Grep: "->(?:get|post|put|delete|patch)\(" --glob "**/routes*.php"
Route Definitions
# Symfony YAML routes Grep: "path:|prefix:" --glob "config/routes*.yaml" # Symfony attribute routes (extract path and methods) Grep: "#\\[Route\\('[^']+'" --glob "**/*.php" # Laravel routes Grep: "Route::" --glob "routes/*.php" # API resource routes Grep: "apiResource|Route::resource" --glob "routes/*.php"
Middleware
# Symfony event subscribers acting as middleware Grep: "implements EventSubscriberInterface" --glob "**/*.php" Grep: "kernel.request|kernel.response|kernel.exception" --glob "**/*.php" # Laravel middleware Grep: "class.*Middleware|implements Middleware" --glob "**/*.php" Grep: "'middleware'" --glob "routes/*.php" # PSR-15 middleware Grep: "implements MiddlewareInterface" --glob "**/*.php"
CLI Entry Points
# Symfony console commands Grep: "extends Command" --glob "**/*.php" Grep: "#\\[AsCommand\\(" --glob "**/*.php" Grep: "protected.*\\$defaultName" --glob "**/*.php" # Laravel artisan commands Grep: "extends Command" --glob "**/Console/**/*.php" Grep: "protected.*\\$signature" --glob "**/*.php" # Custom CLI scripts Glob: "bin/*" Glob: "scripts/*.php"
Event/Message Entry Points
# Symfony messenger handlers Grep: "#\\[AsMessageHandler\\]" --glob "**/*.php" Grep: "implements MessageHandlerInterface" --glob "**/*.php" Grep: "__invoke.*Message|__invoke.*Command|__invoke.*Event" --glob "**/*.php" # Symfony event listeners Grep: "#\\[AsEventListener\\(" --glob "**/*.php" Grep: "implements EventSubscriberInterface" --glob "**/*.php" # Laravel event listeners Grep: "class.*Listener" --glob "**/Listeners/**/*.php" Grep: "implements ShouldQueue" --glob "**/*.php" # Custom event handlers Grep: "implements.*Handler|implements.*Listener|implements.*Subscriber" --glob "**/*.php" # RabbitMQ consumers Grep: "ConsumerInterface|implements.*Consumer" --glob "**/*.php"
Scheduled Tasks
# Symfony scheduler Grep: "#\\[AsSchedule\\]|#\\[AsCronTask\\]" --glob "**/*.php" Grep: "RecurringMessage::every|RecurringMessage::cron" --glob "**/*.php" # Laravel scheduler Grep: "->command\\(|->call\\(|->job\\(" --glob "**/Kernel.php" Grep: "->cron\\(|->daily\\(|->hourly\\(" --glob "**/*.php" # Cron definitions Glob: "crontab*" Glob: "config/scheduler*.{php,yaml}"
Analysis Process
- Scan — Find all entry points using detection patterns above
- Classify — Group by type (HTTP, CLI, Event, Scheduled)
- Map — Trace each entry point to its handler/use case
- Document — Build entry point catalog
Handler Mapping
For each entry point, trace the chain:
Entry Point → Middleware/Guard → Handler → UseCase/Service → Domain
# Find what the handler calls # Read the handler method body Read: handler file # Look for service/use case invocations Grep: "\$this->[a-z]+(Handler|Service|UseCase|Bus)" in handler file # Trace command/query dispatch Grep: "->dispatch\(|->handle\(|->execute\(" in handler file
Output Format
## Entry Points Map ### HTTP Endpoints | Method | Route | Handler | Operation | Auth | |--------|-------|---------|-----------|------| | GET | /api/orders | OrderController::list | List orders | JWT | | POST | /api/orders | CreateOrderAction::__invoke | Create order | JWT | | GET | /api/orders/{id} | OrderController::show | Get order | JWT | | PUT | /api/orders/{id}/status | UpdateOrderStatusAction | Change status | JWT + Role | ### CLI Commands | Command | Handler | Purpose | Schedule | |---------|---------|---------|----------| | app:import-orders | ImportOrdersCommand | Import from CSV | Daily 02:00 | | app:cleanup-expired | CleanupCommand | Remove expired | Hourly | ### Event Handlers | Event/Message | Handler | Trigger | Async | |---------------|---------|---------|-------| | OrderCreated | SendConfirmationEmail | After order create | Yes (queue) | | PaymentReceived | UpdateOrderStatus | After payment | Yes (queue) | | UserRegistered | SendWelcomeEmail | After registration | Yes (queue) | ### Message Consumers | Queue | Consumer | Message Type | Processing | |-------|----------|-------------|-----------| | orders | OrderConsumer | OrderCommand | Sequential | | notifications | NotificationConsumer | NotificationMessage | Parallel | ### Scheduled Tasks | Schedule | Task | Description | |----------|------|-------------| | 0 2 * * * | ImportOrdersCommand | Daily order import | | */5 * * * * | HealthCheckCommand | Health monitoring | ### Entry Point Flow
HTTP Request → Middleware Stack → Controller/Action → UseCase → Domain → Response CLI Command → Input Parsing → Handler → Service → Domain → Output Event → Listener/Handler → UseCase → Domain → Side Effects Queue Message → Consumer → Handler → UseCase → Domain → Ack
Entry Point Quality Indicators
| Indicator | Good | Warning |
|---|---|---|
| Handler responsibility | Delegates to UseCase | Contains business logic |
| Input validation | Uses typed Request/DTO | Raw array access |
| Auth check | Attribute/middleware | Inline if-checks |
| Error handling | Exception handler | Try-catch in handler |
| Response format | Typed Response/DTO | Array/string |
Integration
This skill is used by:
— builds complete entry point catalogcodebase-navigator
— starts from identified entry pointstrace-request-lifecycle
— maps entry points to business operationsexplain-business-process