소스 정보
- 저장소
- majiayu000/sage
- 최근 소스 활동
- 2026년 1월 10일 18:17
- 감지된 SKILL.md 언어
- 중국어
- 스타
- 12
- 포크
- 1
설치 방법
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
소스 파일 검토
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
메뉴
기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.
설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/majiayu000/sage --skill sage-skill-development명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SKILL.md 표시 중
SOC 직업 분류 기준
| name | sage-skill-development |
| description | Sage Skill 开发规范,遵循 Agent Skills 开放标准,兼容 Claude Code 格式 |
| when_to_use | 当需要创建新 Skill、设计 Skill 系统、或理解 Skill 工作原理时使用 |
| allowed_tools | ["Read","Grep","Glob","Edit","Write"] |
| user_invocable | true |
| priority | 90 |
Sage 的 Skill 系统遵循两个标准:
---
# === 基础字段(Agent Skills 标准)===
name: skill-name # 必需,用于调用(/skill-name)
description: 技能的简短描述 # 必需,显示在技能列表
license: MIT # 可选,许可证
compatibility: sage >= 0.1.0 # 可选,兼容性说明
metadata: # 可选,扩展元数据
author: your-name
version: "1.0.0"
tags: [rust, testing]
# === 扩展字段(Claude Code 兼容)===
when_to_use: 当用户请求...时使用 # AI 自动触发条件
allowed_tools: # 允许使用的工具
- Read
- Grep
- Glob
- Edit
- Bash
user_invocable: true # 是否可通过 /skill-name 调用
argument_hint: "[file or directory]" # 参数提示
priority: 10 # 优先级(高优先匹配)
model: sonnet # 可选,指定模型
---
# Skill 标题
## 上下文变量
在 Skill 内容中可使用以下变量:
- `$ARGUMENTS` - 用户传入的参数
- `$USER_MESSAGE` - 用户原始消息
- `$WORKING_DIR` - 当前工作目录
- `$FILE_CONTEXT` - 相关文件上下文
## 详细指令
这里是 Skill 的详细指令内容...
按优先级从高到低:
1. .sage/skills/ # 项目级(最高优先)
2. ~/.config/sage/skills/ # 用户级
3. MCP 服务提供 # 动态发现
4. 内置 skills # 最低优先
.sage/skills/
├── git-commit.md
├── code-review.md
└── testing.md
.sage/skills/
├── rust-expert/
│ ├── SKILL.md # 主文件
│ ├── references/ # 参考资料
│ │ ├── idioms.md
│ │ └── patterns.md
│ ├── scripts/ # 辅助脚本
│ │ └── check-style.sh
│ └── assets/ # 资源文件
│ └── logo.png
├── testing/
│ └── SKILL.md
---
name: rust-expert
description: Rust 编程专家,提供惯用代码、性能优化和安全最佳实践
when_to_use: 当处理 .rs 文件或用户提到 Rust 时
allowed_tools:
- Read
- Grep
- Glob
- Edit
- Bash
priority: 20
---
# Rust 编程专家
你是 Rust 编程专家,遵循以下原则:
## 命名规范(RFC 430)
- 类型:PascalCase,缩写词当普通单词处理
- 正确:`LlmClient`, `HttpRequest`, `SseDecoder`
- 错误:`LLMClient`, `HTTPRequest`, `SSEDecoder`
## 错误处理
- 使用 `thiserror` 定义错误类型
- 使用 `anyhow` 处理应用错误
- 永远不要 `unwrap()`,使用 `?` 或 `expect("reason")`
## 异步代码
- 使用 `tokio` 运行时
- 避免在异步上下文中阻塞
- 使用 `async_trait` 处理异步 trait
## 性能
- 优先使用零拷贝(`&str` over `String`)
- 使用 `Cow<'_, str>` 处理可能克隆的场景
- 避免不必要的 `clone()`
$ARGUMENTS
---
name: comprehensive-testing
description: TDD 方法论和全面测试策略
when_to_use: 当用户提到测试、TDD、或需要编写测试时
allowed_tools:
- Read
- Grep
- Glob
- Edit
- Bash
user_invocable: true
argument_hint: "[test file or module]"
priority: 15
---
# 测试专家
你是测试驱动开发专家,遵循 RED-GREEN-REFACTOR 循环。
## TDD 流程
1. **RED**: 先写失败的测试
2. **GREEN**: 写最少代码使测试通过
3. **REFACTOR**: 重构代码,保持测试通过
## 测试金字塔
/\
/ \ E2E (10%)
/────\
/ \ 集成测试 (20%)
/────────\
/ \ 单元测试 (70%) /────────────\
## Rust 测试模式
```rust
#[cfg(test)]
mod tests {
use super::*;
#[test]
fn test_basic_case() {
// Arrange
let input = ...;
// Act
let result = function_under_test(input);
// Assert
assert_eq!(result, expected);
}
#[tokio::test]
async fn test_async_function() {
// 异步测试
}
}
$ARGUMENTS
## Skill 触发机制
### 自动触发(AI 决定)
当 `when_to_use` 匹配用户意图时,AI 自动激活:
```yaml
when_to_use: 当用户请求代码审查、PR review 或代码质量检查时
用户通过 /skill-name 调用:
用户: /rust-expert 帮我优化这段代码
1. 用户显式调用 (/skill-name) - 最高
2. when_to_use 匹配 + 高 priority 值
3. 关键词匹配(triggers 字段)
4. 文件扩展名匹配
Skill 被激活后,其内容会注入到 system prompt:
<active_skill>
<name>rust-expert</name>
<instructions>
[Skill 的 markdown 内容]
</instructions>
</active_skill>
创建新 Skill 前确认:
[a-z0-9]+(-[a-z0-9]+)* 格式when_to_use 明确(如需自动触发)allowed_tools 最小权限原则$ARGUMENTS 接收参数特定 Skill 使用特定模型:
model: haiku # 快速简单任务
model: opus # 复杂推理任务
只读 Skill:
allowed_tools:
- Read
- Grep
- Glob
- WebFetch
- WebSearch
在 Skill 目录中放置脚本:
my-skill/
├── SKILL.md
└── scripts/
└── analyze.sh
在 Skill 中引用:
运行分析脚本:
\`\`\`bash
./scripts/analyze.sh $ARGUMENTS
\`\`\`