@tinkcarlos/skillora 0.2.1 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 TinkCarlos
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,69 +1,236 @@
1
1
  # Skillora
2
2
 
3
- 多平台 AI 代理技能管理工具,支持 Claude Code、Cursor、Codex/GPT、Gemini、Windsurf、Aider 等平台。
3
+ [中文文档](README.zh-CN.md)
4
4
 
5
- ## 安装
5
+ Multi-platform AI agent skill management tool, supporting Claude Code, Cursor, Codex/GPT, Gemini, Windsurf, Aider and more.
6
+
7
+ ## Features
8
+
9
+ - **Multi-platform Support** - One skill set, multiple platforms (Claude Code, Cursor, Codex, Gemini, Windsurf, Aider)
10
+ - **Slash Commands** - Native `/ora/<skill-name>` command support in Claude Code
11
+ - **SKILL.md Format** - Standardized skill definition format, easy to extend and maintain
12
+ - **Flexible Installation** - Project-level, universal, and global installation modes
13
+ - **Zero Config** - Interactive initialization with auto-generated platform configs
14
+
15
+ ## Installation
6
16
 
7
17
  ```bash
8
18
  npm i -g @tinkcarlos/skillora
9
19
  ```
10
20
 
11
- > 需要 Node.js 20.6+
21
+ > Requires Node.js 20.6+
12
22
 
13
- ## 快速开始
23
+ ## Quick Start
14
24
 
15
- ### 交互式初始化(推荐)
25
+ ### Interactive Initialization (Recommended)
16
26
 
17
27
  ```bash
18
28
  skillora init
19
29
  ```
20
30
 
21
- 交互式选择平台和安装模式。
31
+ Interactively select platforms and installation mode, auto-generates config files.
22
32
 
23
- ### 非交互式初始化
33
+ ### Non-interactive Initialization
24
34
 
