Agent skill

Springboot Notification Module Skill

by jiushiwon in jiushiwon/wg-skills

Spring Boot 通知模块技能。面向已有 Spring Boot 项目的开发者,提供短信发送、邮件推送、站内消息、推送通知等能力的快速集成。触发词:"短信验证码"、"发送短信"、"发送邮件"、"站内消息"、"通知模块"、"notification module"、"sms"、"email"、"mail"。

Apache-2.0Auto-check passedBackend & APIs

Install Springboot Notification Module Skill

skills CLI
$ npx skills add jiushiwon/wg-skills --skill springboot-notification-module-skill -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jiushiwon/wg-skills springboot-notification-module-skill --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jiushiwon/wg-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/vibeCoding/backend/java/springboot-module/springboot-notification-module-skill .claude/skills/springboot-notification-module-skill && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
springboot-notification-module-skill
GitHub stars
110
Token cost
~1.5k tokens
SKILL.md length
35 words
Files
3
Skills in repo
121
Repo updated
First seen
Licence
Apache-2.0

At a glance

Spring Boot 通知模块技能。面向已有 Spring Boot 项目的开发者,提供短信发送、邮件推送、站内消息、推送通知等能力的快速集成。触发词:"短信验证码"、"发送短信"、"发送邮件"、"站内消息"、"通知模块"、"notification module"、"sms"、"email"、"mail"。

  • Tasks that involve Backend development
  • SKILL.md covers 能力清单, 触发场景, 核心实现 and 不做
  • Needs SMS_ACCESS_KEY and SMS_SECRET_KEY

What it does

Springboot Notification Module Skill is an agent skill from jiushiwon/wg-skills. Spring Boot 通知模块技能。面向已有 Spring Boot 项目的开发者,提供短信发送、邮件推送、站内消息、推送通知等能力的快速集成。触发词:"短信验证码"、"发送短信"、"发送邮件"、"站内消息"、"通知模块"、"notification module"、"sms"、"email"、"mail"。

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `README.md` and `api-contract-notification.md`).

It sits in Backend & APIs, covering Backend development. It works with Spring Boot. The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Backend development

Example prompts

  • “notification module”
  • “/springboot-notification-module-skill”

Requirements

  • A credential in SMS_ACCESS_KEY
  • A credential in SMS_SECRET_KEY

What it can do on your machine

Read from SKILL.md and the folder at commit a4a640b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are java, xml and yaml).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • SMS_ACCESS_KEY
    • SMS_SECRET_KEY
    • MAIL_PASSWORD

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Springboot Notification Module Skill loads about 1.5k tokens when it runs. Until then it costs about 48 tokens; SKILL.md has 35 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~48
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jiushiwon/wg-skills at commit a4a640b, republished under its Apache-2.0 licence (© jiushiwon). 35 words, ~1,477 tokens.

Download SKILL.mdSave it as .claude/skills/springboot-notification-module-skill/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
springboot-notification-module-skill
description
Spring Boot 通知模块技能。面向已有 Spring Boot 项目的开发者,提供短信发送、邮件推送、站内消息、推送通知等能力的快速集成。触发词:"短信验证码"、"发送短信"、"发送邮件"、"站内消息"、"通知模块"、"notification module"、"sms"、"email"、"mail"。

Spring Notification Module Skill

面向已有 Spring Boot 项目的开发者,快速集成通知能力。

能力清单

能力说明
短信发送验证码/通知短信
邮件推送HTML/文本邮件/模板邮件
站内消息系统通知/未读消息
推送通知极光/信鸽/个推
消息模板模板管理和渲染

触发场景

用户说"帮我加短信"或"集成通知"时触发。

核心实现

依赖配置
xml
<!-- 短信 -->
<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>dysmsapi20170525</artifactId>
</dependency>

<!-- 邮件 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-mail</artifactId>
</dependency>

<!-- 站内消息 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-data-redis</artifactId>
</dependency>
配置
yaml
# 短信配置
sms:
  aliyun:
    access-key: ${SMS_ACCESS_KEY:}
    secret-key: ${SMS_SECRET_KEY:}
    sign-name: ${SMS_SIGN_NAME:}
    template-code: ${SMS_TEMPLATE_CODE:}

