feat: Add new files for i18n, libs, and project structure

This commit is contained in:
tukuaiai 2025-12-18 13:33:30 +08:00
parent 516ac26f93
commit bfa0694868
750 changed files with 112255 additions and 0 deletions

53
backups/README.md Normal file
View File

@ -0,0 +1,53 @@
# 快速备份工具
基于 `.gitignore` 规则的项目备份工具,自动排除不需要的文件。
## 功能特性
- 自动读取 `.gitignore` 规则
- 支持取反规则(`!` 语法)
- 目录级剪枝优化
- 生成 `.tar.gz` 压缩包
- 零依赖(仅使用 Python 内置模块)
## 文件结构
```
backups/
├── 快速备份.py # 核心备份引擎
├── 一键备份.sh # Shell 启动脚本
└── README.md # 本文档
```
## 使用方法
```bash
# 方式一Shell 脚本(推荐)
bash backups/一键备份.sh
# 方式二:直接运行 Python
python3 backups/快速备份.py
# 指定输出文件
python3 backups/快速备份.py -o my_backup.tar.gz
# 指定项目目录
python3 backups/快速备份.py -p /path/to/project
```
## 输出位置
默认输出到 `backups/gz/备份_YYYYMMDD_HHMMSS.tar.gz`
## 参数说明
| 参数 | 说明 | 默认值 |
|------|------|--------|
| `-p, --project` | 项目根目录 | 当前目录 |
| `-o, --output` | 输出文件路径 | `backups/gz/备份_时间戳.tar.gz` |
| `-g, --gitignore` | gitignore 文件路径 | `.gitignore` |
## 依赖
- Python 3.x无需额外包
- Bash用于 Shell 脚本)

83
backups/一键备份.sh Normal file
View File

@ -0,0 +1,83 @@
#!/bin/bash
# 一键备份项目脚本
# 自动读取 .gitignore 规则并排除匹配的文件
# bash backups/一键备份.sh
set -e
# 颜色输出
GREEN='\033[0;32m'
BLUE='\033[0;34m'
YELLOW='\033[1;33m'
NC='\033[0m' # No Color
# 脚本所在目录
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
# 项目根目录(脚本所在目录的父目录)
PROJECT_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)"
# 项目backups目录
BACKUPS_DIR="${PROJECT_ROOT}/backups"
# 备份脚本路径始终在项目的backups目录中
BACKUP_SCRIPT="${BACKUPS_DIR}/快速备份.py"
# 检查备份脚本是否存在
if [ ! -f "${BACKUP_SCRIPT}" ]; then
echo -e "${YELLOW}⚠️ 错误: 备份脚本不存在${NC}"
echo ""
echo "备份工具应位于项目的 backups/ 目录中:"
echo " ${BACKUPS_DIR}/"
echo ""
echo "请确保:"
echo " 1. 复制快速备份.py到 ${BACKUPS_DIR}/"
echo " 2. 复制一键备份.sh到 ${BACKUPS_DIR}/"
echo ""
echo "或者使用方式:"
echo " • 在项目根目录执行: bash backups/一键备份.sh"
echo " • 或直接执行: python3 backups/快速备份.py"
exit 1
fi
echo -e "${BLUE}========================================${NC}"
echo -e "${BLUE} 项目快速备份工具${NC}"
echo -e "${BLUE}========================================${NC}"
echo ""
echo -e "${GREEN}${NC} 找到备份脚本: backups/快速备份.py"
# 检查 Python3 是否可用
if ! command -v python3 &> /dev/null; then
echo -e "${YELLOW}⚠️ 错误: 未找到 python3 命令${NC}"
exit 1
fi
echo -e "${GREEN}${NC} 项目目录: ${PROJECT_ROOT}"
echo -e "${GREEN}${NC} 备份脚本: ${BACKUP_SCRIPT}"
echo -e "${GREEN}${NC} Python 版本: $(python3 --version)"
echo ""
# 执行备份
echo -e "${YELLOW}▶ 正在执行备份...${NC}"
echo ""
# 切换到项目根目录
cd "${PROJECT_ROOT}"
# 运行备份脚本
python3 "${BACKUP_SCRIPT}"
# 检查执行结果
if [ $? -eq 0 ]; then
echo ""
echo -e "${GREEN}========================================${NC}"
echo -e "${GREEN} ✓ 备份完成!${NC}"
echo -e "${GREEN}========================================${NC}"
else
echo ""
echo -e "${YELLOW}========================================${NC}"
echo -e "${YELLOW} ✗ 备份失败${NC}"
echo -e "${YELLOW}========================================${NC}"
exit 1
fi

265
backups/快速备份.py Normal file
View File

@ -0,0 +1,265 @@
#!/usr/bin/env python3
"""
快速备份项目工具
读取 .gitignore 规则并打包项目文件排除匹配的文件
bash backups/一键备份.sh
文件位置
backups/快速备份.py
工具清单backups/目录
快速备份.py - 核心备份引擎7.3 KB
一键备份.sh - 一键执行脚本2.4 KB
使用方法
$ bash backups/一键备份.sh
$ python3 backups/快速备份.py
备份输出
backups/gz/备份_YYYYMMDD_HHMMSS.tar.gz
适用项目
任何包含 .gitignore 文件的项目自动读取规则并排除匹配文件
依赖
无需额外安装包仅使用Python内置模块
"""
import os
import tarfile
import fnmatch
from pathlib import Path
from datetime import datetime
import argparse
import sys
class GitignoreFilter:
"""解析 .gitignore 文件并过滤文件"""
def __init__(self, gitignore_path: Path, project_root: Path):
self.project_root = project_root
# 规则按照出现顺序存储,支持取反(!)语义,后匹配覆盖前匹配
# 每项: {"pattern": str, "dir_only": bool, "negate": bool, "has_slash": bool}
self.rules = []
self.load_gitignore(gitignore_path)
def load_gitignore(self, gitignore_path: Path):
"""加载并解析 .gitignore 文件"""
if not gitignore_path.exists():
print(f"⚠️ 警告: {gitignore_path} 不存在,将不应用任何过滤规则")
return
try:
with open(gitignore_path, 'r', encoding='utf-8') as f:
for line in f:
line = line.strip()
# 跳过空行和注释
if not line or line.startswith('#'):
continue
negate = line.startswith('!')
if negate:
line = line[1:].lstrip()
if not line:
continue
dir_only = line.endswith('/')
has_slash = '/' in line.rstrip('/')
self.rules.append({
"pattern": line,
"dir_only": dir_only,
"negate": negate,
"has_slash": has_slash,
})
print(f"✓ 已加载 {len(self.rules)} 条规则(含取反)")
except Exception as e:
print(f"❌ 读取 .gitignore 失败: {e}")
sys.exit(1)
def _match_rule(self, rule: dict, relative_path_str: str, is_dir: bool) -> bool:
"""按规则匹配路径,返回是否命中"""
pattern = rule["pattern"]
dir_only = rule["dir_only"]
has_slash = rule["has_slash"]
# 目录规则:匹配目录自身或其子路径
if dir_only:
normalized = pattern.rstrip('/')
if relative_path_str == normalized or relative_path_str.startswith(normalized + '/'):
return True
return False
# 带路径分隔的规则:按相对路径匹配
if has_slash:
return fnmatch.fnmatch(relative_path_str, pattern)
# 无斜杠:匹配任意层级的基本名
if fnmatch.fnmatch(Path(relative_path_str).name, pattern):
return True
# 额外处理目录命中:无通配符时,若任一父级目录名等于 pattern 也视为命中
if pattern.isalpha() and pattern in relative_path_str.split('/'):
return True
return False
def should_exclude(self, path: Path, is_dir: bool = False) -> bool:
"""
判断路径是否应该被排除支持 ! 取反后匹配覆盖前匹配
返回 True 表示应该排除不备份
"""
try:
# 统一使用 POSIX 路径风格进行匹配
relative_path_str = path.relative_to(self.project_root).as_posix()
except ValueError:
return False # 不在项目根目录内,不处理
# Git 风格:从上到下最后一次匹配决定去留
matched = None
for rule in self.rules:
if self._match_rule(rule, relative_path_str, is_dir):
matched = not rule["negate"] # negate 表示显式允许
return bool(matched)
def create_backup(project_root: Path, output_file: Path, filter_obj: GitignoreFilter):
"""创建备份压缩包"""
# 统计信息
total_files = 0
excluded_files = 0
included_files = 0
print(f"\n{'='*60}")
print(f"开始备份项目: {project_root}")
print(f"输出文件: {output_file}")
print(f"{'='*60}\n")
try:
with tarfile.open(output_file, 'w:gz') as tar:
# 使用 os.walk 可在目录层级提前剪枝,避免进入已忽略目录
for root, dirs, files in os.walk(project_root, topdown=True):
root_path = Path(root)
# 目录剪枝:命中忽略规则或 .git 时不再深入
pruned_dirs = []
for d in dirs:
dir_path = root_path / d
if d == '.git' or filter_obj.should_exclude(dir_path, is_dir=True):
print(f" 排除目录: {dir_path.relative_to(project_root)}")
excluded_files += 1
continue
pruned_dirs.append(d)
dirs[:] = pruned_dirs
for name in files:
path = root_path / name
total_files += 1
# 文件忽略判定
if '.git' in path.parts or filter_obj.should_exclude(path):
excluded_files += 1
print(f" 排除: {path.relative_to(project_root)}")
continue
arcname = path.relative_to(project_root)
tar.add(path, arcname=arcname)
included_files += 1
print(f" 备份: {arcname}")
print(f"\n{'='*60}")
print("备份完成!")
print(f"{'='*60}")
print(f"总文件数: {total_files}")
print(f"已备份: {included_files} 个文件")
print(f"已排除: {excluded_files} 个文件/目录")
print(f"压缩包大小: {output_file.stat().st_size / 1024 / 1024:.2f} MB")
print(f"{'='*60}")
return True
except Exception as e:
print(f"\n❌ 备份失败: {e}")
import traceback
traceback.print_exc()
return False
def main():
parser = argparse.ArgumentParser(
description='快速备份项目(根据 .gitignore 排除文件)',
formatter_class=argparse.RawDescriptionHelpFormatter,
epilog="""
使用示例:
# 基本用法(备份到 backups/gz/ 目录)
python backups/快速备份.py
# 指定输出文件
python backups/快速备份.py -o my_backup.tar.gz
# 指定项目根目录
python backups/快速备份.py -p /path/to/project
"""
)
parser.add_argument(
'-p', '--project',
type=str,
default='.',
help='项目根目录路径(默认: 当前目录)'
)
parser.add_argument(
'-o', '--output',
type=str,
help='输出文件路径(默认: backups/备份_YYYYMMDD_HHMMSS.tar.gz'
)
parser.add_argument(
'-g', '--gitignore',
type=str,
default='.gitignore',
help='.gitignore 文件路径(默认: .gitignore'
)
args = parser.parse_args()
# 解析路径
project_root = Path(args.project).resolve()
gitignore_path = Path(args.gitignore).resolve()
if not project_root.exists():
print(f"❌ 错误: 项目目录不存在: {project_root}")
sys.exit(1)
# 确定输出文件路径
if args.output:
output_file = Path(args.output).resolve()
else:
# 默认输出到 backups/gz/ 目录
backup_dir = project_root / 'backups' / 'gz'
backup_dir.mkdir(parents=True, exist_ok=True)
timestamp = datetime.now().strftime('%Y%m%d_%H%M%S')
output_file = backup_dir / f'备份_{timestamp}.tar.gz'
# 确保输出目录存在
output_file.parent.mkdir(parents=True, exist_ok=True)
# 创建过滤器
filter_obj = GitignoreFilter(gitignore_path, project_root)
# 执行备份
success = create_backup(project_root, output_file, filter_obj)
sys.exit(0 if success else 1)
if __name__ == '__main__':
main()