25
35
  ```bash
26
- # Claude Code
36
+ # Claude Code only
27
37
  skillora init --platform claude-code
28
38
 
29
- # 多平台
39
+ # Multiple platforms
30
40
  skillora init --platform claude-code,cursor
31
41
 
32
- # 指定安装模式
33
- skillora init --platform claude-code --universal # 通用模式
34
- skillora init --platform claude-code --global # 全局模式
42
+ # Specify installation mode
43
+ skillora init --platform claude-code --universal # Universal mode
44
+ skillora init --platform claude-code --global # Global mode
45
+ ```
46
+
47
+ ## Core Skills
48
+
49
+ Skillora includes the following core skills covering the full software development lifecycle:
50
+
51
+ ### Development
52
+
53
+ | Skill | Command | Description |
54
+ |-------|---------|-------------|
55
+ | **Product Requirements** | `/ora/product-requirements` | PRD writing, user stories, acceptance criteria, competitive analysis |
56
+ | **Fullstack Developer** | `/ora/fullstack-developer` | Frontend/backend dev, API design, database migration, skill orchestration |
57
+ | **Bug Fixing** | `/ora/bug-fixing` | Zero-regression fixes, root cause analysis, knowledge extraction, context isolation |
58
+ | **Code Review** | `/ora/code-review` | Layered checks, batch processing, call chain analysis, progress tracking |
59
+
60
+ ### Frontend
61
+
62
+ | Skill | Command | Description |
63
+ |-------|---------|-------------|
64
+ | **Frontend Design** | `/ora/frontend-design` | 57 UI styles, 95 color palettes, responsive design, accessibility audit |
65
+ | **React Best Practices** | `skillora read react-best-practices` | Performance optimization, state management, render optimization |
66
+
67
+ ### Backend
68
+
69
+ | Skill | Command | Description |
70
+ |-------|---------|-------------|
71
+ | **API Scaffolding** | `skillora read api-scaffolding` | FastAPI/Django/Express/NestJS templates |
72
+ | **API Testing** | `skillora read api-testing-observability` | Contract testing, mock servers, observability |
73
+ | **Database Migrations** | `skillora read database-migrations` | SQL migrations, version control, rollback strategies |
74
+
75
+ ### Engineering
76
+
77
+ | Skill | Command | Description |
78
+ |-------|---------|-------------|
79
+ | **CI/CD Pipeline** | `skillora read cicd-pipeline` | GitHub Actions, GitLab CI, DevSecOps |
80
+ | **Containerization** | `skillora read containerization` | Docker, Kubernetes, Helm |
81
+ | **Security Audit** | `skillora read security-audit` | OWASP Top 10, vulnerability scanning |
82
+ | **Performance Optimization** | `skillora read performance-optimization` | Performance profiling, bottleneck identification |
83
+
84
+ ### Workflow
85
+
86
+ | Skill | Command | Description |
87
+ |-------|---------|-------------|
88
+ | **Brainstorming** | `skillora read brainstorming` | Socratic questioning, rapid design exploration |
89
+ | **TDD Development** | `skillora read test-driven-development` | Test-driven development workflow |
90
+ | **Git Worktree** | `skillora read using-git-worktrees` | Multi-branch parallel development |
91
+ | **Verification** | `skillora read verification-before-completion` | Pre-merge checklist |
92
+
93
+ ## Usage
94
+
95
+ ### In Claude Code
96
+
97
+ Claude Code natively supports slash commands:
98
+
99
+ ```
100
+ /ora/bug-fixing # Start bug fixing workflow
101
+ /ora/code-review # Start code review workflow
102
+ /ora/frontend-design # Start frontend design workflow
103
+ /ora/product-requirements # Start requirements analysis
104
+ ```
105
+
106
+ Or use the Skill tool:
107
+
108
+ ```
109
+ Skill("bug-fixing")
110
+ Skill("code-review")
111
+ ```
112
+
113
+ ### Other Platforms
114
+
115
+ Cursor, Codex, Gemini, Windsurf, Aider load skills via CLI:
116
+
117
+ ```bash
118
+ # Read skill content (AI agent will execute automatically)
119
+ skillora read bug-fixing
120
+ skillora read code-review
121
+ skillora read frontend-design
122
+ ```
123
+
124
+ ### Skill Discovery
125
+
126
+ ```bash
127
+ # List all installed skills
128
+ skillora list
129
+
130
+ # List from specific directory
131
+ skillora list --global # Global skills
132
+ skillora list --universal # Universal skills
133
+ ```
134
+
135
+ ## Command Reference
136
+
137
+ | Command | Description |
138
+ |---------|-------------|
139
+ | `skillora init` | Interactive project initialization |
140
+ | `skillora install` | Install bundled skills |
141
+ | `skillora list` | List installed skills |
142
+ | `skillora read <name>` | Read skill content (for AI agents) |
143
+ | `skillora sync` | Sync config to AGENTS.md |
144
+ | `skillora remove <name>` | Remove a skill |
145
+
146
+ ### Common Options
147
+
148
+ | Option | Description |
149
+ |--------|-------------|
150
+ | `-g, --global` | Operate on global skills directory (~/.claude/skills/) |
151
+ | `-u, --universal` | Operate on universal skills directory (.agent/skills/) |
152
+ | `-t, --target <path>` | Operate on custom directory |
153
+ | `-f, --force` | Force overwrite existing skills |
154
+
155
+ ## Supported Platforms
156
+
157
+ | Platform | Config Files | Invocation |
158
+ |----------|--------------|------------|
159
+ | Claude Code | `.claude/skills/`, `CLAUDE.md` | `/ora/<skill>` or `Skill("<skill>")` |
160
+ | Cursor | `.cursorrules`, `AGENTS.md` | `skillora read <skill>` |
161
+ | Codex/GPT | `AGENTS.md` (System Prompt) | `skillora read <skill>` |
162
+ | Gemini | `AGENTS.md` (System Prompt) | `skillora read <skill>` |
163
+ | Windsurf | `AGENTS.md` | `skillora read <skill>` |
164
+ | Aider | `AGENTS.md` | `skillora read <skill>` |
165
+
166
+ ## Installation Modes
167
+
168
+ | Mode | Directory | Description |
169
+ |------|-----------|-------------|
170
+ | Project (default) | `.claude/skills/` | Current project only |
171
+ | Universal | `.agent/skills/` | Multi-agent compatible, project-level |
172
+ | Global | `~/.claude/skills/` | Shared across all projects |
173
+
174
+ ## SKILL.md Format
175
+
176
+ Each skill is a directory containing a `SKILL.md` file:
177
+
178
+ ```
179
+ my-skill/
180
+ ├── SKILL.md # Skill definition (required)
181
+ ├── references/ # Reference docs (optional)
182
+ │ ├── guide.md
183
+ │ └── patterns.md
184
+ └── scripts/ # Helper scripts (optional)
185
+ └── helper.py
186
+ ```
187
+
188
+ ### SKILL.md Structure
189
+
190
+ ```markdown
191
+ ---
192
+ name: my-skill
193
+ description: Brief skill description
194
+ user-invocable: true
195
+ ---
196
+
197
+ # Skill Title
198
+
199
+ ## Trigger Conditions
200
+ Describe when to use this skill...
201
+
202
+ ## Workflow
203
+ 1. Step one
204
+ 2. Step two
205
+ ...
206
+
207
+ ## References
208
+ - [Guide](references/guide.md)
35
209
  ```
