Not in the top 1,000 by GitHub stars
DeliciousBuding/xiaohongshu-skill
Xiaohongshu & RedNote skill for AI agents — search, read notes, publish, and run approval-gated automation with Python Playwright and clean JSON output.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
SKILL.md
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → afa96802d3e6
No earlier version was observed for comparison.
Verified commit afa96802d3e61cdd5e7bd7b37ec59182bbe07d37
git clone --filter=blob:none --no-checkout https://github.com/DeliciousBuding/xiaohongshu-skill.git .hotskills/deliciousbuding-xiaohongshu-skill && git -C .hotskills/deliciousbuding-xiaohongshu-skill checkout --detach afa96802d3e61cdd5e7bd7b37ec59182bbe07d37
# Copy each selected skill directory from .hotskills/deliciousbuding-xiaohongshu-skill into .agents/skills/<skill-name>/Heat
0.3- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
How it works
xiaohongshu-skill
When your agent uses it
小红书 / Xiaohongshu / RedNote AI Agent Skill。用 Python Playwright 搜索和读取内容、管理登录会话、发布图文/视频/长文、评论、点赞和收藏;默认输出 JSON,任何写操作都必须先获得用户确认。用户提到 xiaohongshu、小红书、rednote、小红书搜索、发到小红书、小红书笔记分析、小红书运营或小红书自动化时触发。
What it loads into context
Frontmatter
194 tokensAlways available to the agent
SKILL.md
1,020 tokensWhen the skill is activated
Reference documents
12,218 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 安全规则
- 任务路由
- 初始化
- 只读示例
- 发布语义
- 输出和错误
- 本地状态
Scripts executed separately
Dockerfilemake.ps1scripts/__init__.pyscripts/__main__.pyscripts/_logging.pyscripts/_utils.pyscripts/client.pyscripts/comment.pyscripts/docs_check.pyscripts/explore.pyscripts/feed.pyscripts/interact.pyscripts/login.pyscripts/output_contracts.pyscripts/profiles.pyscripts/publish.pyscripts/quality.pyscripts/release_check.pyscripts/search.pyscripts/selectors.pyscripts/session_store.pyscripts/site_check.pyscripts/skill_check.pyscripts/sop.pyscripts/strategy.pyscripts/templates.pyscripts/test_gate.pyscripts/user.pytests/__init__.pytests/conftest.pytests/live/test_readonly_smoke.pytests/test_cli.pytests/test_client.pytests/test_comment.pytests/test_docs_check.pytests/test_explore.pytests/test_interact.pytests/test_live_gate.pytests/test_login.pytests/test_output_contracts.pytests/test_profiles.pytests/test_publish.pytests/test_publish_validation.pytests/test_quality.pytests/test_release_check.pytests/test_search.pytests/test_selectors.pytests/test_session_store.pytests/test_site_check.pytests/test_skill_check.pytests/test_sop.pytests/test_strategy.pytests/test_templates.pytests/test_test_harness.pytests/test_user.py
Files
.coderabbit.yamlasset278 bytes.dockerignoreasset212 bytes.env.exampleasset356 bytes.github/CODEOWNERSasset19 bytes.github/ISSUE_TEMPLATE/bug_report.mddoc473 bytes.github/ISSUE_TEMPLATE/feature_request.mddoc261 bytes.github/PULL_REQUEST_TEMPLATE.mddoc572 bytes.github/workflows/ci.ymlasset3,358 bytes.github/workflows/pages.ymlasset900 bytes.github/workflows/release.ymlasset2,704 bytes.gitignoreasset422 bytesAGENTS.mddoc2,052 bytesCHANGELOG.mddoc2,640 bytesCONTRIBUTING.mddoc2,787 bytesDockerfileruns738 bytesLICENSEasset11,350 bytesREADME.mddoc5,669 bytesREADME_EN.mddoc5,935 bytesSKILL.mdcore3,695 bytesSKILL.mdcore3,695 bytesSKILL.mdcore3,695 bytesSKILL.mdcore3,695 bytesSKILL.mdcore3,695 bytesSKILL.mdcore3,695 bytesTHIRD_PARTY_NOTICES.mddoc795 bytesdata/.gitkeepasset0 bytesdocker-compose.ymlasset284 bytesdocs/API.mddoc4,380 bytesdocs/ARCHITECTURE.mddoc3,950 bytesdocs/INSTALL.mddoc4,043 bytesdocs/INTEGRATIONS.mddoc2,653 bytesdocs/PAGES.mddoc2,227 bytesdocs/REFERENCE.mddoc1,863 bytesdocs/RELEASING.mddoc1,788 bytesdocs/ROADMAP.mddoc1,360 bytesdocs/SECURITY.mddoc2,708 bytesexamples/README.mddoc460 bytesexamples/claude-code/README.mddoc1,325 bytesexamples/cursor/README.mddoc791 bytesexamples/demo/publish-ready.jsonasset429 bytesexamples/demo/search-result.jsonasset382 bytesexamples/n8n/README.mddoc660 bytesexamples/openclaw/README.mddoc625 byteslicenses/Apache-2.0.txtdoc11,339 bytesmake.ps1runs279 bytespyproject.tomlasset1,772 bytesscripts/__init__.pyruns699 bytesscripts/__main__.pyruns29,830 bytesscripts/_logging.pyruns775 bytesscripts/_utils.pyruns1,909 bytesscripts/client.pyruns21,247 bytesscripts/comment.pyruns19,572 bytesscripts/docs_check.pyruns4,017 bytesscripts/explore.pyruns4,563 bytesscripts/feed.pyruns8,268 bytesscripts/interact.pyruns10,873 bytesscripts/login.pyruns11,303 bytesscripts/output_contracts.pyruns9,498 bytesscripts/profiles.pyruns3,146 bytesscripts/publish.pyruns53,185 bytesscripts/quality.pyruns2,477 bytesscripts/release_check.pyruns1,620 bytesscripts/search.pyruns14,595 bytesscripts/selectors.pyruns10,810 bytesscripts/session_store.pyruns2,945 bytesscripts/site_check.pyruns8,471 bytesscripts/skill_check.pyruns1,117 bytesscripts/sop.pyruns14,235 bytesscripts/strategy.pyruns10,315 bytesscripts/templates.pyruns11,352 bytesscripts/test_gate.pyruns669 bytesscripts/user.pyruns8,470 bytessite/demo.htmlasset4,985 bytessite/index.htmlasset29,763 bytessite/llms-full.txtdoc4,086 bytessite/llms.txtdoc2,947 bytessite/og-image.pngasset58,649 bytessite/og-image.svgasset3,442 bytessite/robots.txtdoc239 bytessite/sitemap.xmlasset616 bytestests/__init__.pyruns0 bytestests/conftest.pyruns1,959 bytestests/live/test_readonly_smoke.pyruns807 bytestests/test_cli.pyruns8,258 bytestests/test_client.pyruns13,605 bytestests/test_comment.pyruns6,351 bytestests/test_docs_check.pyruns1,765 bytestests/test_explore.pyruns3,401 bytestests/test_interact.pyruns7,024 bytestests/test_live_gate.pyruns766 bytestests/test_login.pyruns7,576 bytestests/test_output_contracts.pyruns3,113 bytestests/test_profiles.pyruns2,647 bytestests/test_publish.pyruns24,318 bytestests/test_publish_validation.pyruns8,579 bytestests/test_quality.pyruns1,256 bytestests/test_release_check.pyruns1,014 bytestests/test_search.pyruns3,156 bytestests/test_selectors.pyruns5,619 bytestests/test_session_store.pyruns2,524 bytestests/test_site_check.pyruns3,577 bytestests/test_skill_check.pyruns846 bytestests/test_sop.pyruns7,449 bytestests/test_strategy.pyruns6,059 bytestests/test_templates.pyruns6,557 bytestests/test_test_harness.pyruns267 bytestests/test_user.pyruns1,994 bytesuv.lockasset47,891 bytes
Read SKILL.md
# 小红书 Skill
通过 JSON CLI 操作小红书浏览器会话。执行入口统一为:
```bash
cd {baseDir}
uv run python -m scripts <command>
```
## 安全规则
发布、评论、回复、点赞、收藏、取消点赞和取消收藏会改变真实账号状态。执行前必须:
1. 展示目标账号、内容、媒体和操作类型。View the complete source on GitHubSkills included
- xiaohongshu-skill
Repository facts
- License
- Apache-2.0
- Created
- Feb 23, 2026
- Last pushed
- Aug 24, 2026
- Forks
- 9
- Open issues
- 1
- Project activity
- Slowing
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 7, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 5 notes
SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 520 network referencesin 39 files: uv.lock:10 site/index.html:17 site/llms.txt:5 and 36 more
- 1 obfuscation signalin 1 file: scripts/login.py:149
- No instruction overrides
- 55 executable scriptsin 55 files: Dockerfile:1 make.ps1:1 scripts/__init__.py:1 and 52 more
- 14 references to secretsin 11 files: scripts/__main__.py:62 scripts/client.py:261 scripts/profiles.py:40 and 8 more
- No requests to vote in Hot
Show all 590 signals by file
.dockerignore
- Access to secretsline 13
[Credential-related source omitted]
.gitignore
- Access to secretsline 36
[Credential-related source omitted]
CHANGELOG.md
- Network accessline 3
All notable changes to this project are documented here. This project uses [Conventional Commits](https://www.conventionalcommits.org/) and keeps one - Network accessline 4
[Conventional Commits](https://www.conventionalcommits.org/) and keeps one - Network accessline 7
The format follows [Keep a Changelog](https://keepachangelog.com/en/1.1.0/). - Network accessline 62
[1.5.0]: https://github.com/DeliciousBuding/xiaohongshu-skill/compare/v1.4.0...v1.5.0 - Network accessline 63
[1.4.0]: https://github.com/DeliciousBuding/xiaohongshu-skill/compare/v1.3.0...v1.4.0 - Network accessline 64
[1.3.0]: https://github.com/DeliciousBuding/xiaohongshu-skill/releases/tag/v1.3.0
CONTRIBUTING.md
- Network accessline 8
git clone https://github.com/DeliciousBuding/xiaohongshu-skill.git
Dockerfile
- Executable scriptline 1
Executable file
LICENSE
README.md
- Network accessline 3
[](https://github.com/DeliciousBuding/xiaohongshu-skill/actions/workflows/ci.yml) - Network accessline 4
[](https://github.com/DeliciousBuding/xiaohongshu-skill/releases) - Network accessline 5
[](https://www.python.org/) - Network accessline 6
[](LICENSE) - Network accessline 49
git clone https://github.com/DeliciousBuding/xiaohongshu-skill.git - Network accessline 65
pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git
README_EN.md
- Network accessline 3
[](https://github.com/DeliciousBuding/xiaohongshu-skill/actions/workflows/ci.yml) - Network accessline 4
[](https://github.com/DeliciousBuding/xiaohongshu-skill/releases) - Network accessline 5
[](https://www.python.org/) - Network accessline 6
[](LICENSE) - Network accessline 49
git clone https://github.com/DeliciousBuding/xiaohongshu-skill.git - Network accessline 65
pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git - Access to secretsline 133
[Credential-related source omitted]
docs/INSTALL.md
docs/PAGES.md
- Network accessline 62
- `programmingLanguage`: `Python` - `license`: `Apache-2.0` - `codeRepository`: `https://github.com/DeliciousBuding/xiaohongshu-skill` - Network accessline 63
- `license`: `Apache-2.0` - `codeRepository`: `https://github.com/DeliciousBuding/xiaohongshu-skill` - `sameAs`: GitHub, skills.sh, and `llms.txt` - Network accessline 64
- `codeRepository`: `https://github.com/DeliciousBuding/xiaohongshu-skill`
docs/REFERENCE.md
- Access to secretsline 23
[Credential-related source omitted]
examples/claude-code/README.md
examples/cursor/README.md
- Network accessline 8
git clone https://github.com/DeliciousBuding/xiaohongshu-skill.git
examples/demo/search-result.json
examples/openclaw/README.md
- Network accessline 12
git clone https://github.com/DeliciousBuding/xiaohongshu-skill.git ~/.openclaw/skills/xiaohongshu-skill
licenses/Apache-2.0.txt
make.ps1
- Executable scriptline 1
Executable file
pyproject.toml
scripts/__init__.py
- Executable scriptline 1
Executable file
scripts/__main__.py
scripts/_logging.py
- Executable scriptline 1
Executable file
scripts/_utils.py
scripts/client.py
- Executable scriptline 1
Executable file - Access to secretsline 261
[Credential-related source omitted] - Access to secretsline 326
[Credential-related source omitted] - Network accessline 513
self.navigate("https://www.xiaohongshu.com/explore") - Network accessline 531
self.navigate("https://www.xiaohongshu.com/explore")
scripts/comment.py
- Executable scriptline 1
Executable file - Network accessline 419
page = self.client.page print("导航到通知页...", file=sys.stderr) self.client.navigate("https://www.xiaohongshu.com/notification") - Network accessline 420
print("导航到通知页...", file=sys.stderr) self.client.navigate("https://www.xiaohongshu.com/notification") time.sleep(3) - Network accessline 421
self.client.navigate("https://www.xiaohongshu.com/notification")
scripts/docs_check.py
- Executable scriptline 1
Executable file
scripts/explore.py
- Executable scriptline 1
Executable file - Network accessline 18
EXPLORE_URL = "https://www.xiaohongshu.com/explore" - Network accessline 48
// 提取每条笔记的关键信息 return JSON.stringify(flat.map(function(item) { var nc = item.noteCard || (item.model_type === 'note' ? item : {}); - Network accessline 49
return JSON.stringify(flat.map(function(item) { var nc = item.noteCard || (item.model_type === 'note' ? item : {}); if (item.noteCard) nc = item.noteCard; - Network accessline 50
var nc = item.noteCard || (item.model_type === 'note' ? item : {}); - Network accessline 51
if (item.noteCard) nc = item.noteCard;
scripts/feed.py
- Executable scriptline 1
Executable file
scripts/interact.py
- Executable scriptline 1
Executable file
scripts/login.py
- Executable scriptline 1
Executable file - Network accessline 28
CREATOR_PUBLISH_URL = "https://creator.xiaohongshu.com/publish/publish?source=official" - Network accessline 47
if navigate: self.client.navigate("https://www.xiaohongshu.com/explore") - Network accessline 48
self.client.navigate("https://www.xiaohongshu.com/explore") - Network accessline 75
url = (self.client.page.url or "").lower() return url.startswith("https://creator.xiaohongshu.com") - Network accessline 76
return url.startswith("https://creator.xiaohongshu.com") - Network accessline 121
client.navigate("https://www.xiaohongshu.com/explore") - Possible obfuscationline 149
img_data = base64.b64decode(qrcode_src)
scripts/output_contracts.py
- Executable scriptline 1
Executable file
scripts/profiles.py
scripts/publish.py
scripts/quality.py
scripts/release_check.py
- Executable scriptline 1
Executable file
scripts/search.py
- Executable scriptline 1
Executable file - Network accessline 59
"source": "web_explore_feed", }) return f"https://www.xiaohongshu.com/search_result?{params}" - Network accessline 61
return f"https://www.xiaohongshu.com/search_result?{params}" - Network accessline 178
return JSON.stringify(data.slice(0, 50).map(item => { const nc = item.noteCard || {}; - Network accessline 179
const nc = item.noteCard || {};
scripts/selectors.py
- Executable scriptline 1
Executable file
scripts/session_store.py
scripts/site_check.py
- Executable scriptline 1
Executable file - Network accessline 101
if not _software_application_has_same_as(parser.json_ld, "https://www.skills.sh/deliciousbuding/xiaohongshu-skill"): - Network accessline 139
"xiaohongshu-skill", "npx skills add DeliciousBuding/xiaohongshu-skill", "https://www.skills.sh/deliciousbuding/xiaohongshu-skill", - Network accessline 140
"npx skills add DeliciousBuding/xiaohongshu-skill", "https://www.skills.sh/deliciousbuding/xiaohongshu-skill", ): - Network accessline 141
"https://www.skills.sh/deliciousbuding/xiaohongshu-skill", - Network accessline 172
if sitemap_path.is_file(): sitemap_text = sitemap_path.read_text(encoding="utf-8") if "https://deliciousbuding.github.io/xiaohongshu-skill/" not in sitemap_text: - Network accessline 173
sitemap_text = sitemap_path.read_text(encoding="utf-8") if "https://deliciousbuding.github.io/xiaohongshu-skill/" not in sitemap_text: findings.append("sitemap.xml: missing Pages canonical URL") - Network accessline 174
if "https://deliciousbuding.github.io/xiaohongshu-skill/" not in sitemap_text: - Network accessline 175
findings.append("sitemap.xml: missing Pages canonical URL") if "https://deliciousbuding.github.io/xiaohongshu-skill/demo.html" not in sitemap_text: findings.append("sitemap.xml: missing demo page URL") - Network accessline 176
if "https://deliciousbuding.github.io/xiaohongshu-skill/demo.html" not in sitemap_text: - Network accessline 177
findings.append("sitemap.xml: missing demo page URL") if "https://deliciousbuding.github.io/xiaohongshu-skill/llms-full.txt" not in sitemap_text: findings.append("sitemap.xml: missing llms-full URL") - Network accessline 178
if "https://deliciousbuding.github.io/xiaohongshu-skill/llms-full.txt" not in sitemap_text:
scripts/skill_check.py
- Executable scriptline 1
Executable file
scripts/sop.py
- Executable scriptline 1
Executable file
scripts/strategy.py
- Executable scriptline 1
Executable file
scripts/templates.py
- Executable scriptline 1
Executable file
scripts/test_gate.py
scripts/user.py
- Executable scriptline 1
Executable file - Network accessline 25
[Credential-related source omitted] - Network accessline 26
[Credential-related source omitted] - Network accessline 27
return f"https://www.xiaohongshu.com/user/profile/{user_id}" - Network accessline 70
// 提取每条笔记的关键信息,包含置顶标记和排序所需字段 return JSON.stringify(flat.map(function(item) { var nc = item.noteCard || {}; - Network accessline 71
return JSON.stringify(flat.map(function(item) { var nc = item.noteCard || {}; var info = nc.interactInfo || {}; - Network accessline 72
var nc = item.noteCard || {}; - Network accessline 186
print("导航到首页获取个人信息...", file=sys.stderr) client.navigate("https://www.xiaohongshu.com/explore") - Network accessline 187
client.navigate("https://www.xiaohongshu.com/explore")
site/demo.html
- Network accessline 7
<meta name="description" content="Public demo outputs for xiaohongshu-skill: search JSON, publish draft JSON, and agent contracts."> <meta name="robots" content="index,follow"> <link rel="canonical" href="https://deliciousbuding.github. - Network accessline 8
<meta name="robots" content="index,follow"> <link rel="canonical" href="https://deliciousbuding.github.io/xiaohongshu-skill/demo.html"> <style> - Network accessline 9
<link rel="canonical" href="https://deliciousbuding.github.io/xiaohongshu-skill/demo.html"> - Network accessline 70
] }</code></pre> <a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/examples/demo/search-result.json">View fixture →</a> - Network accessline 71
}</code></pre> <a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/examples/demo/search-result.json">View fixture →</a> </section> - Network accessline 72
<a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/examples/demo/search-result.json">View fixture →</a> - Network accessline 81
"message": "Draft is ready and waiting at the publish button." }</code></pre> <a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/examples/demo/publish-ready.json">View fixture →</a> - Network accessline 82
}</code></pre> <a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/examples/demo/publish-ready.json">View fixture →</a> </section> - Network accessline 83
<a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/examples/demo/publish-ready.json">View fixture →</a> - Network accessline 89
xiaohongshu-skill selectors --owner=publish python -m pytest tests/live -q -m live</code></pre> <a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/API.md">Command reference →</a> - Network accessline 90
python -m pytest tests/live -q -m live</code></pre> <a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/API.md">Command reference →</a> </section> - Network accessline 91
<a href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/API.md">Command reference →</a>
site/index.html
- Network accessline 17
<meta property="og:title" content="Xiaohongshu Skill for AI Agents"> <meta property="og:description" content="Search, read, publish, and operate Xiaohongshu & RedNote through Python Playwright. Approval-gated writes, clean JSON, AgentSkil - Network accessline 18
<meta property="og:description" content="Search, read, publish, and operate Xiaohongshu & RedNote through Python Playwright. Approval-gated writes, clean JSON, AgentSkill-ready."> <meta property="og:url" content="https://deliciousbuding.g - Network accessline 19
<meta property="og:url" content="https://deliciousbuding.github.io/xiaohongshu-skill/"> - Network accessline 20
<meta property="og:image" content="https://deliciousbuding.github.io/xiaohongshu-skill/og-image.png"> - Network accessline 28
<meta name="twitter:title" content="Xiaohongshu Skill for AI Agents"> <meta name="twitter:description" content="Python Playwright AgentSkill for search, note details, publishing, and agent-safe Xiaohongshu automation."> <meta name="twit - Network accessline 30
<meta name="twitter:image" content="https://deliciousbuding.github.io/xiaohongshu-skill/og-image.png"> - Network accessline 32
<link rel="canonical" href="https://deliciousbuding.github.io/xiaohongshu-skill/"> - Network accessline 34
<link rel="alternate" type="text/plain" href="llms.txt" title="LLM summary for xiaohongshu-skill"> <link rel="alternate" type="text/plain" href="llms-full.txt" title="Full LLM reference for xiaohongshu-skill"> <link rel="icon" type="ima - Network accessline 36
<link rel="icon" type="image/svg+xml" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><rect width='100' height='100' rx='24' fill='%23FF2442'/><text x='50' y='68' font-size='52' text-anchor='middle' fi - Network accessline 39
[ { "@context": "https://schema.org", - Network accessline 40
{ "@context": "https://schema.org", "@type": "SoftwareApplication", - Network accessline 41
"@context": "https://schema.org", - Network accessline 42
"@type": "SoftwareApplication", "@id": "https://deliciousbuding.github.io/xiaohongshu-skill/#app", "name": "xiaohongshu-skill", - Network accessline 43
"@id": "https://deliciousbuding.github.io/xiaohongshu-skill/#app", - Network accessline 54
"programmingLanguage": "Python", "softwareRequirements": "Python 3.10+, Playwright Chromium", "license": "https://opensource.org/licenses/Apache-2.0", - Network accessline 55
"softwareRequirements": "Python 3.10+, Playwright Chromium", "license": "https://opensource.org/licenses/Apache-2.0", "isAccessibleForFree": true, - Network accessline 56
"license": "https://opensource.org/licenses/Apache-2.0", - Network accessline 65
"Session isolation via profiles" ], "codeRepository": "https://github.com/DeliciousBuding/xiaohongshu-skill", - Network accessline 66
], "codeRepository": "https://github.com/DeliciousBuding/xiaohongshu-skill", "url": "https://deliciousbuding.github.io/xiaohongshu-skill/", - Network accessline 67
"codeRepository": "https://github.com/DeliciousBuding/xiaohongshu-skill", - Network accessline 68
"url": "https://deliciousbuding.github.io/xiaohongshu-skill/", - Network accessline 69
"downloadUrl": "https://github.com/DeliciousBuding/xiaohongshu-skill", - Network accessline 70
"sameAs": [ "https://github.com/DeliciousBuding/xiaohongshu-skill", "https://www.skills.sh/deliciousbuding/xiaohongshu-skill", - Network accessline 71
"https://github.com/DeliciousBuding/xiaohongshu-skill", - Network accessline 72
"https://www.skills.sh/deliciousbuding/xiaohongshu-skill", - Network accessline 73
"https://clawhub.ai/skills/xiaohongshu-skill", - Network accessline 74
"https://deliciousbuding.github.io/xiaohongshu-skill/llms.txt" - Network accessline 82
}, { "@context": "https://schema.org", - Network accessline 83
{ "@context": "https://schema.org", "@type": "Organization", - Network accessline 84
"@context": "https://schema.org", - Network accessline 85
"@type": "Organization", "@id": "https://github.com/DeliciousBuding", "name": "DeliciousBuding", - Network accessline 86
"@id": "https://github.com/DeliciousBuding", - Network accessline 87
"name": "DeliciousBuding", "url": "https://github.com/DeliciousBuding" }, - Network accessline 88
"url": "https://github.com/DeliciousBuding" - Network accessline 89
}, { "@context": "https://schema.org", - Network accessline 90
{ "@context": "https://schema.org", "@type": "WebSite", - Network accessline 91
"@context": "https://schema.org", - Network accessline 92
"@type": "WebSite", "@id": "https://deliciousbuding.github.io/xiaohongshu-skill/#website", "name": "xiaohongshu-skill", - Network accessline 93
"@id": "https://deliciousbuding.github.io/xiaohongshu-skill/#website", - Network accessline 94
"name": "xiaohongshu-skill", "url": "https://deliciousbuding.github.io/xiaohongshu-skill/", "about": { - Network accessline 95
"url": "https://deliciousbuding.github.io/xiaohongshu-skill/", - Network accessline 96
"about": { "@id": "https://deliciousbuding.github.io/xiaohongshu-skill/#app" }, - Network accessline 97
"@id": "https://deliciousbuding.github.io/xiaohongshu-skill/#app" - Network accessline 98
}, "publisher": { "@id": "https://github.com/DeliciousBuding" - Network accessline 99
"publisher": { "@id": "https://github.com/DeliciousBuding" } - Network accessline 100
"@id": "https://github.com/DeliciousBuding" - Network accessline 370
<a href="#docs">Docs</a> </div> <a class="nav-cta" href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener"> - Network accessline 371
</div> <a class="nav-cta" href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener"> <svg width="15" height="15" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true"><path d="M8 0C3.5 - Network accessline 372
<a class="nav-cta" href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener"> - Network accessline 388
<div class="hero-actions"> <a class="btn btn-primary" href="#install">Get started</a> <a class="btn btn-ghost" href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener">View sourc - Network accessline 389
<a class="btn btn-primary" href="#install">Get started</a> <a class="btn btn-ghost" href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener">View source</a> </div> - Network accessline 390
<a class="btn btn-ghost" href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener">View source</a> - Network accessline 467
<div class="cmd-row"><code>npx skills add DeliciousBuding/xiaohongshu-skill</code><button class="copy-btn" type="button">Copy</button></div> <div class="cmd-row"><code>clawhub install xiaohongshu-skill</code><button class="copy- - Network accessline 468
<div class="cmd-row"><code>clawhub install xiaohongshu-skill</code><button class="copy-btn" type="button">Copy</button></div> <div class="cmd-row"><code>pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git</c - Network accessline 469
<div class="cmd-row"><code>pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git</code><button class="copy-btn" type="button">Copy</button></div> - Network accessline 470
<div class="cmd-row"><code>git clone https://github.com/DeliciousBuding/xiaohongshu-skill.git <skills-dir>/xiaohongshu-skill</code><button class="copy-btn" type="button">Copy</button></div> - Network accessline 527
<a class="doc" href="llms.txt"><div class="t">llms.txt</div><div class="d">Machine-readable project summary.</div></a> <a class="doc" href="llms-full.txt"><div class="t">llms-full.txt</div><div class="d">Full LLM reference.</div>< - Network accessline 528
<a class="doc" href="llms-full.txt"><div class="t">llms-full.txt</div><div class="d">Full LLM reference.</div></a> <a class="doc" href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/INSTALL.md"><div class="t" - Network accessline 529
<a class="doc" href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/INSTALL.md"><div class="t">Install</div><div class="d">Setup for every platform.</div></a> - Network accessline 530
<a class="doc" href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/API.md"><div class="t">Commands</div><div class="d">CLI reference.</div></a> - Network accessline 531
<a class="doc" href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/INTEGRATIONS.md"><div class="t">Integrations</div><div class="d">Claude Code, Codex, n8n, more.</div></a> - Network accessline 532
<a class="doc" href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/SECURITY.md"><div class="t">Security</div><div class="d">Session and account safety.</div></a> - Network accessline 533
<a class="doc" href="https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/REFERENCE.md"><div class="t">Reference map</div><div class="d">Architecture and upstream attribution.</div></a> - Network accessline 534
<a class="doc" href="https://github.com/DeliciousBuding/xiaohongshu-skill/tree/main/examples"><div class="t">Examples</div><div class="d">Runnable snippets and fixtures.</div></a> - Network accessline 543
<div>© 2025–2026 DeliciousBuding · Apache-2.0</div> <div> <a href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener">GitHub</a> - Network accessline 544
<div> <a href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener">GitHub</a> <span style="margin:0 10px;opacity:.4">·</span> - Network accessline 545
<a href="https://github.com/DeliciousBuding/xiaohongshu-skill" target="_blank" rel="noopener">GitHub</a> - Network accessline 546
<span style="margin:0 10px;opacity:.4">·</span> <a href="https://clawhub.ai/skills/xiaohongshu-skill" target="_blank" rel="noopener">ClawHub</a> <span style="margin:0 10px;opacity:.4">·</span> - Network accessline 547
<a href="https://clawhub.ai/skills/xiaohongshu-skill" target="_blank" rel="noopener">ClawHub</a> - Network accessline 548
<span style="margin:0 10px;opacity:.4">·</span> <a href="https://www.skills.sh/deliciousbuding/xiaohongshu-skill" target="_blank" rel="noopener">skills.sh</a> </div> - Network accessline 549
<a href="https://www.skills.sh/deliciousbuding/xiaohongshu-skill" target="_blank" rel="noopener">skills.sh</a>
site/llms-full.txt
- Network accessline 6
- Category: AgentSkill and Python Playwright CLI - Domain: Xiaohongshu, RedNote, 小红书, xhs, RED - Repository: https://github.com/DeliciousBuding/xiaohongshu-skill - Network accessline 7
- Domain: Xiaohongshu, RedNote, 小红书, xhs, RED - Repository: https://github.com/DeliciousBuding/xiaohongshu-skill - Pages: https://deliciousbuding.github.io/xiaohongshu-skill/ - Network accessline 8
- Repository: https://github.com/DeliciousBuding/xiaohongshu-skill - Network accessline 9
- Pages: https://deliciousbuding.github.io/xiaohongshu-skill/ - Network accessline 10
- skills.sh: https://www.skills.sh/deliciousbuding/xiaohongshu-skill - Network accessline 20
npx skills add DeliciousBuding/xiaohongshu-skill clawhub install xiaohongshu-skill pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git - Network accessline 21
clawhub install xiaohongshu-skill pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git playwright install chromium - Network accessline 22
pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git - Network accessline 98
- Install: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/INSTALL.md - Network accessline 99
- Commands: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/API.md - Network accessline 100
- Integrations: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/INTEGRATIONS.md - Network accessline 101
- Security: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/SECURITY.md - Network accessline 102
- Reference map: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/REFERENCE.md - Network accessline 103
- Roadmap: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/ROADMAP.md - Network accessline 104
- Examples: https://github.com/DeliciousBuding/xiaohongshu-skill/tree/main/examples - Network accessline 105
- Demo outputs: https://deliciousbuding.github.io/xiaohongshu-skill/demo.html
site/llms.txt
- Network accessline 5
Repository: https://github.com/DeliciousBuding/xiaohongshu-skill - Network accessline 6
Pages: https://deliciousbuding.github.io/xiaohongshu-skill/ - Network accessline 7
skills.sh: https://www.skills.sh/deliciousbuding/xiaohongshu-skill - Network accessline 12
npx skills add DeliciousBuding/xiaohongshu-skill pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git - Network accessline 13
pip install git+https://github.com/DeliciousBuding/xiaohongshu-skill.git - Network accessline 55
- skills.sh: https://www.skills.sh/deliciousbuding/xiaohongshu-skill - Network accessline 56
- Full LLM reference: https://deliciousbuding.github.io/xiaohongshu-skill/llms-full.txt - Network accessline 57
- Command reference: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/API.md - Network accessline 58
- Install: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/INSTALL.md - Network accessline 59
- Integrations: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/INTEGRATIONS.md - Network accessline 60
- Security: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/SECURITY.md - Network accessline 61
- Reference project map: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/REFERENCE.md - Network accessline 62
- Roadmap: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/docs/ROADMAP.md - Network accessline 63
- Examples: https://github.com/DeliciousBuding/xiaohongshu-skill/tree/main/examples - Network accessline 67
- Search JSON: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/examples/demo/search-result.json - Network accessline 68
- Publish draft JSON: https://github.com/DeliciousBuding/xiaohongshu-skill/blob/main/examples/demo/publish-ready.json - Network accessline 69
- Demo page: https://deliciousbuding.github.io/xiaohongshu-skill/demo.html
site/og-image.svg
- Network accessline 1
<svg xmlns="http://www.w3.org/2000/svg" width="1200" height="630" viewBox="0 0 1200 630" role="img" aria-labelledby="t d">
site/robots.txt
site/sitemap.xml
- Network accessline 1
<?xml version="1.0" encoding="UTF-8"?> <urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> - Network accessline 2
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> - Network accessline 3
<url> <loc>https://deliciousbuding.github.io/xiaohongshu-skill/</loc> <lastmod>2026-08-24</lastmod> - Network accessline 4
<loc>https://deliciousbuding.github.io/xiaohongshu-skill/</loc> - Network accessline 6
</url> <url> <loc>https://deliciousbuding.github.io/xiaohongshu-skill/llms.txt</loc> - Network accessline 7
<url> <loc>https://deliciousbuding.github.io/xiaohongshu-skill/llms.txt</loc> <lastmod>2026-08-24</lastmod> - Network accessline 8
<loc>https://deliciousbuding.github.io/xiaohongshu-skill/llms.txt</loc> - Network accessline 10
</url> <url> <loc>https://deliciousbuding.github.io/xiaohongshu-skill/llms-full.txt</loc> - Network accessline 11
<url> <loc>https://deliciousbuding.github.io/xiaohongshu-skill/llms-full.txt</loc> <lastmod>2026-08-24</lastmod> - Network accessline 12
<loc>https://deliciousbuding.github.io/xiaohongshu-skill/llms-full.txt</loc> - Network accessline 14
</url> <url> <loc>https://deliciousbuding.github.io/xiaohongshu-skill/demo.html</loc> - Network accessline 15
<url> <loc>https://deliciousbuding.github.io/xiaohongshu-skill/demo.html</loc> <lastmod>2026-08-24</lastmod> - Network accessline 16
<loc>https://deliciousbuding.github.io/xiaohongshu-skill/demo.html</loc>
tests/__init__.py
- Executable scriptline 1
Executable file
tests/conftest.py
tests/live/test_readonly_smoke.py
- Executable scriptline 1
Executable file
tests/test_cli.py
tests/test_client.py
- Executable scriptline 1
Executable file - Network accessline 115
client = self._make_client_with_url("https://www.xiaohongshu.com/explore") - Network accessline 120
client = self._make_client_with_url( "https://www.xiaohongshu.com/website-login/captcha?type=slide" - Network accessline 121
"https://www.xiaohongshu.com/website-login/captcha?type=slide" - Network accessline 127
client = self._make_client_with_url( "https://www.xiaohongshu.com/security-verification?redirect=xxx" - Network accessline 128
"https://www.xiaohongshu.com/security-verification?redirect=xxx" - Network accessline 134
client = self._make_client_with_url( "https://www.xiaohongshu.com/some-page", - Network accessline 135
"https://www.xiaohongshu.com/some-page", - Network accessline 152
client = XiaohongshuClient() client.page = MagicMock() client.page.url = "https://www.xiaohongshu.com/captcha" - Network accessline 153
client.page = MagicMock() client.page.url = "https://www.xiaohongshu.com/captcha" client._navigate_count = 5 - Network accessline 154
client.page.url = "https://www.xiaohongshu.com/captcha" - Network accessline 297
err = CaptchaError(url="https://example.com/captcha", message="test") - Network accessline 298
assert err.captcha_url == "https://example.com/captcha" - Network accessline 303
err = CaptchaError(url="https://example.com/captcha") - Network accessline 304
assert "https://example.com/captcha" in str(err)
tests/test_comment.py
tests/test_docs_check.py
- Executable scriptline 1
Executable file
tests/test_explore.py
- Executable scriptline 1
Executable file - Network accessline 29
"interactInfo": {"likedCount": "100"}, "user": {"nickname": "用户1", "userId": "uid1"}, "cover": {"urlDefault": "http://img.com/1.jpg"}, - Network accessline 30
"user": {"nickname": "用户1", "userId": "uid1"}, "cover": {"urlDefault": "http://img.com/1.jpg"}, }, - Network accessline 31
"cover": {"urlDefault": "http://img.com/1.jpg"}, - Network accessline 98
assert ExploreAction.EXPLORE_URL == "https://www.xiaohongshu.com/explore"
tests/test_interact.py
- Executable scriptline 1
Executable file
tests/test_live_gate.py
- Executable scriptline 1
Executable file
tests/test_login.py
- Executable scriptline 1
Executable file - Network accessline 19
def make_login_action(url="https://www.xiaohongshu.com/explore"): - Network accessline 96
assert action.check_login_status(navigate=True) == (False, None) action.client.navigate.assert_called_once_with("https://www.xiaohongshu.com/explore") - Network accessline 97
action.client.navigate.assert_called_once_with("https://www.xiaohongshu.com/explore") - Network accessline 100
def test_check_creator_login_status_detects_login_page(): action = make_login_action(url="https://creator.xiaohongshu.com/login") - Network accessline 101
action = make_login_action(url="https://creator.xiaohongshu.com/login") - Network accessline 105
def test_check_creator_login_status_detects_captcha_page(): action = make_login_action(url="https://creator.xiaohongshu.com/captcha") - Network accessline 106
action = make_login_action(url="https://creator.xiaohongshu.com/captcha") - Network accessline 110
def test_check_creator_login_status_detects_ready_visible(): action = make_login_action(url="https://creator.xiaohongshu.com/publish/publish") - Network accessline 111
action = make_login_action(url="https://creator.xiaohongshu.com/publish/publish") - Network accessline 122
action = make_login_action(url="https://creator.xiaohongshu.com/") - Network accessline 130
def test_check_creator_login_status_unknown_offsite_is_not_ready(): action = make_login_action(url="https://example.com/publish/publish") - Network accessline 131
action = make_login_action(url="https://example.com/publish/publish") - Network accessline 139
def test_check_creator_login_navigates_to_publish_page(): action = make_login_action(url="https://creator.xiaohongshu.com/login") - Network accessline 140
action = make_login_action(url="https://creator.xiaohongshu.com/login")
tests/test_output_contracts.py
- Executable scriptline 1
Executable file
tests/test_profiles.py
- Executable scriptline 1
Executable file
tests/test_publish.py
- Executable scriptline 1
Executable file - Network accessline 31
self.action._navigate_to_publish() self.client.navigate.assert_called_once_with( "https://creator.xiaohongshu.com/publish/publish?source=official" - Network accessline 32
self.client.navigate.assert_called_once_with( "https://creator.xiaohongshu.com/publish/publish?source=official" ) - Network accessline 33
"https://creator.xiaohongshu.com/publish/publish?source=official" - Network accessline 485
def test_url_leaving_publish_flow_confirms_publish(self): self.client.page.url = "https://creator.xiaohongshu.com/creator/home" - Network accessline 486
self.client.page.url = "https://creator.xiaohongshu.com/creator/home" - Network accessline 500
("url", "signal"), [ ("https://creator.xiaohongshu.com/login", "login_redirect"), - Network accessline 501
[ ("https://creator.xiaohongshu.com/login", "login_redirect"), ("https://www.xiaohongshu.com/website-login/captcha", "captcha_redirect"), - Network accessline 502
("https://creator.xiaohongshu.com/login", "login_redirect"), - Network accessline 503
("https://www.xiaohongshu.com/website-login/captcha", "captcha_redirect"), - Network accessline 554
"url", [ "https://example.com/success", - Network accessline 555
[ "https://example.com/success", "https://creator.xiaohongshu.com/error", - Network accessline 556
"https://example.com/success", - Network accessline 557
"https://creator.xiaohongshu.com/error", - Network accessline 558
"https://creator.xiaohongshu.com/404",
tests/test_publish_validation.py
- Executable scriptline 1
Executable file
tests/test_quality.py
tests/test_release_check.py
- Executable scriptline 1
Executable file
tests/test_search.py
tests/test_selectors.py
- Executable scriptline 1
Executable file
tests/test_session_store.py
- Executable scriptline 1
Executable file
tests/test_site_check.py
- Executable scriptline 1
Executable file - Network accessline 33
<title>Xiaohongshu Skill for AI Agents</title> <meta name="description" content="Xiaohongshu RedNote AI agent Playwright AgentSkill"> <link rel="canonical" href="https://example.com/"> - Network accessline 34
<meta name="description" content="Xiaohongshu RedNote AI agent Playwright AgentSkill"> <link rel="canonical" href="https://example.com/"> </head> - Network accessline 35
<link rel="canonical" href="https://example.com/"> - Network accessline 51
<title>Xiaohongshu Skill for AI Agents</title> <meta name="description" content="Xiaohongshu RedNote AI agent Playwright AgentSkill"> <meta property="og:image" content="https://example.com/og-image.svg"> - Network accessline 52
<meta name="description" content="Xiaohongshu RedNote AI agent Playwright AgentSkill"> <meta property="og:image" content="https://example.com/og-image.svg"> <link rel="canonical" href="https://example.com/"> - Network accessline 53
<meta property="og:image" content="https://example.com/og-image.svg"> - Network accessline 54
<link rel="canonical" href="https://example.com/"> - Network accessline 55
<link rel="alternate" type="text/plain" href="llms.txt"> <link rel="alternate" type="text/plain" href="llms-full.txt"> <script type="application/ld+json">{"@type":"SoftwareApplication","sameAs":["https://www.skills.sh/deliciousbudin - Network accessline 56
<link rel="alternate" type="text/plain" href="llms-full.txt"> <script type="application/ld+json">{"@type":"SoftwareApplication","sameAs":["https://www.skills.sh/deliciousbuding/xiaohongshu-skill"]}</script> </head> - Network accessline 57
<script type="application/ld+json">{"@type":"SoftwareApplication","sameAs":["https://www.skills.sh/deliciousbuding/xiaohongshu-skill"]}</script> - Network accessline 73
<title>Xiaohongshu Skill for AI Agents</title> <meta name="description" content="Xiaohongshu RedNote AI agent Playwright AgentSkill"> <meta property="og:image" content="https://example.com/og-image.svg"> - Network accessline 74
<meta name="description" content="Xiaohongshu RedNote AI agent Playwright AgentSkill"> <meta property="og:image" content="https://example.com/og-image.svg"> <link rel="canonical" href="https://example.com/"> - Network accessline 75
<meta property="og:image" content="https://example.com/og-image.svg"> - Network accessline 76
<link rel="canonical" href="https://example.com/"> - Network accessline 77
<link rel="alternate" type="text/plain" href="llms.txt"> <script type="application/ld+json">{"@type":"SoftwareApplication","sameAs":["https://www.skills.sh/deliciousbuding/xiaohongshu-skill"]}</script> </head> - Network accessline 78
<script type="application/ld+json">{"@type":"SoftwareApplication","sameAs":["https://www.skills.sh/deliciousbuding/xiaohongshu-skill"]}</script>
tests/test_skill_check.py
- Executable scriptline 1
Executable file
tests/test_sop.py
- Executable scriptline 1
Executable file
tests/test_strategy.py
- Executable scriptline 1
Executable file
tests/test_templates.py
- Executable scriptline 1
Executable file
tests/test_test_harness.py
- Executable scriptline 1
Executable file
tests/test_user.py
- Executable scriptline 1
Executable file
uv.lock
- Network accessline 10
name = "click" version = "8.4.2" source = { registry = "https://pypi.org/simple" } - Network accessline 11
version = "8.4.2" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 12
source = { registry = "https://pypi.org/simple" } - Network accessline 14
{ name = "colorama", marker = "sys_platform == 'win32'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/76/d4/81420972a676e8ffea40450d8c8c92943e7218a78fe9b64359836cc9876b/click-8.4.2.tar.gz", hash = "sha256:9a6cea6e60b17ebe0a4 - Network accessline 15
] sdist = { url = "https://files.pythonhosted.org/packages/76/d4/81420972a676e8ffea40450d8c8c92943e7218a78fe9b64359836cc9876b/click-8.4.2.tar.gz", hash = "sha256:9a6cea6e60b17ebe0a44c5cc636d94f09bd66142c1cd7d8b4cd731c4917a15f6", size = 3380 - Network accessline 16
sdist = { url = "https://files.pythonhosted.org/packages/76/d4/81420972a676e8ffea40450d8c8c92943e7218a78fe9b64359836cc9876b/click-8.4.2.tar.gz", hash = "sha256:9a6cea6e60b17ebe0a44c5cc636d94f09bd66142c1cd7d8b4cd731c4917a15f6", size = 338000 - Network accessline 17
wheels = [ { url = "https://files.pythonhosted.org/packages/fb/e2/79c688af8b210d232694e31e59da9f6ec747bae31c3f5946e4e9b98860d5/click-8.4.2-py3-none-any.whl", hash = "sha256:e6f9f66136c816745b9d65817da91d61d957fb16e02e4dcd0552553c5a197b7 - Network accessline 18
{ url = "https://files.pythonhosted.org/packages/fb/e2/79c688af8b210d232694e31e59da9f6ec747bae31c3f5946e4e9b98860d5/click-8.4.2-py3-none-any.whl", hash = "sha256:e6f9f66136c816745b9d65817da91d61d957fb16e02e4dcd0552553c5a197b76", size = 1192 - Network accessline 22
name = "colorama" version = "0.4.6" source = { registry = "https://pypi.org/simple" } - Network accessline 23
version = "0.4.6" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb - Network accessline 24
source = { registry = "https://pypi.org/simple" } - Network accessline 25
sdist = { url = "https://files.pythonhosted.org/packages/d8/53/6f443c9a4a8358a93a6792e2acffb9d9d5cb0a5cfd8802644b7b1c9a02e4/colorama-0.4.6.tar.gz", hash = "sha256:08695f5cb7ed6e0531a20572697297273c47b8cae5a63ffc6d6ed5c201be6e44", size = 276 - Network accessline 26
wheels = [ { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57a - Network accessline 27
{ url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size - Network accessline 31
name = "exceptiongroup" version = "1.3.1" source = { registry = "https://pypi.org/simple" } - Network accessline 32
version = "1.3.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 33
source = { registry = "https://pypi.org/simple" } - Network accessline 35
{ name = "typing-extensions" }, ] sdist = { url = "https://files.pythonhosted.org/packages/50/79/66800aadf48771f6b62f7eb014e352e5d06856655206165d775e675a02c9/exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6 - Network accessline 36
] sdist = { url = "https://files.pythonhosted.org/packages/50/79/66800aadf48771f6b62f7eb014e352e5d06856655206165d775e675a02c9/exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219", si - Network accessline 37
sdist = { url = "https://files.pythonhosted.org/packages/50/79/66800aadf48771f6b62f7eb014e352e5d06856655206165d775e675a02c9/exceptiongroup-1.3.1.tar.gz", hash = "sha256:8b412432c6055b0b7d14c310000ae93352ed6754f70fa8f7c34141f91c4e3219", size - Network accessline 38
wheels = [ { url = "https://files.pythonhosted.org/packages/8a/0e/97c33bf5009bdbac74fd2beace167cab3f978feb69cc36f1ef79360d6c4e/exceptiongroup-1.3.1-py3-none-any.whl", hash = "sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577 - Network accessline 39
{ url = "https://files.pythonhosted.org/packages/8a/0e/97c33bf5009bdbac74fd2beace167cab3f978feb69cc36f1ef79360d6c4e/exceptiongroup-1.3.1-py3-none-any.whl", hash = "sha256:a7a39a3bd276781e98394987d3a5701d0c4edffb633bb7a5144577f82c773598", si - Network accessline 43
name = "greenlet" version = "3.5.5" source = { registry = "https://pypi.org/simple" } - Network accessline 44
version = "3.5.5" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/0b/d8/7cc97c142388aef03f622e001c572c4f84e9252a439549d483f555771970/greenlet-3.5.5.tar.gz", hash = "sha256:adb4bae02 - Network accessline 45
source = { registry = "https://pypi.org/simple" } - Network accessline 46
sdist = { url = "https://files.pythonhosted.org/packages/0b/d8/7cc97c142388aef03f622e001c572c4f84e9252a439549d483f555771970/greenlet-3.5.5.tar.gz", hash = "sha256:adb4bae02e91a8e863e48b177e4014bdcac8a6b5e047ea1df687a61534b85e6c", size = 207 - Network accessline 47
wheels = [ { url = "https://files.pythonhosted.org/packages/07/67/07ecd6d85c0f253363cbc4ac9e7dd048ca571a267fbccfea084d6009ac3b/greenlet-3.5.5-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:816230f469381ad0a43abc9fa8dda5a699e32f - Network accessline 48
{ url = "https://files.pythonhosted.org/packages/07/67/07ecd6d85c0f253363cbc4ac9e7dd048ca571a267fbccfea084d6009ac3b/greenlet-3.5.5-cp310-cp310-macosx_11_0_universal2.whl", hash = "sha256:816230f469381ad0a43abc9fa8dda5a699e32fb78958dde32ded9 - Network accessline 49
{ url = "https://files.pythonhosted.org/packages/24/35/426733bc24247ee17bb76df90f550c299ff5f8572b2bdd7cacb5c53fd994/greenlet-3.5.5-cp310-cp310-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a5433cf291e0ef9114bd14d0d824db - Network accessline 50
{ url = "https://files.pythonhosted.org/packages/9c/dc/17d3a5acceb2fd0bbc9682a228117b719cdfb68085e6dbb33fa325755f27/greenlet-3.5.5-cp310-cp310-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:19d59f068887d8c5907fc177f27683 - Network accessline 51
{ url = "https://files.pythonhosted.org/packages/74/3f/b31e6bd6adb8f80492efb6a47e8f9cd0e7335db5aac2795b1876d5afcfee/greenlet-3.5.5-cp310-cp310-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:86c5113d698cb8d927b2750bb1f1d59eef - Network accessline 52
{ url = "https://files.pythonhosted.org/packages/51/91/00b3c0566316c6f383ea16ee05388ec4f57f6e0afa49e72ae471eda8c47f/greenlet-3.5.5-cp310-cp310-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9ff00e12102358292087274dfb166913 - Network accessline 53
{ url = "https://files.pythonhosted.org/packages/18/5e/58c561efde575c4ca070030e2e0513e8d1b07b76d8a2d84a9bcef1becd42/greenlet-3.5.5-cp310-cp310-manylinux_2_39_riscv64.whl", hash = "sha256:c69bed34470abfcd456984fdadaa18e62169af4480335c45f3c32 - Network accessline 54
{ url = "https://files.pythonhosted.org/packages/3c/78/52de4f7ac9152ad1dbc8f437895c1e573d30ee1e1427e0f91a280e2417b6/greenlet-3.5.5-cp310-cp310-musllinux_1_2_aarch64.whl", hash = "sha256:523bb8e27614d77101ea7a8cf59f8d91219b72d5c29f6a038c92b5 - Network accessline 55
{ url = "https://files.pythonhosted.org/packages/f6/ff/c3855a00c2417e8f61c7b9f0bc4f8f599c6928f5c15681ad251e78a91e05/greenlet-3.5.5-cp310-cp310-musllinux_1_2_x86_64.whl", hash = "sha256:f1e2db190db51c17433eee424803818cf0670bf049d9cfe0dd07be1 - Network accessline 56
{ url = "https://files.pythonhosted.org/packages/70/21/d29ff6a79dbd1ec1fe74c155d25d4c5a85e221d6b9ffc2cc7a709e7c8c39/greenlet-3.5.5-cp310-cp310-win_amd64.whl", hash = "sha256:740e544169527b82695ce76af2f7ad6f030904658f2f3921a1d245771fb88cfc", - Network accessline 57
{ url = "https://files.pythonhosted.org/packages/4e/a3/07297917485ee2ca85bc3c8dc6ed85ad3fffcf424047fba62671dba68e97/greenlet-3.5.5-cp311-cp311-macosx_11_0_universal2.whl", hash = "sha256:be63afcbbccfad3dd95a1ba12ada84dab2ef32031973d80b5b92d - Network accessline 58
{ url = "https://files.pythonhosted.org/packages/db/51/6f732f9314cda54c5fd48a7620c7160f4f286967e8045ad94b9d66ce80b7/greenlet-3.5.5-cp311-cp311-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:8a268024ce2d7d2b04694bf1594058 - Network accessline 59
{ url = "https://files.pythonhosted.org/packages/d8/c0/b27589e25d220289edcd4d582b2b17b83058d1a56d53d971b6ea1a34f10d/greenlet-3.5.5-cp311-cp311-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:35cbb8bf55ace57fbccb4fb8622c45 - Network accessline 60
{ url = "https://files.pythonhosted.org/packages/39/82/5c873dbb4fb001d22fbbd50e80d4c1b0181ddae106856132160f84b94e88/greenlet-3.5.5-cp311-cp311-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:abc8bc8d9f935cd685457545b6a53863a8 - Network accessline 61
{ url = "https://files.pythonhosted.org/packages/51/2d/f2c928218ac52f26d7a2c188c171d1b7e728b23782cb3347e7b4fce1493a/greenlet-3.5.5-cp311-cp311-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:74cc6df89ec5302337adc9cf096221cb - Network accessline 62
{ url = "https://files.pythonhosted.org/packages/70/12/f7df98e72a8eb4a7edfec5a08d6d1a4ab53a52c95ba0b2ea6c10b8dd9bd0/greenlet-3.5.5-cp311-cp311-manylinux_2_39_riscv64.whl", hash = "sha256:3134291427bb0f3526e9d90311988caf336eb43730e95244997a4 - Network accessline 63
{ url = "https://files.pythonhosted.org/packages/3e/4a/92fc51d5d35912f4f06eec037ba347985defd0be47463a010a325634d9d2/greenlet-3.5.5-cp311-cp311-musllinux_1_2_aarch64.whl", hash = "sha256:6d9b454c5fc48aeaa7c4337813dbf513a6870468e426438a04d922 - Network accessline 64
{ url = "https://files.pythonhosted.org/packages/ac/58/ed98b80ac5738c149a5258544843c45601ade1fd70f61740cdaead6351b3/greenlet-3.5.5-cp311-cp311-musllinux_1_2_x86_64.whl", hash = "sha256:03551ed792cb1b4fc0277a0c60dfd8c343894a0ba06fe60dcd22f56 - Network accessline 65
{ url = "https://files.pythonhosted.org/packages/d8/be/b582ceb80cefdf9d8da34078714e4b12b3d16f509dee0f65e40a5cc8fc7d/greenlet-3.5.5-cp311-cp311-win_amd64.whl", hash = "sha256:ab3df3dffb58bf70564e93a5cec7941e4d9faa5a36cc4234a10d3131afe04f53", - Network accessline 66
{ url = "https://files.pythonhosted.org/packages/4d/18/5313c4c58598c38b0373c013e4ff2b3e6d258aaaa338f373335ebecdaddd/greenlet-3.5.5-cp311-cp311-win_arm64.whl", hash = "sha256:2b70a766135540c472ac1393d57c2e1b4a2eb85bf526a1e41e6d096173a8cee5", - Network accessline 67
{ url = "https://files.pythonhosted.org/packages/2e/7e/9ecd0285e3153532ae07aeb88063c43c72b4221cf0d4d123b02f3682e3ff/greenlet-3.5.5-cp312-cp312-macosx_11_0_universal2.whl", hash = "sha256:49520f0c95a48b42cf55414b8e8479beb274ea70431afc33e3f79 - Network accessline 68
{ url = "https://files.pythonhosted.org/packages/35/73/60e4bbcc89252037b18087f2ec16405d5b2d5be42dde191bbf3667e96102/greenlet-3.5.5-cp312-cp312-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:55272212cbc5f43d1d723725ab931f - Network accessline 69
{ url = "https://files.pythonhosted.org/packages/a4/17/cd5134be659cd4a443e7a61ae670dabec165a814c51162916d637b6dd38e/greenlet-3.5.5-cp312-cp312-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:655bca754a2ef4efcb0eb48a94d3f4 - Network accessline 70
{ url = "https://files.pythonhosted.org/packages/9b/30/87c212b5c684d0e72974f1063b7a9687631e8985902c06e1016542c874e7/greenlet-3.5.5-cp312-cp312-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:6ca5d6ae0739e5764f2cfcfaa562ac5a99 - Network accessline 71
{ url = "https://files.pythonhosted.org/packages/78/ac/5c5b959999b6f09c3026b5dfe171575bc3121c5236ce74f495096f25b203/greenlet-3.5.5-cp312-cp312-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:147b25a42e5ca5be3d42356e8f608b37 - Network accessline 72
{ url = "https://files.pythonhosted.org/packages/63/2c/eb487fafc9f50ffff2b1e0b697f70fb34bf150821c08ab225aacf5583a7e/greenlet-3.5.5-cp312-cp312-manylinux_2_39_riscv64.whl", hash = "sha256:1b5ed9162c0c098e0bbc2cf88a94f433c1b8926f831745252e099 - Network accessline 73
{ url = "https://files.pythonhosted.org/packages/c8/8b/6acf112ed8aee499f25b4d6949820fb02ac950ff9c1f3d793bd5be0599f2/greenlet-3.5.5-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:27493374cff1d1b7919dc8126547f2aea582737e3046147b434b1e - Network accessline 74
{ url = "https://files.pythonhosted.org/packages/b8/d7/734e5f198888876b42d7616ff6644c075baf6b8a2412deadd6b0e1b8b20c/greenlet-3.5.5-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:12e2ee66c2aba86133f10fd99d6a8856c6d351ffb7be0e4d52ef2cc - Network accessline 75
{ url = "https://files.pythonhosted.org/packages/de/30/1f42b88dc587b5899ee50616ad56ee40cafaf225df4fb829f10183c62a5c/greenlet-3.5.5-cp312-cp312-win_amd64.whl", hash = "sha256:49ddacd36af37735fab103846f4ee4d18a492dde72730d1699c0c8ebe30d9f18", - Network accessline 76
{ url = "https://files.pythonhosted.org/packages/76/e5/4dee4d8d2e603fe5fdd7b444e63219f7b9bd852c60c6214511c7157cbe88/greenlet-3.5.5-cp312-cp312-win_arm64.whl", hash = "sha256:5f1b1ff4828cdc1aba4266aff814085d04a1d07959287219af021b838b265d52", - Network accessline 77
{ url = "https://files.pythonhosted.org/packages/fb/3d/8cef5f724ec0d4add2af8961d504535ec60c3cca9e464f6d03bdba29d85b/greenlet-3.5.5-cp313-cp313-macosx_11_0_universal2.whl", hash = "sha256:b79fd2a5bc099b5e744f34c4c9a58954a5f4cb7529fb4b6e84460 - Network accessline 78
{ url = "https://files.pythonhosted.org/packages/88/4b/8e7aa3f514273aecff30a16ab1bac09ff54cfc7e6860fdd8058c37ff2499/greenlet-3.5.5-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:634cf15a233a949136879dd388e25d - Network accessline 79
{ url = "https://files.pythonhosted.org/packages/85/48/4e95e9dd5a8a397dc6a6345dd7f1935113d0fca4f85e89d3976da9cd988d/greenlet-3.5.5-cp313-cp313-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:499adea519f748407fc6806d20eeda - Network accessline 80
{ url = "https://files.pythonhosted.org/packages/0e/84/eaa476d6bf3816828d0d70e80dcc36bf30a058233bd889e707e693f6e860/greenlet-3.5.5-cp313-cp313-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f7278591501941bb2456af102bb9cd59aa - Network accessline 81
{ url = "https://files.pythonhosted.org/packages/89/5d/398a1c71fa7a277deeb376c999979de6786f08fc2d5747a0b9d6e11738dd/greenlet-3.5.5-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:2eabb980975cba5b93a95f6f69287d05 - Network accessline 82
{ url = "https://files.pythonhosted.org/packages/d0/f2/0cc2849ede68579291e9c59b3ab6ec1958f98681cca5b14d8fc75bf674a4/greenlet-3.5.5-cp313-cp313-manylinux_2_39_riscv64.whl", hash = "sha256:4dfc7c4470354e7b09184d1a3a985761053a2fd694ddb5b5c8024 - Network accessline 83
{ url = "https://files.pythonhosted.org/packages/04/1b/745450fc5ea9e0cb17d840d248f284db3363de736d362c7d2d883e3eadba/greenlet-3.5.5-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:03115c2e0a371999bf8ae616aa8d653f96641d4705c457aebaa187 - Network accessline 84
{ url = "https://files.pythonhosted.org/packages/d4/29/d51b296e3191bb15d3d81ec375af1909e4466c0f395d744ed475801798a9/greenlet-3.5.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:4441153ffba21b90d3ca89fe3d31f5c093ae6c0bf0cfdfc98f54cde - Network accessline 85
{ url = "https://files.pythonhosted.org/packages/12/63/369f1a1625e64e9e31df3963c6044056e3fdfa3fa3fdba3c54ffefa6e987/greenlet-3.5.5-cp313-cp313-win_amd64.whl", hash = "sha256:95c5b1f4b3a193f8a0c2de4bfdcb48d119f7f1063941f1de1f2168051b3e52dd", - Network accessline 86
{ url = "https://files.pythonhosted.org/packages/45/78/649cb5c09d4d81f6dd1444e75474a7206784743283a21d24171562ac4899/greenlet-3.5.5-cp313-cp313-win_arm64.whl", hash = "sha256:1af90aa4bc129883b340cdd6957a3bc74f60528a4993bbd1f53aaebe1d9981cc", - Network accessline 87
{ url = "https://files.pythonhosted.org/packages/7f/8c/080e881fa2be95ff1ddbd6994b2bab3b1a78df3b3fcab39306011764fcc7/greenlet-3.5.5-cp314-cp314-macosx_11_0_universal2.whl", hash = "sha256:d4a389a852e392a6366058651a20fa5ba40d979865aa81bea2ccb - Network accessline 88
{ url = "https://files.pythonhosted.org/packages/25/cc/0ac614e6586c0e42d4cc281a5819150f4f43685744a4c5ff77139286409d/greenlet-3.5.5-cp314-cp314-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:70b157cd319873e8b544ddc2de158f - Network accessline 89
{ url = "https://files.pythonhosted.org/packages/5e/b9/6808725354be8ad305dfe5172377664fc9642d4fc043be246b3314cf4482/greenlet-3.5.5-cp314-cp314-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:8bdfd1424abcf26832961e766570ca - Network accessline 90
{ url = "https://files.pythonhosted.org/packages/eb/52/f005d579acde46c3d1cc3cab1c9f3d5708c8a3006a4120e8cf5da801afe9/greenlet-3.5.5-cp314-cp314-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d98ef6f92e67c6dbf299dbfd8facc1b0d2 - Network accessline 91
{ url = "https://files.pythonhosted.org/packages/42/2e/40c509967da7f254680826a2fa0dd22138ec79946c70b97542d74cde8b43/greenlet-3.5.5-cp314-cp314-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:182de51c6b572a705f2fafaab2e783bc - Network accessline 92
{ url = "https://files.pythonhosted.org/packages/c4/8a/a75f8a2bdcef3c358a3147cdc9db3aa83755f0a038f766ab0bedb66f512c/greenlet-3.5.5-cp314-cp314-manylinux_2_39_riscv64.whl", hash = "sha256:159df1942d88e8f784cbb38d6f18bdb365cd11319cfbb3e89623d - Network accessline 93
{ url = "https://files.pythonhosted.org/packages/2d/22/c3c2eee4a8fe191d6d1d183086c56133d646024e3d70bfd414829f64560b/greenlet-3.5.5-cp314-cp314-musllinux_1_2_aarch64.whl", hash = "sha256:8fec3f165dfe332e490c3247c0f6c23b0bfc45f06496ad7f00ddb0 - Network accessline 94
{ url = "https://files.pythonhosted.org/packages/f7/87/25babd09b94cb1f03e71db815fde463f0262e40cfbd953d58a8d77311351/greenlet-3.5.5-cp314-cp314-musllinux_1_2_x86_64.whl", hash = "sha256:c6ce25fee6cabc8bf22cb8b52e642cbb821be5b9aec8094d07ff033 - Network accessline 95
{ url = "https://files.pythonhosted.org/packages/2e/3d/5cc9701117ea4dc0eb7bf1f4f9b7888a6e2e5277ddfae095805ace50f2b6/greenlet-3.5.5-cp314-cp314-win_amd64.whl", hash = "sha256:7dffc5c859fe6059974df1e37d7923d654a83e2ae18fdd616994270e001115e1", - Network accessline 96
{ url = "https://files.pythonhosted.org/packages/a7/6b/594fa2de7fae7629168a404a4305d7d7e31a5742c50a801b1839543cb93d/greenlet-3.5.5-cp314-cp314-win_arm64.whl", hash = "sha256:5e2afcfc4d4305dd715809b03da5cbe437c8984f61d8917751eb5fe4aefa3e07", - Network accessline 97
{ url = "https://files.pythonhosted.org/packages/24/e0/50cd600b469e5734c72709b6b1838b6bc63f307b573c772c3132d6ecfe92/greenlet-3.5.5-cp314-cp314t-macosx_11_0_universal2.whl", hash = "sha256:0e5a7de979d764aea1f5b6e95cf92b5b37741b9823702041f34b - Network accessline 98
{ url = "https://files.pythonhosted.org/packages/75/a3/77acd66dfc6387b5219b2080806c0cabb73c10eb1bb44b413c40a62015ba/greenlet-3.5.5-cp314-cp314t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fef01bd457f11fc158b130ca0027a - Network accessline 99
{ url = "https://files.pythonhosted.org/packages/b9/71/0d178142dca3ec19f46fb2212ae73d30ad53b9d548dc64804086033a7089/greenlet-3.5.5-cp314-cp314t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5173a72310725a74afc82c164f0e5 - Network accessline 100
{ url = "https://files.pythonhosted.org/packages/aa/ac/0d7887aa4bbfc9eba075cc428244dfc96f623478454d5ec81180d0d6bd5a/greenlet-3.5.5-cp314-cp314t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:5e9ec2e7c98e895fcea0c5cc57b2606cf - Network accessline 101
{ url = "https://files.pythonhosted.org/packages/6e/31/46eb8567302eaf787abf88d09df014e14ae3baf460af1b8b0efdbd3efcd5/greenlet-3.5.5-cp314-cp314t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:44f08341873200ba8a60a8bc14ace3d - Network accessline 102
{ url = "https://files.pythonhosted.org/packages/4f/18/8d58ba1c429b0383e3219a3d0e0bba241d0444d8ed05b73349953c7d7c7b/greenlet-3.5.5-cp314-cp314t-manylinux_2_39_riscv64.whl", hash = "sha256:102817506f6090b5176c746a82603341a549b40e5c3d5b72a4c6 - Network accessline 103
{ url = "https://files.pythonhosted.org/packages/a3/e9/b88bbf5b29970cb84172dc2c32aa3e5e579ceb94c808e81c826454138850/greenlet-3.5.5-cp314-cp314t-musllinux_1_2_aarch64.whl", hash = "sha256:d246c0db9a2513cd45f019ba178ea4d4d4705bd210ee465e2c15d - Network accessline 104
{ url = "https://files.pythonhosted.org/packages/6d/8c/7631ed29cc6f0392f11830076e172ce4885e70b0bc2c1bce1731176d4b4e/greenlet-3.5.5-cp314-cp314t-musllinux_1_2_x86_64.whl", hash = "sha256:72507285b5caa1d17904a3f7c322ca780823a54170a0e04ec3f37b - Network accessline 105
{ url = "https://files.pythonhosted.org/packages/da/0f/f7dd935f9c4cb1be49098770587f54d8a78518e55c89bce86c4fb4109057/greenlet-3.5.5-cp314-cp314t-win_amd64.whl", hash = "sha256:7805655781fb8f28a55d05fe57ed61f5f10f1892fb587673e3bb5264f28041f0" - Network accessline 106
{ url = "https://files.pythonhosted.org/packages/b7/e5/681b01f8fbc1b55232822f99e8f8afeb78a55a7c76a7bf9dbdc7ccb03a6d/greenlet-3.5.5-cp315-cp315-macosx_11_0_universal2.whl", hash = "sha256:c0db80fcd5b8aece93f66c64f78a786bbb6b96c5fe63ef5a5a458 - Network accessline 107
{ url = "https://files.pythonhosted.org/packages/11/f2/69b488cd9e7267bf4b0fe8cdebf25d8d6df680d21bdf41150d23e23d6652/greenlet-3.5.5-cp315-cp315-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b241c32f912ada659808d68e308c5 - Network accessline 108
{ url = "https://files.pythonhosted.org/packages/84/d4/d5bc2fdebbdda0c94555925ba79948b8395d75a7f6a36cc85dce5bab9f11/greenlet-3.5.5-cp315-cp315-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ef6a08349401d8eaf3cb12688ac855 - Network accessline 109
{ url = "https://files.pythonhosted.org/packages/65/53/4e13642efc4d7ad6554ecb2242a5be42666b2e1a067323e88dfc0124a04b/greenlet-3.5.5-cp315-cp315-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:37faa97daccb6d9f4c2141ce3118d023c3 - Network accessline 110
{ url = "https://files.pythonhosted.org/packages/bd/93/542d8a3a90f3b35c6ad8bf7e56a03010287f2cafa289a5b7985b5207db39/greenlet-3.5.5-cp315-cp315-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:f2e3d061b8e13aec2f0441689b3c71b2 - Network accessline 111
{ url = "https://files.pythonhosted.org/packages/cd/32/188447c9a468d6977d2989397226b0c6b65ab6f4cf943f931643328512fc/greenlet-3.5.5-cp315-cp315-manylinux_2_39_riscv64.whl", hash = "sha256:b18007dc2473a7942fd157366b55f01da6fed7ce85318591005b4 - Network accessline 112
{ url = "https://files.pythonhosted.org/packages/52/b5/89c9f2e8460d71101037d47a1feed11928615a5edd42370be290e0657eeb/greenlet-3.5.5-cp315-cp315-musllinux_1_2_aarch64.whl", hash = "sha256:9ab5f5b93655e77fe0d6c2dfd22b5eac751bb1f876d8ec21761b7c - Network accessline 113
{ url = "https://files.pythonhosted.org/packages/b8/60/297de93f3b02ac78a5e04d32bb8bbe3080f4a73d8ed95016561463b70618/greenlet-3.5.5-cp315-cp315-musllinux_1_2_x86_64.whl", hash = "sha256:f0e5a21bd4452a88cf032fc43c4a5b307ab1380eacb63b5988f9c03 - Network accessline 114
{ url = "https://files.pythonhosted.org/packages/18/25/54c6eaff4f337fb670215e89eb2d00d9499487b658e709d4b477be4a342e/greenlet-3.5.5-cp315-cp315-win_amd64.whl", hash = "sha256:469dbb0a78625642f4a626cfd0c6e8bccc0385b5e49189b6308bbe849ec88a8e", - Network accessline 115
{ url = "https://files.pythonhosted.org/packages/67/67/857e88a36301caa0e029870132c2478bd55d896630321432afab03a3115f/greenlet-3.5.5-cp315-cp315-win_arm64.whl", hash = "sha256:2d57406c3efd32d7a81e17a674314e8bd00792cdab49ea3228a49aa1bfb2e769", - Network accessline 116
{ url = "https://files.pythonhosted.org/packages/10/e2/3144c0a116067ac1e30457b0139a94d60d1d36a86e015de68e9ac87cb3bc/greenlet-3.5.5-cp315-cp315t-macosx_11_0_universal2.whl", hash = "sha256:68184dfcf50ccaa8e864770fe0633a7e27250ea9329f8192ef47 - Network accessline 117
{ url = "https://files.pythonhosted.org/packages/5c/a1/cb4223a7e9b9f43b8807e8eb212358bfe2dfaa174a9ea2889eb1714dcba2/greenlet-3.5.5-cp315-cp315t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9ec0dc0e59dc9c61af5c47348365c - Network accessline 118
{ url = "https://files.pythonhosted.org/packages/9e/cd/a154b4498e5d8f12ada291cfb3b8d596eadde2177f5bf09a9be699d2a446/greenlet-3.5.5-cp315-cp315t-manylinux_2_24_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:e604f58e35833fc46ef20302bcb31 - Network accessline 119
{ url = "https://files.pythonhosted.org/packages/ce/f4/e450a68a152f819491d8c7df6a8254e761d87e6a78759268961f8c5bd4dd/greenlet-3.5.5-cp315-cp315t-manylinux_2_24_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2888a3a38bc5ee5bb6c438372197152e8 - Network accessline 120
{ url = "https://files.pythonhosted.org/packages/bf/bb/b0031d260c2968a3c87deebc51d80c64e499377f993aafe06ee3b7488cc2/greenlet-3.5.5-cp315-cp315t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:40239b5384f96da3963585cc6d7eaa9 - Network accessline 121
{ url = "https://files.pythonhosted.org/packages/18/23/17e63d6bf3b9c9b9dbea981b7f643a71f79603bdfb4f1c3a9cf353e22aed/greenlet-3.5.5-cp315-cp315t-manylinux_2_39_riscv64.whl", hash = "sha256:1e8d9391fe77f15649589a907cef972dbbd6352ef7ff7dc0492f - Network accessline 122
{ url = "https://files.pythonhosted.org/packages/9a/07/da554b71ab88e649da146e1065d86a48a5c5d92e50ab74ef41b504aa7f56/greenlet-3.5.5-cp315-cp315t-musllinux_1_2_aarch64.whl", hash = "sha256:a1eaccf5c3a1d3e46dead602c72e6836731e8e245c9de6a277645 - Network accessline 123
{ url = "https://files.pythonhosted.org/packages/78/76/26a3782a051677668af9d92beaa47cd87ba9dd5072f762961144a03dd4c6/greenlet-3.5.5-cp315-cp315t-musllinux_1_2_x86_64.whl", hash = "sha256:19e4e026fe20691f333b8eb1a3bc9625eceba8c3f9d62ec5a6f858 - Network accessline 124
{ url = "https://files.pythonhosted.org/packages/28/d9/fe7baf4190c2ae71f267efb9de21b3172bb35bc0ed1ef53dd6027d658e33/greenlet-3.5.5-cp315-cp315t-win_amd64.whl", hash = "sha256:712aee154f648bde84634654bb38bb78c69ac640c37a45c9effed800735049d8" - Network accessline 125
{ url = "https://files.pythonhosted.org/packages/df/af/419a4e383bd600858a9b67e9b280a60fdc383ee3f2fe5b6c0c1ef04e74d1/greenlet-3.5.5-cp315-cp315t-win_arm64.whl", hash = "sha256:7f049911ee81a16a03c33d5450d8d5867d27f596ca5fb201b86f4524e874468b" - Network accessline 129
name = "iniconfig" version = "2.3.0" source = { registry = "https://pypi.org/simple" } - Network accessline 130
version = "2.3.0" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/72/34/14ca021ce8e5dfedc35312d08ba8bf51fdd999c576889fc2c24cb97f4f10/iniconfig-2.3.0.tar.gz", hash = "sha256:c76315c7 - Network accessline 131
source = { registry = "https://pypi.org/simple" } - Network accessline 132
sdist = { url = "https://files.pythonhosted.org/packages/72/34/14ca021ce8e5dfedc35312d08ba8bf51fdd999c576889fc2c24cb97f4f10/iniconfig-2.3.0.tar.gz", hash = "sha256:c76315c77db068650d49c5b56314774a7804df16fee4402c1f19d6d15d8c4730", size = 20 - Network accessline 133
wheels = [ { url = "https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl", hash = "sha256:f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53 - Network accessline 134
{ url = "https://files.pythonhosted.org/packages/cb/b1/3846dd7f199d53cb17f49cba7e651e9ce294d8497c8c150530ed11865bb8/iniconfig-2.3.0-py3-none-any.whl", hash = "sha256:f631c04d2c48c52b84d0d0549c99ff3859c98df65b3101406327ecc7d53fbf12", size = - Network accessline 138
name = "markdown" version = "3.10.3" source = { registry = "https://pypi.org/simple" } - Network accessline 139
version = "3.10.3" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/29/6f/da4c6aea59b3001f2e8c0ec7497475aadaf3b021c10cab5b2858f0f32b26/markdown-3.10.3.tar.gz", hash = "sha256:3589362 - Network accessline 140
source = { registry = "https://pypi.org/simple" } - Network accessline 141
sdist = { url = "https://files.pythonhosted.org/packages/29/6f/da4c6aea59b3001f2e8c0ec7497475aadaf3b021c10cab5b2858f0f32b26/markdown-3.10.3.tar.gz", hash = "sha256:3589362618f743188b4d955b874402bc814f4f83f544dc207719f4baa7d9c45f", size = 37 - Network accessline 142
wheels = [ { url = "https://files.pythonhosted.org/packages/64/69/4a5af2bc115a9a33fefe51709749de8262be3f9ba063d1753a837cdbc49c/markdown-3.10.3-py3-none-any.whl", hash = "sha256:fa6c92a00a4a3c98b22728c64a935ae1928250ae65058a6ded814d2cc29 - Network accessline 143
{ url = "https://files.pythonhosted.org/packages/64/69/4a5af2bc115a9a33fefe51709749de8262be3f9ba063d1753a837cdbc49c/markdown-3.10.3-py3-none-any.whl", hash = "sha256:fa6c92a00a4a3c98b22728c64a935ae1928250ae65058a6ded814d2cc29a4cea", size = - Network accessline 147
name = "packaging" version = "26.3" source = { registry = "https://pypi.org/simple" } - Network accessline 148
version = "26.3" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/7d/fa/3944b40b07da9ce895c0e6303a5ab7d53da063554f534556b134a54d6093/packaging-26.3.tar.gz", hash = "sha256:94edc25642 - Network accessline 149
source = { registry = "https://pypi.org/simple" } - Network accessline 150
sdist = { url = "https://files.pythonhosted.org/packages/7d/fa/3944b40b07da9ce895c0e6303a5ab7d53da063554f534556b134a54d6093/packaging-26.3.tar.gz", hash = "sha256:94edc256424af38762eb31306eed28beb9f0efc50a8837492c9d6fd6004aed79", size = 313 - Network accessline 151
wheels = [ { url = "https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl", hash = "sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23 - Network accessline 152
{ url = "https://files.pythonhosted.org/packages/63/34/ba1c580383c9eada3711951fef0795c80b829a078d72188184bcab9dd527/packaging-26.3-py3-none-any.whl", hash = "sha256:d7193f7c8e4e93f444fde0262bf90af30e16fa0ad0ad44cb553c87339b23cd1c", size = 1 - Network accessline 156
name = "playwright" version = "1.62.0" source = { registry = "https://pypi.org/simple" } - Network accessline 157
version = "1.62.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 158
source = { registry = "https://pypi.org/simple" } - Network accessline 162
] wheels = [ { url = "https://files.pythonhosted.org/packages/6c/5b/ca2abcf3aa69f9fb510215e3064f30b57fe57657c8d04ede45bb966d5606/playwright-1.62.0-py3-none-macosx_10_13_x86_64.whl", hash = "sha256:d8da938f3748841a8754f2e1f0216902c1c8f8a - Network accessline 163
wheels = [ { url = "https://files.pythonhosted.org/packages/6c/5b/ca2abcf3aa69f9fb510215e3064f30b57fe57657c8d04ede45bb966d5606/playwright-1.62.0-py3-none-macosx_10_13_x86_64.whl", hash = "sha256:d8da938f3748841a8754f2e1f0216902c1c8f8ae3 - Network accessline 164
{ url = "https://files.pythonhosted.org/packages/6c/5b/ca2abcf3aa69f9fb510215e3064f30b57fe57657c8d04ede45bb966d5606/playwright-1.62.0-py3-none-macosx_10_13_x86_64.whl", hash = "sha256:d8da938f3748841a8754f2e1f0216902c1c8f8ae3720de8b32ccf8e6 - Network accessline 165
{ url = "https://files.pythonhosted.org/packages/af/1a/0bfbe9904350961f4dbb713f04342e40d548c5fc26c8157bd13617c81492/playwright-1.62.0-py3-none-macosx_11_0_arm64.whl", hash = "sha256:db755ab27db21a04186f1fe8169888e42356086e439b1059b923ef417f - Network accessline 166
{ url = "https://files.pythonhosted.org/packages/66/dc/c0486b407ad0699a250f6bbe3066fca95344009a99ca66e88ca175c69dc1/playwright-1.62.0-py3-none-macosx_11_0_universal2.whl", hash = "sha256:5108bd5b3e87169ddf269feee097da5893af7f8aea4634dfc8405 - Network accessline 167
{ url = "https://files.pythonhosted.org/packages/43/6b/b24aebc2b04bffcb342bccf96e287c78b363e1615bed5cea97500cc0393a/playwright-1.62.0-py3-none-manylinux1_x86_64.whl", hash = "sha256:ba33bae6a13b3d9d354c751cb618af357d20fe1d57767cbcce52079bbe - Network accessline 168
{ url = "https://files.pythonhosted.org/packages/36/43/b4b18bdc87e1949568fffdcde3ff9a0456266b2d0c6d4432cc34d89ea6eb/playwright-1.62.0-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:db2d76613a57ad844362ce42f7d0c2f - Network accessline 169
{ url = "https://files.pythonhosted.org/packages/81/22/af5d926fc2c32a339eec00a443644bc40ab9db1dd2dd9017873c59773c0c/playwright-1.62.0-py3-none-win32.whl", hash = "sha256:e5614fa89355d7081457680324bb219f79f69c423c5cb6fa250e30b0d8aebf1c", siz - Network accessline 170
{ url = "https://files.pythonhosted.org/packages/2b/a9/4160c1033c07af98bf841ad079457dd78408a5ee0dd56cbfe50b8b6a1c22/playwright-1.62.0-py3-none-win_amd64.whl", hash = "sha256:92c0d98ed04eb35af557b709875edba415b1f548bdb22ddb5bb3e1e6c835c2f1", - Network accessline 171
{ url = "https://files.pythonhosted.org/packages/6c/ec/06b55d619a7082a766aa04f2c6bb31435c87f02930087d8a0517119408fa/playwright-1.62.0-py3-none-win_arm64.whl", hash = "sha256:ea8d3055aa9d5a9f1832ac82517bd8b42c78fac7ebcbebb0107116735c8cb6a1", - Network accessline 175
name = "pluggy" version = "1.6.0" source = { registry = "https://pypi.org/simple" } - Network accessline 176
version = "1.6.0" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b762 - Network accessline 177
source = { registry = "https://pypi.org/simple" } - Network accessline 178
sdist = { url = "https://files.pythonhosted.org/packages/f9/e2/3e91f31a7d2b083fe6ef3fa267035b518369d9511ffab804f839851d2779/pluggy-1.6.0.tar.gz", hash = "sha256:7dcc130b76258d33b90f61b658791dede3486c3e6bfb003ee5c9bfb396dd22f3", size = 69412 - Network accessline 179
wheels = [ { url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd47 - Network accessline 180
{ url = "https://files.pythonhosted.org/packages/54/20/4d324d65cc6d9205fabedc306948156824eb9f0ee1633355a8f7ec5c66bf/pluggy-1.6.0-py3-none-any.whl", hash = "sha256:e920276dd6813095e9377c0bc5566d94c932c33b27a3e3945d8389c374dd4746", size = 205 - Network accessline 184
name = "pyee" version = "13.0.1" source = { registry = "https://pypi.org/simple" } - Network accessline 185
version = "13.0.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 186
source = { registry = "https://pypi.org/simple" } - Network accessline 188
{ name = "typing-extensions" }, ] sdist = { url = "https://files.pythonhosted.org/packages/8b/04/e7c1fe4dc78a6fdbfd6c337b1c3732ff543b8a397683ab38378447baa331/pyee-13.0.1.tar.gz", hash = "sha256:0b931f7c14535667ed4c7e0d531716368715e860b98877 - Network accessline 189
] sdist = { url = "https://files.pythonhosted.org/packages/8b/04/e7c1fe4dc78a6fdbfd6c337b1c3732ff543b8a397683ab38378447baa331/pyee-13.0.1.tar.gz", hash = "sha256:0b931f7c14535667ed4c7e0d531716368715e860b988770fc7eb8578d1f67fc8", size = 3165 - Network accessline 190
sdist = { url = "https://files.pythonhosted.org/packages/8b/04/e7c1fe4dc78a6fdbfd6c337b1c3732ff543b8a397683ab38378447baa331/pyee-13.0.1.tar.gz", hash = "sha256:0b931f7c14535667ed4c7e0d531716368715e860b988770fc7eb8578d1f67fc8", size = 31655, - Network accessline 191
wheels = [ { url = "https://files.pythonhosted.org/packages/a0/c4/b4d4827c93ef43c01f599ef31453ccc1c132b353284fc6c87d535c233129/pyee-13.0.1-py3-none-any.whl", hash = "sha256:af2f8fede4171ef667dfded53f96e2ed0d6e6bd7ee3bb46437f77e3b5768922 - Network accessline 192
{ url = "https://files.pythonhosted.org/packages/a0/c4/b4d4827c93ef43c01f599ef31453ccc1c132b353284fc6c87d535c233129/pyee-13.0.1-py3-none-any.whl", hash = "sha256:af2f8fede4171ef667dfded53f96e2ed0d6e6bd7ee3bb46437f77e3b57689228", size = 1565 - Network accessline 196
name = "pygments" version = "2.21.0" source = { registry = "https://pypi.org/simple" } - Network accessline 197
version = "2.21.0" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/49/2e/ced460408999b33da6b31b0021b0f37d329e202d4169aeb164493778f25b/pygments-2.21.0.tar.gz", hash = "sha256:610ca75 - Network accessline 198
source = { registry = "https://pypi.org/simple" } - Network accessline 199
sdist = { url = "https://files.pythonhosted.org/packages/49/2e/ced460408999b33da6b31b0021b0f37d329e202d4169aeb164493778f25b/pygments-2.21.0.tar.gz", hash = "sha256:610ca751c9bc2492b38eb9a38a7fbc93edbbb2d7182edaf34e66ae493dee5c8c", size = 50 - Network accessline 200
wheels = [ { url = "https://files.pythonhosted.org/packages/71/46/17f022dd3e953bf20a04a028a21ec746d942f8d2af30fa0f124fa0e6a684/pygments-2.21.0-py3-none-any.whl", hash = "sha256:2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377 - Network accessline 201
{ url = "https://files.pythonhosted.org/packages/71/46/17f022dd3e953bf20a04a028a21ec746d942f8d2af30fa0f124fa0e6a684/pygments-2.21.0-py3-none-any.whl", hash = "sha256:2363c69b61c4a97c838da3b130dcd6468f4848992b21a82f2a63ec34377137d9", size = - Network accessline 205
name = "pytest" version = "9.1.1" source = { registry = "https://pypi.org/simple" } - Network accessline 206
version = "9.1.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 207
source = { registry = "https://pypi.org/simple" } - Network accessline 215
{ name = "tomli", marker = "python_full_version < '3.11'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/e4/47/b9efed96c114afcfa3c9d3fe98a76a1d14c74a9e266d397cf6eb64be5e01/pytest-9.1.1.tar.gz", hash = "sha256:1088fbde8f2b49d9 - Network accessline 216
] sdist = { url = "https://files.pythonhosted.org/packages/e4/47/b9efed96c114afcfa3c9d3fe98a76a1d14c74a9e266d397cf6eb64be5e01/pytest-9.1.1.tar.gz", hash = "sha256:1088fbde8f2b49d95a549a195707afa7a76a3ce9bcadc26b6d71f0ffda5fe313", size = 163 - Network accessline 217
sdist = { url = "https://files.pythonhosted.org/packages/e4/47/b9efed96c114afcfa3c9d3fe98a76a1d14c74a9e266d397cf6eb64be5e01/pytest-9.1.1.tar.gz", hash = "sha256:1088fbde8f2b49d95a549a195707afa7a76a3ce9bcadc26b6d71f0ffda5fe313", size = 16363 - Network accessline 218
wheels = [ { url = "https://files.pythonhosted.org/packages/24/25/1de2678b631f5a49215c6c96fff41ba892b0a34df68d6d80292b1b48aa7f/pytest-9.1.1-py3-none-any.whl", hash = "sha256:37a86b45efb9a47a61a36449063e8e18d0cab3161329fc099eb21783169c4f - Network accessline 219
{ url = "https://files.pythonhosted.org/packages/24/25/1de2678b631f5a49215c6c96fff41ba892b0a34df68d6d80292b1b48aa7f/pytest-9.1.1-py3-none-any.whl", hash = "sha256:37a86b45efb9a47a61a36449063e8e18d0cab3161329fc099eb21783169c4f0c", size = 386 - Network accessline 223
name = "pytest-mock" version = "3.15.1" source = { registry = "https://pypi.org/simple" } - Network accessline 224
version = "3.15.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 225
source = { registry = "https://pypi.org/simple" } - Network accessline 227
{ name = "pytest" }, ] sdist = { url = "https://files.pythonhosted.org/packages/68/14/eb014d26be205d38ad5ad20d9a80f7d201472e08167f0bb4361e251084a9/pytest_mock-3.15.1.tar.gz", hash = "sha256:1849a238f6f396da19762269de72cb1814ab44416fa73a8686 - Network accessline 228
] sdist = { url = "https://files.pythonhosted.org/packages/68/14/eb014d26be205d38ad5ad20d9a80f7d201472e08167f0bb4361e251084a9/pytest_mock-3.15.1.tar.gz", hash = "sha256:1849a238f6f396da19762269de72cb1814ab44416fa73a8686deac10b0d87a0f", size - Network accessline 229
sdist = { url = "https://files.pythonhosted.org/packages/68/14/eb014d26be205d38ad5ad20d9a80f7d201472e08167f0bb4361e251084a9/pytest_mock-3.15.1.tar.gz", hash = "sha256:1849a238f6f396da19762269de72cb1814ab44416fa73a8686deac10b0d87a0f", size = - Network accessline 230
wheels = [ { url = "https://files.pythonhosted.org/packages/5a/cc/06253936f4a7fa2e0f48dfe6d851d9c56df896a9ab09ac019d70b760619c/pytest_mock-3.15.1-py3-none-any.whl", hash = "sha256:0a25e2eb88fe5168d535041d09a4529a188176ae608a6d249ee65abc - Network accessline 231
{ url = "https://files.pythonhosted.org/packages/5a/cc/06253936f4a7fa2e0f48dfe6d851d9c56df896a9ab09ac019d70b760619c/pytest_mock-3.15.1-py3-none-any.whl", hash = "sha256:0a25e2eb88fe5168d535041d09a4529a188176ae608a6d249ee65abc0949630d", size - Network accessline 235
name = "python-dateutil" version = "2.9.0.post0" source = { registry = "https://pypi.org/simple" } - Network accessline 236
version = "2.9.0.post0" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 237
source = { registry = "https://pypi.org/simple" } - Network accessline 239
{ name = "six" }, ] sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90f - Network accessline 240
] sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0a - Network accessline 241
sdist = { url = "https://files.pythonhosted.org/packages/66/c0/0c8b6ad9f17a802ee498c46e004a0eb49bc148f2fd230864601a86dcf6db/python-dateutil-2.9.0.post0.tar.gz", hash = "sha256:37dd54208da7e1cd875388217d5e00ebd4179249f90fb72437e91a35459a0ad3 - Network accessline 242
wheels = [ { url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136df - Network accessline 243
{ url = "https://files.pythonhosted.org/packages/ec/57/56b9bcc3c9c6a792fcbaf139543cee77261f3651ca9da0c93f5c1221264b/python_dateutil-2.9.0.post0-py2.py3-none-any.whl", hash = "sha256:a8b2bc7bffae282281c8140a97d3aa9c14da0b136dfe83f850eea9a5f7 - Network accessline 247
name = "ruff" version = "0.15.20" source = { registry = "https://pypi.org/simple" } - Network accessline 248
version = "0.15.20" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/43/dc/35b341fc554ba02f217fc10da57d1a75168cfbcf75b0ef2202176d4c4f2d/ruff-0.15.20.tar.gz", hash = "sha256:1416eb043 - Network accessline 249
source = { registry = "https://pypi.org/simple" } - Network accessline 250
sdist = { url = "https://files.pythonhosted.org/packages/43/dc/35b341fc554ba02f217fc10da57d1a75168cfbcf75b0ef2202176d4c4f2d/ruff-0.15.20.tar.gz", hash = "sha256:1416eb04349192646b54de98f146c4f59afe37d0decfc02c3cbbf396f3a28566", size = 47554 - Network accessline 251
wheels = [ { url = "https://files.pythonhosted.org/packages/94/d9/2d5014f0253ba541d2061d9fa7193f48e941c8b21bb88a7ff9bbe0bd0596/ruff-0.15.20-py3-none-linux_armv6l.whl", hash = "sha256:00e188c53e499c3c1637f73c91dcf2fb56d576cab76ce1be50a27 - Network accessline 252
{ url = "https://files.pythonhosted.org/packages/94/d9/2d5014f0253ba541d2061d9fa7193f48e941c8b21bb88a7ff9bbe0bd0596/ruff-0.15.20-py3-none-linux_armv6l.whl", hash = "sha256:00e188c53e499c3c1637f73c91dcf2fb56d576cab76ce1be50a27c4e80e37078", s - Network accessline 253
{ url = "https://files.pythonhosted.org/packages/c6/d3/ac1798ba64f670698867fcfc591d50e7e421bef137db564858f619a30fcf/ruff-0.15.20-py3-none-macosx_10_12_x86_64.whl", hash = "sha256:9ebd1fd9b9c95fc0bd7b2761aebec1f030013d2e193a2901b224af68fe472 - Network accessline 254
{ url = "https://files.pythonhosted.org/packages/47/47/d3ac899991202095dfcf3d5176be4272642be3cf981a2f1a30f72a2afb95/ruff-0.15.20-py3-none-macosx_11_0_arm64.whl", hash = "sha256:c5b16cdd67ca108185cd36dce98c576350c03b1660a751de725fb049193a063 - Network accessline 255
{ url = "https://files.pythonhosted.org/packages/33/13/4e043fe30aa94d4ff5213a9881fc296d12960f5971b234a5263fdc225312/ruff-0.15.20-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3413bb3c3d2ca6a8208f1f4809cd2dca3c6d - Network accessline 256
{ url = "https://files.pythonhosted.org/packages/76/e6/92e7bf40388bc5800073b96564f56264f7e48bfd1a498f5ced6ae6d5a769/ruff-0.15.20-py3-none-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:bd7ec42b3bb3da066488db093308a69c4ac5ee - Network accessline 257
{ url = "https://files.pythonhosted.org/packages/13/7a/43460be3f24495a3aa46d4b16873e2c4941b3b5f0b00cf88c03b7b94b339/ruff-0.15.20-py3-none-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e1a36ad0eb77fba9aabfb69ede54de6f376d04ac18 - Network accessline 258
{ url = "https://files.pythonhosted.org/packages/27/a0/f37077884873221c6b33b4ab49eb18f9f88e54a16a25a5bca59bef46dd66/ruff-0.15.20-py3-none-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b6df3b1e4610432f0386dba04d853b5f08cb - Network accessline 259
{ url = "https://files.pythonhosted.org/packages/a6/74/165545b60256a9704c21ac0ec4a0d07933b320812f9584836c9f4aca4292/ruff-0.15.20-py3-none-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e89f198a1ea6ef0d727c1cf16088bc91a6cb0ab9 - Network accessline 260
{ url = "https://files.pythonhosted.org/packages/86/b1/a976a136d40ade83ce743578399865f57001003a409acadc0ecbb3051082/ruff-0.15.20-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:309809086c2acb67624950a3c8133e80f32d0d - Network accessline 261
{ url = "https://files.pythonhosted.org/packages/19/0f/f032696cb01c9b54c0263fa393474d7758f1cdc021a01b04e3cbc2500999/ruff-0.15.20-py3-none-manylinux_2_31_riscv64.whl", hash = "sha256:2d2374caa2f2c2f9e2b7da0a50802cfb8b79f55a9b5e49379f564544fb - Network accessline 262
{ url = "https://files.pythonhosted.org/packages/4b/f4/51b1a14bc69e8c224b15dab9cce8e99b425e0455d462caa2b3c9be2b6a8e/ruff-0.15.20-py3-none-musllinux_1_2_aarch64.whl", hash = "sha256:a1ed17b65293e0c2f22fc387bc13198a5de94bf4429589b0ff6946b0fea - Network accessline 263
{ url = "https://files.pythonhosted.org/packages/71/4b/fe267640783cd02bf6c5cc290b1df1051be2ec294c678b5c15fe19e52343/ruff-0.15.20-py3-none-musllinux_1_2_armv7l.whl", hash = "sha256:f701305e66b38ea6c91882490eb73459796808e4c6362a1b765255e0cdcd - Network accessline 264
{ url = "https://files.pythonhosted.org/packages/b0/c0/a65aa4ec2f5e87a1df32dc3ec1fede434fe3dfd5cbcf3b503cafc676ab54/ruff-0.15.20-py3-none-musllinux_1_2_i686.whl", hash = "sha256:5b9c0c367ad8e5d0d5b5b8537864c469a0a0e55417aadfbeca41fa61333be9 - Network accessline 265
{ url = "https://files.pythonhosted.org/packages/5a/a4/0caa331d954ae2723d729d351c989cb4ca8b6077d5c6c2cb6de75e98c041/ruff-0.15.20-py3-none-musllinux_1_2_x86_64.whl", hash = "sha256:01cc00dd58f0df339d0e902219dd53990ea99996a0344e5d9cc8d45d5307 - Network accessline 266
{ url = "https://files.pythonhosted.org/packages/10/9b/5f14927848d2fd4aa891fd88d883788c5a7baba561c7874732364045708c/ruff-0.15.20-py3-none-win32.whl", hash = "sha256:ed65ef510e43a137207e0f01cfcf998aeddb1aeeda5c9d35023e910284d7cf21", size = 1 - Network accessline 267
{ url = "https://files.pythonhosted.org/packages/fa/f0/fe47c501f9dea92a26d788ff98bb5d92ed4cb4c88792c5c88af6b697dc8e/ruff-0.15.20-py3-none-win_amd64.whl", hash = "sha256:a525c81c70fb0380344dd1d8745d8cc1c890b7fc94a58d5a07bd8eb9557b8415", size - Network accessline 268
{ url = "https://files.pythonhosted.org/packages/d7/2b/9555445e1201d92b3195f45cdb153a0b68f24e0a4273f6e3d5ab46e212bb/ruff-0.15.20-py3-none-win_arm64.whl", hash = "sha256:2f5b2a6d614e8700388806a14996c40fab2c47b819ef57d790a34878858ed9ca", size - Network accessline 272
name = "six" version = "1.17.0" source = { registry = "https://pypi.org/simple" } - Network accessline 273
version = "1.17.0" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e - Network accessline 274
source = { registry = "https://pypi.org/simple" } - Network accessline 275
sdist = { url = "https://files.pythonhosted.org/packages/94/e7/b2c673351809dca68a0e064b6af791aa332cf192da575fd474ed7d6f16a2/six-1.17.0.tar.gz", hash = "sha256:ff70335d468e7eb6ec65b95b99d3a2836546063f63acc5171de367e834932a81", size = 34031, - Network accessline 276
wheels = [ { url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c - Network accessline 277
{ url = "https://files.pythonhosted.org/packages/b7/ce/149a00dd41f10bc29e5921b496af8b574d8413afcd5e30dfa0ed46c2cc5e/six-1.17.0-py2.py3-none-any.whl", hash = "sha256:4721f391ed90541fddacab5acf947aa0d3dc7d27b2e1e8eda2be8970586c3274", size = 1 - Network accessline 281
name = "skills-ref" version = "0.1.1" source = { registry = "https://pypi.org/simple" } - Network accessline 282
version = "0.1.1" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 283
source = { registry = "https://pypi.org/simple" } - Network accessline 286
{ name = "strictyaml" }, ] sdist = { url = "https://files.pythonhosted.org/packages/23/42/943d3ba8b097af7068b7178563a5062ad8a977982f4a7b4f67facfc575e9/skills_ref-0.1.1.tar.gz", hash = "sha256:6b400ca6e0049be62dca0167ff943ba2745fd67efb37fbba - Network accessline 287
] sdist = { url = "https://files.pythonhosted.org/packages/23/42/943d3ba8b097af7068b7178563a5062ad8a977982f4a7b4f67facfc575e9/skills_ref-0.1.1.tar.gz", hash = "sha256:6b400ca6e0049be62dca0167ff943ba2745fd67efb37fbba4d0ee341fccd2695", size = - Network accessline 288
sdist = { url = "https://files.pythonhosted.org/packages/23/42/943d3ba8b097af7068b7178563a5062ad8a977982f4a7b4f67facfc575e9/skills_ref-0.1.1.tar.gz", hash = "sha256:6b400ca6e0049be62dca0167ff943ba2745fd67efb37fbba4d0ee341fccd2695", size = 9 - Network accessline 289
wheels = [ { url = "https://files.pythonhosted.org/packages/af/25/36a43c3a61fb6cc3984e6ad5e556929b8ae71c95eba615dae4cf2f427964/skills_ref-0.1.1-py3-none-any.whl", hash = "sha256:d35db5bb8de71ae301daf5ca9cb71f8a555e8c6f83a6d40e46a5bc09f8 - Network accessline 290
{ url = "https://files.pythonhosted.org/packages/af/25/36a43c3a61fb6cc3984e6ad5e556929b8ae71c95eba615dae4cf2f427964/skills_ref-0.1.1-py3-none-any.whl", hash = "sha256:d35db5bb8de71ae301daf5ca9cb71f8a555e8c6f83a6d40e46a5bc09f8f461b5", size = - Network accessline 294
name = "strictyaml" version = "1.7.3" source = { registry = "https://pypi.org/simple" } - Network accessline 295
version = "1.7.3" source = { registry = "https://pypi.org/simple" } dependencies = [ - Network accessline 296
source = { registry = "https://pypi.org/simple" } - Network accessline 298
{ name = "python-dateutil" }, ] sdist = { url = "https://files.pythonhosted.org/packages/b3/08/efd28d49162ce89c2ad61a88bd80e11fb77bc9f6c145402589112d38f8af/strictyaml-1.7.3.tar.gz", hash = "sha256:22f854a5fcab42b5ddba8030a0e4be51ca89af02679 - Network accessline 299
] sdist = { url = "https://files.pythonhosted.org/packages/b3/08/efd28d49162ce89c2ad61a88bd80e11fb77bc9f6c145402589112d38f8af/strictyaml-1.7.3.tar.gz", hash = "sha256:22f854a5fcab42b5ddba8030a0e4be51ca89af0267961c8d6cfa86395586c407", size = - Network accessline 300
sdist = { url = "https://files.pythonhosted.org/packages/b3/08/efd28d49162ce89c2ad61a88bd80e11fb77bc9f6c145402589112d38f8af/strictyaml-1.7.3.tar.gz", hash = "sha256:22f854a5fcab42b5ddba8030a0e4be51ca89af0267961c8d6cfa86395586c407", size = 1 - Network accessline 301
wheels = [ { url = "https://files.pythonhosted.org/packages/96/7c/a81ef5ef10978dd073a854e0fa93b5d8021d0594b639cc8f6453c3c78a1d/strictyaml-1.7.3-py3-none-any.whl", hash = "sha256:fb5c8a4edb43bebb765959e420f9b3978d7f1af88c80606c03fb420888 - Network accessline 302
{ url = "https://files.pythonhosted.org/packages/96/7c/a81ef5ef10978dd073a854e0fa93b5d8021d0594b639cc8f6453c3c78a1d/strictyaml-1.7.3-py3-none-any.whl", hash = "sha256:fb5c8a4edb43bebb765959e420f9b3978d7f1af88c80606c03fb420888f5d1c7", size = - Network accessline 306
name = "tomli" version = "2.0.1" source = { registry = "https://pypi.org/simple" } - Network accessline 307
version = "2.0.1" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/c0/3f/d7af728f075fb08564c5949a9c95e44352e23dee646869fa104a3b2060a3/tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f - Network accessline 308
source = { registry = "https://pypi.org/simple" } - Network accessline 309
sdist = { url = "https://files.pythonhosted.org/packages/c0/3f/d7af728f075fb08564c5949a9c95e44352e23dee646869fa104a3b2060a3/tomli-2.0.1.tar.gz", hash = "sha256:de526c12914f0c550d15924c62d72abc48d6fe7364aa87328337a31007fe8a4f", size = 15164, - Network accessline 310
wheels = [ { url = "https://files.pythonhosted.org/packages/97/75/10a9ebee3fd790d20926a90a2547f0bf78f371b2f13aa822c759680ca7b9/tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ec - Network accessline 311
{ url = "https://files.pythonhosted.org/packages/97/75/10a9ebee3fd790d20926a90a2547f0bf78f371b2f13aa822c759680ca7b9/tomli-2.0.1-py3-none-any.whl", hash = "sha256:939de3e7a6161af0c887ef91b7d41a53e7c5a1ca976325f429cb46ea9bc30ecc", size = 1275 - Network accessline 315
name = "typing-extensions" version = "4.16.0" source = { registry = "https://pypi.org/simple" } - Network accessline 316
version = "4.16.0" source = { registry = "https://pypi.org/simple" } sdist = { url = "https://files.pythonhosted.org/packages/f6/cc/6253133b5bb138fc3306cebfbda2c520f545d36b5be2c7255cc528bb45d6/typing_extensions-4.16.0.tar.gz", hash = "sha25 - Network accessline 317
source = { registry = "https://pypi.org/simple" } - Network accessline 318
sdist = { url = "https://files.pythonhosted.org/packages/f6/cc/6253133b5bb138fc3306cebfbda2c520f545d36b5be2c7255cc528bb45d6/typing_extensions-4.16.0.tar.gz", hash = "sha256:dc983d19a509c94dba722ee6abd33940f7c05a89e243c47e907eb4db6f1a43e5", - Network accessline 319
wheels = [ { url = "https://files.pythonhosted.org/packages/49/d3/b8441a820a491ddfc024b0b0cf0393375b75ea13866d9c66727e54c2fc80/typing_extensions-4.16.0-py3-none-any.whl", hash = "sha256:481caa481374e813c1b176ada14e97f1f67a4539ce9cfeb3f3 - Network accessline 320
{ url = "https://files.pythonhosted.org/packages/49/d3/b8441a820a491ddfc024b0b0cf0393375b75ea13866d9c66727e54c2fc80/typing_extensions-4.16.0-py3-none-any.whl", hash = "sha256:481caa481374e813c1b176ada14e97f1f67a4539ce9cfeb3f350d78d6370c2e8"
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Declared and executed: 11 facts
- Contacts www.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/_utils.py:33High confidence
- Contacts www.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/client.py:513High confidence
- Contacts www.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/comment.py:421High confidence
- Contacts www.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/explore.py:18High confidence
- Contacts creator.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/login.py:28High confidence
- Contacts www.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/login.py:48High confidence
- Contacts creator.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/publish.py:22High confidence
- Contacts www.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/search.py:61High confidence
- Contacts www.skills.sh, which SKILL.md, the README and the plugin manifest do not mentionscripts/site_check.py:101High confidence
- Contacts deliciousbuding.github.io, which SKILL.md, the README and the plugin manifest do not mentionscripts/site_check.py:174High confidence
- Contacts www.xiaohongshu.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/user.py:26High confidence
Signal confidence: 246 facts
- Network access in prose of documentationCHANGELOG.md:3Low confidence
- Network access in prose of documentationCHANGELOG.md:4Low confidence
- Network access in prose of documentationCHANGELOG.md:7Low confidence
- Network access in prose of documentationCHANGELOG.md:62Low confidence
- Network access in prose of documentationCHANGELOG.md:63Low confidence
- Network access in prose of documentationCHANGELOG.md:64Low confidence
- Network access in code of documentationCONTRIBUTING.md:8Low confidence
- Executable script in code of a file that runsDockerfile:1High confidence
- Network access in prose of documentationREADME.md:3Low confidence
- Network access in prose of documentationREADME.md:4Low confidence
- Network access in prose of documentationREADME.md:5Low confidence
- Network access in prose of documentationREADME.md:6Low confidence
- Network access in code of documentationREADME.md:49Low confidence
- Network access in code of documentationREADME.md:65Low confidence
- Network access in prose of documentationREADME_EN.md:3Low confidence
- Network access in prose of documentationREADME_EN.md:4Low confidence
- Network access in prose of documentationREADME_EN.md:5Low confidence
- Network access in prose of documentationREADME_EN.md:6Low confidence
- Network access in code of documentationREADME_EN.md:49Low confidence
- Network access in code of documentationREADME_EN.md:65Low confidence
- Access to secrets in prose of documentationREADME_EN.md:133Low confidence
- Network access in code of documentationdocs/INSTALL.md:17Low confidence
- Network access in code of documentationdocs/INSTALL.md:40Low confidence
- Network access in prose of documentationdocs/PAGES.md:62Low confidence
- Network access in prose of documentationdocs/PAGES.md:63Low confidence
- Network access in prose of documentationdocs/PAGES.md:64Low confidence
- Access to secrets in prose of documentationdocs/REFERENCE.md:23Low confidence
- Network access in code of documentationexamples/claude-code/README.md:10Low confidence
- Network access in code of documentationexamples/claude-code/README.md:32Low confidence
- Network access in code of documentationexamples/cursor/README.md:8Low confidence
- Network access in code of documentationexamples/openclaw/README.md:12Low confidence
- Network access in prose of documentationlicenses/Apache-2.0.txt:1Low confidence
- Network access in prose of documentationlicenses/Apache-2.0.txt:3Low confidence
- Network access in prose of documentationlicenses/Apache-2.0.txt:195Low confidence
- Executable script in code of a file that runsmake.ps1:1High confidence
- Executable script in prose of a file that runsscripts/__init__.py:1Low confidence
- Executable script in code of a file that runsscripts/__main__.py:1High confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuescripts/__main__.py:62Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuescripts/__main__.py:72Low confidence
- Executable script in prose of a file that runsscripts/_logging.py:1Low confidence
- Executable script in prose of a file that runsscripts/_utils.py:1Low confidence
- Network access in code of a file that runsscripts/_utils.py:33High confidence
- Executable script in prose of a file that runsscripts/client.py:1Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuescripts/client.py:261Low confidence
- Access to secrets in code of a file that runs: a variable, placeholder or call, not a stored valuescripts/client.py:326Low confidence
- Network access in code of a file that runsscripts/client.py:513High confidence
- Network access in code of a file that runsscripts/client.py:531High confidence
- Executable script in prose of a file that runsscripts/comment.py:1Low confidence
- Network access in code of a file that runsscripts/comment.py:419High confidence
- Network access in code of a file that runsscripts/comment.py:420High confidence
and 196 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Native | Manifest AGENTS.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.