Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 3 additions & 2 deletions docs/usage/en/09.Command Panel Guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,8 +282,9 @@ Create skill templates.
- **Storage Location**:
- Global: `~/.snow/skills/`
- Project: `.snow/skills/`
- **Naming Rules**: Lowercase letters, numbers, hyphens, maximum 64 characters
- **Example**: Type `/skills` to create skill
- **Naming Rules**: Lowercase letters, numbers, and hyphens; use `/` to namespace (max 64 chars per segment)
- **Directory mapping**: `~/.snow/skills/<namespace>/<skill>/SKILL.md` -> skill id `<namespace>/<skill>`
- **Example**: Type `/skills`, then enter `team/my-skill` in the dialog

### Deleting Custom Commands/Skills

Expand Down
5 changes: 3 additions & 2 deletions docs/usage/zh/09.指令面板说明.md
Original file line number Diff line number Diff line change
Expand Up @@ -282,8 +282,9 @@
- **存储位置**:
- 全局: `~/.snow/skills/`
- 项目: `.snow/skills/`
- **命名规则**: 小写字母、数字、连字符,最多 64 字符
- **示例**: 输入 `/skills` 创建技能
- **命名规则**: 小写字母、数字、连字符;可用 `/` 作为命名空间分隔(每段最多 64 字符)
- **目录映射**: `~/.snow/skills/<namespace>/<skill>/SKILL.md` -> skill id `<namespace>/<skill>`
- **示例**: 输入 `/skills`,在对话框里填入 `team/my-skill` 创建技能

### 删除自定义命令/技能

