A small maker-tools directory with the fairest badge deal around: free listing, no floors, dofollow the moment you host their badge.

A full walkthrough of this form for your AI agent: every field, limit and trap. The placeholders come from your submission pack (template with a live example).
You are an AI agent with browser automation (Chrome connector, Playwright, browser-use or similar). Submit my product to Neeed Directory's free tier end to end, and get the link upgraded to dofollow. My submission pack is pasted at the bottom; it is the single source of truth for every answer. Do not invent copy.
My product: {NAME} ({URL})
BEFORE YOU START
1. Submitting requires an account. Their sign-in offers Google OAuth, email + password, AND a passwordless 'Email me a sign-in code' option: prefer the email code with my contact address so the account is not tied to a personal Google profile. You cannot create accounts or handle OAuth: hand the tab to me and wait for my confirmation. If I do sign in with a personal Google account, edit the profile name and avatar to my maker identity before anything is published.
2. Run window.confirm = () => true; window.alert = () => {} after every full page load.
3. Good news up front: listing is free, there is no domain-rating floor and no traffic floor. The only cost of dofollow is hosting their badge.
THE FORM (/submit, step 1 of 2)
4. Fields, all React-controlled (use the native value setter plus 'input' and 'change' events, never plain .value): Product Name; Product Punchline (they ask for UNDER 30 CHARACTERS, far tighter than a normal tagline, so compress hard, do not paste my full tagline); Product Website; Product Category (a single-choice combobox, not multi-select: open it and real-click one option).
5. Description is a TipTap/ProseMirror rich-text editor with a 1000-character cap and a stated target of about 70 words. Focus the editor, select all, then document.execCommand('insertHTML', false, html) with a compressed version of my pack's long description. Watch the live counter.
6. Media, both REQUIRED despite looking optional: a square logo (256x256, jpg/png, max 2MB) and a 16:9 cover image (1280x720, max 8MB). Fetch my pack assets in the page, canvas-crop the cover to 16:9, build Files and inject them via DataTransfer plus a 'change' event. The right-hand Compact Card and Full Card previews flip to 'Ready' when both land; treat that as the confirmation, not the input's files list.
7. WARNING: never click the visible upload areas or a Browse button. That opens a native OS file picker which no automation tool can dismiss, and it freezes the flow until a human cancels it. Inject files programmatically only.
8. Click 'Next: pick a launch plan'.
STEP 2 AND SUBMIT
9. Choose the $0 Free Listing card (the $9.99 Premium gives 4 dofollow links and skips the badge). Click Submit Product.
10. A modal appears: 'I'll add the badge - Submit' is the free path; 'Upgrade to Premium - No badge needed' is the paid one. Click the free one.
11. Success is explicit: you land on the live product page at neeed.directory/products/<slug>.
THE DOFOLLOW UPGRADE (do not skip)
12. The listing goes live with a NOFOLLOW link. On the product page, scroll to the badge section and copy the PERSONALISED badge snippet: it links to my own listing URL with a utm_source parameter, not to their homepage, so a generic badge will not pass.
13. Give me that snippet, wait until I confirm it is deployed on my site, then click 'Verify Badge'.
14. Confirm it worked by re-reading the 'Visit Site' link's rel attribute: it should drop 'nofollow' and keep only 'noopener'. The page also shows 'Badge Verified on <date>'.
15. Note the product page is client-rendered: right after a reload the badge section and its buttons may be missing for several seconds. Wait for full hydration before deciding a control is absent.
16. Report back: the listing URL, that the link is now dofollow, and that removing the badge would revert it.
MY PACK:
{PACK}