Not in the top 1,000 by GitHub stars
balabalabalading/huuuuuuho-skills
My personal collection of Skills — open-source tools that extend Agent's capabilities for content creation, development logging, and productivity workflows.
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
skills/Ardot-skills-nonofficial/ardot-create-new-file/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → e2b6b5d15773
No earlier version was observed for comparison.
skills/Ardot-skills-nonofficial/ardot-generate-design/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → e2b6b5d15773
No earlier version was observed for comparison.
skills/Ardot-skills-nonofficial/ardot-generate-library/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → e2b6b5d15773
No earlier version was observed for comparison.
skills/Ardot-skills-nonofficial/ardot-style-guide/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → e2b6b5d15773
No earlier version was observed for comparison.
skills/Ardot-skills-nonofficial/ardot-use/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → e2b6b5d15773
No earlier version was observed for comparison.
skills/article2ticktick/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → e2b6b5d15773
No earlier version was observed for comparison.
skills/logging-session/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e2b6b5d15773
No earlier version was observed for comparison.
skills/mp-article-writor/SKILL.md
Week of Nov 2, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → e2b6b5d15773
No earlier version was observed for comparison.
Verified commit e2b6b5d15773d93cd06b69a364d6c4a1846c257e
git clone --filter=blob:none --no-checkout https://github.com/balabalabalading/huuuuuuho-skills.git .hotskills/balabalabalading-huuuuuuho-skills && git -C .hotskills/balabalabalading-huuuuuuho-skills checkout --detach e2b6b5d15773d93cd06b69a364d6c4a1846c257e
# Copy each selected skill directory from .hotskills/balabalabalading-huuuuuuho-skills into .claude/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
- ardot-create-new-file
skills/Ardot-skills-nonofficial/ardot-create-new-file - ardot-generate-design
skills/Ardot-skills-nonofficial/ardot-generate-design - ardot-generate-library
skills/Ardot-skills-nonofficial/ardot-generate-library - ardot-style-guide
skills/Ardot-skills-nonofficial/ardot-style-guide - ardot-use
skills/Ardot-skills-nonofficial/ardot-use - article2ticktick
skills/article2ticktick - logging-session
skills/logging-session - mp-article-writor
skills/mp-article-writor
How it works
ardot-create-new-file
When your agent uses it
**强制性前置条件** — 每次调用 `create_new_page` 工具之前,必须先调用此技能。 未经加载此技能,绝不能直接调用 `create_new_page`。 当用户想要在 Ardot 设计文件中创建新页面时触发。 关键词:在 Ardot 上下文中的"创建新页面"、"添加页面"、"新画布"。
What it loads into context
Frontmatter
110 tokensAlways available to the agent
SKILL.md
786 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 工作流程
- 重要说明
- 跨页面操作参考
Files
../../../.claude-plugin/marketplace.jsonasset2,324 bytesSKILL.mdcore2,748 bytes
Read SKILL.md
# ardot-create-new-file — 创建新 Ardot 页面
处理 Ardot 设计文件中的页面创建。轻量级前置技能,确保正确的页面 ID 追踪和编辑器状态管理。
## 工作流程
### 第一步:确定页面名称和位置
根据用户意图决定描述性页面名称:
- `"Components"` — 用于可复用组件库
- `"Light Mode"` / `"Dark Mode"` — 用于特定主题的页面
- `"Screens"` — 用于设计原型
- 如果新页面需要出现在特定现有页面之后,使用 `leftPageId`
View the complete source on GitHubardot-generate-design
When your agent uses it
在 Ardot 中从头构建完整页面、屏幕或多区块 UI 布局时,将此技能与 ardot-use 配合使用。 通过 6 步工作流程编排多个 MCP 工具:初始化 → 样式系统 → 变量 → 骨架 → 逐区块构建 → 验证。 触发条件:"在 Ardot 中创建落地页"、"构建登录屏幕"、 "在 Ardot 中设计仪表板"、"制作设置页面"、"创建个人资料屏幕"、 "在 Ardot 中构建此页面"、"将此设计转换为 Ardot"。
What it loads into context
Frontmatter
166 tokensAlways available to the agent
SKILL.md
1,894 tokensWhen the skill is activated
Reference documents
5,628 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 技能边界
- 前置条件
- 必需工作流程(6 步)
- 变量 ID 追踪
- 批次管理 — 25 操作限制
- 错误恢复
Files
SKILL.mdcore6,621 bytes../ardot-generate-library/SKILL.mddoc8,004 bytes../ardot-style-guide/SKILL.mddoc5,925 bytes../ardot-use/references/validation-and-recovery.mddoc5,727 bytes
Read SKILL.md
# ardot-generate-design — 构建页面和屏幕
在 Ardot 中使用设计系统组件、变量和样式构建完整的页面、视图和多区块 UI 容器。不使用硬编码的十六进制/像素值。
## 技能边界
- 当交付物是**组合页面或屏幕**时使用此技能(登录页面、仪表板、设置面板、落地页等)
- 如果用户想要创建**可复用组件**,切换到 [ardot-generate-library](../ardot-generate-library/SKILL.md)
- 如果用户只想**查询样式指南**,直接使用 [ardot-style-guide](../ardot-style-guide/SKILL.md)
## 前置条件
**开始前必须加载:**
- `ardot-use` — 用于 batch_edit DSL 规则、变量绑定、注意事项View the complete source on GitHubardot-generate-library
When your agent uses it
在 Ardot 中构建可复用组件库或设计系统时使用此技能。 涵盖从变量/设计令牌创建到使用正确变量绑定构建组件的完整工作流程, 直至最终验证。 触发条件:"创建组件库"、"构建设计系统"、 "制作可复用按钮"、"创建 UI 组件"、"构建组件集"、 "设计系统"、"组件库"、"可复用组件"。
What it loads into context
Frontmatter
128 tokensAlways available to the agent
SKILL.md
2,539 tokensWhen the skill is activated
Reference documents
1,894 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 技能边界
- 前置条件
- 阶段一:基础
- 阶段二:组件创建
- 阶段三:验证
- 硬性关卡 — 禁止的快捷方式
- 推荐命名约定
Files
../ardot-generate-design/SKILL.mddoc6,621 bytesSKILL.mdcore8,004 bytes
Read SKILL.md
# ardot-generate-library — 构建组件库
在 Ardot 中构建可复用组件库和设计系统。组件使用正确的变量绑定创建,以便响应主题/模式变化。
## 技能边界
- 构建**可复用组件**时使用此技能(按钮、卡片、输入框、导航栏等)
- 创建包含令牌和组件的**设计系统**时使用此技能
- 如果构建一次性页面/屏幕,请改用 [ardot-generate-design](../ardot-generate-design/SKILL.md)
## 前置条件
- `ardot-use` — 用于 batch_edit DSL 规则、变量绑定、注意事项
- `ardot-create-new-file` — 用于创建 Components 页面View the complete source on GitHubardot-style-guide
When your agent uses it
从头设计或为 Ardot 项目应用视觉主题时使用此技能。 涵盖 `search_style_guide` → `build_style_guide` 工作流程,用于发现和应用完整的设计系统(颜色、排版、间距、布局模式)。 触发条件:"设计落地页"、"创建仪表板"、"应用深色主题"、 "设置设计系统"、"选择调色板"、"为应用选择字体"、 "样式指南"、"视觉风格"、"外观和感觉"。
What it loads into context
Frontmatter
142 tokensAlways available to the agent
SKILL.md
1,657 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 技能边界
- 前置条件
- search_style_guide — 三轮回退协议
- build_style_guide — 权威性约束
- 每个领域的选择策略
- topic 参数指南
- 完整工作流程总结
Files
SKILL.mdcore5,925 bytes
Read SKILL.md
# ardot-style-guide — 样式指南搜索与构建
通过 `search_style_guide` → `build_style_guide` 工具链发现和应用完整的设计系统。Ardot 独有的能力,Figma 没有等效功能。
## 技能边界
- 当用户想要从头建立视觉风格时使用此技能
- 在任何创建带样式 UI(颜色、排版)的 `batch_edit` 之前使用此技能
- 如果用户已有已建立的设计系统和已知令牌,可跳过此技能
- `build_style_guide` 的输出是**权威性的** — 所有下游工具必须严格遵循其值
## 前置条件
- 必须已调用 `fetch_editor_state(includeSchema: true)`View the complete source on GitHubardot-use
When your agent uses it
**强制性前置条件** — 每次调用 `batch_edit` 工具之前,必须先调用此技能。 未经加载此技能,绝不能直接调用 `batch_edit`。 当用户想要在 Ardot 设计文件中创建、更新、移动或删除节点时触发 — 例如插入框架、文本、形状、组件;将变量绑定到填充/描边; 构建屏幕、组件或设计库。当涉及 batch_edit DSL 操作时也加载 (I/U/M/D/C/G 操作符)。
What it loads into context
Frontmatter
142 tokensAlways available to the agent
SKILL.md
3,053 tokensWhen the skill is activated
Reference documents
11,033 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 1. 关键规则
- 2. DSL 操作符参考
- 3. 变量绑定模式
- 4. 验证与恢复
- 5. 预检清单
- 6. 错误矩阵
- 7. 参考文档
Files
SKILL.mdcore10,281 bytesreferences/common-patterns.mddoc7,335 bytesreferences/dsl-reference.mddoc10,667 bytesreferences/gotchas.mddoc9,836 bytesreferences/validation-and-recovery.mddoc5,727 bytesreferences/variable-patterns.mddoc5,102 bytes
Read SKILL.md
# ardot-use — Ardot batch_edit DSL 技能
通过 `batch_edit` DSL 进行所有 Ardot 写操作的核心技能。提供关键规则、操作符参考、变量绑定模式、验证策略和错误恢复。
## 1. 关键规则
**1. 每个 `batch_edit` 调用最多 25 个操作。** 将较大的工作拆分为多个调用。建议保持在 20 个或更少以留出余量。
**2. 绑定名称在每次 `batch_edit` 调用后过期。** 在一次调用中分配的绑定名称(例如 `btn1 = I(...)`)仅在同一调用内有效。在下一个 `batch_edit` 中,你必须使用真实节点 ID(例如 `"3:544"`)— 绝不使用先前调用的绑定名称。
**3. I() 中的 TEXT 节点仅支持 `fill: "#HEX"` 字符串格式。** 在 I() 中创建 TEXT 节点时不能使用 `fills: [{..., boundVariables: {...}}]`。
**解决方法**:在 I() 中使用 `fill: "#HEX"` 创建 TEXT 节点,然后在后续的 `batch_edit` 调用中使用 U() 应用带有 `boundVariables` 的 `fills`。
**4. `updated: {}` 不代表失败。** U() 操作通常返回 `updated: {}` 而不是 `updated: {"nodeId": {...}}`。操作可能已成功 — 通过立即运行 `batch_read` 验证节点,而不是信任返回值。View the complete source on GitHubarticle2ticktick
When your agent uses it
将技术周报中的文章整理为滴答清单(TickTick)待办事项,同时支持单篇文章直接添加。当用户提供周报 markdown 文档、要求将周报文章添加到滴答清单,或提及"技术周报"、"文章汇总"、"添加到滴答"等关键词时,使用此技能;当用户分享单篇文章链接并希望添加到滴答清单时,同样使用此技能。
What it loads into context
Frontmatter
107 tokensAlways available to the agent
SKILL.md
2,392 tokensWhen the skill is activated
Reference documents
1,420 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 概述
- 相关脚本
- 字段映射规则
- 标准文章格式(必须遵守)
- 工作流步骤
- 工作流分支 A:批量周报
- 工作流分支 B:单篇文章直接添加
- 快速参考:已有分类体系
Scripts executed separately
scripts/add_articles.py
Files
README.mddoc5,189 bytesSKILL.mdcore8,394 bytesSKILL.mdcore8,394 bytesSKILL.mdcore8,394 bytesSKILL.mdcore8,394 bytesSKILL.mdcore8,394 bytesSKILL.mdcore8,394 bytesSKILL.mdcore8,394 bytesscripts/add_articles.pyruns7,686 bytes
Read SKILL.md
# 技术文章 → 滴答清单工作流
## 概述
将技术周报(肘子 Swift 周刊、老司机 iOS 周报等)中推荐的文章,批量转换为 滴答清单(TickTick) 待办事项,自动完成分类标签。也支持单篇文章直接添加。
## 相关脚本
脚本随 Skill 一同安装,位于 `${CLAUDE_SKILL_DIR}/scripts/` 目录:
| 脚本 | 说明 |
|------|------|
| `add_articles.py` | 主脚本:批量或单篇添加文章到 滴答清单(TickTick) |
View the complete source on GitHublogging-session
When your agent uses it
Record and query AI conversation logs — what users asked, how it was solved, and the result. Use when users want to logging conversation, summarize recent work from sessions, or want daily/weekly project summaries from past conversations.
What it loads into context
Frontmatter
57 tokensAlways available to the agent
SKILL.md
2,130 tokensWhen the skill is activated
Reference documents
2,855 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Why this matters
- Database location
- Schema
- When to record
- How to record a session log
- Querying session logs
- Automatic logging via Stop hook
- Task categories
- Tips for good session logs
Scripts executed separately
scripts/config_loader.pyscripts/init_db.pyscripts/query_logs.pyscripts/save_log.pyscripts/time_utils.pyscripts/weekly_summary.py
Files
README.mddoc9,108 bytesSKILL.mdcore8,955 bytesSKILL.mdcore8,955 bytesSKILL.mdcore8,955 bytesSKILL.mdcore8,955 bytesSKILL.mdcore8,955 bytesSKILL.mdcore8,955 bytesSKILL.mdcore8,955 bytesconfig.jsonasset198 bytesevals/evals.jsonasset4,850 bytesreferences/hooks-guide.mddoc1,958 bytesscripts/config_loader.pyruns1,059 bytesscripts/init_db.pyruns1,477 bytesscripts/query_logs.pyruns5,259 bytesscripts/save_log.pyruns2,891 bytesscripts/time_utils.pyruns1,178 bytesscripts/weekly_summary.pyruns8,372 bytes
Read SKILL.md
# Logging Session
This skill records coding session summaries to a local SQLite database stored in your local path, so you can later query and summarize your work across projects and time periods.
## Why this matters
Coding sessions produce valuable knowledge — decisions made, problems solved, approaches tried and abandoned. Without capturing these, each session starts from scratch. This skill turns conversations into searchable, summarizable records that feed into daily standups, weekly reviews, and long-term project memory.
## Database location
The database path is defined by `db_path` in `config.json`, defaulting to:
```
~/Library/Mobile Documents/iCloud~md~obsidian/Documents/vault4life/dev_knowledge.dbView the complete source on GitHubmp-article-writor
When your agent uses it
微信公众号文章创作。当用户想把软件更新、产品新闻、工具测评、工作流探索、个人实践或生活感悟等素材整理成公众号文章时使用。即使用户只是说「帮我写篇文章」「整理成推文」「发公众号」,也应当触发此技能。
What it loads into context
Frontmatter
79 tokensAlways available to the agent
SKILL.md
7,800 tokensWhen the skill is activated
Reference documents
14,178 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- 文章类型路由
- 工作流
- 中性写作基线
- 内容要求
- 行文规范
- 题图与插图
- 文档格式
- 自检清单
- 参考资料
Scripts executed separately
scripts/upload-images-to-picgo.mjsscripts/upload-images-to-picgo.test.mjs
Files
README.mddoc18,728 bytesSKILL.mdcore30,037 bytesevals/evals.jsonasset8,167 bytesreferences/去模板化审读.mddoc5,323 bytesreferences/文章类型路由.mddoc7,497 bytesreferences/行文风格指南.mddoc13,179 bytesreferences/视觉路由.mddoc10,847 bytesscripts/upload-images-to-picgo.mjsruns7,473 bytesscripts/upload-images-to-picgo.test.mjsruns8,784 bytes
Read SKILL.md
# 公众号文章生成
帮助作者将素材整理为一篇可直接进入微信公众号编辑和配图流程的静态图文长文。
本 Skill 只处理微信公众号。所有交给归藏 Skill 的任务都必须显式传递「微信公众号、静态图文」;禁止生成 Live Photo、MOV、PVT、GIF、MP4、视频替代品、小红书图片或其他平台封面。
## 文章类型路由
开始写作前,根据用户目的和素材特征选择一个主类型:新闻和软件更新简报、产品体验和工具测评、个人实践和工作流复盘、技术解析和教程、生活叙事和观点文章。
根据作者希望文章回答的核心问题选择类型,日期、版本、发布记录等只作为辅助特征。用户已经明确类型,或创作目的足够清楚时直接选择,不重复询问。只有类型会实质改变文章结构且无法判断时,才询问一次。完整判断标准和各类型写法见 `references/文章类型路由.md`。选定类型后,在 Step 3、Step 4、Step 5 和 Step 8 持续应用对应规则。
## 工作流
View the complete source on GitHubSkills included
- ardot-create-new-file
- ardot-generate-design
- ardot-generate-library
- ardot-style-guide
- ardot-use
- article2ticktick
- logging-session
- mp-article-writor
Repository facts
- License
- MIT
- Created
- Apr 16, 2026
- Last pushed
- Sep 26, 2026
- Forks
- 12
- Open issues
- 0
- Project activity
- Active
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 6, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 12 notes
skills/article2ticktick/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/article2ticktick/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/article2ticktick/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/article2ticktick/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/article2ticktick/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/article2ticktick/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/logging-session/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/logging-session/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/logging-session/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/logging-session/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/logging-session/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedskills/logging-session/SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- No dangerous shell commands
- 97 network referencesin 11 files: mp-article-writor/scripts/upload-images-to-picgo.test.mjs:40 mp-article-writor/README.md:38 article2ticktick/README.md:9 and 8 more
- No hidden or obfuscated text
- 2 instruction override signalsin 1 file: logging-session/SKILL.md:199
- 9 executable scriptsin 9 files: article2ticktick/scripts/add_articles.py:1 logging-session/scripts/config_loader.py:1 logging-session/scripts/init_db.py:1 and 6 more
- 1 reference to secretsin 1 file: mp-article-writor/scripts/upload-images-to-picgo.mjs:160
- No requests to vote in Hot
Show all 109 signals by file
skills/article2ticktick/README.md
- Network accessline 9
A Skill that converts technical newsletter articles (batch or single) into [TickTick](https://ticktick.com/) todos with automatic categorization and tagging. - Network accessline 11
<p align="center"> <img width="800" alt="Screenshot" src="https://github.com/user-attachments/assets/9dbcd7e9-b3e5-443c-a86f-efa386143390"> - Network accessline 12
<img width="800" alt="Screenshot" src="https://github.com/user-attachments/assets/9dbcd7e9-b3e5-443c-a86f-efa386143390"> - Network accessline 73
python3 $SCRIPTS/add_articles.py \ --task \ --title "[Article Title](https://example.com)" \ - Network accessline 74
--task \ --title "[Article Title](https://example.com)" \ --list "SwiftUI" \ - Network accessline 75
--title "[Article Title](https://example.com)" \ - Network accessline 83
[利用 Skill 向滴答清单批量创建稍后读待办](https://mp.weixin.qq.com/s/xbvFmOwk0SwdWMw4BUczSg) - Network accessline 93
将技术周报文章(批量或单篇)转换为[滴答清单](https://dida365.com/)待办事项的 Skill,支持自动分类和标签。 - Network accessline 95
<p align="center"> <img width="800" alt="效果截图" src="https://github.com/user-attachments/assets/9dbcd7e9-b3e5-443c-a86f-efa386143390"> - Network accessline 96
<img width="800" alt="效果截图" src="https://github.com/user-attachments/assets/9dbcd7e9-b3e5-443c-a86f-efa386143390"> - Network accessline 155
python3 $SCRIPTS/add_articles.py \ --task \ --title "[文章标题](https://example.com)" \ - Network accessline 156
--task \ --title "[文章标题](https://example.com)" \ --list "SwiftUI" \ - Network accessline 157
--title "[文章标题](https://example.com)" \ - Network accessline 165
[利用 Skill 向滴答清单批量创建稍后读待办](https://mp.weixin.qq.com/s/xbvFmOwk0SwdWMw4BUczSg)
skills/article2ticktick/SKILL.md
- Network accessline 177
python3 "$SKILL_SCRIPTS/add_articles.py" \ --task \ --title "[文章标题](https://example.com/article)" \ - Network accessline 178
--task \ --title "[文章标题](https://example.com/article)" \ --list "SwiftUI" \ - Network accessline 179
--title "[文章标题](https://example.com/article)" \ - Network accessline 181
--tags "状态管理与观察" \ --desc "Claude 生成的推荐语句" \ --desc "出自:https://example.com/article" \ - Network accessline 182
--desc "Claude 生成的推荐语句" \ --desc "出自:https://example.com/article" \ --dry-run - Network accessline 183
--desc "出自:https://example.com/article" \ - Network accessline 187
python3 "$SKILL_SCRIPTS/add_articles.py" \ --task \ --title "[文章标题](https://example.com/article)" \ - Network accessline 188
--task \ --title "[文章标题](https://example.com/article)" \ --list "SwiftUI" \ - Network accessline 189
--title "[文章标题](https://example.com/article)" \ - Network accessline 191
--tags "状态管理与观察" \ --desc "Claude 生成的推荐语句" \ --desc "出自:https://example.com/article" - Network accessline 193
--desc "出自:https://example.com/article"
skills/article2ticktick/scripts/add_articles.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 20
用法(单篇模式): python3 add_articles.py --task \\ --title "[文章标题](https://example.com/article)" \\ - Network accessline 21
python3 add_articles.py --task \ --title "[文章标题](https://example.com/article)" \ - Network accessline 22
--title "[文章标题](https://example.com/article)" \\
skills/logging-session/README.md
skills/logging-session/SKILL.md
- Instruction override signalline 199
4. **Write one log entry** using the save script with all fields populated. 5. **Keep it brief** — this is a summary, not a transcript. One sentence each for thought_process and final_result is fine. 6. **Do NOT ask the user for confirmatio - Instruction override signalline 201
6. **Do NOT ask the user for confirmation** — just save and done. The session is ending.
skills/logging-session/scripts/config_loader.py
- Executable scriptline 1
Executable file
skills/logging-session/scripts/init_db.py
- Executable scriptline 1
Executable file
skills/logging-session/scripts/query_logs.py
- Executable scriptline 1
Executable file
skills/logging-session/scripts/save_log.py
- Executable scriptline 1
Executable file
skills/logging-session/scripts/time_utils.py
- Executable scriptline 1
Executable file
skills/logging-session/scripts/weekly_summary.py
- Executable scriptline 1
Executable file - Network accessline 203
parser.add_argument("--start-date", default=None, help="Start date YYYYMMDD (inclusive)") parser.add_argument("--end-date", default=None, help="End date YYYYMMDD (inclusive)") parser.add_argument("--limit", type=int, default=200, he - Network accessline 204
parser.add_argument("--end-date", default=None, help="End date YYYYMMDD (inclusive)") parser.add_argument("--limit", type=int, default=200, help="Max rows to fetch (default: 200)") parser.add_argument("--format", choices=["markdown" - Network accessline 205
parser.add_argument("--limit", type=int, default=200, help="Max rows to fetch (default: 200)")
skills/mp-article-writor/README.md
- Network accessline 38
npx skills add https://github.com/op7418/guizang-social-card-skill --skill guizang-social-card-skill - Network accessline 39
npx skills add https://github.com/op7418/guizang-material-illustration --skill guizang-material-illustration - Network accessline 79
- Node.js 18 or newer. - A running PicGo Server. The default address is `http://127.0.0.1:36677`. - Network accessline 80
- A running PicGo Server. The default address is `http://127.0.0.1:36677`. - Network accessline 86
MP_ARTICLE_IMAGE_MODE=picgo PICGO_SERVER_URL=http://127.0.0.1:36677 - Network accessline 87
PICGO_SERVER_URL=http://127.0.0.1:36677 - Network accessline 95
node scripts/upload-images-to-picgo.mjs \ --article-title "My article" \ --endpoint "http://127.0.0.1:36677/upload" \ - Network accessline 96
--article-title "My article" \ --endpoint "http://127.0.0.1:36677/upload" \ --file "cover=/absolute/path/to/cover.png" \ - Network accessline 97
--endpoint "http://127.0.0.1:36677/upload" \ - Network accessline 158
[AI + Skill,能够让生成的文章去除 AI 味吗?](https://mp.weixin.qq.com/s/ayye6aaSlxAwf7gFjPHsRQ) - Network accessline 197
npx skills add https://github.com/op7418/guizang-social-card-skill --skill guizang-social-card-skill - Network accessline 198
npx skills add https://github.com/op7418/guizang-material-illustration --skill guizang-material-illustration - Network accessline 238
- Node.js 18 或更高版本。 - PicGo Server 正在运行,默认地址为 `http://127.0.0.1:36677`。 - Network accessline 239
- PicGo Server 正在运行,默认地址为 `http://127.0.0.1:36677`。 - Network accessline 245
MP_ARTICLE_IMAGE_MODE=picgo PICGO_SERVER_URL=http://127.0.0.1:36677 - Network accessline 246
PICGO_SERVER_URL=http://127.0.0.1:36677 - Network accessline 254
node scripts/upload-images-to-picgo.mjs \ --article-title "文章标题" \ --endpoint "http://127.0.0.1:36677/upload" \ - Network accessline 255
--article-title "文章标题" \ --endpoint "http://127.0.0.1:36677/upload" \ --file "封面=/绝对路径/cover.png" \ - Network accessline 256
--endpoint "http://127.0.0.1:36677/upload" \ - Network accessline 317
[AI + Skill,能够让生成的文章去除 AI 味吗?](https://mp.weixin.qq.com/s/ayye6aaSlxAwf7gFjPHsRQ)
skills/mp-article-writor/SKILL.md
- Network accessline 146
- `local`:保留全部本地成品,正文使用相对于文章文件的标准 Markdown 路径,例如 ``。在 `SOURCES.md` 记录本地路径,并把交付状态写为「需要在公众号编辑器中手动上传图片」。本地模式属于完整交付,不标记为工作流失败。 - `picgo`:运行 `scripts/upload-images-to-picgo.mjs`,将一张组合封面和全部最终 - Network accessline 147
- `picgo`:运行 `scripts/upload-images-to-picgo.mjs`,将一张组合封面和全部最终正文图片批量上传到本机 PicGo Server。脚本保留本地可编辑源文件,只创建临时上传副本,并以「文章标题、素材角色、时间戳」生成唯一图床文件名。用 PicGo 返回的 HTTPS 地址更新文章,front matter 的 `cover` 指向组合封面,正文使用 ``。同时在 `SOURCES.md` 记录本 - Network accessline 149
PicGo 上传前执行 `POST /heartbeat`,旧版本返回 `404` 或 `405` 时继续尝试 `/upload`。上传后逐个验证远程地址返回 `2xx` 且内容类型为图片。不得读取、输出或写入腾讯云、GitHub、阿里云等图床凭据;上传配置完全交给作者已经配置的 PicGo。PicGo Server 默认地址为 `http://127.0.0.1:36677`,可用 `--endpoint` 或 `PICGO_SERVER_URL` 覆盖,基础地址和完整 `
skills/mp-article-writor/references/去模板化审读.md
- Network accessline 87
本参考吸收了 [Humanizer-zh](https://github.com/op7418/Humanizer-zh) 中「保留原意优先、模式不是禁词表、按文体判断」等通用编辑原则,并针对本 Skill 的文章类型路由、事实核查和公开中性基线重新组织。Humanizer-zh 使用 MIT License;本文件没有引入其完整检查目录,也不把它设置为运行依赖。
skills/mp-article-writor/references/视觉路由.md
- Network accessline 22
npx skills add https://github.com/op7418/guizang-social-card-skill --skill guizang-social-card-skill - Network accessline 23
npx skills add https://github.com/op7418/guizang-material-illustration --skill guizang-material-illustration - Network accessline 163
[Credential-related source omitted] - Network accessline 170
- heartbeat 返回 `404` 或 `405` 时按旧版本处理,继续尝试上传接口。 - 把组合封面地址写入 front matter 的 `cover`。 - 正文图片使用 ``,避免本地图片随复制丢失。 - Network accessline 171
- 把组合封面地址写入 front matter 的 `cover`。 - 正文图片使用 ``,避免本地图片随复制丢失。 - 在 `SOURCES.md` 记录每个本地文件与远程地址的映射。 - Network accessline 172
- 正文图片使用 ``,避免本地图片随复制丢失。
skills/mp-article-writor/scripts/upload-images-to-picgo.mjs
- Executable scriptline 1
#!/usr/bin/env node - Network accessline 7
const DEFAULT_SERVER_URL = 'http://127.0.0.1:36677'; - Network accessline 86
const timer = setTimeout(() => controller.abort(), timeoutMs); try { return await fetch(url, { ...options, signal: controller.signal }); - Network accessline 87
try { return await fetch(url, { ...options, signal: controller.signal }); } catch (error) { - Network accessline 88
return await fetch(url, { ...options, signal: controller.signal }); - Access to secretsline 160
[Credential-related source omitted]
skills/mp-article-writor/scripts/upload-images-to-picgo.test.mjs
- Executable scriptline 1
Executable file - Network accessline 40
server.listen(0, '127.0.0.1', () => { const { port } = server.address(); resolve({ server, baseUrl: `http://127.0.0.1:${port}` }); - Network accessline 41
const { port } = server.address(); resolve({ server, baseUrl: `http://127.0.0.1:${port}` }); }); - Network accessline 42
resolve({ server, baseUrl: `http://127.0.0.1:${port}` }); - Network accessline 55
const result = await runCli([ '--article-title', '测试文章', '--endpoint', 'http://127.0.0.1:1', - Network accessline 56
'--article-title', '测试文章', '--endpoint', 'http://127.0.0.1:1', '--file', `封面=${image.file}`, - Network accessline 57
'--endpoint', 'http://127.0.0.1:1', - Network accessline 61
assert.equal(result.code, 0, result.stderr); const output = JSON.parse(result.stdout); assert.equal(output.endpoint, 'http://127.0.0.1:1/upload'); - Network accessline 62
const output = JSON.parse(result.stdout); assert.equal(output.endpoint, 'http://127.0.0.1:1/upload'); assert.equal(output.heartbeat, 'http://127.0.0.1:1/heartbeat'); - Network accessline 63
assert.equal(output.endpoint, 'http://127.0.0.1:1/upload'); - Network accessline 64
assert.equal(output.heartbeat, 'http://127.0.0.1:1/heartbeat'); - Network accessline 73
const requests = []; const { server, baseUrl } = await startServer((request, response) => { requests.push({ url: request.url, auth: request.headers.authorization }); - Network accessline 74
const { server, baseUrl } = await startServer((request, response) => { requests.push({ url: request.url, auth: request.headers.authorization }); response.setHeader('Content-Type', 'application/json'); - Network accessline 75
requests.push({ url: request.url, auth: request.headers.authorization }); - Network accessline 76
response.setHeader('Content-Type', 'application/json'); if (request.url === '/heartbeat') response.end(JSON.stringify({ success: true, result: 'alive' })); else response.end(JSON.stringify({ success: true, result: ['https://img.exam - Network accessline 77
if (request.url === '/heartbeat') response.end(JSON.stringify({ success: true, result: 'alive' })); else response.end(JSON.stringify({ success: true, result: ['https://img.example.com/cover.png'] })); }); - Network accessline 78
else response.end(JSON.stringify({ success: true, result: ['https://img.example.com/cover.png'] })); - Network accessline 85
[Credential-related source omitted] - Network accessline 86
assert.equal(result.code, 0, result.stderr); assert.deepEqual(requests.map((item) => item.url), ['/heartbeat', '/upload']); assert.ok(requests.every((item) => item.auth === 'Bearer token')); - Network accessline 87
assert.deepEqual(requests.map((item) => item.url), ['/heartbeat', '/upload']); - Network accessline 88
assert.ok(requests.every((item) => item.auth === 'Bearer token')); - Network accessline 89
assert.equal(JSON.parse(result.stdout).uploads[0].url, 'https://img.example.com/cover.png'); - Network accessline 101
response.setHeader('Content-Type', 'application/json'); if (request.url === '/heartbeat') response.end(JSON.stringify({ success: true, result: 'alive' })); else response.end(JSON.stringify({ success: true, result: ['https://img.exam - Network accessline 102
if (request.url === '/heartbeat') response.end(JSON.stringify({ success: true, result: 'alive' })); else response.end(JSON.stringify({ success: true, result: ['https://img.example.com/cover.png'] })); }); - Network accessline 103
else response.end(JSON.stringify({ success: true, result: ['https://img.example.com/cover.png'] })); - Network accessline 126
} response.setHeader('Content-Type', 'application/json'); response.end(JSON.stringify({ success: true, result: ['https://img.example.com/cover.png'] })); - Network accessline 127
response.setHeader('Content-Type', 'application/json'); response.end(JSON.stringify({ success: true, result: ['https://img.example.com/cover.png'] })); }); - Network accessline 128
response.end(JSON.stringify({ success: true, result: ['https://img.example.com/cover.png'] })); - Network accessline 217
response.setHeader('Content-Type', 'application/json'); if (request.url === '/heartbeat') response.end(JSON.stringify({ success: true, result: 'alive' })); else response.end(JSON.stringify({ success: true, result: ['http://img.e - Network accessline 218
if (request.url === '/heartbeat') response.end(JSON.stringify({ success: true, result: 'alive' })); else response.end(JSON.stringify({ success: true, result: ['http://img.example.com/cover.png'] })); }); - Network accessline 219
else response.end(JSON.stringify({ success: true, result: ['http://img.example.com/cover.png'] }));
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.
Signal confidence: 109 facts
- Network access in prose of documentationarticle2ticktick/README.md:9Low confidence
- Network access in prose of documentationarticle2ticktick/README.md:11Low confidence
- Network access in prose of documentationarticle2ticktick/README.md:12Low confidence
- Network access in code of documentationarticle2ticktick/README.md:73Low confidence
- Network access in code of documentationarticle2ticktick/README.md:74Low confidence
- Network access in code of documentationarticle2ticktick/README.md:75Low confidence
- Network access in prose of documentationarticle2ticktick/README.md:83Low confidence
- Network access in prose of documentationarticle2ticktick/README.md:93Low confidence
- Network access in prose of documentationarticle2ticktick/README.md:95Low confidence
- Network access in prose of documentationarticle2ticktick/README.md:96Low confidence
- Network access in code of documentationarticle2ticktick/README.md:155Low confidence
- Network access in code of documentationarticle2ticktick/README.md:156Low confidence
- Network access in code of documentationarticle2ticktick/README.md:157Low confidence
- Network access in prose of documentationarticle2ticktick/README.md:165Low confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:177High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:178High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:179High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:181High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:182High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:183High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:187High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:188High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:189High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:191High confidence
- Network access in code of the SKILL.mdarticle2ticktick/SKILL.md:193High confidence
- Executable script in code of a file that runsarticle2ticktick/scripts/add_articles.py:1High confidence
- Network access in prose of a file that runsarticle2ticktick/scripts/add_articles.py:20Low confidence
- Network access in prose of a file that runsarticle2ticktick/scripts/add_articles.py:21Low confidence
- Network access in prose of a file that runsarticle2ticktick/scripts/add_articles.py:22Low confidence
- Network access in prose of documentationlogging-session/README.md:156Low confidence
- Network access in prose of documentationlogging-session/README.md:289Low confidence
- Instruction override signal in prose of the SKILL.mdlogging-session/SKILL.md:199High confidence
- Instruction override signal in prose of the SKILL.mdlogging-session/SKILL.md:201High confidence
- Executable script in prose of a file that runslogging-session/scripts/config_loader.py:1Low confidence
- Executable script in prose of a file that runslogging-session/scripts/init_db.py:1Low confidence
- Executable script in prose of a file that runslogging-session/scripts/query_logs.py:1Low confidence
- Executable script in prose of a file that runslogging-session/scripts/save_log.py:1Low confidence
- Executable script in prose of a file that runslogging-session/scripts/time_utils.py:1Low confidence
- Executable script in prose of a file that runslogging-session/scripts/weekly_summary.py:1Low confidence
- Network access in code of a file that runslogging-session/scripts/weekly_summary.py:203High confidence
- Network access in code of a file that runslogging-session/scripts/weekly_summary.py:204High confidence
- Network access in code of a file that runslogging-session/scripts/weekly_summary.py:205High confidence
- Network access in code of documentationmp-article-writor/README.md:38Low confidence
- Network access in code of documentationmp-article-writor/README.md:39Low confidence
- Network access in prose of documentationmp-article-writor/README.md:79Low confidence
- Network access in prose of documentationmp-article-writor/README.md:80Low confidence
- Network access in code of documentationmp-article-writor/README.md:86Low confidence
- Network access in code of documentationmp-article-writor/README.md:87Low confidence
- Network access in code of documentationmp-article-writor/README.md:95Low confidence
- Network access in code of documentationmp-article-writor/README.md:96Low confidence
and 59 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Native | Manifest .claude-plugin/marketplace.json | .claude/skills/<skill-name>/ |
| Codex | Compatible | Standard SKILL.md skills/Ardot-skills-nonofficial/ardot-create-new-file/SKILL.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md skills/Ardot-skills-nonofficial/ardot-create-new-file/SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md skills/Ardot-skills-nonofficial/ardot-create-new-file/SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md skills/Ardot-skills-nonofficial/ardot-create-new-file/SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md skills/Ardot-skills-nonofficial/ardot-create-new-file/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.