36
210
 
37
- ## 命令参考
211
+ ### Frontmatter Fields
212
+
213
+ | Field | Type | Description |
214
+ |-------|------|-------------|
215
+ | `name` | string | Skill name (used for command invocation) |
216
+ | `description` | string | Skill description |
217
+ | `user-invocable` | boolean | Whether user can invoke directly (default: true) |
38
218
 
39
- | 命令 | 说明 |
40
- |------|------|
41
- | `skillora init` | 交互式初始化项目 |
42
- | `skillora install` | 安装内置技能 |
43
- | `skillora list` | 列出已安装技能 |
44
- | `skillora read <name>` | 读取技能内容(给 AI agent 用) |
45
- | `skillora sync` | 同步配置到 AGENTS.md |
46
- | `skillora remove <name>` | 删除技能 |
219
+ ## Skill Development
47
220
 
48
- ## 支持的平台
221
+ ### Creating a New Skill
49
222
 
50
- | 平台 | 配置文件 |
51
- |------|----------|
52
- | Claude Code | `.claude/skills/`, `CLAUDE.md` |
53
- | Cursor | `.cursorrules`, `AGENTS.md` |
54
- | Codex/GPT | `AGENTS.md` (System Prompt) |
55
- | Gemini | `AGENTS.md` (System Prompt) |
56
- | Windsurf | `AGENTS.md` |
57
- | Aider | `AGENTS.md` |
223
+ 1. Create skill directory under `.claude/skills/`
224
+ 2. Write `SKILL.md` file
225
+ 3. Run `skillora sync` to update AGENTS.md
58
226
 
59
- ## 安装模式
227
+ ### Best Practices
60
228
 
61
- | 模式 | 目录 | 说明 |
62
- |------|------|------|
63
- | 项目模式(默认) | `.claude/skills/` | 仅当前项目 |
64
- | 通用模式 | `.agent/skills/` | 多代理兼容 |
65
- | 全局模式 | `~/.claude/skills/` | 所有项目共享 |
229
+ - **Single Responsibility** - Each skill focuses on one domain
230
+ - **Clear Triggers** - Clearly describe when to use the skill
231
+ - **Structured Workflow** - Provide clear step-by-step guidance
232
+ - **Separate References** - Put detailed content in references/ directory
66
233
 
67
- ## 许可证
234
+ ## License
68
235
 
