返回顶部
a

add-directories添加目录

Use when adding new AI/startup directories to directories.json from a URL, pasted text, or GitHub awesome-list. Parses, deduplicates, appends new entries, then runs classify pipeline (analyze, cleanup, browser verify). Does NOT cover submission — use submit-directories skill for that.

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 0.1.0
安全检测
已通过
227
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

add-directories

添加目录

工作流程

  1. 1. 解析输入(URL或粘贴文本)为目录列表
  2. 去重与directories.json中已有条目比对
  3. 追加包含必填字段的新条目
  4. 分类通过运行分析和验证流水线
  5. 发现表单用于提交目标
  6. 提交通过自动化或手动浏览器交互

步骤1:解析输入

从URL

获取页面并提取目录条目。查找以下模式:

  • - 列表、表格或卡片中的名称+URL对
  • 结构化数据(JSON-LD、Markdown表格、CSV)
  • 包含链接的重复DOM模式

从GitHub主题/仓库

使用gh命令行工具探索精选列表:

  • - gh repo clone <所有者>/<仓库>克隆awesome列表
  • 解析README.md中的目录链接(Markdown链接格式)
  • 检查包含目录条目的JSON/YAML数据文件
  • 也可以创建PR将你的产品添加到这些列表中

从粘贴文本

解析行/行。常见格式:

  • - 名称 - https://url.com 或 名称 | https://url.com
  • Markdown链接:名称
  • 包含名称和URL列的Markdown表格
  • 纯URL(每行一个)——从域名派生名称
  • 带标题的CSV/TSV

至少提取:名称URL(提交页或首页)。

步骤2:去重

加载directories.json并通过以下方式检查每个解析条目与现有条目:

  • - 精确URL匹配(规范化:去除尾部斜杠,域名小写)
  • 域名匹配(相同域名=可能重复)
  • 名称匹配(不区分大小写)

向用户报告重复项并跳过它们。

步骤3:追加新条目

为每个新目录创建一个具有以下结构的条目:

json
{
categories: [通用],
description: ,
is_active: true,
name: 目录名称,
pricing_type: free,
slug: directory-name,
submission_url: https://example.com/submit,
url: https://example.com/submit
}

字段规则:

  • - slug:小写名称,空格转连字符,去除特殊字符
  • submissionurl和url:使用提交/注册URL(如有),否则使用首页
  • description:留空字符串(稍后由用户或自动填充)
  • categories:默认[通用],除非上下文提供分类
  • pricingtype:默认free,除非明确标记为付费
  • is_active:新条目始终为true

保存更新后的directories.json。

步骤4:分类

使用项目虚拟环境.venv/按顺序运行流水线脚本:

bash

1. HTTP级别分析(认证、验证码、定价信号、失效域名)


.venv/bin/python analyze_directories.py

2. 清理明显失败项 + 构建浏览器检查列表

.venv/bin/python cleanupandcategorize.py

3. 使用Playwright进行浏览器验证(10个并发工作线程)

.venv/bin/python browser_verify.py

4. 深度重新检查剩余未知项

.venv/bin/python browser_verify.py --recheck-unknown

每个脚本读取/写入directories.json。步骤3-4使用browserchecklist.json作为中间状态(由步骤2生成)。

完成后,报告摘要:添加了多少条目,以及新条目的认证/状态细分。

步骤5:发现表单

对于活跃且authtype = none或authtype = email_password的目录:

bash

在提交页面上发现表单字段


.venv/bin/python discover_forms.py

这将使用Playwright访问每个提交URL,通过DOM查询提取表单字段,并使用发现的字段和表单路径更新submission_plan.json。

步骤6:提交

自动提交

在submitdirectories.py中配置PRODUCT字典,填写你的详细信息(搜索YOUR占位符),然后:

bash

自动提交到所有已发现的目录


.venv/bin/python submit_directories.py

该脚本使用启发式字段映射(将字段名称/标签与产品数据匹配)并处理Logo/截图的文件上传。

手动浏览器提交(通过Playwright MCP)