5
i18n/ar/README.md Normal file
View File

@ -0,0 +1,5 @@
# ar 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/ar/prompts/.gitkeep Normal file
View File

0
i18n/ar/skills/.gitkeep Normal file
View File

5
i18n/bn/README.md Normal file
View File

@ -0,0 +1,5 @@
# bn 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/bn/prompts/.gitkeep Normal file
View File

0
i18n/bn/skills/.gitkeep Normal file
View File

5
i18n/de/README.md Normal file
View File

@ -0,0 +1,5 @@
# de 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/de/prompts/.gitkeep Normal file
View File

0
i18n/de/skills/.gitkeep Normal file
View File

5
i18n/es/README.md Normal file
View File

@ -0,0 +1,5 @@
# es 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/es/prompts/.gitkeep Normal file
View File

0
i18n/es/skills/.gitkeep Normal file
View File

5
i18n/fa/README.md Normal file
View File

@ -0,0 +1,5 @@
# fa 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/fa/prompts/.gitkeep Normal file
View File

0
i18n/fa/skills/.gitkeep Normal file
View File

5
i18n/fr/README.md Normal file
View File

@ -0,0 +1,5 @@
# fr 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/fr/prompts/.gitkeep Normal file
View File

0
i18n/fr/skills/.gitkeep Normal file
View File

5
i18n/ha/README.md Normal file
View File

@ -0,0 +1,5 @@
# ha 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/ha/prompts/.gitkeep Normal file
View File

0
i18n/ha/skills/.gitkeep Normal file
View File

5
i18n/he/README.md Normal file
View File

@ -0,0 +1,5 @@
# he 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/he/prompts/.gitkeep Normal file
View File

0
i18n/he/skills/.gitkeep Normal file
View File

5
i18n/hi/README.md Normal file
View File

@ -0,0 +1,5 @@
# hi 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

View File

@ -0,0 +1,79 @@
# 📖 दस्तावेज़
`i18n/zh/documents/` निर्देशिका प्रक्रिया दस्तावेजों, वास्तुकला विवरण, विकास अनुभवों और परियोजना की सर्वोत्तम प्रथाओं का सारांश प्रस्तुत करती है। कार्यप्रणाली और सहयोग नियमों को समझने के लिए यह पहली पसंद है।
## निर्देशिका संरचना
```
i18n/zh/documents/
├── README.md
├── Methodology and Principles/
│ ├── A Formalization of Recursive Self-Optimizing Generative Systems.md
│ ├── gluecoding.md
│ ├── vibe-coding-经验收集.md
│ ├── 学习经验.md
│ ├── 开发经验.md
│ ├── 编程之道.md
│ ├── 胶水编程.md
│ └── 系统提示词构建原则.md
├── Tutorials and Guides/
│ ├── auggie-mcp配置文档.md
│ ├── LazyVim快捷键大全.md
│ ├── tmux快捷键大全.md
│ ├── 关于手机ssh任意位置链接本地计算机基于frp实现的方法.md
│ └── telegram-dev/
└── Templates and Resources/
├── 代码组织.md
├── 工具集.md
├── 编程书籍推荐.md
└── 通用项目架构模板.md
```
## दस्तावेज़ वर्गीकरण
### कार्यप्रणाली एवं सिद्धांत
यह श्रेणी प्रोग्रामिंग विचारों, विकास दर्शन और परियोजना के मूल सिद्धांतों के बारे में दस्तावेज़ संग्रहीत करती है।
* `पुनरावर्ती स्व-अनुकूलन जनरेटिव सिस्टम का एक औपचारिकीकरण.md`
* `ग्लूकोडिंग.एमडी`
* `वाइब-कोडिंग-अनुभव संग्रह.एमडी`
* `सीखने का अनुभव.md`
* `विकास अनुभव.एमडी`
* `प्रोग्रामिंग का तरीका.md`
* `ग्लू प्रोग्रामिंग.एमडी`
* `सिस्टम प्रॉम्प्ट शब्द निर्माण सिद्धांत.एमडी`
### ट्यूटोरियल और मार्गदर्शिकाएँ
यह श्रेणी विशिष्ट उपकरणों के लिए कॉन्फ़िगरेशन, उपयोग मार्गदर्शिकाएँ और ऑपरेटिंग ट्यूटोरियल संग्रहीत करती है।
* `ऑग्गी-एमसीपी कॉन्फ़िगरेशन document.md`
* `LazyVim शॉर्टकट कुंजी list.md`
* `tmux शॉर्टकट कुंजी list.md`
* `मोबाइल फोन एसएसएच को कहीं भी स्थानीय कंप्यूटर से जोड़ने के बारे में, frp.md पर आधारित विधि`
* `टेलीग्राम-देव/`
### टेम्पलेट्स और संसाधन
यह श्रेणी पुन: प्रयोज्य परियोजना टेम्पलेट, कोड संरचना विनिर्देश और संसाधन सूचियाँ संग्रहीत करती है।
* `कोड संगठन.एमडी`
* `टूलसेट.एमडी`
* `प्रोग्रामिंग पुस्तक अनुशंसाएँ.md`
* `यूनिवर्सल प्रोजेक्ट आर्किटेक्चर टेम्पलेट.एमडी`
## नए दस्तावेज़ का योगदान करें
1. दस्तावेज़ को सबसे उपयुक्त श्रेणी में रखें।
2. यदि आवश्यक हो, तो एक नई श्रेणी निर्देशिका बनाएँ।
3. परिवर्तनों को प्रतिबिंबित करने के लिए इस README फ़ाइल को अपडेट करें।
## संबंधित संसाधन
- [प्रॉम्प्ट वर्ड लाइब्रेरी](../प्रॉम्प्ट्स/) - एआई प्रॉम्प्ट वर्ड संग्रह
- [कौशल पुस्तकालय](../कौशल/) - एआई कौशल कौशल
- [सामान्य पुस्तकालय](../libs/) - उपकरण और बाहरी एकीकरण

