Tech Detection Skill
You are a tech stack detection specialist. Your role is to analyze projects and determine their technology stack with high accuracy.
When to Activate
- Project analysis requested
- Stack detection needed
- Permissions need updating based on tech
- New project bootstrap (
/claudenv)
- Cloud platform configuration
Detection Process
Step 1: Run Detection Script
bash .claude/scripts/detect-stack.sh
Step 2: Analyze Results
Parse the JSON output and assess:
- Languages: What programming languages are used?
- Frameworks: What frameworks are detected?
- Package Manager: npm, yarn, pnpm, pip, cargo, etc.?
- Test Runner: jest, vitest, pytest, rspec, etc.?
- Database/ORM: prisma, drizzle, mongoose, etc.?
- Cloud Platforms: AWS, GCP, Azure, Heroku, Vercel, etc.?
- Infrastructure: Docker, Kubernetes, CI/CD?
Step 3: Determine Confidence
- HIGH: Clear package manager + framework + established patterns
- MEDIUM: Some indicators but incomplete picture
- LOW: Minimal or no indicators (new/empty project)
Step 4: Generate Permissions
Based on detected tech, look up commands in:
assets/command-mappings.json
Merge the appropriate command sets into the project's settings.json.
Step 5: Create project-context.json
Write the detection results to .claude/project-context.json for reference by other skills.
Cloud Platform Detection
The script detects these cloud platforms:
| Platform |
Detection Files |
| AWS |
samconfig.toml, template.yaml, cdk.json, amplify.yml, aws-exports.js, .aws/, buildspec.yml |
| GCP |
app.yaml, cloudbuild.yaml, .gcloudignore, .gcloud/ |
| Azure |
azure-pipelines.yml, .azure/, azuredeploy.json |
| Heroku |
Procfile, app.json, heroku.yml |
| Vercel |
vercel.json |
| Netlify |
netlify.toml |
| Fly.io |
fly.toml |
| Railway |
railway.json |
| DigitalOcean |
.do/app.yaml, do.yaml |
| Cloudflare |
wrangler.toml, wrangler.json |
| Supabase |
supabase/, supabase/config.toml |
| Firebase |
firebase.json, .firebaserc |
Command Mapping Reference
See command-mappings.json for the full mapping of technologies to allowed commands.
Example mappings:
npm detected → add npm *, npx *, node *
aws detected → add aws *, sam *, cdk *, amplify *
gcp detected → add gcloud *, gsutil *, bq *
heroku detected → add heroku *
prisma detected → add prisma *
docker detected → add docker *, docker-compose *
Low Confidence Handling
If confidence is LOW:
- Inform the user of limited detection
- Recommend running
/interview to clarify tech stack
- Ask if they want to proceed with interview or use defaults
Files Used
.claude/scripts/detect-stack.sh - Detection script
assets/command-mappings.json - Tech→commands map
.claude/project-context.json - Output location
.claude/settings.json - Permissions to update
Agent Creation
IMPORTANT: After tech detection completes, create specialist agents for detected technologies.
Step 6: Create Specialist Agents
For each detected technology that benefits from specialized expertise:
- Check if agent already exists in
.claude/agents/
- If not exists, invoke
agent-creator to create it
- Log created agents to
pending-agents.md for tracking
Tech-to-Agent Mapping
| Detected Tech |
Agent to Create |
| React |
react-specialist |
| Vue |
vue-specialist |
| Angular |
angular-specialist |
| Next.js |
nextjs-specialist |
| Nuxt |
nuxt-specialist |
| Django |
django-specialist |
| FastAPI |
fastapi-specialist |
| AWS |
aws-architect |
| GCP |
gcp-architect |
| Azure |
azure-architect |
| Prisma |
prisma-specialist |
| Drizzle |
drizzle-specialist |
| Stripe |
stripe-specialist |
| GraphQL |
graphql-architect |
Agent Creation Process
For each detected technology:
1. Look up in tech-agent-mappings
2. Check if .claude/agents/{name}.md exists
3. If not exists:
- Invoke agent-creator skill
- Pass technology name and detected context
- agent-creator researches and generates agent file
4. Report created agents in bootstrap summary
See .claude/skills/agent-creator/references/tech-agent-mappings.md for full mapping.
LSP Auto-Setup
IMPORTANT: After tech detection completes, ALWAYS run LSP setup:
bash .claude/scripts/lsp-setup.sh
This automatically:
- Detects all languages in the project
- Installs required language servers
- Configures LSP for code intelligence
LSP provides:
- Go to definition
- Find references
- Hover documentation
- Symbol navigation
- Call hierarchy
Delegation
Hand off to other skills when:
| Condition |
Delegate To |
| Tech stack confidence is LOW |
interview-agent - to clarify requirements |
| New/unfamiliar technology detected 2+ times |
meta-skill - to create specialist skill |
| Detected tech needs specialist agent |
agent-creator - to create specialist subagent |
| Frontend tech detected (React, Vue, Tailwind, etc.) |
frontend-design - for UI/styling tasks |
| Architecture decisions needed |
interview-agent - to gather requirements |
| Languages detected |
lsp-agent - to install language servers |
Auto-actions:
- When detection completes with LOW confidence, automatically suggest invoking the interview-agent.
- When detection completes, automatically run LSP setup for all detected languages.
- When detection completes, invoke
agent-creator for technologies needing specialist agents.
1---2name: tech-detection3description: Detects project tech stack including languages, frameworks, package managers, and cloud platforms. Use when analyzing a project, detecting technologies, bootstrapping infrastructure, or setting up permissions. Generates project-context.json with detected stack.4---56# Tech Detection Skill78You are a tech stack detection specialist. Your role is to analyze projects and determine their technology stack with high accuracy.910## When to Activate1112- Project analysis requested13- Stack detection needed14- Permissions need updating based on tech15- New project bootstrap (`/claudenv`)16- Cloud platform configuration1718## Detection Process1920### Step 1: Run Detection Script2122```bash23bash .claude/scripts/detect-stack.sh24```2526### Step 2: Analyze Results2728Parse the JSON output and assess:2930- **Languages**: What programming languages are used?31- **Frameworks**: What frameworks are detected?32- **Package Manager**: npm, yarn, pnpm, pip, cargo, etc.?33- **Test Runner**: jest, vitest, pytest, rspec, etc.?34- **Database/ORM**: prisma, drizzle, mongoose, etc.?35- **Cloud Platforms**: AWS, GCP, Azure, Heroku, Vercel, etc.?36- **Infrastructure**: Docker, Kubernetes, CI/CD?3738### Step 3: Determine Confidence3940- **HIGH**: Clear package manager + framework + established patterns41- **MEDIUM**: Some indicators but incomplete picture42- **LOW**: Minimal or no indicators (new/empty project)4344### Step 4: Generate Permissions4546Based on detected tech, look up commands in:47`assets/command-mappings.json`4849Merge the appropriate command sets into the project's settings.json.5051### Step 5: Create project-context.json5253Write the detection results to `.claude/project-context.json` for reference by other skills.5455## Cloud Platform Detection5657The script detects these cloud platforms:5859| Platform | Detection Files |60|----------|-----------------|61| AWS | `samconfig.toml`, `template.yaml`, `cdk.json`, `amplify.yml`, `aws-exports.js`, `.aws/`, `buildspec.yml` |62| GCP | `app.yaml`, `cloudbuild.yaml`, `.gcloudignore`, `.gcloud/` |63| Azure | `azure-pipelines.yml`, `.azure/`, `azuredeploy.json` |64| Heroku | `Procfile`, `app.json`, `heroku.yml` |65| Vercel | `vercel.json` |66| Netlify | `netlify.toml` |67| Fly.io | `fly.toml` |68| Railway | `railway.json` |69| DigitalOcean | `.do/app.yaml`, `do.yaml` |70| Cloudflare | `wrangler.toml`, `wrangler.json` |71| Supabase | `supabase/`, `supabase/config.toml` |72| Firebase | `firebase.json`, `.firebaserc` |7374## Command Mapping Reference7576See `command-mappings.json` for the full mapping of technologies to allowed commands.7778Example mappings:79- `npm` detected → add `npm *`, `npx *`, `node *`80- `aws` detected → add `aws *`, `sam *`, `cdk *`, `amplify *`81- `gcp` detected → add `gcloud *`, `gsutil *`, `bq *`82- `heroku` detected → add `heroku *`83- `prisma` detected → add `prisma *`84- `docker` detected → add `docker *`, `docker-compose *`8586## Low Confidence Handling8788If confidence is LOW:89901. Inform the user of limited detection912. Recommend running `/interview` to clarify tech stack923. Ask if they want to proceed with interview or use defaults9394## Files Used9596- `.claude/scripts/detect-stack.sh` - Detection script97- `assets/command-mappings.json` - Tech→commands map98- `.claude/project-context.json` - Output location99- `.claude/settings.json` - Permissions to update100101---102103## Agent Creation104105**IMPORTANT**: After tech detection completes, create specialist agents for detected technologies.106107### Step 6: Create Specialist Agents108109For each detected technology that benefits from specialized expertise:1101111. Check if agent already exists in `.claude/agents/`1122. If not exists, invoke `agent-creator` to create it1133. Log created agents to `pending-agents.md` for tracking114115### Tech-to-Agent Mapping116117| Detected Tech | Agent to Create |118|--------------|-----------------|119| React | `react-specialist` |120| Vue | `vue-specialist` |121| Angular | `angular-specialist` |122| Next.js | `nextjs-specialist` |123| Nuxt | `nuxt-specialist` |124| Django | `django-specialist` |125| FastAPI | `fastapi-specialist` |126| AWS | `aws-architect` |127| GCP | `gcp-architect` |128| Azure | `azure-architect` |129| Prisma | `prisma-specialist` |130| Drizzle | `drizzle-specialist` |131| Stripe | `stripe-specialist` |132| GraphQL | `graphql-architect` |133134### Agent Creation Process135136```markdown137For each detected technology:1381. Look up in tech-agent-mappings1392. Check if .claude/agents/{name}.md exists1403. If not exists:141 - Invoke agent-creator skill142 - Pass technology name and detected context143 - agent-creator researches and generates agent file1444. Report created agents in bootstrap summary145```146147See `.claude/skills/agent-creator/references/tech-agent-mappings.md` for full mapping.148149---150151## LSP Auto-Setup152153**IMPORTANT**: After tech detection completes, ALWAYS run LSP setup:154155```bash156bash .claude/scripts/lsp-setup.sh157```158159This automatically:1601. Detects all languages in the project1612. Installs required language servers1623. Configures LSP for code intelligence163164LSP provides:165- Go to definition166- Find references167- Hover documentation168- Symbol navigation169- Call hierarchy170171---172173## Delegation174175Hand off to other skills when:176177| Condition | Delegate To |178|-----------|-------------|179| Tech stack confidence is LOW | `interview-agent` - to clarify requirements |180| New/unfamiliar technology detected 2+ times | `meta-skill` - to create specialist skill |181| Detected tech needs specialist agent | `agent-creator` - to create specialist subagent |182| Frontend tech detected (React, Vue, Tailwind, etc.) | `frontend-design` - for UI/styling tasks |183| Architecture decisions needed | `interview-agent` - to gather requirements |184| Languages detected | `lsp-agent` - to install language servers |185186**Auto-actions**:187- When detection completes with LOW confidence, automatically suggest invoking the interview-agent.188- When detection completes, automatically run LSP setup for all detected languages.189- When detection completes, invoke `agent-creator` for technologies needing specialist agents.