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---5
6# Tech Detection Skill
7
8You are a tech stack detection specialist. Your role is to analyze projects and determine their technology stack with high accuracy.
9
10## When to Activate
11
12- Project analysis requested
13- Stack detection needed
14- Permissions need updating based on tech
15- New project bootstrap (`/claudenv`)
16- Cloud platform configuration
17
18## Detection Process
19
20### Step 1: Run Detection Script
21
22```bash
23bash .claude/scripts/detect-stack.sh
24```
25
26### Step 2: Analyze Results
27
28Parse the JSON output and assess:
29
30- **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?
37
38### Step 3: Determine Confidence
39
40- **HIGH**: Clear package manager + framework + established patterns
41- **MEDIUM**: Some indicators but incomplete picture
42- **LOW**: Minimal or no indicators (new/empty project)
43
44### Step 4: Generate Permissions
45
46Based on detected tech, look up commands in:
47`assets/command-mappings.json`
48
49Merge the appropriate command sets into the project's settings.json.
50
51### Step 5: Create project-context.json
52
53Write the detection results to `.claude/project-context.json` for reference by other skills.
54
55## Cloud Platform Detection
56
57The script detects these cloud platforms:
58
59| 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` |
73
74## Command Mapping Reference
75
76See `command-mappings.json` for the full mapping of technologies to allowed commands.
77
78Example 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 *`
85
86## Low Confidence Handling
87
88If confidence is LOW:
89
901. Inform the user of limited detection
912. Recommend running `/interview` to clarify tech stack
923. Ask if they want to proceed with interview or use defaults
93
94## Files Used
95
96- `.claude/scripts/detect-stack.sh` - Detection script
97- `assets/command-mappings.json` - Tech→commands map
98- `.claude/project-context.json` - Output location
99- `.claude/settings.json` - Permissions to update
100
101---
102
103## Agent Creation
104
105**IMPORTANT**: After tech detection completes, create specialist agents for detected technologies.
106
107### Step 6: Create Specialist Agents
108
109For each detected technology that benefits from specialized expertise:
110
1111. Check if agent already exists in `.claude/agents/`
1122. If not exists, invoke `agent-creator` to create it
1133. Log created agents to `pending-agents.md` for tracking
114
115### Tech-to-Agent Mapping
116
117| 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` |
133
134### Agent Creation Process
135
136```markdown
137For each detected technology:
1381. Look up in tech-agent-mappings
1392. Check if .claude/agents/{name}.md exists
1403. If not exists:
141 - Invoke agent-creator skill
142 - Pass technology name and detected context
143 - agent-creator researches and generates agent file
1444. Report created agents in bootstrap summary
145```
146
147See `.claude/skills/agent-creator/references/tech-agent-mappings.md` for full mapping.
148
149---
150
151## LSP Auto-Setup
152
153**IMPORTANT**: After tech detection completes, ALWAYS run LSP setup:
154
155```bash
156bash .claude/scripts/lsp-setup.sh
157```
158
159This automatically:
1601. Detects all languages in the project
1612. Installs required language servers
1623. Configures LSP for code intelligence
163
164LSP provides:
165- Go to definition
166- Find references
167- Hover documentation
168- Symbol navigation
169- Call hierarchy
170
171---
172
173## Delegation
174
175Hand off to other skills when:
176
177| 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 |
185
186**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.