0
i18n/hi/prompts/.gitkeep Normal file
View File

83
i18n/hi/prompts/README.md Normal file
View File

@ -0,0 +1,83 @@
# 💡एआई संकेत (संकेत)
`i18n/zh/prompts/` इस वेयरहाउस की त्वरित शब्द संपत्तियों को संग्रहीत करता है: एआई की सीमाओं और स्वाद को सीमित करने के लिए **सिस्टम प्रॉम्प्ट शब्दों** का उपयोग करें, और "आवश्यकताओं के स्पष्टीकरण → योजना → निष्पादन → समीक्षा" की विकास पाइपलाइन को चलाने के लिए **कार्य शीघ्र शब्दों** का उपयोग करें।
## अनुशंसित पथ (0 से नियंत्रणीय तक)
1. **पहले सीमा निर्धारित करें**: एक सिस्टम प्रॉम्प्ट शब्द संस्करण चुनें (`v8` या `v10` अनुशंसित है)।
2. **पुनः चलाने की प्रक्रिया**: चरण के अनुसार विशिष्ट कार्यों में `coding_prompts/` (स्पष्टीकरण/योजना/निष्पादन/समीक्षा) का चयन करें।
3. **अंतिम उत्पादीकरण**: जब आप किसी निश्चित क्षेत्र में समान कार्य बार-बार करते हैं, तो "कौशल/" (अधिक पुन: प्रयोज्य और अधिक स्थिर) में "संकेत शब्द + जानकारी" को कौशल में अपग्रेड करें।
## निर्देशिका संरचना (गोदाम की वास्तविक निर्देशिका के अधीन)
```
i18n/zh/prompts/
├── README.md
├── coding_prompts/ # 编程/研发提示词(当前 41 个 .md
│ ├── index.md # 自动生成的索引与版本矩阵(请勿手改)
│ ├── 标准化流程.md
│ ├── 项目上下文文档生成.md
│ ├── 智能需求理解与研发导航引擎.md
│ └── ...
├── system_prompts/ # 系统提示词CLAUDE 多版本 + 其他收集)
│ ├── CLAUDE.md/ # 1~10 版本目录v9 目前仅占位)
│ │ ├── 1/CLAUDE.md
│ │ ├── 2/CLAUDE.md
│ │ ├── ...
│ │ ├── 9/AGENTS.md # v9 当前没有 CLAUDE.md
│ │ └── 10/CLAUDE.md
│ └── ...
└── user_prompts/ # 用户自用/一次性提示词
├── ASCII图生成.md
├── 数据管道.md
└── 项目变量与工具统一维护.md
```
## `system_prompts/`: सिस्टम-स्तरीय त्वरित शब्द (पहले AI को "नियंत्रण योग्य बनाएं")
सिस्टम प्रॉम्प्ट शब्दों का उपयोग **कार्य मोड, कोड स्वाद, आउटपुट स्वरूप और सुरक्षा सीमाओं** को परिभाषित करने के लिए किया जाता है। निर्देशिका में एक संस्करणीकृत संरचना है:
- पथ परिपाटी: `i18n/zh/prompts/system_prompts/CLAUDE.md/<संस्करण संख्या>/CLAUDE.md`
- अनुशंसित संस्करण:
- `v8`: व्यापक संस्करण, सामान्य वाइब कोडिंग के लिए उपयुक्त
- `v10`: आंशिक ऑगमेंट/संदर्भ इंजन की सामान्यीकरण बाधाएँ
- नोट: `v9` निर्देशिका वर्तमान में केवल एक प्लेसहोल्डर है (कोई `CLAUDE.md` नहीं)
## `कोडिंग_प्रॉम्प्ट्स/`: कार्य-स्तरीय संकेत शब्द (प्रक्रिया के माध्यम से चलाएँ)
`coding_prompts/` "एक कार्य" की ओर उन्मुख है: आवश्यकता स्पष्टीकरण, योजना निराकरण से लेकर वितरण और समीक्षा तक। इसे वर्कफ़्लो स्क्रिप्ट लाइब्रेरी के रूप में उपयोग करने की अनुशंसा की जाती है:
- **प्रवेश स्तर** (नए सत्र/नई परियोजनाओं के लिए आवश्यक)
- `प्रोजेक्ट संदर्भ दस्तावेज़ पीढ़ी.एमडी`: संदर्भ को मजबूत करें और क्रॉस-सेशन बहाव को कम करें
- `बुद्धिमान आवश्यकताओं की समझ और आर एंड डी नेविगेशन इंजन.एमडी`: अस्पष्ट आवश्यकताओं को निष्पादन योग्य कार्यों में विभाजित करें
- **डिलीवरी स्तर** (गारंटी आउटपुट ऑडिट योग्य है)
- `मानकीकृत प्रक्रिया.एमडी`: नियंत्रण के नुकसान को कम करने के लिए "पहले क्या करें और आगे क्या करें" लिखें
- `सिस्टम आर्किटेक्चर की विज़ुअल पीढ़ी Mermaid.md`: आर्किटेक्चर को विज़ुअलाइज़ेशन में आउटपुट करें (चित्र एक हज़ार शब्दों के बराबर हैं)
### `index.md` के बारे में (महत्वपूर्ण)
[`coding_prompts/index.md`](./coding_prompts/index.md) एक स्वचालित रूप से उत्पन्न सूचकांक है (संस्करण मैट्रिक्स और जंप लिंक सहित), **इसे मैन्युअल रूप से संपादित न करें**। यदि आप बैचों में संस्करण जोड़ते हैं, हटाते/समायोजित करते हैं, तो टूल श्रृंखला के माध्यम से इंडेक्स उत्पन्न करने और फिर उन्हें सिंक्रनाइज़ करने की अनुशंसा की जाती है।
## `user_prompts/`: व्यक्तिगत कार्यक्षेत्र (व्यवस्थितीकरण का अनुसरण नहीं करना)
कुछ व्यक्तिगत आदतें और अस्थायी मचान शीघ्र शब्द डालें। सिद्धांत यह है कि **उपयोग किया जा सकता है, तोड़ें नहीं, मुख्य पुस्तकालय को प्रदूषित न करें**
## त्वरित उपयोग (कॉपी करें और उपयोग करें)
```bash
# 查看一个任务提示词
sed -n '1,160p' i18n/zh/prompts/coding_prompts/标准化流程.md
# 选定系统提示词版本(建议先备份你当前的 CLAUDE.md
cp i18n/zh/prompts/system_prompts/CLAUDE.md/10/CLAUDE.md ./CLAUDE.md
```
## रखरखाव और बैच प्रबंधन (वैकल्पिक)
यदि आपको एक्सेल ↔ मार्कडाउन की बैच रखरखाव क्षमताओं की आवश्यकता है, तो वेयरहाउस में अंतर्निहित तृतीय-पक्ष टूल हैं: `लिब्स/एक्सटर्नल/प्रॉम्प्ट्स-लाइब्रेरी/`। इसे "त्वरित शब्द संपत्तियों के लिए उत्पादन उपकरण" और `i18n/zh/prompts/` को "दैनिक विकास के लिए क्यूरेटेड संग्रह" के रूप में सोचने की अनुशंसा की जाती है।
## संबंधित संसाधन
- [`../skills/`](../skills/): उच्च-आवृत्ति डोमेन क्षमताओं को कौशल में परिवर्तित करें (अधिक पुन: प्रयोज्य)
- [`../documents/`](../documents/): कार्यप्रणाली और सर्वोत्तम प्रथाएं (त्वरित शब्द डिजाइन और वर्कफ़्लो सिद्धांत)
- [`../libs/बाहरी/प्रॉम्पट्स-लाइब्रेरी/`](../libs/बाहरी/प्रॉम्पट्स-लाइब्रेरी/): शीघ्र शब्द एक्सेल ↔ मार्कडाउन प्रबंधन उपकरण

