Shared/Tech Stack Detection logo

Shared/Tech Stack Detection

Community
echoVic
shared/tech-stack-detection

检测项目技术栈的通用方法,通过分析配置文件识别语言、框架、工具链

Overview

PublisherechoVic
Repositoryboss-skill
Skill nameshared/tech-stack-detection
Stars
562
Forks
51
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by echoVic on GitHub. Read the source before you install it.

Installation

Install the Shared/Tech Stack Detection AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/echoVic/boss-skill/tree/main/skill/skills/shared/tech-stack-detection
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/echoVic/boss-skill.git /tmp/boss-skill
mkdir -p .claude/skills
cp -r /tmp/boss-skill/skill/skills/shared/tech-stack-detection .claude/skills/echovic-shared-tech-stack-detection
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Shared/Tech Stack Detection in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Shared/Tech Stack Detection on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Shared/Tech Stack Detection is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

技术栈检测方法

适用场景

在进行技术选型、架构设计、代码生成前,需要先了解项目当前使用的技术栈,以便:

  • 遵循项目现有的技术选择
  • 生成符合项目规范的代码
  • 避免引入不兼容的技术

检测方法

1. 检测配置文件

使用 Read 或 Glob 工具检测项目根目录的配置文件:

JavaScript/TypeScript 生态
文件说明检测内容
package.jsonNode.js 项目配置dependencies, devDependencies, scripts
tsconfig.jsonTypeScript 配置确认使用 TypeScript
next.config.jsNext.js 配置确认使用 Next.js
vite.config.jsVite 配置确认使用 Vite
nuxt.config.jsNuxt 配置确认使用 Nuxt

检测命令:

bash
# 检测是否存在
ls package.json tsconfig.json next.config.js vite.config.js 2>/dev/null

# 读取 package.json
Read(file_path: "package.json")

关键依赖识别:

  • react: React 项目
  • vue: Vue 项目
  • next: Next.js 项目
  • @angular/core: Angular 项目
  • express: Express 后端
  • fastify: Fastify 后端
  • prisma: Prisma ORM
  • typeorm: TypeORM
Python 生态
文件说明检测内容
requirements.txtpip 依赖依赖列表
pyproject.tomlPoetry/PDM 配置依赖和项目配置
PipfilePipenv 配置依赖
setup.py包配置项目元数据

关键依赖识别:

  • django: Django 项目
  • flask: Flask 项目
  • fastapi: FastAPI 项目
  • sqlalchemy: SQLAlchemy ORM
  • pytest: 使用 pytest 测试
Go 生态
文件说明检测内容
go.modGo 模块配置依赖和 Go 版本
go.sum依赖校验和确认依赖锁定

关键依赖识别:

  • github.com/gin-gonic/gin: Gin 框架
  • github.com/gofiber/fiber: Fiber 框架
  • gorm.io/gorm: GORM ORM
Rust 生态
文件说明检测内容
Cargo.tomlCargo 配置依赖和项目配置
Cargo.lock依赖锁定确认依赖版本

关键依赖识别:

  • actix-web: Actix Web 框架
  • axum: Axum 框架
  • tokio: 异步运行时
Java/Kotlin 生态
文件说明检测内容
pom.xmlMaven 配置依赖和插件
build.gradleGradle 配置依赖和任务

关键依赖识别:

  • spring-boot-starter: Spring Boot 项目
  • quarkus: Quarkus 项目
  • micronaut: Micronaut 项目
Ruby 生态
文件说明检测内容
GemfileBundler 配置依赖
Gemfile.lock依赖锁定确认依赖版本

关键依赖识别:

  • rails: Ruby on Rails 项目
  • sinatra: Sinatra 项目

2. 检测数据库配置

文件/目录说明
prisma/schema.prismaPrisma 数据库配置
drizzle.config.tsDrizzle ORM 配置
ormconfig.jsonTypeORM 配置
alembic/Python Alembic 迁移
migrations/数据库迁移目录

数据库类型识别:

  • postgresql://: PostgreSQL
  • mysql://: MySQL
  • mongodb://: MongoDB
  • sqlite:: SQLite
  • redis://: Redis

3. 检测部署配置

