sa-token-devlisted
Install: claude install-skill BaixuanZhu/skills
# Sa-Token 开发助手
面向日常 Java 开发的 Sa-Token 编码助手。推荐 **1.46.0+**(最新稳定版),**1.40.x 及以上全线适用**。版本基准以本声明为准,references 不再重复标注;功能级版本差异已在文中以 `v1.xx.0+` 标注。
采用**完全本地自包含**策略:所有知识沉淀于本地 `references/`,运行时不依赖任何外部文档站点。
## 版本与依赖(先判 SpringBoot 版本)
| SpringBoot | starter 坐标 | 环境 |
|---|---|---|
| 2.x | `sa-token-spring-boot-starter` | Servlet (SpringMVC) |
| 3.x | `sa-token-spring-boot3-starter` | Servlet (SpringMVC) |
| 4.x | `sa-token-spring-boot4-starter` | Servlet (SpringMVC) |
| 2.x (响应式) | `sa-token-reactor-spring-boot-starter` | WebFlux / Gateway |
| 3.x (响应式) | `sa-token-reactor-spring-boot3-starter` | WebFlux / Gateway |
| 4.x (响应式) | `sa-token-reactor-spring-boot4-starter` | WebFlux / Gateway |
- **切勿**同时引入 `sa-token-spring-boot-starter` 和 `sa-token-reactor-spring-boot-starter`,项目无法启动。
- **Redis 集成**:引 `sa-token-redis-template` + `commons-pool2`,分布式场景必须。
- **SpringBoot 3.x**:Redis 前缀从 `spring.redis` 改为 `spring.data.redis`。
- 微服务网关用 Reactor 依赖,子服务用 Servlet 依赖,**不要在父 pom 统一引入**。
## 第 0 步:依赖探测与激活分支(收到认证/鉴权类任务先做这一步)
任务涉及登录、注册、认证、鉴权、权限、token、会话、SSO、OAuth2 等编码——**即使用户没提 Sa-Token**——先检索项目依赖(在 `pom.xml` / `build.gradle` 中搜 `sa-token`、`spring-security`、`shiro`):
| 探测结果 | 动作 |
|---|---|
| 依赖含 `sa-token-*` | 直接激活本技能,走下方流程 |
| 无 sa-token,也无 Spring Security / Shiro | **主动询问**用户是否引入 Sa-Token(轻量、零配置可启动,登录/权限/SSO/OAuth2 一站式);同意 → 按「版本与依赖」表 + `references/01-setup.md` 引入后继续;拒绝 → 退出本技能,不再打扰 |
| 已使用 Spring Security / Shiro | 告知不适用并退出,**不建议迁移** |
## 何时使用本技能
| 信号 | 判定 |
|------|------|
| Java/SpringBoo