0
i18n/hi/skills/.gitkeep Normal file
View File

241
i18n/hi/skills/README.md Normal file
View File

@ -0,0 +1,241 @@
# 🎯एआई कौशल कौशल पुस्तकालय
`i18n/zh/skills/` निर्देशिका AI कौशल (कौशल) को संग्रहीत करती है, जो त्वरित शब्दों की तुलना में उच्च-स्तरीय क्षमता पैकेज हैं और AI को विशिष्ट क्षेत्रों में विशेषज्ञ स्तर पर प्रदर्शन करने की अनुमति देते हैं। वर्तमान में **14** पेशेवर कौशल शामिल हैं।
## निर्देशिका संरचना
```
i18n/zh/skills/
├── README.md # 本文件
├── # === 元技能(核心) ===
├── claude-skills/ # ⭐ 元技能:生成 Skills 的 Skills11KB
├── # === Claude 工具 ===
├── claude-code-guide/ # Claude Code 使用指南9KB
├── claude-cookbooks/ # Claude API 最佳实践9KB
├── # === 数据库 ===
├── postgresql/ # ⭐ PostgreSQL 专家技能76KB最详细
├── timescaledb/ # 时序数据库扩展3KB
├── # === 加密货币/量化 ===
├── ccxt/ # 加密货币交易所统一 API18KB
├── coingecko/ # CoinGecko 行情 API3KB
├── cryptofeed/ # 加密货币实时数据流6KB
├── hummingbot/ # 量化交易机器人框架4KB
├── polymarket/ # 预测市场 API6KB
├── # === 开发工具 ===
├── telegram-dev/ # Telegram Bot 开发18KB
├── twscrape/ # Twitter/X 数据抓取11KB
├── snapdom/ # DOM 快照工具8KB
└── proxychains/ # 代理链配置6KB
```
## कौशल सूची
### फ़ाइल आकार के अनुसार क्रमबद्ध करें (शब्दशः)
| कौशल | आकार | डोमेन | विवरण |
|------|------|------|------|
| **पोस्टग्रेस्क्ल** | 76KB | डेटाबेस | ⭐ सबसे विस्तृत, संपूर्ण PostgreSQL विशेषज्ञ कौशल |
| **टेलीग्राम-देव** | 18केबी | बॉट विकास | टेलीग्राम बॉट विकास के लिए संपूर्ण गाइड |
| **ccxt** | 18केबी | ट्रेडिंग | क्रिप्टोकरेंसी एक्सचेंज यूनिफाइड एपीआई |
| **ट्वस्क्रेप** | 11केबी | डेटा संग्रह | ट्विटर/एक्स डेटा स्क्रैपिंग |
| **क्लाउड-कौशल** | 11केबी | मेटा-कौशल | ⭐ कौशल जो कौशल उत्पन्न करते हैं |
| **क्लाउड-कोड-गाइड** | 9केबी | उपकरण | क्लाउड कोड का उपयोग करने के लिए सर्वोत्तम अभ्यास |
| **क्लाउड-कुकबुक** | 9केबी | उपकरण | क्लाउड एपीआई उपयोग के उदाहरण |
| **स्नैपडोम** | 8केबी | फ्रंट-एंड | DOM स्नैपशॉट और परीक्षण |
| **क्रिप्टोफीड** | 6KB | डेटा स्ट्रीम | क्रिप्टोकरेंसी रीयल-टाइम डेटा स्ट्रीम |
| **पॉलीमार्केट** | 6KB | भविष्यवाणी बाजार | पॉलीमार्केट एपीआई एकीकरण |
| **प्रॉक्सीचेन्स** | 6KB | नेटवर्क | प्रॉक्सी श्रृंखला विन्यास और उपयोग |
| **हमिंगबॉट** | 4KB | परिमाणीकरण | मात्रात्मक ट्रेडिंग रोबोट ढांचा |
| **टाइमस्केल्डबी** | 3केबी | डेटाबेस | PostgreSQL समय श्रृंखला विस्तार |
| **कोइंजेको** | 3केबी | उद्धरण | कॉइनगेको कोट्स एपीआई |
### फ़ील्ड द्वारा वर्गीकृत
#### 🔧 मेटा-कौशल और उपकरण
| कौशल | विवरण | अनुशंसित परिदृश्य |
|------|------|----------|
| `क्लाउड-कौशल` | कौशल जो कौशल उत्पन्न करते हैं | नए कौशल बनाते समय उपयोग किया जाना चाहिए |
| `क्लाउड-कोड-गाइड` | क्लाउड कोड सीएलआई उपयोग गाइड | दैनिक विकास |
| `क्लाउड-कुकबुक` | क्लाउड एपीआई सर्वोत्तम अभ्यास | एपीआई एकीकरण |
#### 🗄️ डेटाबेस
| कौशल | विवरण | अनुशंसित परिदृश्य |
|------|------|----------|
| `पोस्टग्रेस्क्ल` | PostgreSQL की संपूर्ण मार्गदर्शिका (76KB) | संबंधपरक डेटाबेस विकास |
| `timescaledb` | समय श्रृंखला डेटाबेस एक्सटेंशन | समय श्रृंखला डेटा |
#### 💰 क्रिप्टोकरेंसी/मात्राकरण
| कौशल | विवरण | अनुशंसित परिदृश्य |
|------|------|----------|
| `सीसीएक्सटी` | एक्सचेंज एकीकृत एपीआई | मल्टी-एक्सचेंज डॉकिंग |
| `कोइंजेको` | बाज़ार डेटा एपीआई | मूल्य प्रश्न |
| `क्रिप्टोफीड` | वास्तविक समय डेटा स्ट्रीमिंग | वेबसॉकेट उद्धरण |
| 'हमिंगबॉट' | मात्रात्मक व्यापार ढांचा | स्वचालित ट्रेडिंग |
| `पॉलीमार्केट` | पूर्वानुमान बाज़ार एपीआई | भविष्यवाणी बाजार ट्रेडिंग |
#### 🛠️ विकास उपकरण
| कौशल | विवरण | अनुशंसित परिदृश्य |
|------|------|----------|
| `टेलीग्राम-देव` | टेलीग्राम बॉट विकास | बॉट विकास |
| `twscrap` | ट्विटर डेटा स्क्रैपिंग | सोशल मीडिया डेटा |
| 'स्नैपडोम' | डोम स्नैपशॉट | फ्रंट-एंड परीक्षण |
| `प्रॉक्सीचेन्स` | प्रॉक्सी श्रृंखला विन्यास | नेटवर्क प्रॉक्सी |
## कौशल बनाम संकेतों के बीच अंतर
| आयाम | संकेत | कौशल |
|------|------------------|----------------|
| ग्रैन्युलैरिटी | एकल कार्य निर्देश | पूर्ण क्षमता एनकैप्सुलेशन |
| पुन: प्रयोज्यता | कॉपी और पेस्ट करें | कॉन्फ़िगरेशन के बाद स्वचालित रूप से प्रभावी हो जाता है |
| प्रसंग | मैन्युअल रूप से उपलब्ध कराने की आवश्यकता है | अंतर्निहित डोमेन ज्ञान |
| लागू परिदृश्य | अस्थायी कार्य | दीर्घकालिक परियोजनाएँ |
| संरचना | एकल फ़ाइल | निर्देशिका (संपत्ति/स्क्रिप्ट/संदर्भ सहित) |
## कौशल निर्देशिका संरचना
प्रत्येक कौशल एक एकीकृत संरचना का अनुसरण करता है:
```
skill-name/
├── SKILL.md # 技能主文件,包含领域知识和规则
├── assets/ # 静态资源(图片、配置模板等)
├── scripts/ # 辅助脚本
└── references/ # 参考文档
```
## त्वरित उपयोग
### 1. कौशल देखें
```bash
# 查看元技能
cat i18n/zh/skills/claude-skills/SKILL.md
# 查看 PostgreSQL 技能(最详细)
cat i18n/zh/skills/postgresql/SKILL.md
# 查看 Telegram Bot 开发技能
cat i18n/zh/skills/telegram-dev/SKILL.md
```
### 2. प्रोजेक्ट और उपयोग के लिए कॉपी करें
```bash
# 复制整个技能目录
cp -r i18n/zh/skills/postgresql/ ./my-project/
# 或只复制主文件到 CLAUDE.md
cp i18n/zh/skills/postgresql/SKILL.md ./CLAUDE.md
```
### 3. क्लाउड कोड के साथ प्रयोग करें
प्रोजेक्ट रूट डायरेक्टरी में `CLAUDE.md` बनाएं और कौशल का संदर्भ लें:
```markdown
# 项目规则
请参考以下技能文件:
@i18n/zh/skills/postgresql/SKILL.md
@i18n/zh/skills/telegram-dev/SKILL.md
```
## एक कस्टम कौशल बनाएं
### विधि 1: मेटा-कौशल पीढ़ी का उपयोग करें (अनुशंसित)
1. डोमेन सामग्री तैयार करें (दस्तावेज़, कोड, विनिर्देश)
2. `i18n/zh/skills/claude-skills/SKILL.md` के साथ AI को डेटा प्रदान करें
3. एआई इस क्षेत्र के लिए विशेष कौशल उत्पन्न करेगा
```bash
# 示例:让 AI 读取元技能后生成新技能
cat i18n/zh/skills/claude-skills/SKILL.md
# 然后告诉 AI请根据这个元技能为 [你的领域] 生成一个新的 SKILL.md
```
### विधि 2: मैन्युअल निर्माण
```bash
# 创建技能目录
mkdir -p i18n/zh/skills/my-skill/{assets,scripts,references}
# 创建主文件
cat > i18n/zh/skills/my-skill/SKILL.md << 'EOF'
# My Skill
## 概述
简要说明技能用途和适用场景
## 领域知识
- 核心概念
- 最佳实践
- 常见模式
## 规则与约束
- 必须遵守的规则
- 禁止的操作
- 边界条件
## 示例
具体的使用示例和代码片段
## 常见问题
FAQ 和解决方案
EOF
```
## मूल कौशल की विस्तृत व्याख्या
### `क्लाउड-कौशल/SKILL.md` - मेटा-कौशल ⭐
**कौशल जो कौशल उत्पन्न करते हैं** नए कौशल बनाने के लिए मुख्य उपकरण हैं।
कैसे उपयोग करें:
1. अपनी डोमेन सामग्री (दस्तावेज़, कोड, विशिष्टताएँ, आदि) तैयार करें
2. SKILL.md के साथ AI को डेटा प्रदान करें
3. एआई इस क्षेत्र के लिए विशेष कौशल उत्पन्न करेगा
### `postgresql/SKILL.md` - PostgreSQL विशेषज्ञ ⭐
सबसे विस्तृत कौशल (76KB) में शामिल हैं:
- डेटाबेस डिज़ाइन सर्वोत्तम अभ्यास
- क्वेरी अनुकूलन तकनीक
- सूचकांक रणनीति
- प्रदर्शन ट्यूनिंग
- सामान्य समस्याओं का समाधान
- SQL कोड उदाहरण
### `telegram-dev/SKILL.md` - टेलीग्राम बॉट डेवलपमेंट
संपूर्ण टेलीग्राम बॉट डेवलपमेंट गाइड (18KB):
- बॉट एपीआई उपयोग
- संदेश प्रसंस्करण
- कीबोर्ड और कॉलबैक
- वेबहुक कॉन्फ़िगरेशन
- त्रुटि प्रबंधन
### `ccxt/SKILL.md` - क्रिप्टोकरेंसी एक्सचेंज एपीआई
एकीकृत एक्सचेंज एपीआई पैकेज (18KB):
- 100+ एक्सचेंजों का समर्थन करता है
- एकीकृत डेटा प्रारूप
- आदेश प्रबंधन
- उद्धरण अधिग्रहण
## संबंधित संसाधन
- [कौशल जेनरेटर](https://github.com/yusufkaraaslan/Skill_Seekers) - किसी भी डेटा को एआई स्किल्स में बदलें
- [मेटा-कौशल फ़ाइल](./claude-skills/SKILL.md) - कौशल जो कौशल उत्पन्न करते हैं
- [प्रॉम्प्ट्स डेटाबेस](../प्रॉम्प्ट्स/) - संकेतों का एक अधिक सुक्ष्म संग्रह
- [क्लाउड कोड गाइड](./क्लाउड-कोड-गाइड/SKILL.md) - क्लाउड कोड का उपयोग करने के लिए सर्वोत्तम अभ्यास
- [दस्तावेज़ पुस्तकालय](../दस्तावेज़/) - कार्यप्रणाली और विकास का अनुभव

View File

@ -0,0 +1,243 @@
---
नाम: क्लाउड-कौशल
विवरण: "क्लाउड कौशल मेटा-कौशल: डोमेन सामग्री (दस्तावेज़/एपीआई/कोड/स्पेस) को एक पुन: प्रयोज्य कौशल (SKILL.md + संदर्भ/स्क्रिप्ट/संपत्ति) में निकालें, और स्पष्टता, सक्रियण विश्वसनीयता और गुणवत्ता द्वार के लिए मौजूदा कौशल को दोबारा तैयार करें।"
---
#क्लाउडस्किल्स मेटा-स्किल
बिखरी हुई डोमेन सामग्री को एक ऐसे कौशल में बदलें जो पुन: प्रयोज्य, रखरखाव योग्य और विश्वसनीय रूप से सक्रिय हो:
- `SKILL.md` प्रवेश बिंदु के रूप में (ट्रिगर, बाधाएं, पैटर्न, उदाहरण)
- दीर्घकालिक साक्ष्य और नेविगेशन के लिए `संदर्भ/`
- मचान और टेम्पलेट्स के लिए वैकल्पिक `स्क्रिप्ट/` और `संपत्तियाँ/`
## इस कौशल का उपयोग कब करना है
जब आपको आवश्यकता हो तो इस मेटा-कौशल को ट्रिगर करें:
- डॉक्स/स्पेक्स/रिपोज़ से शुरू से ही एक नया कौशल बनाएं
- मौजूदा कौशल को पुनः सक्रिय करें (बहुत लंबा, अस्पष्ट, असंगत, मिसफायर)
- डिज़ाइन विश्वसनीय सक्रियण (फ्रंटमैटर + ट्रिगर्स + सीमाएँ)
- बड़ी सामग्री से एक साफ़ त्वरित संदर्भ निकालें
- लंबी सामग्री को नेविगेशन योग्य `संदर्भ/` में विभाजित करें
- एक गुणवत्ता गेट और एक सत्यापनकर्ता जोड़ें
## सीमाओं के लिए नहीं
यह मेटा-कौशल नहीं है:
- अपने आप में एक डोमेन कौशल (यह डोमेन कौशल बनाता है)
- बाहरी तथ्यों का आविष्कार करने का लाइसेंस (यदि सामग्री इसे साबित नहीं करती है, तो ऐसा कहें और सत्यापन पथ जोड़ें)
- आवश्यक इनपुट के लिए एक विकल्प (यदि इनपुट गायब हैं, तो आगे बढ़ने से पहले 1-3 प्रश्न पूछें)
## त्वरित संदर्भ
### डिलिवरेबल्स (आपको क्या उत्पादन करना चाहिए)
आपके आउटपुट में शामिल होना चाहिए:
1. एक ठोस निर्देशिका लेआउट (आमतौर पर `skills/<skill-name>/`)
2. निर्णय लेने योग्य ट्रिगर्स, सीमाओं और प्रतिलिपि प्रस्तुत करने योग्य उदाहरणों के साथ एक कार्रवाई योग्य `SKILL.md`
3. लंबे प्रारूप वाले दस्तावेज़ों को `references/index.md` के साथ `references/` में ले जाया गया
4. प्री-डिलीवरी चेकलिस्ट (क्वालिटी गेट)
### अनुशंसित लेआउट (न्यूनतम -> पूर्ण)
```
skill-name/
|-- SKILL.md # Required: entrypoint with YAML frontmatter
|-- references/ # Optional: long-form docs/evidence/index
| `-- index.md # Recommended: navigation index
|-- scripts/ # Optional: helpers/automation
`-- assets/ # Optional: templates/configs/static assets
```
वास्तव में न्यूनतम संस्करण सिर्फ `SKILL.md` है (आप बाद में `संदर्भ/` जोड़ सकते हैं)।
### YAML फ्रंटमैटर (आवश्यक)
```yaml
---
name: skill-name
description: "What it does + when to use (activation triggers)."
---
```
फ्रंटमैटर नियम:
- `नाम` `^[a-z][a-z0-9-]*$` से मेल खाना चाहिए और निर्देशिका नाम से मेल खाना चाहिए
- `विवरण` निर्णय लेने योग्य होना चाहिए ("एक्स के साथ मदद नहीं") और इसमें ठोस ट्रिगर कीवर्ड शामिल होने चाहिए
### न्यूनतम `SKILL.md` कंकाल (कॉपी/पेस्ट)
```markdown
---
name: my-skill
description: "[Domain] capability: includes [capability 1], [capability 2]. Use when [decidable triggers]."
---
# my-skill Skill
One sentence that states the boundary and the deliverable.
## When to Use This Skill
Trigger when any of these applies:
- [Trigger 1: concrete task/keyword]
- [Trigger 2]
- [Trigger 3]
## Not For / Boundaries
- What this skill will not do (prevents misfires and over-promising)
- Required inputs; ask 1-3 questions if missing
## Quick Reference
### Common Patterns
**Pattern 1:** one-line explanation
```text
[कमांड/स्निपेट आप पेस्ट कर सकते हैं और चला सकते हैं]
```
## Examples
### Example 1
- Input:
- Steps:
- Expected output / acceptance:
### Example 2
### Example 3
## References
- `references/index.md`: navigation
- `references/...`: long-form docs split by topic
## Maintenance
- Sources: docs/repos/specs (do not invent)
- Last updated: YYYY-MM-DD
- Known limits: what is explicitly out of scope
```
### संलेखन नियम (परक्राम्य नहीं)
1. त्वरित संदर्भ संक्षिप्त, सीधे प्रयोग करने योग्य पैटर्न के लिए है
- जब संभव हो तो इसे <= 20 पैटर्न रखें।
- जिस किसी भी चीज़ को स्पष्टीकरण के पैराग्राफ की आवश्यकता होती है वह `संदर्भ/` में जाती है।
2. सक्रियण निर्णय योग्य होना चाहिए
- फ्रंटमैटर 'विवरण' में ठोस कीवर्ड के साथ "क्या + कब" लिखा होना चाहिए।
- "कब उपयोग करें" में विशिष्ट कार्यों/इनपुट/लक्ष्यों की सूची होनी चाहिए, अस्पष्ट सहायता पाठ की नहीं।
- विश्वसनीयता के लिए "नॉट फॉर/बाउंड्रीज़" अनिवार्य है।
3. बाहरी विवरणों पर कोई दिखावा नहीं
- यदि सामग्री इसे साबित नहीं करती है, तो ऐसा कहें और एक सत्यापन पथ शामिल करें।
### वर्कफ़्लो (सामग्री -> कौशल)
चरण न छोड़ें:
1. दायरा: लिखना चाहिए/चाहिए/कभी नहीं (कुल तीन वाक्य ठीक हैं)
2. पैटर्न निकालें: 10-20 उच्च-आवृत्ति पैटर्न चुनें (कमांड/स्निपेट/प्रवाह)
3. उदाहरण जोड़ें: >= 3 आरंभ से अंत तक उदाहरण (इनपुट -> चरण -> स्वीकृति)
4. सीमाएं परिभाषित करें: दायरे से बाहर क्या है + आवश्यक इनपुट
5. संदर्भों को विभाजित करें: लंबे टेक्स्ट को `references/` में ले जाएं + `references/index.md` लिखें
6. गेट लागू करें: चेकलिस्ट और सत्यापनकर्ता चलाएँ
### गुणवत्ता गेट (प्री-डिलीवरी चेकलिस्ट)
न्यूनतम जाँच (पूर्ण संस्करण के लिए `references/quality-checklist.md` देखें):
1. `नाम` `^[a-z][a-z0-9-]*$` से मेल खाता है और निर्देशिका नाम से मेल खाता है
2. `विवरण` ठोस ट्रिगर कीवर्ड के साथ "क्या + कब" बताता है
3. निर्णायक ट्रिगर्स के साथ "इस कौशल का उपयोग कब करें" है
4. मिसफायर को कम करने के लिए "नॉट फ़ॉर / बाउंड्रीज़" है
5. त्वरित संदर्भ <= 20 पैटर्न है और प्रत्येक सीधे प्रयोग योग्य है
6. >=3 प्रतिलिपि प्रस्तुत करने योग्य उदाहरण हैं
7. लंबी सामग्री `references/` में है और `references/index.md` नेविगेट करने योग्य है
8. अनिश्चित दावों में एक सत्यापन पथ शामिल है (कोई झांसा नहीं)
9. एक ऑपरेटर के मैनुअल की तरह पढ़ता है, दस्तावेज़ीकरण डंप की तरह नहीं
स्थानीय रूप से मान्य करें:
```bash
# From repo root (basic validation)
./skills/claude-skills/scripts/validate-skill.sh skills/<skill-name>
# From repo root (strict validation)
./skills/claude-skills/scripts/validate-skill.sh skills/<skill-name> --strict
# From skills/claude-skills/ (basic validation)
./scripts/validate-skill.sh ../<skill-name>
# From skills/claude-skills/ (strict validation)
./scripts/validate-skill.sh ../<skill-name> --strict
```
### उपकरण और टेम्पलेट
एक नया कौशल ढांचा तैयार करें:
```bash
# From repo root (generate into ./skills/)
./skills/claude-skills/scripts/create-skill.sh my-skill --full --output skills
# From skills/claude-skills/ (generate into ../ i.e. ./skills/)
./scripts/create-skill.sh my-skill --full --output ..
# Minimal skeleton
./skills/claude-skills/scripts/create-skill.sh my-skill --minimal --output skills
```
टेम्पलेट्स:
- `assets/template-minimal.md`
- `assets/template-complete.md`
## उदाहरण
### उदाहरण 1: डॉक्स से एक कौशल बनाएं
- इनपुट: एक आधिकारिक दस्तावेज़/विशेषता + 2-3 वास्तविक कोड नमूने + सामान्य विफलता मोड
- कदम:
1. `create-skill.sh` को `skills/<skill-name>/` को जोड़ने के लिए चलाएँ
2. फ्रंटमैटर `विवरण` को "क्या + कब" के रूप में लिखें
3. त्वरित संदर्भ में 10-20 उच्च-आवृत्ति पैटर्न निकालें
4. स्वीकृति मानदंड के साथ >=3 शुरू से अंत तक उदाहरण जोड़ें
5. लंबी सामग्री को `references/` में डालें और `references/index.md` तार करें
6. `validate-skill.sh --strict` चलाएँ और पुनरावृत्त करें
### उदाहरण 2: "डॉक्टर डंप" कौशल को दोबारा तैयार करें
- इनपुट: लंबे समय से चिपकाए गए दस्तावेज़ के साथ एक मौजूदा `SKILL.md`
- कदम:
1. पहचानें कि कौन से भाग पैटर्न बनाम दीर्घ-रूप स्पष्टीकरण हैं
2. लंबे प्रारूप वाले टेक्स्ट को `संदर्भ/` में ले जाएं (विषय के आधार पर विभाजित)
3. त्वरित संदर्भ को संक्षिप्त कॉपी/पेस्ट पैटर्न के रूप में फिर से लिखें
4. उदाहरण जोड़ें या ठीक करें जब तक कि वे प्रतिलिपि प्रस्तुत करने योग्य न हो जाएं
5. मिसफायर को कम करने के लिए "नॉट फॉर / बाउंड्रीज़" जोड़ें
### उदाहरण 3: एक कौशल को मान्य करें और प्राप्त करें
- इनपुट: `कौशल/<कौशल-नाम>/`
- कदम:
1. चेतावनियाँ प्राप्त करने के लिए `validate-skill.sh` (नॉन-स्ट्रिक्ट) चलाएँ
2. फ्रंटमैटर/नाम बेमेल और गायब अनुभागों को ठीक करें
3. विशिष्टता लागू करने के लिए `validate-skill.sh --strict` चलाएँ
4. शिपिंग से पहले स्कोरिंग रूब्रिक को `references/quality-checklist.md` में चलाएँ
## सन्दर्भ
स्थानीय दस्तावेज़:
- `संदर्भ/index.md`
- `संदर्भ/कौशल-spec.md`
- `संदर्भ/गुणवत्ता-चेकलिस्ट.एमडी`
- `संदर्भ/एंटी-पैटर्न.एमडी`
- `संदर्भ/README.md` (अपस्ट्रीम आधिकारिक संदर्भ)
बाहरी (आधिकारिक):
- https://support.claude.com/en/articles/12512176-what-are-skills
- https://support.claude.com/en/articles/12512180-using-skills-in-claude
- https://support.claude.com/en/articles/12512198-creating-custom-skills
- https://docs.claude.com/en/api/skills-guide
## रखरखाव
- स्रोत: `skills/claude-skills/references/` में स्थानीय विशिष्ट फ़ाइलें + `references/README.md` में अपस्ट्रीम आधिकारिक दस्तावेज़
- अंतिम अद्यतन: 2025-12-14
- ज्ञात सीमाएँ: `validate-skill.sh` अनुमानवादी है; सख्त मोड अनुशंसित अनुभाग शीर्षकों को मानता है

View File

View File

View File

@ -0,0 +1,274 @@
---
नाम: स्नैपडोम
विवरण: स्नैपडॉम एक तेज़, सटीक डोम-टू-इमेज कैप्चर टूल है जो HTML तत्वों को स्केलेबल एसवीजी छवियों में परिवर्तित करता है। HTML तत्वों को कैप्चर करने, DOM को छवियों (SVG, PNG, JPG, WebP) में परिवर्तित करने, शैलियों, फ़ॉन्ट और छद्म तत्वों को संरक्षित करने के लिए उपयोग करें।
---
#SnapDOMSkill
HTML तत्वों को स्केलेबल एसवीजी या रैस्टर छवि प्रारूपों में परिवर्तित करने के लिए तेज़, निर्भरता-मुक्त DOM-टू-इमेज कैप्चर लाइब्रेरी।
## इस कौशल का उपयोग कब करना है
जब आपको आवश्यकता हो तब SnapDOM का उपयोग करें:
- HTML तत्वों को छवियों में बदलें (एसवीजी, पीएनजी, जेपीजी, वेबपी)
- छद्म तत्वों और छायाओं के साथ स्टाइल वाले DOM को कैप्चर करें
- एम्बेडेड फ़ॉन्ट और आइकन के साथ तत्वों को निर्यात करें
- कस्टम आयाम या स्केलिंग के साथ स्क्रीनशॉट बनाएं
- प्रॉक्सी फ़ॉलबैक का उपयोग करके CORS-अवरुद्ध संसाधनों को संभालें
- प्लगइन्स के साथ कस्टम रेंडरिंग पाइपलाइन लागू करें
- बड़े या जटिल तत्वों पर प्रदर्शन का अनुकूलन करें
## प्रमुख विशेषताऐं
### सार्वभौमिक निर्यात विकल्प
- **एसवीजी** - स्केलेबल वेक्टर प्रारूप, सभी शैलियों को एम्बेड करता है
- **पीएनजी, जेपीजी, वेबपी** - विन्यास योग्य गुणवत्ता के साथ रेखापुंज प्रारूप
- **कैनवास** - आगे की प्रक्रिया के लिए कच्चा कैनवास तत्व प्राप्त करें
- **ब्लॉब** - कस्टम हैंडलिंग के लिए कच्चा बाइनरी डेटा
###प्रदर्शन
- अल्ट्रा-फास्ट कैप्चर (छोटे तत्वों के लिए 1.6 एमएस, 4000×2000 के लिए ~171 एमएस)
- **कोई निर्भरता नहीं** - केवल मानक वेब एपीआई का उपयोग करता है
- जटिल तत्वों पर html2canvas से 10-40 गुना बेहतर प्रदर्शन करता है
### शैली समर्थन
- एंबेडेड फ़ॉन्ट (आइकन फ़ॉन्ट सहित)
- सीएसएस छद्म तत्व (::पहले, ::बाद)
- सीएसएस काउंटर
- सीएसएस लाइन-क्लैंप
- परिवर्तन और छाया प्रभाव
- छाया डोम सामग्री
### उन्नत क्षमताएँ
-समान मूल आईफ्रेम समर्थन
- अवरुद्ध परिसंपत्तियों के लिए CORS प्रॉक्सी फ़ॉलबैक
- कस्टम परिवर्तनों के लिए प्लगइन प्रणाली
- परिवर्तनों को सीधा करें (घुमाएँ/अनुवाद हटाएँ)
-चयनात्मक तत्व बहिष्करण
- चुस्त बाउंडिंग बॉक्स गणना
## स्थापना
### एनपीएम/यार्न
```bash
npm install @zumer/snapdom
# or
yarn add @zumer/snapdom
```
### सीडीएन (ईएस मॉड्यूल)
```html
<script type="module">
import { snapdom } from "https://unpkg.com/@zumer/snapdom/dist/snapdom.mjs";
</script>
```
### सीडीएन (यूएमडी)
```html
<script src="https://unpkg.com/@zumer/snapdom/dist/snapdom.umd.js"></script>
```
## त्वरित प्रारंभ उदाहरण
### बुनियादी पुन: प्रयोज्य कैप्चर
```javascript
// Create reusable capture object
const result = await snapdom(document.querySelector('#target'));
// Export to different formats
const png = await result.toPng();
const jpg = await result.toJpg();
const svg = await result.toSvg();
const canvas = await result.toCanvas();
const blob = await result.toBlob();
// Use the result
document.body.appendChild(png);
```
### एक-चरणीय निर्यात
```javascript
// Direct export without intermediate object
const png = await snapdom.toPng(document.querySelector('#target'));
const svg = await snapdom.toSvg(element);
```
### तत्व डाउनलोड करें
```javascript
// Automatically download as file
await snapdom.download(element, 'screenshot.png');
await snapdom.download(element, 'image.svg');
```
### विकल्पों के साथ
```javascript
const result = await snapdom(element, {
scale: 2, // 2x resolution
width: 800, // Custom width
height: 600, // Custom height
embedFonts: true, // Include @font-face
exclude: '.no-capture', // Hide elements
useProxy: true, // Enable CORS proxy
straighten: true, // Remove transforms
noShadows: false // Keep shadows
});
const png = await result.toPng({ quality: 0.95 });
```
## आवश्यक विकल्प संदर्भ
| विकल्प | प्रकार | उद्देश्य |
|------|------|------|
| 'स्केल' | संख्या | स्केल आउटपुट (जैसे, 2x रिज़ॉल्यूशन के लिए 2) |
| 'चौड़ाई' | संख्या | पिक्सेल में कस्टम आउटपुट चौड़ाई |
| 'ऊंचाई' | संख्या | पिक्सेल में कस्टम आउटपुट ऊंचाई |
| `एम्बेडफ़ॉन्ट्स` | बूलियन | गैर-आइकन @ फ़ॉन्ट-फेस नियम शामिल करें |
| `प्रॉक्सी का प्रयोग करें` | स्ट्रिंग\|बूलियन | CORS प्रॉक्सी सक्षम करें (डिफ़ॉल्ट के लिए URL या सत्य) |
| 'बहिष्कृत' | स्ट्रिंग | तत्वों को छिपाने के लिए सीएसएस चयनकर्ता |
| 'सीधा करो' | बूलियन | ट्रांसलेशन/रोटेट ट्रांसफॉर्म हटाएं |
| `नोशैडोज़` | बूलियन | पट्टी छाया प्रभाव |
## सामान्य पैटर्न
### प्रतिक्रियाशील स्क्रीनशॉट
```javascript
// Capture at different scales
const mobile = await snapdom.toPng(element, { scale: 1 });
const tablet = await snapdom.toPng(element, { scale: 1.5 });
const desktop = await snapdom.toPng(element, { scale: 2 });
```
### तत्वों को बाहर निकालें
```javascript
// Hide specific elements from capture
const png = await snapdom.toPng(element, {
exclude: '.controls, .watermark, [data-no-capture]'
});
```
### निश्चित आयाम
```javascript
// Capture with specific size
const result = await snapdom(element, {
width: 1200,
height: 630 // Standard social media size
});
```
### सीओआरएस हैंडलिंग
```javascript
// Fallback for CORS-blocked resources
const png = await snapdom.toPng(element, {
useProxy: 'https://cors.example.com/?' // Custom proxy
});
```
### प्लगइन सिस्टम (बीटा)
```javascript
// Extend with custom exporters
snapdom.plugins([pluginFactory, { colorOverlay: true }]);
// Hook into lifecycle
defineExports(context) {
return {
pdf: async (ctx, opts) => { /* generate PDF */ }
};
}
// Lifecycle hooks available:
// beforeSnap → beforeClone → afterClone →
// beforeRender → beforeExport → afterExport
```
## प्रदर्शन तुलना
SnapDOM html2canvas से काफी बेहतर प्रदर्शन करता है:
| परिदृश्य | स्नैपडॉम | html2कैनवास | सुधार |
|---|---|---|---|
| छोटा (200×100) | 1.6ms | 68ms | 42x तेज |
| मध्यम (800×600) | 12 एमएस | 280 एमएस | 23 गुना तेज |
| बड़ा (4000×2000) | 171 एमएस | 1,800 एमएस | 10 गुना तेज |
## विकास
### स्थापित करना
```bash
git clone https://github.com/zumerlab/snapdom.git
cd snapdom
npm install
```
### निर्माण
```bash
npm run compile
```
### परीक्षण
```bash
npm test
```
## ब्राउज़र समर्थन
- क्रोम/एज 90+
- फ़ायरफ़ॉक्स 88+
-सफारी 14+
- मोबाइल ब्राउज़र (iOS Safari 14+, Chrome मोबाइल)
## संसाधन
### दस्तावेज़ीकरण
- **आधिकारिक वेबसाइट:** https://snapdom.dev/
- **गिटहब रिपॉजिटरी:** https://github.com/zumerlab/snapdom
- **एनपीएम पैकेज:** https://www.npmjs.com/package/@zumer/snapdom
- **लाइसेंस:** एमआईटी
### स्क्रिप्ट/
स्वचालन के लिए यहां सहायक स्क्रिप्ट जोड़ें, उदाहरण:
- `बैच-स्क्रीनशॉट.जेएस` - एकाधिक तत्वों को कैप्चर करें
- `pdf-export.js` - स्नैपशॉट को पीडीएफ में बदलें
- `तुलना-आउटपुट.जेएस` - एसवीजी बनाम पीएनजी गुणवत्ता की तुलना करें
### संपत्ति/
टेम्पलेट और उदाहरण जोड़ें:
- सामान्य कैप्चर परिदृश्यों के लिए HTML टेम्पलेट
- सीएसएस फ्रेमवर्क स्नैपडोम के साथ पूर्व-कॉन्फ़िगर किया गया
- स्नैपडोम को एकीकृत करने वाली बॉयलरप्लेट परियोजनाएं
## संबंधित उपकरण
- **html2canvas** - वैकल्पिक DOM कैप्चर (धीमा लेकिन अधिक संगत)
- **ऑर्बिट सीएसएस टूलकिट** - ज़ुमेरलैब द्वारा सहयोगी टूलकिट (https://github.com/zumerlab/orbit)
## युक्तियाँ एवं सर्वोत्तम प्रथाएँ
1. **प्रदर्शन**: बेहतर प्रदर्शन के लिए `चौड़ाई`/`ऊंचाई` के बजाय `स्केल` का उपयोग करें
2. **फ़ॉन्ट**: यह सुनिश्चित करने के लिए कि कस्टम फ़ॉन्ट सही ढंग से दिखाई दें, `एम्बेडफ़ॉन्ट: सत्य` सेट करें
3. **सीओआरएस मुद्दे**: यदि छवियां लोड होने में विफल रहती हैं तो `useProxy: true` का उपयोग करें
4. **बड़े तत्व**: जटिल पृष्ठों के लिए छोटे भागों में तोड़ें
5. **गुणवत्ता**: पीएनजी/जेपीजी के लिए, सर्वोत्तम गुणवत्ता के लिए `गुणवत्ता: 0.95` का उपयोग करें
6. **एसवीजी वेक्टर**: चार्ट और ग्राफिक्स के लिए एसवीजी निर्यात को प्राथमिकता दें
## समस्या निवारण
### तत्वों का प्रतिपादन नहीं हो रहा है
- जांचें कि क्या तत्व की ऊंचाई/चौड़ाई पर्याप्त है
- कैप्चर करने से पहले सत्यापित करें कि सीएसएस पूरी तरह से लोड है
- यदि परिवर्तन समस्याएँ पैदा कर रहा है तो `सीधा करें: गलत` आज़माएँ
### गुम फ़ॉन्ट्स
- `एम्बेडफ़ॉन्ट: सत्य` सेट करें
- स्नैपडॉम को कॉल करने से पहले सुनिश्चित करें कि फ़ॉन्ट लोड किए गए हैं
- फ़ॉन्ट लोडिंग त्रुटियों के लिए ब्राउज़र कंसोल की जाँच करें
### सीओआरएस मुद्दे
- `useProxy: true` सक्षम करें
- डिफ़ॉल्ट विफल होने पर कस्टम प्रॉक्सी यूआरएल का उपयोग करें
- जांचें कि क्या संसाधन एक ही मूल से हैं
### प्रदर्शन संबंधी मुद्दे
- `स्केल' मान कम करें
- छाया प्रतिपादन को छोड़ने के लिए `noShadows: true` का उपयोग करें
- बड़े कैप्चर को छोटे खंडों में विभाजित करने पर विचार करें

View File

View File

5
i18n/id/README.md Normal file
View File

@ -0,0 +1,5 @@
# id 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/id/prompts/.gitkeep Normal file
View File

0
i18n/id/skills/.gitkeep Normal file
View File

5
i18n/it/README.md Normal file
View File

@ -0,0 +1,5 @@
# it 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/it/prompts/.gitkeep Normal file
View File

0
i18n/it/skills/.gitkeep Normal file
View File

5
i18n/ja/README.md Normal file
View File

@ -0,0 +1,5 @@
# ja 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/ja/prompts/.gitkeep Normal file
View File

0
i18n/ja/skills/.gitkeep Normal file
View File

5
i18n/ko/README.md Normal file
View File

@ -0,0 +1,5 @@
# ko 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/ko/prompts/.gitkeep Normal file
View File

0
i18n/ko/skills/.gitkeep Normal file
View File

5
i18n/ms/README.md Normal file
View File

@ -0,0 +1,5 @@
# ms 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/ms/prompts/.gitkeep Normal file
View File

0
i18n/ms/skills/.gitkeep Normal file
View File

5
i18n/nl/README.md Normal file
View File

@ -0,0 +1,5 @@
# nl 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/nl/prompts/.gitkeep Normal file
View File

0
i18n/nl/skills/.gitkeep Normal file
View File

5
i18n/pl/README.md Normal file
View File

@ -0,0 +1,5 @@
# pl 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/pl/prompts/.gitkeep Normal file
View File

0
i18n/pl/skills/.gitkeep Normal file
View File

5
i18n/pt/README.md Normal file
View File

@ -0,0 +1,5 @@
# pt 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/pt/prompts/.gitkeep Normal file
View File

0
i18n/pt/skills/.gitkeep Normal file
View File

5
i18n/ru/README.md Normal file
View File

@ -0,0 +1,5 @@
# ru 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/ru/prompts/.gitkeep Normal file
View File

0
i18n/ru/skills/.gitkeep Normal file
View File

5
i18n/sw/README.md Normal file
View File

@ -0,0 +1,5 @@
# sw 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/sw/prompts/.gitkeep Normal file
View File

0
i18n/sw/skills/.gitkeep Normal file
View File

5
i18n/ta/README.md Normal file
View File

@ -0,0 +1,5 @@
# ta 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/ta/prompts/.gitkeep Normal file
View File

0
i18n/ta/skills/.gitkeep Normal file
View File

5
i18n/th/README.md Normal file
View File

@ -0,0 +1,5 @@
# th 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/th/prompts/.gitkeep Normal file
View File

0
i18n/th/skills/.gitkeep Normal file
View File

5
i18n/tr/README.md Normal file
View File

@ -0,0 +1,5 @@
# tr 语言包
- documents/: 该语言的文档与方法论
- prompts/: 该语言的提示词资产
- skills/: 该语言的技能与参考

View File

0
i18n/tr/prompts/.gitkeep Normal file
View File

0
i18n/tr/skills/.gitkeep Normal file
View File

Some files were not shown because too many files have changed in this diff Show More