文件说明
DockerfileDocker 容器化
docker-compose.ymlDocker Compose 多容器
vercel.jsonVercel 部署
.github/workflows/GitHub Actions CI/CD
netlify.tomlNetlify 部署
railway.jsonRailway 部署

4. 检测测试框架

JavaScript/TypeScript
文件/依赖框架
jest.config.jsJest
vitest.config.jsVitest
playwright.config.jsPlaywright
cypress.jsonCypress
Python
依赖框架
pytestpytest
unittestunittest (内置)
Go
文件框架
*_test.goGo 内置测试

检测流程

步骤1:检测项目类型

bash
# 使用 Glob 查找配置文件
Glob(pattern: "{package.json,go.mod,Cargo.toml,pom.xml,requirements.txt,Gemfile}")

步骤2:读取配置文件

bash
# 读取主配置文件
Read(file_path: "package.json")  # 或其他检测到的文件

步骤3:分析依赖

从配置文件中提取:

  • 语言和版本:如 Node.js 18, Python 3.11, Go 1.21
  • 主框架:如 Next.js 14, Django 5.0, Gin
  • 数据库:如 PostgreSQL, MongoDB
  • ORM:如 Prisma, SQLAlchemy, GORM
  • 测试框架:如 Jest, pytest
  • 构建工具:如 Vite, Webpack, esbuild

步骤4:输出检测结果

以结构化格式输出:

markdown
## 技术栈检测结果

### 语言和运行时
- **语言**:TypeScript
- **运行时**:Node.js 20.x
- **包管理器**:pnpm

### 前端框架
- **框架**:Next.js 14 (App Router)
- **UI 库**:React 18
- **样式**:Tailwind CSS
- **状态管理**:Zustand

### 后端框架
- **框架**:Next.js API Routes
- **ORM**:Prisma
- **数据库**:PostgreSQL

### 测试
- **单元测试**:Vitest
- **E2E 测试**:Playwright

### 部署
- **容器化**:Docker
- **CI/CD**:GitHub Actions
- **托管**:Vercel

使用示例

示例1:检测 Next.js 项目

bash
# 1. 检测配置文件
Glob(pattern: "package.json")

# 2. 读取 package.json
Read(file_path: "package.json")

# 3. 分析依赖
# 发现: "next": "14.0.0", "react": "18.2.0", "prisma": "5.0.0"

# 4. 输出结果
技术栈:Next.js 14 + React 18 + Prisma + PostgreSQL

示例2:检测 Python 项目

bash
# 1. 检测配置文件
Glob(pattern: "{requirements.txt,pyproject.toml}")

# 2. 读取配置
Read(file_path: "pyproject.toml")

# 3. 分析依赖
# 发现: fastapi, sqlalchemy, pytest

# 4. 输出结果
技术栈:FastAPI + SQLAlchemy + PostgreSQL + pytest

注意事项

  1. 优先检测现有项目:如果项目已存在配置文件,必须遵循现有技术栈
  2. 新项目才选型:只有在没有配置文件时,才进行技术选型
  3. 版本兼容性:注意依赖之间的版本兼容性
  4. 生态一致性:不要混用不同生态的工具(如 npm + poetry)

常见错误

❌ 不检测就假设:直接假设项目使用某技术,而不检测配置文件 ❌ 忽略版本:只检测框架名称,不检测版本号 ❌ 混淆生态:在 Node.js 项目中推荐 Python 工具 ❌ 重复检测:在同一个任务中多次检测相同的配置文件

Frequently asked questions

What does the Shared/Tech Stack Detection AI skill do?

检测项目技术栈的通用方法,通过分析配置文件识别语言、框架、工具链

Why use Shared/Tech Stack Detection on TypingMind?

Because you install it once and use it with any model. Shared/Tech Stack Detection is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Shared/Tech Stack Detection in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/echoVic/boss-skill/tree/main/skill/skills/shared/tech-stack-detection. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Shared/Tech Stack Detection?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Shared/Tech Stack Detection?

As many as you like. As long as a model supports skills, you can use Shared/Tech Stack Detection with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Shared/Tech Stack Detection AI skill free?

Yes. It is published on GitHub by echoVic under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