# 邮件配置
spring:
  mail:
    host: ${MAIL_HOST:smtp.qq.com}
    port: 587
    username: ${MAIL_USERNAME:}
    password: ${MAIL_PASSWORD:}
    properties:
      mail:
        smtp:
          auth: true
          starttls:
            enable: true

# 站内消息配置
notification:
  redis-key-prefix: notification:
实体类
java
// 站内消息
@Entity
@Table(name = "wg_notification")
public class Notification {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    
    private String userId;
    
    private String title;
    
    @Column(columnDefinition = "text")
    private String content;
    
    @Enumerated(EnumType.STRING)
    private NotificationType type;
    
    private String link;
    
    private Integer isRead;
    
    private LocalDateTime createdAt;
}

public enum NotificationType { SYSTEM, SMS, EMAIL, PUSH }

@Entity
@Table(name = "wg_sms_code")
public class SmsCode {
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    
    private String phone;
    
    private String code;
    
    private String templateCode;
    
    private LocalDateTime expireTime;
    
    private Integer used;
    
    private LocalDateTime createdAt;
}
服务层
java
@Service
public class NotificationService {
    
    @Autowired
    private SmsTemplate smsTemplate;
    
    @Autowired
    private SpringMailSender mailSender;
    
    @Autowired
    private NotificationRepository notificationRepository;
    
    // 发送短信验证码
    public void sendSmsCode(String phone, String templateCode) {
        String code = generateCode(6);
        
        // 调用短信API
        SendSmsRequest request = new SendSmsRequest()
            .setPhoneNumbers(phone)
            .setSignName("您的签名")
            .setTemplateCode(templateCode)
            .setTemplateParam("{\"code\":\"" + code + "\"}");
        smsTemplate.send(request);
        
        // 保存验证码
        SmsCode smsCode = new SmsCode();
        smsCode.setPhone(phone);
        smsCode.setCode(code);
        smsCode.setTemplateCode(templateCode);
        smsCode.setExpireTime(LocalDateTime.now().plusMinutes(5));
        smsCodeRepository.save(smsCode);
    }
    
    // 发送邮件
    public void sendEmail(String to, String subject, String content) {
        SimpleMailMessage message = new SimpleMailMessage();
        message.setFrom("noreply@example.com");
        message.setTo(to);
        message.setSubject(subject);
        message.setText(content);
        mailSender.send(message);
    }
    
    // 发送站内消息
    public void sendNotification(String userId, String title, String content, NotificationType type) {
        Notification notification = new Notification();
        notification.setUserId(userId);
        notification.setTitle(title);
        notification.setContent(content);
        notification.setType(type);
        notification.setIsRead(0);
        notification.setCreatedAt(LocalDateTime.now());
        notificationRepository.save(notification);
        
        // Redis 推送
        redisTemplate.convertAndSend("notification:" + userId, notification);
    }
}
Controller
java
@RestController
@RequestMapping("/api/notification")
public class NotificationController {
    
    @Autowired
    private NotificationService notificationService;
    
    // 发送短信验证码
    @PostMapping("/sms/send")
    public ApiResponse<Void> sendSms(@RequestParam String phone) {
        notificationService.sendSmsCode(phone, "SMS_123456789");
        return ApiResponse.ok(null);
    }
    
    // 验证短信验证码
    @PostMapping("/sms/verify")
    public ApiResponse<Boolean> verifySms(@RequestParam String phone, @RequestParam String code) {
        boolean valid = notificationService.verifySmsCode(phone, code);
        return ApiResponse.ok(valid);
    }
    
    // 发送邮件
    @PostMapping("/email/send")
    public ApiResponse<Void> sendEmail(@RequestBody SendEmailRequest request) {
        notificationService.sendEmail(request.getTo(), request.getSubject(), request.getContent());
        return ApiResponse.ok(null);
    }
    
    // 发送站内消息
    @PostMapping("/send")
    public ApiResponse<Void> sendNotification(@RequestBody SendNotificationRequest request) {
        notificationService.sendNotification(
            request.getUserId(),
            request.getTitle(),
            request.getContent(),
            NotificationType.valueOf(request.getType())
        );
        return ApiResponse.ok(null);
    }
    
    // 查询未读消息
    @GetMapping("/unread")
    public ApiResponse<List<Notification>> getUnread(@RequestParam String userId) {
        List<Notification> list = notificationService.getUnreadNotifications(userId);
        return ApiResponse.ok(list);
    }
}

