Low Risk — Risk Score 20/100
Last scan:8 hr ago Rescan
20 /100
wip-xai-grok
xAI Grok API. Search the web, search X, generate images, generate video.
合法的 xAI Grok API 封装工具,存在一处未完整文档化的 shell 执行(1Password CLI 调用获取凭证),但用途正当且无恶意行为。
Skill Namewip-xai-grok
Duration73.2s
Enginepi
Safe to install
可安全使用。建议补充文档明确说明 1Password 凭证获取依赖 op CLI 的安装和配置。

Findings 2 items

Severity Finding Location
Low
1Password 凭证获取机制未完整文档化 Doc Mismatch
SKILL.md 提及 'op://Agent Secrets/X API/api key' 配置方式,但未明确说明代码使用 execSync 执行 'op read' 命令。文档缺口可能使用户不了解 op CLI 依赖。
execSync('op read "op://Agent Secrets/X API/api key"', { stdio: ['pipe', 'pipe', 'pipe'], timeout: 10000 })
→ 在 SKILL.md 的 Troubleshooting 部分补充说明:'此方法依赖 1Password CLI (op) 已安装并登录'
core.mjs:41
Info
合法使用 1Password 凭证检索 Sensitive Access
resolveApiKey() 通过 execSync 调用 1Password CLI 获取 API 密钥。这是安全的凭证管理实践,但实现细节应更透明。
const key = execSync('op read "op://Agent Secrets/X API/api key"', {...})
→ 无恶意行为,可安全使用
core.mjs:35
ResourceDeclaredInferredStatusEvidence
Filesystem READ READ ✓ Aligned core.mjs:232 readFileSync 仅用于读取本地图片文件供 edit_image 使用
Network WRITE WRITE ✓ Aligned 所有请求发往 https://api.x.ai/v1(合法 API 端点)
Shell NONE READ ✓ Aligned core.mjs:41 execSync 调用 1Password CLI,文档提及但未明确声明
Environment READ READ ✓ Aligned core.mjs:36 仅读取 XAI_API_KEY
10 findings
🔗
Medium External URL 外部 URL
https://console.x.ai/
README.md:29
🔗
Medium External URL 外部 URL
https://clawhub.ai/castanley/grok
README.md:122
🔗
Medium External URL 外部 URL
https://clawhub.ai
README.md:122
🔗
Medium External URL 外部 URL
https://api.x.ai/v1
SKILL.md:8
🔗
Medium External URL 外部 URL
https://docs.x.ai/developers/tools/web-search
SKILL.md:141
🔗
Medium External URL 外部 URL
https://docs.x.ai/developers/tools/x-search
SKILL.md:142
🔗
Medium External URL 外部 URL
https://docs.x.ai/docs/guides/image-generations
SKILL.md:143
🔗
Medium External URL 外部 URL
https://docs.x.ai/docs/guides/video-generations
SKILL.md:144
🔗
Medium External URL 外部 URL
https://opencollective.com/express
package-lock.json:137
🔗
Medium External URL 外部 URL
https://opencollective.com/fastify
package-lock.json:448

File Tree

10 files · 74.2 KB · 2243 lines
JSON 2f · 1183L JavaScript 3f · 733L Markdown 5f · 327L
├─ 📁 _trash
│ └─ 📝 RELEASE-NOTES-v1-0-3.md Markdown 7L · 186 B
├─ 📁 ai
│ └─ 📁 todos
│ └─ 📝 PUNCHLIST.md Markdown 3L · 34 B
├─ 📝 CHANGELOG.md Markdown 43L · 1015 B
├─ 📜 cli.mjs JavaScript 189L · 6.3 KB
├─ 📜 core.mjs JavaScript 389L · 12.6 KB
├─ 📜 mcp-server.mjs JavaScript 155L · 6.1 KB
├─ 📋 package-lock.json JSON 1142L · 39.3 KB
├─ 📋 package.json JSON 41L · 835 B
├─ 📝 README.md Markdown 130L · 3.8 KB
└─ 📝 SKILL.md Markdown 144L · 4.1 KB

Dependencies 1 items

PackageVersionSourceKnown VulnsNotes
@modelcontextprotocol/sdk ^1.27.1 npm No MCP 官方 SDK,来源可信

Security Positives

✓ 零恶意指标:无 base64 混淆、无反向 shell、无 C2 通信、无凭证外泄
✓ 所有网络请求指向合法 xAI API 端点 (https://api.x.ai/v1)
✓ execSync 仅用于获取凭证(有超时保护:10秒),非用于命令注入
✓ 代码结构清晰,注释完整,无可疑隐蔽逻辑
✓ 无第三方依赖风险(除 @modelcontextprotocol/sdk,来源可信)
✓ MIT 许可证,开源可审查