Expand Down
38 changes: 36 additions & 2 deletions source/i18n/lang/en.ts
Original file line number Diff line number Diff line change
Expand Up @@ -626,6 +626,12 @@ export const en: TranslationKeys = {
confirmYes: 'Yes',
confirmNo: 'Cancel',
escCancel: 'Press ESC to cancel',
resultTypeExecute: 'Execute in terminal',
resultTypePrompt: 'Send to AI',
resultLocationGlobal: 'Global (~/.snow/commands/)',
resultLocationProject: 'Project (.snow/commands/)',
saveSuccessMessage:
"Custom command '{name}' saved successfully!\nType: {type}\nLocation: {location}\nYou can now use /{name}",
},
chatScreen: {
// Header
Expand Down Expand Up @@ -843,9 +849,28 @@ export const en: TranslationKeys = {
},
skillsCreation: {
title: 'Create New Skill',
modeLabel: 'Creation Mode:',
modeAi: 'AI Generate (describe requirement)',
modeManual: 'Manual (create templates)',
requirementLabel: 'Requirement:',
requirementHint:
'Describe what you want this Skill to do (content will follow this language)',
requirementPlaceholder:
'e.g., Generate a Skill for releasing npm packages...',
generatingLabel: 'AI Generating...',
generatingMessage: 'Generating skill files, please wait',
filesLabel: 'Files to be created:',
editName: 'Edit Name',
editNameLabel: 'Current Skill Name:',
editNameHint:
'Enter a new skill name (lowercase letters/numbers/hyphens, max 64 chars)',
editNamePlaceholder: 'new-skill-name',
regenerate: 'Regenerate',
cancel: 'Cancel',
nameLabel: 'Skill Name:',
nameHint: 'Use lowercase letters, numbers, and hyphens only (max 64 chars)',
namePlaceholder: 'my-skill-name',
nameHint:
'Use lowercase letters, numbers, and hyphens. Use "/" to namespace (max 64 chars per segment)',
namePlaceholder: 'team/my-skill-name',
descriptionLabel: 'Description:',
descriptionHint:
'Brief description of what this Skill does and when to use it',
Expand All @@ -867,6 +892,15 @@ export const en: TranslationKeys = {
'Skill "{name}" already exists in global location (~/.snow/skills/)',
errorExistsProject:
'Skill "{name}" already exists in project location (.snow/skills/)',
errorExistsAny: 'Skill "{name}" already exists, please choose another name',
errorGeneration: 'AI generation failed',
errorNoGeneratedContent: 'No generated content, please retry',
resultModeAi: 'AI Generated',
resultModeManual: 'Manual Template',
createSuccessMessage:
'Skill "{name}" created successfully!\nMode: {mode}\nLocation: {location}\nPath: {path}\n\nThe following files have been created:\n- SKILL.md (main skill documentation)\n- reference.md (detailed reference)\n- examples.md (usage examples)\n- templates/template.txt (template file)\n- scripts/helper.py (helper script)\n\nYou can now edit these files to customize your skill.',
createErrorMessage: 'Failed to create skill: {error}',
errorUnknown: 'Unknown error',
},
askUser: {
header: '[User Input Required]',
Expand Down
30 changes: 30 additions & 0 deletions source/i18n/lang/zh-TW.ts
Original file line number Diff line number Diff line change
Expand Up @@ -588,6 +588,12 @@ export const zhTW: TranslationKeys = {
confirmYes: 'Yes',
confirmNo: 'Cancel',
escCancel: 'Press ESC to cancel',
resultTypeExecute: '在終端執行',
resultTypePrompt: '傳送給 AI',
resultLocationGlobal: '全域 (~/.snow/commands/)',
resultLocationProject: '專案 (.snow/commands/)',
saveSuccessMessage:
"自訂命令 '{name}' 儲存成功!\n類型: {type}\n位置: {location}\n你現在可以使用 /{name}",
},
chatScreen: {
// Header
Expand Down Expand Up @@ -801,6 +807,21 @@ export const zhTW: TranslationKeys = {

skillsCreation: {
title: '創建新技能',
modeLabel: '選擇創建方式:',
modeAi: 'AI 生成(輸入需求即可)',
modeManual: '手動創建(生成模板)',
requirementLabel: '技能需求:',
requirementHint: '簡要描述你希望該技能完成什麼(生成內容將跟隨此語言)',
requirementPlaceholder: '例如:生成一個用於發佈 npm 套件的技能…',
generatingLabel: 'AI 生成中...',
generatingMessage: '正在生成技能檔案,請稍等',
filesLabel: '將創建檔案:',
editName: '編輯名稱',
editNameLabel: '目前技能名稱:',
editNameHint: '輸入新的技能名稱(小寫字母/數字/連字符,最多 64 個字符)',
editNamePlaceholder: 'new-skill-name',
regenerate: '重新生成',
cancel: '取消',
nameLabel: '技能名稱:',
nameHint: '僅使用小寫字母、數字和連字符(最多 64 個字符)',
namePlaceholder: 'my-skill-name',
Expand All @@ -820,6 +841,15 @@ export const zhTW: TranslationKeys = {
errorExistsBoth: '技能 "{name}" 在全局和項目位置都已存在',
errorExistsGlobal: '技能 "{name}" 已存在於全局位置 (~/.snow/skills/)',
errorExistsProject: '技能 "{name}" 已存在於項目位置 (.snow/skills/)',
errorExistsAny: '技能 "{name}" 已存在,請換一個名稱',
errorGeneration: 'AI 生成失敗',
errorNoGeneratedContent: '缺少生成內容,請重試',
resultModeAi: 'AI 生成',
resultModeManual: '手動模板',
createSuccessMessage:
'技能 "{name}" 創建成功!\n模式: {mode}\n位置: {location}\n路徑: {path}\n\n已創建以下檔案:\n- SKILL.md(主技能文件)\n- reference.md(詳細參考)\n- examples.md(使用範例)\n- templates/template.txt(模板檔案)\n- scripts/helper.py(輔助腳本)\n\n你現在可以編輯這些檔案來自訂技能。',
createErrorMessage: '創建技能失敗:{error}',
errorUnknown: '未知錯誤',
},
askUser: {
header: '[需要使用者輸入]',
Expand Down
35 changes: 33 additions & 2 deletions source/i18n/lang/zh.ts
Original file line number Diff line number Diff line change
Expand Up @@ -588,6 +588,12 @@ export const zh: TranslationKeys = {
confirmYes: 'Yes',
confirmNo: 'Cancel',
escCancel: '按 ESC 取消',
resultTypeExecute: '在终端执行',
resultTypePrompt: '发送给 AI',
resultLocationGlobal: '全局 (~/.snow/commands/)',
resultLocationProject: '项目 (.snow/commands/)',
saveSuccessMessage:
"自定义命令 '{name}' 保存成功!\n类型: {type}\n位置: {location}\n你现在可以使用 /{name}",
},
chatScreen: {
// Header
Expand Down Expand Up @@ -800,9 +806,25 @@ export const zh: TranslationKeys = {
},
skillsCreation: {
title: '创建新技能',
modeLabel: '选择创建方式:',
modeAi: 'AI 生成(输入需求即可)',
modeManual: '手动创建(生成模板)',
requirementLabel: '技能需求:',
requirementHint: '简要描述你希望该技能完成什么(生成内容将跟随此语言)',
requirementPlaceholder: '例如:生成一个用于发布 npm 包的技能…',
generatingLabel: 'AI 生成中...',
generatingMessage: '正在生成技能文件,请稍等',
filesLabel: '将创建文件:',
editName: '编辑名称',
editNameLabel: '当前技能名称:',
editNameHint: '输入新的技能名称(小写字母/数字/连字符,最多 64 个字符)',
editNamePlaceholder: 'new-skill-name',
regenerate: '重新生成',
cancel: '取消',
nameLabel: '技能名称:',
nameHint: '仅使用小写字母、数字和连字符(最多 64 个字符)',
namePlaceholder: 'my-skill-name',
nameHint:
'仅使用小写字母、数字和连字符,可用 "/" 作为命名空间分隔(每段最多 64 个字符)',
namePlaceholder: 'team/my-skill-name',
descriptionLabel: '描述:',
descriptionHint: '简要描述此技能的用途和使用场景',
descriptionPlaceholder: '简要描述...',
Expand All @@ -820,6 +842,15 @@ export const zh: TranslationKeys = {
errorExistsBoth: '技能 "{name}" 在全局和项目位置都已存在',
errorExistsGlobal: '技能 "{name}" 已存在于全局位置 (~/.snow/skills/)',
errorExistsProject: '技能 "{name}" 已存在于项目位置 (.snow/skills/)',
errorExistsAny: '技能 "{name}" 已存在,请换一个名称',
errorGeneration: 'AI 生成失败',
errorNoGeneratedContent: '缺少生成内容,请重试',
resultModeAi: 'AI 生成',
resultModeManual: '手动模板',
createSuccessMessage:
'技能 "{name}" 创建成功!\n模式: {mode}\n位置: {location}\n路径: {path}\n\n已创建以下文件:\n- SKILL.md(主技能文档)\n- reference.md(详细参考)\n- examples.md(使用示例)\n- templates/template.txt(模板文件)\n- scripts/helper.py(辅助脚本)\n\n你现在可以编辑这些文件来自定义技能。',
createErrorMessage: '创建技能失败:{error}',
errorUnknown: '未知错误',
},
askUser: {
header: '[需要用户输入]',
Expand Down
28 changes: 28 additions & 0 deletions source/i18n/types.ts
Original file line number Diff line number Diff line change
Expand Up @@ -595,6 +595,11 @@ export type TranslationKeys = {
confirmYes: string;
confirmNo: string;
escCancel: string;
resultTypeExecute: string;
resultTypePrompt: string;
resultLocationGlobal: string;
resultLocationProject: string;
saveSuccessMessage: string;
};
// Chat Screen
chatScreen: {
Expand Down Expand Up @@ -801,6 +806,21 @@ export type TranslationKeys = {
};
skillsCreation: {
title: string;
modeLabel: string;
modeAi: string;
modeManual: string;
requirementLabel: string;
requirementHint: string;
requirementPlaceholder: string;
generatingLabel: string;
generatingMessage: string;
filesLabel: string;
editName: string;
editNameLabel: string;
editNameHint: string;
editNamePlaceholder: string;
regenerate: string;
cancel: string;
nameLabel: string;
nameHint: string;
namePlaceholder: string;
Expand All @@ -820,6 +840,14 @@ export type TranslationKeys = {
errorExistsBoth: string;
errorExistsGlobal: string;
errorExistsProject: string;
errorExistsAny: string;
errorGeneration: string;
errorNoGeneratedContent: string;
resultModeAi: string;
resultModeManual: string;
createSuccessMessage: string;
createErrorMessage: string;
errorUnknown: string;
};
// AskUserQuestion Component
askUser: {
Expand Down
Loading