对于需要手动交互的目录(验证码、OAuth、复杂表单),使用Playwright浏览器工具:

  1. 1. 导航到提交URL
  2. 拍摄快照以了解页面结构
  3. 使用browserfillform或browsertype填写表单字段
  4. 通过切换标签页处理OAuth流程(当Google登录弹窗打开时)
  5. 通过browserfile_upload上传文件
  6. 点击提交并验证确认信息

GitHub PR提交

一些目录通过GitHub PR接受提交到awesome列表:

  1. 1. Fork仓库:gh repo fork <所有者>/<仓库>
  2. 克隆并创建分支
  3. 按照仓库格式添加你的产品条目
  4. 推送并创建PR:gh pr create

备注

流水线脚本

  • - analyzedirectories.py使用ThreadPoolExecutor配合纯HTTP——快速初筛
  • cleanupandcategorize.py分类错误(失效域名、无效URL、Facebook群组)并构建browserchecklist.json
  • browserverify.py使用异步Playwright,10个并发标签页;--recheck-unknown仅对活跃未知项进行深度DOM遍历
  • discoverforms.py使用异步Playwright,10个并发标签页;提取表单字段名称、类型、标签和路径
  • submitdirectories.py使用异步Playwright,5个并发标签页;启发式字段映射,支持文件上传
  • 所有脚本都是幂等的——可安全重新运行

常见提交障碍

在评估或提交到目录时,注意以下问题:

障碍频率如何检测
需要付费列表~20%查找定价页面、Stripe/PayPal链接、提交页上的$符号
reCAPTCHA / Turnstile
~10% | iframe[src*=recaptcha]或[data-turnstile]元素 |
| 损坏的验证码 | ~2% | 无效站点密钥错误、禁用的提交按钮 |
| 需要登录/账户 | ~15% | 提交URL重定向到/login或/register |
| 需要企业邮箱 | ~3% | 拒绝gmail/yahoo域名(例如SoftwareSuggest) |
| 需要互惠链接 | ~5% | 旧式网络目录要求在列表前添加反向链接 |
| 仅新闻通讯表单 | ~10% | 页面看起来像提交页,但实际上是邮箱注册 |
| 后端API损坏 | ~2% | 表单提交但返回GraphQL/API错误 |
| 域名停放/失效 | ~8% | 无内容、停放页面、DNS故障 |
| Cloudflare拦截 | ~3% | 验证页面、403错误 |

自动化技巧

  • - 简单HTML表单自动提交成功率最高
  • reCAPTCHA v3(不可见)有时可通过;v2(复选框)无法自动通过
  • Google表单可靠地可自动化
  • 富文本编辑器(TinyMCE、Quill)需要使用browserevaluate设置内容
  • Cloudinary/自定义上传组件经常破坏自动化——使用手动浏览器
  • 跨域OAuth弹窗:使用browsertabs操作切换标签页处理Google登录
  • 组合框/选择字段:在下拉菜单上使用browser_click,然后点击选项
  • 多步骤表单:每一步后拍摄快照以查看新字段

提交计划结构

submission_plan.json中的每个条目包含:

json
{
directory_name: 示例AI,
submission_url: https://example.com/submit,
status: discovered,
copy: {
title: 产品标题变体,
description: 此目录的产品描述变体。
},
discovered_fields: [...],
form_path: form#submit-form,
credentials: {
email: 你的邮箱,
name: 你的姓名,
username: 你的用户名,
password: 你的密码
}
}

状态值:discovered、submitted、skipped、skippedpaid、timeout、noformfound、nofieldsmatched、submittimeout、captcha、cloudflareblocked、domainparked、skippedloginrequired

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 add-directories-1776154382 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 add-directories-1776154382 技能

通过命令行安装

skillhub install add-directories-1776154382

下载

⬇ 下载 add-directories v0.1.0(免费)

文件大小: 4.42 KB | 发布时间: 2026-4-15 10:42

v0.1.0 最新 2026-4-15 10:42
Initial release of the add-directories skill for ingesting and classifying AI/startup directories.

- Supports input from URLs, pasted text, and GitHub awesome-lists.
- Parses, deduplicates, and appends new directory entries to directories.json.
- Runs multi-step pipeline for analysis, cleanup, and browser verification.
- Automatically discovers submission forms and updates submission_plan.json.
- Submission process handled separately via submit-directories skill.

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部