149 lines
3.3 KiB
Markdown
149 lines
3.3 KiB
Markdown
---
|
||
name: load-codestyle
|
||
description: "加载指定语言的代码风格参考文件。Loads code style reference files for a specified language from skill目录/style/{language}/*.md"
|
||
argument-hint: "[language]"
|
||
version: "1.0.0"
|
||
user-invocable: true
|
||
allowed-tools: Read, Glob, Bash
|
||
---
|
||
|
||
# 代码风格加载器 (Code Style Loader)
|
||
|
||
## 触发条件
|
||
|
||
当用户说以下任意内容时启动:
|
||
- `/load-codestyle`
|
||
- "加载代码风格"
|
||
- "加载{语言}代码风格"
|
||
- "查看代码风格规范"
|
||
|
||
## 功能说明
|
||
|
||
本 Skill 负责从指定目录加载代码风格参考文件,并将其内容作为当前代码审查和编写的参考依据。
|
||
|
||
## 核心逻辑
|
||
|
||
### Step 1:确定语言
|
||
|
||
用户可以通过以下方式指定语言:
|
||
- 直接在命令中指定:如 `/load-codestyle java`
|
||
- 在对话中提及:如 "加载 Java 代码风格"
|
||
- 如果用户未指定,询问用户希望加载哪种语言的代码风格
|
||
|
||
### Step 2:查找风格文件
|
||
|
||
在以下位置查找代码风格文件:
|
||
|
||
**目录结构**:
|
||
```
|
||
{skill目录}/style/{language}/*.md
|
||
```
|
||
|
||
其中:
|
||
- `{skill目录}` 是技能配置的基础目录,默认为 `~/.claude/skills/load-codestyle/`
|
||
- `{language}` 是语言名称小写,如 `java`、`python`、`javascript`、`go` 等
|
||
|
||
**实际查找路径**:
|
||
```
|
||
~/.claude/skills/load-codestyle/style/{language}/*.md
|
||
```
|
||
|
||
### Step 3:加载文件内容
|
||
|
||
1. 使用 `Glob` 工具查找匹配的文件
|
||
2. 使用 `Read` 工具读取每个匹配的文件
|
||
3. 汇总所有文件内容
|
||
|
||
### Step 4:输出结果
|
||
|
||
向用户展示:
|
||
```
|
||
已加载 {语言} 代码风格参考文件:
|
||
|
||
文件列表:
|
||
- file1.md
|
||
- file2.md
|
||
...
|
||
|
||
---
|
||
{文件1内容}
|
||
---
|
||
{文件2内容}
|
||
---
|
||
...
|
||
```
|
||
|
||
### Step 5:保存为上下文
|
||
|
||
将加载的风格文件内容保存到会话记忆中,以便后续代码审查和编写参考:
|
||
|
||
参考 `~/.claude/skills/load-codestyle/memory/codestyle-{language}.md`
|
||
|
||
## 支持的语言
|
||
|
||
| 语言 | 目录 |
|
||
|------|------|
|
||
| Java | `style/java/*.md` |
|
||
| Python | `style/python/*.md` |
|
||
| JavaScript | `style/javascript/*.md` |
|
||
| TypeScript | `style/typescript/*.md` |
|
||
| Go | `style/go/*.md` |
|
||
| C/C++ | `style/c/*.md` |
|
||
| Rust | `style/rust/*.md` |
|
||
| Kotlin | `style/kotlin/*.md` |
|
||
|
||
## 错误处理
|
||
|
||
- **目录不存在**:`style/{language}/` 目录不存在时,提示用户并列出已支持的目录
|
||
- **没有找到文件**:目录存在但没有 `.md` 文件时,提示用户
|
||
- **权限错误**:无法读取文件时,提示具体的权限问题
|
||
|
||
## 使用示例
|
||
|
||
```
|
||
用户:/load-codestyle java
|
||
|
||
助手:已加载 Java 代码风格参考文件:
|
||
|
||
文件列表:
|
||
- naming-conventions.md
|
||
- spring-boot-guidelines.md
|
||
|
||
---
|
||
# Java 命名规范
|
||
|
||
## 类命名
|
||
- 使用 UpperCamelCase
|
||
- 示例:UserService, OrderController
|
||
|
||
## 方法命名
|
||
- 使用 lowerCamelCase
|
||
- 示例:getUserById, createOrder
|
||
...
|
||
---
|
||
# Spring Boot 开发规范
|
||
|
||
## Controller 层
|
||
- 使用 @RestController 注解
|
||
- 返回统一响应格式 RestResult
|
||
...
|
||
```
|
||
|
||
## 记忆功能
|
||
|
||
本 Skill 会自动将加载的风格文件内容保存到记忆系统中,使得后续对话可以快速引用。
|
||
|
||
保存路径:`~/.claude/skills/load-codestyle/memory/codestyle-{language}.md`
|
||
|
||
格式:
|
||
```markdown
|
||
---
|
||
name: codestyle-{language}
|
||
description: {语言} 代码风格参考
|
||
type: reference
|
||
language: {language}
|
||
---
|
||
|
||
{风格文件内容}
|
||
```
|