Install
openclaw skills install @thcjp/javascript提供基于异步模式、类型转换和ES2023+特性的JavaScript代码审查、质量评分和自动化开发支持。
openclaw skills install @thcjp/javascript核心功能: 本技能提供化工作流与智能决策辅助等能力。
| 能力 | 免费版 | 付费版 |
|---|---|---|
| 基础功能 | 支持 | 支持 |
| JavaScript类型转换 | 不支持 | 支持 |
| 代码静态分析与质量评分 | 不支持 | 支持 |
| 依赖漏洞检测与升级建议 | 不支持 | 支持 |
| 批量代码审查与报告生成 | 不支持 | 支持 |
| CI/CD流水线集成 | 不支持 | 支持 |
详细的输入输出格式请参考下方章节说明。
| 场景 | 输入 | 输出 |
|---|---|---|
| 异步模式编写 | 异步需求和错误处理 | 健壮的async/await代码 |
| 类型转换处理 | 数据类型和转换场景 | 安全的类型转换和校验代码 |
| 代码审查 | JS源代码和优选实践 | 审查报告和重构建议 |
不适用于:非JavaScript语言的代码审查和开发
| 参数名 | 类型 | 必填 | 说明 |
|---|---|---|---|
| code | string | 是 | JavaScript代码片段 |
| focus_area | string | 否 | 关注领域, 可选: async/types/security/all, 默认: all |
{
"success": true,
"data": {
"overall_grade": "A",
"total_score": 92,
"max_score": 100,
"summary": "处理完成",
"details": [
{
"item": "代码风格",
"status": "pass",
"score": 95,
"comment": "符合规范"
},
{
"item": "安全合规",
"status": "warn",
"score": 80,
"comment": "符合规范"
}
],
"improvements": [
{
"priority": "high",
"suggestion": "建议优化",
"expected_gain": "+5分"
},
{
"priority": "medium",
"suggestion": "建议优化",
"expected_gain": "+3分"
}
]
},
"error": null
}
| 依赖项 | 类型 | 是否必需 | 获取方式 |
|---|---|---|---|
| LLM API | API | 必需 | 由Agent内置LLM提供 |
API Key配置方式:
export API_KEY="${API_KEY:?请设置环境变量}"
配置后需重启会话或开启新终端生效。API Key应妥善保管,避免泄露到版本控制系统.
| 错误场景 | 原因 | 处理方式 |
|---|---|---|
| LLM响应超时或无响应 | 网络延迟或模型负载过高 | 请求重试;确认Agent平台LLM服务正常 |
| 输入内容格式不正确 | 用户输入不符合skill预期格式 | 检查输入是否符合skill使用说明中的格式要求,参考示例章节 |
| 执行结果与预期不符 | 指令描述不够明确或上下文不足 | 提供更详细的指令描述,补充必要的上下文信息 |
| 命令执行失败 | 运行环境不满足要求或权限不足 | 确认运行环境符合依赖说明中的要求;检查命令权限设置 |
A: 使用async/await模式,它可以简化回调地狱,使异步代码更易于阅读和维护。
A: 利用类型转换操作符,如==和===,以及Number()、String()和Boolean()函数,确保数据类型正确。
A: 可以使用递归来实现深拷贝,或者使用JSON.parse(JSON.stringify(obj)),但要注意它不能拷贝函数和undefined。
A: 使用in操作符或Object.prototype.hasOwnProperty.call(object, property)来检查属性是否存在于对象中。
A: 学习并使用诸如Promise.allSettled()、Optional Chaining、Nullish Coalescing Operator等新特性,以提升代码的现代化和健壮性。
| 错误现象 | 可能原因 | 诊断步骤 | 解决方案 |
|---|---|---|---|
| 异步操作未响应 | 回调函数未正确执行或Promise未解决 | 检查异步函数中的逻辑,确保回调或Promise被正确调用和解决 | 确保异步逻辑正确,并处理可能的错误 |
| 类型转换错误 | 不正确的类型转换或数据类型不匹配 | 检查类型转换逻辑,确保输入数据类型正确 | 使用正确的类型转换方法,确保数据类型一致性 |
| 代码审查失败 | 源代码不符合规范或存在潜在安全风险 | 运行代码审查工具,分析报告 | 修正不符合规范的代码,并修复潜在的安全风险 |
| 依赖漏洞检测失败 | 依赖项存在已知漏洞 | 使用依赖检测工具,分析漏洞报告 | 升级或更换存在漏洞的依赖项 |
| 风险项 | 等级 | 防护措施 | 验证方法 |
|---|---|---|---|
| XSS攻击 | 高 | 使用内容安全策略(CSP)和验证输入数据 | 定期进行安全扫描 |
| SQL注入 | 高 | 使用参数化查询和输入验证 | 定期进行安全审计 |
| 数据泄露 | 高 | 加密敏感数据和使用安全协议 | 定期进行安全评估 |
| 恶意依赖 | 中 | 检查依赖项来源并使用信誉良好的库 | 使用工具检查依赖项安全性 |
| 代码注入 | 中 | 对用户输入进行严格验证 | 使用安全编码实践 |
| 功能 | 效率提升量化分析 | 差异化对比 |
|---|---|---|
| 异步模式编写 | 减少40%的开发时间 | 提供自动化的异步处理模式生成器 |
| 类型转换处理 | 减少20%的类型错误 | 实现智能的类型推断和转换建议 |
| 代码静态分析与质量评分 | 减少30%的代码审查时间 | 提供详尽的代码质量评分和改进建议 |
| 依赖漏洞检测与升级建议 | 减少25%的漏洞修复时间 | 自动检测并建议修复依赖项漏洞 |
| 批量代码审查与报告生成 | 减少50%的代码审查工作量 | 支持批量代码审查和生成详细报告 |
| 对比项 | 现有工具 | 本工具 |
|---|---|---|
| 代码质量分析深度 | 有限 | 全面,包括安全性和效率 |
| 异步处理自动化 | 低 | 高 |
| 类型转换智能程度 | 低 | 高 |
| 依赖管理自动化 | 低 | 高 |
| 代码审查效率 | 低 | 高 |
| 操作场景 | 手动耗时 | 自动化耗时 | 效率提升 |
|---|---|---|---|
| 文件解析与提取 | 5-10分钟/个 | <5秒/个 | 60-120x |
| 批量文件处理(100个) | 8-16小时 | <5分钟 | 96-192x |
| API调用与响应解析 | 2-3分钟/次 | <1秒/次 | 120-180x |
| 多接口数据聚合 | 15-30分钟 | <10秒 | 90-180x |
| 命令执行与结果收集 | 3-5分钟/次 | <2秒/次 | 90-150x |
| 重复任务批量执行 | 因任务而异 | 线性缩减 | 5-50x |
| 错误排查与修复 | 10-30分钟 | <30秒 | 20-60x |
| 对比维度 | JavaScript开发工具 | 传统手动方式 | 通用脚本工具 |
|---|---|---|---|
| 自动化程度 | 全流程自动 | 完全手动 | 部分自动 |
| 错误处理 | 内置错误恢复 | 依赖人工经验 | 基本try-catch |
| 可复用性 | 参数化配置 | 一次性脚本 | 模板化 |
| 安全合规 | 内置安全检查 | 无安全保障 | 无安全保障 |
| 适用场景 | 写健壮JavaScript,异步/类型转换/ES2023+特性。Write ro | 通用场景 | 通用场景 |