What is project-analyzer?
ONLY when user asks for single-pass tech-stack detection or `agents/evidence/analysis/` write-up. Deep multi-pass audit → `universal-project-analysis`.
event4u-app/agent-config
ONLY when user asks for single-pass tech-stack detection or `agents/evidence/analysis/` write-up. Deep multi-pass audit → `universal-project-analysis`. Raw primitives → `project-analysis-core`.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/project-analyzer"Quick start
Install it or open the source, trigger it with a clear task, then follow the source workflow.
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/project-analyzer"Use project-analyzer to help me with: [describe your task]. Before you begin, tell me what input you need, the steps you will follow, and the expected output.
5 key workflow steps, examples, and cautions are distilled below.
Continue to the workflowDirect answers
ONLY when user asks for single-pass tech-stack detection or `agents/evidence/analysis/` write-up. Deep multi-pass audit → `universal-project-analysis`.
It is relevant to workflows involving Documentation, Engineering, Research.
SkillSignal detected this source-specific command: npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/project-analyzer". Inspect the repository and command before running it.
The upstream source does not declare a dedicated Agent platform.
No obvious permission action was detected by the static rules. This is not proof that the Skill is safe.
This page combines upstream documentation with deterministic repository, quality, and static-risk signals. It is not described as a manual test or security review.
SkillSignal brief
ONLY when user asks for single-pass tech-stack detection or `agents/evidence/analysis/` write-up. Deep multi-pass audit → `universal-project-analysis`.
Useful in these contexts
Core capabilities
Distilled from the source
About 7 min · 12 sections
Starting work on an unfamiliar project
Onboarding to a new codebase
Auditing the current state of agent docs, contexts, and features
Creating a baseline understanding of the project for future work
Ask scope: Full analysis or specific area (e.g. only domains, only API)?
Run phases incrementally — show findings after each phase, ask before continuing.
Write files after each phase — don't batch all writing to the end.
Ask before creating each file with numbered options:
Update existing files if re-running analysis — don't create duplicates.
Structured analysis document in agents/evidence/analysis/
Tech stack inventory with versions and dependencies
Architecture diagram or module map
Quality breakdown
Based on traceable docs and repository signals; stars are not treated as quality.
Compare before choosing
These links are selected from shared tasks, functions, stacks, platforms, and same-name variants. Compare the source owner, documentation, permissions, and maintenance signals.
Use when creating or rewriting a README for a reusable package or library. Focus on installability, minimal usage example, compatibility, and developer onboarding.
Build applications and agents with Exa's API Platform: search, contents, answer, context, Agent API, monitors, websets, OpenAI-compatible endpoints, and exa-py / exa-js. Use when choosing Exa endpoints, writing Exa API calls, integrating semantic web search or research into products, or debugging Exa request shapes. Load references/ on demand for endpoint details.
Build an organic-traffic operating system for any site or app: a multi-phase, resumable engine that ships programmatic landing pages (alternatives, comparisons, use-cases, playbooks) on top of real keyword research. Use when the user says 'SEO machine', 'build organic traffic', 'rank on Google', 'we need traffic', 'alternatives pages', 'comparison pages', '/for/ pages', 'programmatic SEO', or 'build an SEO engine'. Distinct from `seo-audit` (one-off diagnostic) and `seo-content` (single-article
Core Python library for astronomy and astrophysics workflows that need Astropy APIs, including units/quantities, coordinates, FITS I/O, tables, time systems, WCS, and cosmology. Use when implementing or debugging astronomical data analysis code with Astropy.
Use when optimizing test suite performance — database setup, seeder optimization, parallel testing, CI pipeline efficiency, or RefreshDatabase alternatives.
Use this skill when:
Do NOT use when:
A project analysis is a systematic walkthrough of the entire codebase that:
agents/evidence/analysis/It orchestrates other skills and commands to produce a comprehensive picture.
All analysis results are written to agents/evidence/analysis/ in a structured directory layout.
The goal: someone could rebuild the project from these documents alone.
agents/evidence/analysis/
├── overview.md ← Project profile, tech stack, architecture summary
├── architecture/
│ ├── database.md ← Schema, connections, multi-tenancy, migrations
│ ├── api.md ← Versioning, routes, middleware, auth flow
│ ├── infrastructure.md ← Docker, CI/CD, deployment, AWS, monitoring
│ └── patterns.md ← Design patterns used (Repository, Service, Pipeline, etc.)
├── domains/
│ ├── {domain}.md ← One file per business domain (see below)
│ └── ...
├── modules/
│ ├── {module}.md ← One file per module (see below)
│ └── ...
├── models/
│ ├── api-database.md ← All api_database models, relationships, key columns
│ └── customer-database.md ← All customer_database models, relationships, key columns
├── services/
│ └── service-map.md ← All services with purpose, dependencies, key methods
├── api/
│ ├── endpoints-v1.md ← All v1 endpoints: route, controller, request, resource
│ ├── endpoints-v2.md ← All v2 endpoints: route, controller, request, resource
│ └── contracts.md ← API contracts: request/response shapes, validation rules
└── testing/
└── test-map.md ← Test suites, coverage areas, test data strategy
Each business domain gets its own file in agents/evidence/analysis/domains/. A domain groups
related models, services, controllers, jobs, and events around a business concept:
| Domain | What it covers |
|---|---|
projects.md | Construction sites, positions, project status, geocoding |
planning.md | Appointments, crew assignments, capacity planning |
users.md | Employees, roles, permissions, authentication |
equipment.md | Machines, vehicles, repairs, time registration |
working-times.md | Time tracking, absences, wage types, logs |
reports.md | Daily reports, images, measured quantities |
files.md | File uploads, file links, storage |
customers.md | Tenant management, customer config, modules |
webhooks.md | Webhook dispatching, retry logic |
imports.md | Client software imports (cross-reference with module) |
gps.md | GPS tracking, geofencing |
notifications.md | Email, push, private messages, Slack |
dashboard.md | Dashboard widgets, statistics |
Not every project has all domains. Only create files for domains that actually exist.
Each domain file should contain:
# Domain: {Name}
## Purpose
{What this domain does in 2-3 sentences}
## Models
| Model | Table | Connection | Key Relationships |
|---|---|---|---|
## Services
| Service | Purpose | Key Methods |
|---|---|---|
## Controllers (API Endpoints)
| Endpoint | Controller | Request | Resource |
|---|---|---|---|
## Jobs & Events
| Class | Type | Trigger | What it does |
|---|---|---|---|
## Business Rules
- {Rule 1: e.g. "A project can only be deleted if it has no working times"}
- {Rule 2}
## Data Flow
{Describe how data moves through this domain — from input to storage to output}
## Dependencies
- Depends on: {other domains}
- Depended on by: {other domains}
Each module gets its own file in agents/evidence/analysis/modules/. Format:
# Module: {Name}
## Purpose
{What this module does}
## Structure
{Directory tree with key files}
## Public API
{What other parts of the app use from this module: Services, Events, Models}
## Internal Components
{Controllers, Jobs, Commands, Listeners that are module-internal}
## Configuration
{Config files, .env variables, feature flags}
## Testing
{Test suites, test data, stubs}
| Check | How to detect |
|---|---|
| PHP runtime + version | composer.json → require.php |
| Laravel application | artisan file at repo root + laravel/framework in composer.json |
| Symfony application | bin/console + symfony/framework-bundle in composer.json |
| Composer package | composer.json without artisan / bin/console |
| Node.js runtime | package.json exists |
| TypeScript | tsconfig.json exists |
| Frontend framework | package.json → react, vue, svelte, solid, astro, @angular/core |
| Meta-framework | package.json → next, nuxt, remix, sveltekit, astro |
| Python runtime | pyproject.toml, requirements.txt, setup.py, or Pipfile |
| Python framework | pyproject.toml / requirements.txt → django, fastapi, flask |
| Go module | go.mod exists |
| Rust crate / workspace | Cargo.toml exists |
| Ruby app | Gemfile → rails, sinatra |
| .NET project | *.csproj, *.fsproj, or global.json |
| Java / Kotlin | pom.xml, build.gradle, or build.gradle.kts |
After detecting any match, record the stack in the analysis output and select the matching project-analysis-* sub-skill (Laravel, Symfony, Next.js, React, Node/Express, Zend/Laminas) — fall back to project-analysis-core if no framework-specific sub-skill applies.
| Signal | Type |
|---|---|
artisan + laravel/framework | Laravel application |
bin/console + symfony/framework-bundle | Symfony application |
composer.json without artisan / bin/console | Composer package or legacy PHP |
package.json with next / nuxt / remix / sveltekit / astro | Meta-framework SSR/SSG app |
package.json with express / fastify / koa / hapi | Node HTTP service |
package.json with @nestjs/core | NestJS application |
pyproject.toml with django / fastapi / flask | Python web app |
go.mod with gin-gonic/gin / labstack/echo / gofiber/fiber | Go HTTP service |
Module system (app/Modules/, src/modules/, packages/*) | Modular monolith / monorepo |
Multi-tenant signal (customer_database, tenant middleware, RLS) | Multi-tenant SaaS |
apps/* + packages/* + turbo.json / nx.json / pnpm-workspace | Monorepo |
| Signal | Meaning |
|---|---|
PHP: no declare(strict_types=1) in most files | Pre-modern PHP style |
| PHP: no typed properties / return types | Legacy PHP (< 7.4) |
PHP: no phpstan.neon / rector.php | No static analysis |
TS: // @ts-ignore / // @ts-nocheck density; any widespread | Untyped TypeScript |
TS: no tsconfig.json strict: true | Loose TypeScript |
JS: no ESLint config or eslint.config.* | No linting |
Python: no type hints in most signatures; no py.typed | Untyped Python |
Python: no mypy.ini / pyrightconfig.json / ruff.toml | No static analysis |
Go: no golangci.yml | No lint pipeline |
Rust: no clippy.toml and warnings ignored | No lint hygiene |
var_dump() / console.log() / print() / fmt.Println() left in code | Legacy debugging patterns |
| No tests or very few tests | Low test coverage |
| Mixed naming conventions across the same module | Inconsistent standards |
| Check | How to detect |
|---|---|
| Task runner | Makefile, Taskfile.yml, justfile, package.json scripts, composer.json scripts |
| Docker | docker-compose.yml, compose.yaml, Dockerfile |
| CI/CD | .github/workflows/, .gitlab-ci.yml, .circleci/config.yml, azure-pipelines.yml |
| Quality tools | PHP: phpstan.neon, ecs.php, rector.php. TS/JS: eslint.config.*, .prettierrc*, tsconfig.json. Python: ruff.toml, mypy.ini. Go: .golangci.yml. Rust: clippy.toml |
| Editor config | .editorconfig |
| Code review | CODEOWNERS, PR templates (.github/pull_request_template.md) |
| Dependencies | Lockfile presence: composer.lock, package-lock.json, pnpm-lock.yaml, yarn.lock, poetry.lock, uv.lock, go.sum, Cargo.lock |
AGENTS.md, .github/copilot-instructions.md, README.mdagents/evidence/analysis/overview.mdagents/evidence/analysis/architecture/*.mdagents/evidence/analysis/models/api-database.md, customer-database.mdagents/evidence/analysis/domains/{domain}.md (one per domain)agents/evidence/analysis/api/endpoints-v1.md, endpoints-v2.md, contracts.mdagents/evidence/analysis/services/service-map.mdagents/evidence/analysis/modules/{module}.md (one per module)agents/evidence/analysis/architecture/infrastructure.md, agents/evidence/analysis/testing/test-map.mdagents/reference/docs/, agents/settings/contexts/, module agents//context-create/context-create/context-refactor| Skill | How it's used |
|---|---|
project-docs | Read existing docs before analyzing each area |
module-management | Detect and inventory modules |
context-create | Create/update context documents |
feature-planning | Identify planned but undocumented features |
agent-docs-writing | Audit and maintain agent documentation |
roadmap-management | Review roadmap status |
api-endpoint | Understand endpoint structure for API analysis |
database | Understand schema and multi-tenancy for data layer analysis |
> 1. Create — {filename}
> 2. Skip
agents/evidence/analysis/, not in .augment/.vendor/ or node_modules/.agents/reference/docs/ or agents/settings/contexts/ —
reference it instead. Analysis files complement existing docs, they don't replace them.