69
- UNLICENSED
236
+ [MIT](LICENSE)
@@ -0,0 +1,236 @@
1
+ # Skillora
2
+
3
+ [English](README.md)
4
+
5
+ 多平台 AI 代理技能管理工具,支持 Claude Code、Cursor、Codex/GPT、Gemini、Windsurf、Aider 等平台。
6
+
7
+ ## 特点
8
+
9
+ - **多平台支持** - 一套技能,多平台使用(Claude Code、Cursor、Codex、Gemini、Windsurf、Aider)
10
+ - **斜杠命令** - Claude Code 原生支持 `/ora/<skill-name>` 命令调用
11
+ - **SKILL.md 格式** - 标准化的技能定义格式,易于扩展和维护
12
+ - **灵活安装** - 支持项目级、通用级、全局级三种安装模式
13
+ - **零配置** - 交互式初始化,自动生成平台配置文件
14
+
15
+ ## 安装
16
+
17
+ ```bash
18
+ npm i -g @tinkcarlos/skillora
19
+ ```
20
+
21
+ > 需要 Node.js 20.6+
22
+
23
+ ## 快速开始
24
+
25
+ ### 交互式初始化(推荐)
26
+
27
+ ```bash
28
+ skillora init
29
+ ```
30
+
31
+ 交互式选择平台和安装模式,自动生成配置文件。
32
+
33
+ ### 非交互式初始化
34
+
35
+ ```bash
36
+ # 仅 Claude Code
37
+ skillora init --platform claude-code
38
+
39
+ # 多平台
40
+ skillora init --platform claude-code,cursor
41
+
42
+ # 指定安装模式
43
+ skillora init --platform claude-code --universal # 通用模式
44
+ skillora init --platform claude-code --global # 全局模式
45
+ ```
46
+
47
+ ## 核心技能
48
+
49
+ Skillora 内置以下核心技能,覆盖软件开发全流程:
50
+
51
+ ### 开发类
52
+
53
+ | 技能 | 命令 | 说明 |
54
+ |------|------|------|
55
+ | **需求分析** | `/ora/product-requirements` | PRD 编写、用户故事、验收标准、竞品分析 |
56
+ | **全栈开发** | `/ora/fullstack-developer` | 前后端开发、API 设计、数据库迁移、技能编排 |
57
+ | **Bug 修复** | `/ora/bug-fixing` | 零回归修复、根因分析、知识提取、上下文隔离 |
58
+ | **代码审查** | `/ora/code-review` | 分层检查、批量处理、调用链分析、进度追踪 |
59
+
60
+ ### 前端类
61
+
62
+ | 技能 | 命令 | 说明 |
63
+ |------|------|------|
64
+ | **前端设计** | `/ora/frontend-design` | 57 种 UI 风格、95 种配色、响应式设计、无障碍审查 |
65
+ | **React 最佳实践** | `skillora read react-best-practices` | 性能优化、状态管理、渲染优化 |
66
+
67
+ ### 后端类
68
+
69
+ | 技能 | 命令 | 说明 |
70
+ |------|------|------|
71
+ | **API 脚手架** | `skillora read api-scaffolding` | FastAPI/Django/Express/NestJS 模板 |
72
+ | **API 测试** | `skillora read api-testing-observability` | 契约测试、Mock 服务、可观测性 |
73
+ | **数据库迁移** | `skillora read database-migrations` | SQL 迁移、版本控制、回滚策略 |
74
+
75
+ ### 工程类
76
+
77
+ | 技能 | 命令 | 说明 |
78
+ |------|------|------|
79
+ | **CI/CD 流水线** | `skillora read cicd-pipeline` | GitHub Actions、GitLab CI、DevSecOps |
80
+ | **容器化** | `skillora read containerization` | Docker、Kubernetes、Helm |
81
+ | **安全审计** | `skillora read security-audit` | OWASP Top 10、漏洞扫描 |
82
+ | **性能优化** | `skillora read performance-optimization` | 性能分析、瓶颈定位 |
83
+
84
+ ### 流程类
85
+
86
+ | 技能 | 命令 | 说明 |
87
+ |------|------|------|
88
+ | **头脑风暴** | `skillora read brainstorming` | 苏格拉底式提问、快速设计探索 |
89
+ | **TDD 开发** | `skillora read test-driven-development` | 测试驱动开发流程 |
90
+ | **Git Worktree** | `skillora read using-git-worktrees` | 多分支并行开发 |
91
+ | **完成验证** | `skillora read verification-before-completion` | 合并前检查清单 |
92
+
93
+ ## 使用说明
94
+
95
+ ### Claude Code 中使用
96
+
97
+ Claude Code 原生支持斜杠命令调用技能:
98
+
99
+ ```
100
+ /ora/bug-fixing # 启动 Bug 修复流程
101
+ /ora/code-review # 启动代码审查流程
102
+ /ora/frontend-design # 启动前端设计流程
103
+ /ora/product-requirements # 启动需求分析流程
104
+ ```
105
+
106
+ 也可以使用 Skill 工具:
107
+
108
+ ```
109
+ Skill("bug-fixing")
110
+ Skill("code-review")
111
+ ```
112
+
113
+ ### 其他平台使用
114
+
115
+ Cursor、Codex、Gemini、Windsurf、Aider 等平台通过 CLI 命令加载技能:
116
+
117
+ ```bash
118
+ # 读取技能内容(AI agent 会自动执行)
119
+ skillora read bug-fixing
120
+ skillora read code-review
121
+ skillora read frontend-design
122
+ ```
123
+
124
+ ### 技能搜索
125
+
126
+ ```bash
127
+ # 列出所有已安装技能
128
+ skillora list
129
+
130
+ # 从特定目录列出
131
+ skillora list --global # 全局技能
132
+ skillora list --universal # 通用技能
133
+ ```
134
+
135
+ ## 命令参考
136
+
137
+ | 命令 | 说明 |
138
+ |------|------|
139
+ | `skillora init` | 交互式初始化项目 |
140
+ | `skillora install` | 安装内置技能 |
141
+ | `skillora list` | 列出已安装技能 |
142
+ | `skillora read <name>` | 读取技能内容(给 AI agent 用) |
143
+ | `skillora sync` | 同步配置到 AGENTS.md |
144
+ | `skillora remove <name>` | 删除技能 |
145
+
146
+ ### 通用选项
147
+
148
+ | 选项 | 说明 |
149
+ |------|------|
150
+ | `-g, --global` | 操作全局技能目录 (~/.claude/skills/) |
151
+ | `-u, --universal` | 操作通用技能目录 (.agent/skills/) |
152
+ | `-t, --target <path>` | 操作自定义目录 |
153
+ | `-f, --force` | 强制覆盖已存在的技能 |
154
+
155
+ ## 支持的平台
156
+
157
+ | 平台 | 配置文件 | 调用方式 |
158
+ |------|----------|----------|
159
+ | Claude Code | `.claude/skills/`, `CLAUDE.md` | `/ora/<skill>` 或 `Skill("<skill>")` |
160
+ | Cursor | `.cursorrules`, `AGENTS.md` | `skillora read <skill>` |
161
+ | Codex/GPT | `AGENTS.md` (System Prompt) | `skillora read <skill>` |
162
+ | Gemini | `AGENTS.md` (System Prompt) | `skillora read <skill>` |
163
+ | Windsurf | `AGENTS.md` | `skillora read <skill>` |
164
+ | Aider | `AGENTS.md` | `skillora read <skill>` |
165
+
166
+ ## 安装模式
167
+
168
+ | 模式 | 目录 | 说明 |
169
+ |------|------|------|
170
+ | 项目模式(默认) | `.claude/skills/` | 仅当前项目可用 |
171
+ | 通用模式 | `.agent/skills/` | 多代理兼容,项目级 |
172
+ | 全局模式 | `~/.claude/skills/` | 所有项目共享 |
173
+
174
+ ## SKILL.md 格式规范
175
+
176
+ 每个技能由一个目录组成,必须包含 `SKILL.md` 文件:
177
+
178
+ ```
179
+ my-skill/
180
+ ├── SKILL.md # 技能定义(必需)
181
+ ├── references/ # 参考文档(可选)
182
+ │ ├── guide.md
183
+ │ └── patterns.md
184
+ └── scripts/ # 辅助脚本(可选)
185
+ └── helper.py
186
+ ```
187
+
188
+ ### SKILL.md 结构
189
+
190
+ ```markdown
191
+ ---
192
+ name: my-skill
193
+ description: 技能的简短描述
194
+ user-invocable: true
195
+ ---
196
+
197
+ # 技能标题
198
+
199
+ ## 触发条件
200
+ 描述何时应该使用此技能...
201
+
202
+ ## 工作流程
203
+ 1. 步骤一
204
+ 2. 步骤二
205
+ ...
206
+
207
+ ## 参考文档
208
+ - [指南](references/guide.md)
209
+ ```
210
+
211
+ ### Frontmatter 字段
212
+
213
+ | 字段 | 类型 | 说明 |
214
+ |------|------|------|
215
+ | `name` | string | 技能名称(用于命令调用) |
216
+ | `description` | string | 技能描述 |
217
+ | `user-invocable` | boolean | 是否支持用户直接调用(默认 true) |
218
+
219
+ ## 技能开发
220
+
221
+ ### 创建新技能
222
+
223
+ 1. 在 `.claude/skills/` 下创建技能目录
224
+ 2. 编写 `SKILL.md` 文件
225
+ 3. 运行 `skillora sync` 更新 AGENTS.md
226
+
227
+ ### 技能最佳实践
228
+
229
+ - **单一职责** - 每个技能专注一个领域
230
+ - **清晰触发** - 明确描述何时使用此技能
231
+ - **结构化流程** - 提供清晰的步骤指引
232
+ - **参考分离** - 详细内容放在 references/ 目录
233
+
234
+ ## 许可证
235
+
236
+ [MIT](LICENSE)
package/lib/init.js CHANGED
@@ -97,14 +97,23 @@ function listSkillDirs(rootDir) {
97
97
  .filter((d) => fs.existsSync(path.join(d, "SKILL.md")));
98
98
  }