不做

  • 不负责短信/邮件服务商账号配置
  • 不处理复杂的推送策略
  • 不提供 UI 相关代码

© jiushiwon, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files in vibeCoding/backend/java/springboot-module/springboot-notification-module-skill of jiushiwon/wg-skills.

  • SKILL.md
  • README.md
  • api-contract-notification.md

Open the folder on GitHubat commit a4a640b

Compare with similar skills

Springboot Notification Module Skill next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Springboot Notification Module Skill compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Springboot Notification Module Skill this skilljiushiwon/wg-skills110—~1.5kAutomated safety check: PassApache-2.0
Spring Bootpiomin/claude-ai-spring-boot1.3k—~2kAutomated safety check: PassApache-2.0
Dr Jskilljdubois/dr-jskill342—~4.6kAutomated safety check: NotesApache-2.0
WxJava Integration Guidebinarywang/WxJava33k—~123Automated safety check: PassApache-2.0
Grails Developer Guideapache/grails-core2.9k—~4.9kAutomated safety check: PassApache-2.0
Flycms Devsunkaifei/FlyCms656—~827Automated safety check: PassMIT

Similar skills

  • Spring Boot

    piomin/claude-ai-spring-boot

    Spring Boot 3.x development - REST APIs, JPA, Security, Testing, and Cloud-native patterns.

    1.3k GitHub stars~2k tokensUpdated 5 mo ago
    Backend & APIsAuto-check passed
  • Dr Jskill

    jdubois/dr-jskill

    Creates Java + Spring Boot projects: Web applications, full-stack apps with Vue.js or Angular or React or vanilla JS, PostgreSQL, REST APIs, and Docker.

    342 GitHub stars~4.6k tokensUpdated 8 days ago
    Backend & APIsAuto-check: notes
  • WxJava Integration Guide

    binarywang/WxJava

    Plans a WxJava setup for Java, Spring Boot or Solon projects that call WeChat services, from module and BOM choice to config and a minimal working call.

    33k GitHub stars~123 tokensUpdated 11 days ago
    Backend & APIsAuto-check passed
  • Grails Developer Guide

    apache/grails-core

    Guides building Grails web applications and REST APIs with GORM, controllers, services, views, plugins and Spock and Geb testing.

    2.9k GitHub stars~4.9k tokensUpdated today
    Backend & APIsAuto-check passed
  • Flycms Dev

    sunkaifei/FlyCms

    FlyCms 项目(backend/ Spring Boot 4.1.1 + frontend/ vue-vben-admin v5)的架构地图与开发规范总纲。凡在本仓库做任何开发——写后端接口、新增/修改模块、管理页面、数据库变更、修 bug、重构——都要先加载本 skill 再动手,即使用户只说"改一下""加个功能";前端登录/菜单/权限专项另见…

    656 GitHub stars~827 tokensUpdated 5 days ago
    Backend & APIsAuto-check passed
  • Intelliconnect Service Style

    ruanrongman/IntelliConnect

    Create or update IntelliConnect Spring Boot service/serviceimpl code in this repository style.

    147 GitHub stars~2.4k tokensUpdated 3 days ago
    Backend & APIsAuto-check passed

More from jiushiwon/wg-skills

