Borrowing it
Nothing to install: this file belongs to lets-mica/mica-admin. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/lets-mica/mica-admin/main/.claude/skills/mica-admin-backend/SKILL.mdgit clone --depth 1 https://github.com/lets-mica/mica-adminWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/lets-mica/mica-admin/mica-admin-backend)<a href="https://agentmods.dev/skills/lets-mica/mica-admin/mica-admin-backend"><img src="https://agentmods.dev/badge/skills/lets-mica/mica-admin/mica-admin-backend/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/lets-mica/mica-admin/mica-admin-backend"><img src="https://agentmods.dev/badge/skills/lets-mica/mica-admin/mica-admin-backend.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00094 | $0.01640 |
| Opus 5 | $0.00047 | $0.00820 |
| Sonnet 5 | $0.00019 | $0.00328 |
| Haiku 4.5 | $0.00009 | $0.00164 |
Grade A, and why
mica-admin-backend scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 94 lines — stays where its author put it; the contents beside it link to each section on GitHub.
mica-admin 后端开发
Spring Boot 4.1 + MyBatis-Plus 3.5 + Spring Security + JWT,主包 net.dreamlu.mica.admin。
分层与文件位置
业务代码一律落在 mica-admin-server/src/main/java/net/dreamlu/mica/admin/project/<module>/:
| 层 | 目录 | 命名 | 基类/父接口 |
|---|---|---|---|
| 实体 | entity/ |
SysBanner |
extends BaseModel |
| 查询条件 | pojo/ |
BannerQuery |
纯 @Data POJO |
| Mapper | mapper/ |
SysBannerMapper + 同名 .xml |
BaseMapper<T> |
| 服务接口 | service/ |
ISysBannerService |
IService<T> |
| 服务实现 | service/impl/ |
SysBannerServiceImpl |
ServiceImpl<M, T> |
| 控制器 | controller/ |
SysBannerController |
extends BaseController |
框架层(framework/)只在需要扩展安全、AOP、序列化等横切能力时才改。
完整可复制模板见 references/crud-module.md。
硬性约定
响应格式 — 成功直接返回裸数据体(对象 / List / IPage),不要手工包 R.success();写操作返回 void。失败由全局异常处理器包成 { code, msg },且成功 code = 0(不是 200),前端拦截器按此适配,不要改。
审计字段 — BaseModel 已含 id/createdBy/createdAt/updatedBy/updatedAt,由 MybatisPlusMetaObjectHandler 自动填充。实体里不要重复声明,也不要手动 set。
分页 — 控制器直接把 Page<T> page 作为入参(Spring 自动绑定 ?current=&size=),返回 IPage<T>:
public IPage<SysBanner> list(Page<SysBanner> page, BannerQuery query) {
return bannerService.page(page, bannerService.getQueryWrapper(query));
}
查询条件构造 — 统一放在 service 的 getQueryWrapper(query),用 LambdaQueryWrapper + 条件生效标志位,不要在控制器里拼 wrapper:
wrapper.like(StringUtil.isNotBlank(name), SysBanner::getName, name);
wrapper.eq(query.getEnabled() != null, SysBanner::getEnabled, query.getEnabled());
时间范围用 List<LocalDateTime> createTime,size() > 1 时 between。
业务异常 — 用 R.throwFail("存在用户岗位关系"),不要自己 throw new RuntimeException。
校验 — 控制器方法加 @Validated,类上加 @Validated 才能校验 @NotEmpty 等方法级参数。新增/修改共用实体时用 CreateGroup / UpdateGroup 分组(BaseModel.id 已按分组标注 @Null / @NotNull)。
删除 — 批量删除签名固定为 @NotEmpty @RequestBody Set<Long> ids,DELETE 方法。有关联关系的先校验再删(deleteIfUnusedByIds)。
缓存 — @Cacheable(value = "sys:post:user#10m", key = "#userId"),value 用 冒号分隔业务名#TTL 格式,TTL 由 mica 的 Redis cache 解析。
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 94 lines · 94 tokens per session scan A 6654487a37e1
mica-admin-backend is a skill published in the GitHub repository lets-mica/mica-admin (6 stars, last pushed 2d ago), licensed Apache-2.0. It adds 94 tokens to every session and 1,640 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
creating-springboot-projects
Use when starting a new Spring Boot 4 project — scaffolding a service, REST API, or modular backend; picking an architecture (layered, package-by-module, modular-monolith, tomato, DDD-hexagonal); selecting Spring Boot 4 features; or applying the bundled templates and references in this skill. Not for migrating…
springboot-migration
Use when upgrading an existing Spring Boot application to Boot 4 — dependency transitions, starter renames, test-annotation migration (e.g. @MockBean → @MockitoBean), Jackson 3 issues, related Spring Modulith 2 or Testcontainers 2 upgrade work, or planning a phased migration. Not for greenfield project creation or…
create-spring-boot-project
Creates a new Spring Boot project by downloading it from start.spring.io using curl, then extracting it into the target directory. Use this when a user asks to create, generate, initialize, or scaffold a new Spring Boot project.
spring-boot
Spring Boot 3.x - Java framework for production-ready applications with dependency injection, REST APIs, data access, security, and actuator monitoring.
spring-boot-4-conventions
Spring Framework 7 / Spring Boot 4 idioms and defaults. Use when writing or reviewing controllers, services, configuration, HTTP clients, async/virtual-thread code, or anything touching Spring's programming model.
spring-explore
Explores a Spring Boot application and builds primary context: tech stack, module structure, domain entities, REST endpoints. Triggers on explicit requests: "explore project", "describe project", "project overview", "what is this project", "project structure", "tech stack", "give me context about the project", or…