servaasvdc/whatstack
GitHub: servaasvdc/whatstack
whatstack 是一个代码仓库技术栈识别工具,通过扫描项目清单文件快速检测编程语言、框架、基础设施、云服务、CI/CD 配置等 30 多个类别的技术组件。
Stars: 0 | Forks: 0
# whatstack
[](https://github.com/servaasvdc/whatstack/actions/workflows/ci.yml)
[](https://github.com/servaasvdc/whatstack/releases/latest)
[](LICENSE)
指向一个项目,它会告诉你里面有什么。

## 安装
从 [releases](https://github.com/servaasvdc/whatstack/releases/latest) 下载二进制文件,或者:
```
go install github.com/servaasvdc/whatstack@latest
# Nix
nix run github:servaasvdc/whatstack
```
## 用法
```
whatstack # scan current directory
whatstack ~/repos/my-project # scan a specific path
whatstack -f json # output as JSON
whatstack -f markdown # output as markdown
whatstack -f plain # tab-separated output
whatstack --depth 3 # scan deeper for sub-projects (default: 2)
whatstack --depth 0 # skip sub-project discovery
```
## 管道 (Piping)
whatstack 会自动检测 stdout 何时被管道传输,并切换为制表符分隔格式(`path\tcategory\tname\tversion\tsource`),因此它可以自然地与 Unix 工具配合使用:
```
whatstack | grep framework # filter by category
whatstack | cut -f3 # just the names
whatstack -f json | jq '.[].findings[].name' # names via jq
whatstack -f markdown >> ARCHITECTURE.md # append to docs
# 比较两个项目
diff <(whatstack ~/repos/foo | cut -f3 | sort) \
<(whatstack ~/repos/bar | cut -f3 | sort)
```
使用 `--format` 覆盖自动检测(例如在管道中使用 `--format table` 强制显示漂亮的表格)。
## Monorepos
whatstack 会自动查找子项目。它会寻找 manifest 文件(go.mod、package.json、mix.exs、Cargo.toml 等)并独立扫描每一个文件。
```
$ whatstack open-webui
━━ backend ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
── Language ───────────────────────────
Python requirements.txt
── Framework ──────────────────────────
FastAPI requirements.txt
── Database ───────────────────────────
PostgreSQL requirements.txt
MongoDB requirements.txt
── ORM ────────────────────────────────
SQLAlchemy requirements.txt
── Auth ───────────────────────────────
Authlib requirements.txt
PyJWT requirements.txt
── ML ─────────────────────────────────
Transformers requirements.txt
LangChain requirements.txt
OpenAI SDK requirements.txt
Anthropic SDK requirements.txt
━━ open-webui ━━━━━━━━━━━━━━━━━━━━━━━━━━━
── Language ───────────────────────────
TypeScript 5.5 package.json
── Framework ──────────────────────────
SvelteKit 2.5 package.json
── CSS ────────────────────────────────
Tailwind 4.0 package.json
── Infra ──────────────────────────────
Docker Dockerfile
Docker Compose docker-compose.yaml
```
## 检测内容
32 种语言/平台检测器:Elixir, Go, Node/TypeScript, Deno, Python, Ruby, Rust, Java/Kotlin, PHP, C#/.NET, Swift, Dart/Flutter, Scala, Zig, C/C++, Lua, R, Gleam, OCaml, Haskell, Clojure, iOS, Perl, Erlang, Julia, Nim, V, Crystal, Elm, PureScript, Solidity, Bazel。
还包括 Docker, Docker Compose, Terraform, Ansible, Pulumi, Vagrant, Kubernetes, Helm,云服务商(AWS, GCP, Azure, Cloudflare, Firebase, Supabase),API 规范(OpenAPI, GraphQL, Protobuf),CI/CD(GitHub Actions, GitLab CI, Jenkins, CircleCI, Travis, Drone, Woodpecker, Bitbucket, AWS CodeBuild, Google Cloud Build, Azure Pipelines),ML/AI(OpenAI, Anthropic, LangChain, TensorFlow, PyTorch, Hugging Face, Pinecone, Qdrant 等),以及 30 多个类别 —— 数据库、ORM、队列、缓存、支付(Stripe, Paddle, LemonSqueezy)、分析(PostHog, Mixpanel, Segment, Amplitude)、功能开关(LaunchDarkly, Unleash, Flipper, GrowthBook)、邮件(SendGrid, Postmark, Mailgun, Resend, AWS SES)、实时通信(Pusher, Ably, Socket.IO, Liveblocks)、测试框架、Linter、存储、搜索、安全等。
## 许可证
MIT
标签:CLI, EVTX分析, Go, Golang, Linux安全, Monorepo 支持, Ruby工具, WiFi技术, 二进制发布, 云安全监控, 代码审计辅助, 依赖检测, 占用监测, 威胁情报, 安全编程, 开发者工具, 开源工具, 技术栈分析, 日志审计, 系统指纹识别, 资产管理, 静态分析, 项目结构分析