How the directory works
Every other AI directory is abandonware — maintainers stopped merging PRs months ago. We took a different approach. Paste our badge on your site, open a PR, our bot verifies in seconds and merges itself.
1. Paste this badge somewhere on your site
Anywhere visible to crawlers: footer, sidebar, or an /about page. Must be static HTML (no JS-rendered DOM — our verifier doesn’t run JavaScript), dofollow (no rel="nofollow" or rel="sponsored"), and on a domain you control.
<a href="https://www.promptfrenzy.com/directory" rel="noopener"
target="_blank" title="Featured on PromptFrenzy AI Directory">
<img src="https://www.promptfrenzy.com/badges/directory.svg"
alt="Featured on PromptFrenzy AI Directory"
width="220" height="44" loading="lazy" />
</a><a href="https://www.promptfrenzy.com/directory" rel="noopener"
target="_blank" title="Featured on PromptFrenzy AI Directory">
<img src="https://www.promptfrenzy.com/badges/directory-mono-dark.svg"
alt="Featured on PromptFrenzy AI Directory"
width="220" height="44" loading="lazy" />
</a><a href="https://www.promptfrenzy.com/directory" rel="noopener"
target="_blank" title="Featured on PromptFrenzy AI Directory">
<img src="https://www.promptfrenzy.com/badges/directory-mono-light.svg"
alt="Featured on PromptFrenzy AI Directory"
width="220" height="44" loading="lazy" />
</a>All three: 220×44 SVG, <1KB, system fonts, no tracking pixels. Same href, same anchor — the bot accepts any of them.
2. Open a PR with your tool’s YAML
Add a YAML file under tools/your-tool-slug.yaml in the directory repo. Use tools/_example.yaml as a template.
name: Your Tool Name url: https://yourtool.com description: One sentence (max 200 chars), factual, no superlatives. category: image-generation tags: [photo-editing, portrait] pricing: freemium badge_url: https://yourtool.com # the page where you pasted the badge
3. Our bot does the rest
- Fetches your
badge_urland looks for the badge anchor - Comments on the PR with pass or fail — typically under 60 seconds
- Auto-merges if it passes
- Opens a tracking issue to follow your listing
If verification fails, the comment explains exactly what we couldn’t find. Fix and push — the verifier re-runs on the new commit.
Can’t fork? Use the one-call API or the form
Most fine-grained GitHub PATs — including the ones AI agents are typically issued — can’t fork to a third account. Forking is a CREATE in the agent’s own namespace; scoped read PATs don’t carry that permission. It’s the most common reason a “submit on your behalf” agent gets stuck mid-flow.
Two alt paths that don’t require a fork:
JSON payload + badge_url. The server uses the directory bot’s own write access to create the branch, commit the YAML, and open the PR. Returns 201 with pr_url + pr_number. Same badge verification gates it; bad payloads return 400 with field-level details so the agent can iterate. Full endpoint spec.
For humans without a GitHub account. Same code path; same badge verification. Open the form →
The badge requirement is the spam filter, not the GitHub auth layer. Removing the fork requirement doesn’t change which submissions get listed — it just stops blocking agents (and humans) who can’t fork.
Re-checks and removal
| When | What we check |
|---|---|
| On your PR | Initial badge present, dofollow, on the URL you declared |
| Daily for first 7 days post-merge | Catches paste-then-yank gaming |
| Weekly thereafter | Ongoing health check |
After 3 consecutive failed checks your listing moves to failed state — still visible, but flagged. After 30 days in failed state without resolution your listing moves to /directory/removed — public, permanent.
To reinstate: re-add the badge and comment /reverify on your tracking issue. The bot picks it up within an hour.
What we don’t do
- No paid placements. The badge is the only currency.
- No editorial scoring. Our bot doesn’t have opinions about your tool.
- No reviews or comments. Visit the tool, judge for yourself.
- No tracking pixels in the badge. Plain SVG, one anchor.