99
99
 
100
- function generateClaudeMd(skillCount) {
100
+ function generateClaudeMd(skills) {
101
+ const invocableSkills = skills.filter((s) => s.userInvocable);
102
+ const slashCommands = invocableSkills.map((s) => `/ora/${s.name}`).join(", ");
101
103
  return `# CLAUDE.md
102
104
 
103
105
  ## Skills System
104
106
 
105
- 本项目已安装 ${skillCount} 个技能,使用 \`skillora read <name>\` 加载。
107
+ 本项目已安装 ${skills.length} 个技能。
106
108
 
107
- 运行 \`skillora list\` 查看所有可用技能。
109
+ ### 斜杠命令(推荐)
110
+
111
+ ${slashCommands || "(无可调用技能)"}
112
+
113
+ ### CLI 命令
114
+
115
+ \`skillora read <name>\` 加载技能详情
116
+ \`skillora list\` 查看所有可用技能
108
117
  `;
109
118
  }
110
119
 
@@ -125,6 +134,8 @@ ${skillList}
125
134
  }
126
135
 
127
136
  function generateAgentsMd(skills, cliName) {
137
+ const invocableSkills = skills.filter((s) => s.userInvocable);
138
+ const slashCommands = invocableSkills.map((s) => `/ora/${s.name}`).join(", ");
128
139
  const skillTable = skills
129
140
  .map((s) => `| ${s.name} | ${s.description} |`)
130
141
  .join("\n");
@@ -142,7 +153,8 @@ ${skillTable}
142
153
 
143
154
  ### Claude Code
144
155
  - 原生支持 \`.claude/skills/\` 目录
145
- - 使用 \`Skill("name")\` 调用
156
+ - 斜杠命令: ${slashCommands || "(无)"}
157
+ - 或使用 \`Skill("name")\` 调用
146
158
 
147
159
  ### Cursor
148
160
  - 使用 \`.cursorrules\` 配置
@@ -292,8 +304,8 @@ async function runInit(options, bundledSkillsDir) {
292
304
  // 生成平台配置文件
293
305
  if (platforms.includes("claude-code")) {
294
306
  const claudeMdPath = path.join(cwd, "CLAUDE.md");
295
- if (!fs.existsSync(claudeMdPath)) {
296
- fs.writeFileSync(claudeMdPath, generateClaudeMd(skills.length), "utf8");
307
+ if (!fs.existsSync(claudeMdPath) || options.force) {
308
+ fs.writeFileSync(claudeMdPath, generateClaudeMd(skills), "utf8");
297
309
  created.push("CLAUDE.md");
298
310
  }
299
311
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tinkcarlos/skillora",
3
- "version": "0.2.1",
3
+ "version": "0.2.3",
4
4
  "description": "CLI installer for bundled Claude Code skills (SKILL.md format)",
5
5
  "bin": {
6
6
  "skillora": "bin/cli.js"
@@ -19,7 +19,7 @@
19
19
  "agents",
20
20
  "openskills"
21
21
  ],
22
- "license": "UNLICENSED",
22
+ "license": "MIT",
23
23
  "engines": {
24
24
  "node": ">=20.6.0"
25
25
  },