All 121 skills in this repo
  • Frontend UI Foundry

    jiushiwon/wg-skills

    A skill your agent uses when generating UI for a specific scenario (mobile/PC/官网/管理端/营销页/文档/金融/原生/3D), when refactoring an existing HTML/Vue/React project to a unified design system, when extracting…

    110 GitHub stars~1.4k tokensUpdated 3 days ago
    Auto-check passed
  • Workflow Diagram Skill

    jiushiwon/wg-skills

    A skill your agent uses when 用户想用一句话生成流程图、工作流图解、开发流程图、AI 流程图或任何步骤型图解,支持多风格输出(flat icon / 暖白手账风 / dark / cute),并提供现成模板一键出图。

    110 GitHub stars~1.2k tokensUpdated 3 days ago
    Auto-check passed
  • Uniapp App Generate Skill

    jiushiwon/wg-skills

    This skill should be used when the user wants to create a standardized uni-app project for WeChat mini-program, H5, and App from scratch.

    110 GitHub stars~5k tokensUpdated 3 days ago
    Auto-check: notes
  • Fastapi Init Skill

    jiushiwon/wg-skills

    FastAPI 项目一键初始化技能。面向零基础小白,提供环境探测、自动安装、完整 Web 骨架生成、SSE 流式框架、JWT 鉴权、统一响应封装、文件上传接口、一键启动/重启脚本、Swagger 文档,内置 MySQL(默认)/ PostgreSQL / MongoDB 数据库选择。用户只需说"帮我搭一个 FastAPI 项目"即可一条命令完成从零到跑的完整链路。触发词:"FastAPI…

    110 GitHub stars~1.8k tokensUpdated 3 days ago
    Auto-check: notes
  • Ffmpeg Skill

    jiushiwon/wg-skills

    FFmpeg 多媒体处理技能 — 将自然语言描述转为正确的 ffmpeg 命令,覆盖视频剪辑、转码、水印、合成、提取、生成等操作。内置一键安装脚本(Windows/Mac/Linux)。触发词:ffmpeg、视频剪辑、视频裁剪、视频转码、视频压缩、去水印、加水印、视频拼接、视频合成、提取音频、视频转…

    110 GitHub stars~1.4k tokensUpdated 3 days ago
    Auto-check passed
  • Frontend Request Skill

    jiushiwon/wg-skills

    A skill your agent uses when designing or reviewing the request layer of a frontend project (web / uni-app / mini-program), including request.ts wrappers, interceptors, deduplication, mocks, error…

    110 GitHub stars~3.6k tokensUpdated 3 days ago
    Auto-check passed

Works with

Categories

Questions about Springboot Notification Module Skill

What does Springboot Notification Module Skill do?

Spring Boot 通知模块技能。面向已有 Spring Boot 项目的开发者,提供短信发送、邮件推送、站内消息、推送通知等能力的快速集成。触发词:"短信验证码"、"发送短信"、"发送邮件"、"站内消息"、"通知模块"、"notification module"、"sms"、"email"、"mail"。. Springboot Notification Module Skill is an agent skill from jiushiwon/wg-skills.

When should I use Springboot Notification Module Skill?

Springboot Notification Module Skill fits situations like: tasks that involve Backend development.

How do I install Springboot Notification Module Skill in Claude Code?

Run `npx skills add jiushiwon/wg-skills --skill springboot-notification-module-skill -a claude-code`. Or copy the skill folder (vibeCoding/backend/java/springboot-module/springboot-notification-module-skill in jiushiwon/wg-skills) into .claude/skills/springboot-notification-module-skill in your project. Claude Code loads it when a task matches its description.

How do I install Springboot Notification Module Skill in Codex?

Run `npx skills add jiushiwon/wg-skills --skill springboot-notification-module-skill -a codex`. Or copy the skill folder (vibeCoding/backend/java/springboot-module/springboot-notification-module-skill in jiushiwon/wg-skills) into .agents/skills/springboot-notification-module-skill in your project. Codex loads it when a task matches its description.

Can I use Springboot Notification Module Skill in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jiushiwon/wg-skills --skill springboot-notification-module-skill -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/springboot-notification-module-skill, .gemini/skills/springboot-notification-module-skill, .github/skills/springboot-notification-module-skill and .opencode/skills/springboot-notification-module-skill in your project.

What does Springboot Notification Module Skill need to run?

Going by SKILL.md and its folder, Springboot Notification Module Skill needs credentials named SMS_ACCESS_KEY, SMS_SECRET_KEY and MAIL_PASSWORD. Our summary lists: A credential in SMS_ACCESS_KEY; A credential in SMS_SECRET_KEY.

Does Springboot Notification Module Skill access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Springboot Notification Module Skill safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Springboot Notification Module Skill use?

Springboot Notification Module Skill is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Springboot Notification Module Skill use?

About 1.5k tokens (SKILL.md is roughly 5.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Springboot Notification Module Skill?

Skills that share tags, products or a category with Springboot Notification Module Skill: Spring Boot (piomin/claude-ai-spring-boot, 1.3k stars), Dr Jskill (jdubois/dr-jskill, 342 stars), WxJava Integration Guide (binarywang/WxJava, 33k stars) and Grails Developer Guide (apache/grails-core, 2.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Springboot Notification Module Skill?

jiushiwon (a GitHub user) maintains it in jiushiwon/wg-skills, which has 110 GitHub stars. The repository holds 121 skills in this directory. The repository was last updated on October 4, 2026.

Source: jiushiwon/wg-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.