Skill Trust Decision

gzh-ai-feed

这是一个合法的微信公众号文章聚合工具,主要风险是 API Key 被嵌入生成的 HTML 报告中,建议改进。

Install decision first Source: ClawHub Scanned: Jun 23, 2026
Files 4
Artifacts 9
Violations 2
Findings 4

Why this conclusion was reached

1/4 dimensions flagged
Block
Declared vs actual capability

2 undeclared or violating capabilities were inferred.

Review
Hidden execution and egress

9 lower-risk artifacts were extracted and still need context.

Pass
Attack chain and severe findings

There is no explicit malicious chain in the report.

Review
Dependencies and supply chain hygiene

1 dependency or supply-chain issues need attention.

What drove the risk score up

敏感凭证嵌入 HTML +15

API Key 通过 html.replace("{{API_KEY}}", api_key) 写入生成的报告文件,存在泄露风险

文档声明不完整 +5

SKILL.md 未声明本地 HTTP 代理服务(8765端口)和 shell 执行(订阅)功能

Most important evidence

Medium Sensitive Access

API Key 嵌入生成的 HTML 报告

在 generate_report() 函数中,API Key 被直接替换到 HTML 模板并保存到文件。这意味着生成的报告文件包含敏感凭证,如果报告被分享或丢失,API Key 会泄露。

assets/daily_report.py:287
从 HTML 模板中移除 {{API_KEY}} 占位符,改为通过 JavaScript 发起带 X-API-KEY header 的请求,或在模板中写入无权限的公开信息。
Low Doc Mismatch

本地 HTTP 代理服务未在文档中声明

脚本启动时会监听 127.0.0.1:8765 端口提供搜索 API 代理,SKILL.md 只提到'内置搜索功能'但未说明会启动网络服务。

assets/daily_report.py:469
在 SKILL.md 的参数说明中添加 --no-open 参数说明,并注明搜索功能依赖本地代理服务。
Low Doc Mismatch

Shell 执行和系统配置未声明

--subscribe 功能会修改 crontab(macOS launchd)添加定时任务,这是高权限系统操作,但 SKILL.md 仅描述为'开启每日订阅'。

assets/daily_report.py:348
在 Known Risks 中添加'系统配置修改'风险提示,说明订阅功能会安装定时任务。
Info Supply Chain

依赖 requests 无版本锁定

pip3 install requests 没有指定版本,可能拉取存在漏洞的旧版本。

SKILL.md:52
建议锁定版本:requests>=2.28.0

Declared capability vs actual capability

Filesystem Pass
Declared WRITE
→
Inferred WRITE
assets/daily_report.py:480 write report
Network Pass
Declared READ
→
Inferred READ
assets/daily_report.py:75 POST to redfox.hk
Shell Block
Declared NONE
→
Inferred WRITE
assets/daily_report.py:348 crontab | shell=True
Browser Block
Declared NONE
→
Inferred WRITE
assets/daily_report.py:484 subprocess open/xdg-open

Suspicious artifacts and egress

Medium External URL
https://redfox.hk/settings/api-keys?source=clawhub

SKILL.md:62

Medium External URL
https://redfox.hk/story/api/parseWork/queryAiMsgs

assets/daily_report.py:33

Medium External URL
https://redfox.hk/settings/api-keys?source=clawhub)-ClawHub

assets/daily_report.py:148

Medium External URL
http://www.apple.com/DTDs/PropertyList-1.0.dtd

assets/daily_report.py:604

Medium External URL
http://127.0.0.1:

assets/daily_report.py:750

Medium External URL
https://redfox.hk/settings/api-keys

assets/daily_report.py:813

Medium External URL
http://127.0.0.1:8765/

assets/daily_report.py:867

Medium External URL
https://clawhub.ai/user/redfox-data

skill-card.md:7

Medium External URL
https://clawhub.ai/redfox-data/gzh-ai-feed

skill-card.md:31

Dependencies and supply chain

PackageVersionSourceKnown vulnNotes
requests * pip No 无版本锁定,建议指定 requests>=2.28.0

File composition

4 files · 1859 lines
Python 1 files · 884 linesHTML 1 files · 810 linesMarkdown 2 files · 165 lines
Files of concern · 3
assets/daily_report.py Python · 884 lines
API Key 嵌入生成的 HTML 报告 · 本地 HTTP 代理服务未在文档中声明 · Shell 执行和系统配置未声明 · https://redfox.hk/story/api/parseWork/queryAiMsgs · https://redfox.hk/settings/api-keys?source=clawhub)-ClawHub · http://www.apple.com/DTDs/PropertyList-1.0.dtd · http://127.0.0.1: · https://redfox.hk/settings/api-keys · http://127.0.0.1:8765/
SKILL.md Markdown · 120 lines
依赖 requests 无版本锁定 · https://redfox.hk/settings/api-keys?source=clawhub
skill-card.md Markdown · 45 lines
https://clawhub.ai/user/redfox-data · https://clawhub.ai/redfox-data/gzh-ai-feed
Other files · report_template.html

Security positives

代码结构清晰,注释完整
API 调用使用 HTTPS,有 TLS 验证
API Key 支持多种配置方式(环境变量/配置文件/CLI)
错误处理完善,有重试机制
skill-card.md 提供了详细的风险提示
HTML 模板使用了 referrerpolicy="no-referrer" 保护隐私