Tools: what fills each role without a person

Every role a freelancer fills can also be filled by a tool. This is the list, with what each one costs per asset and whether its output can be checked by a machine.

toolkindfillsstepinterfacedeterministicunit coststatusnotes
Ayrshareapioutreachpublishhttpyes$149archiveone API for X/TikTok/YouTube/Instagram/Reddit/Bluesky — the multi-rail outbox in one call, but $149/mo is 15% of the budget before revenue
HOPEestate-repoclipperpublishcliyesto measurearchiveharvest once, publish everywhere — the multi-rail publish step, to revive
Postizlibraryoutreachpublishhttpyes$0archiveschedules to X, YouTube, TikTok, Instagram, Threads, Bluesky…; still needs our own X app keys; heavy to host
crx-corpusestate-reporesearcher-verifierscancliyes$0archiveChrome Web Store scraper/index — the data product for the extensions niche (copy, do not rebuild)
omni-extensionestate-repooutreach, community-modpublishextensionnoto measurearchiveuniversal browser automation: Chrome extension + CF Worker orchestrator + local daemon — the base for our own extensions
agentkeyapiresearcher-verifierscanapiyesto measurecandidatelive data for agents: web, X, Reddit, YouTube, finance, e-commerce; price unmeasured
aisaapirunapinoto measurecandidateone key for models + data + skills with per-call billing and budget caps — the budget cap is the interesting part for an unattended tick; price unmeasured
anthropics/skillsossdistributerepoyes$0candidate176,141 stars — the venue for the credential (decision 11): the number gate as a skill, listed in awesome-claude-skills (74,970)
browser-useossscanpythonno$0candidate114,523 stars — agents that use the browser; vs our cdp.mjs / chrome-js.mjs (deterministic, no model). Python: say why before adopting
claude-memossmemorypluginno$0candidate93,810 stars — persistent context across sessions; overlaps our memory dir + records-as-text; trial against, do not add on top
crawl4aiossresearcher-verifierscanpythonyes$0candidate83,256 stars · 8,596 forks · Apache-2.0 · created 2024-05-09, pushed 2026-09-09. URL in, clean LLM-ready Markdown out; no key, no signup, no per-page pricing. Rail 2 for sources with no clean payload — the free answer to firecrawl (180,004). Python: adopt only where our .mjs scanners cannot read the page.
firecrawlossscanapiyes$0candidate180,004 stars — search/scrape/context API; our scanners are cheaper and deterministic; candidate only for sources without a clean payload
langfuseossobserveself-hostedyes$0candidate34,552 stars — traces, evals, cost per run. Today: loop-log.md + hermes cron runs + post.cost_usd by hand
orcaossorchestrateappno$0candidate67,847 stars, Mar 2026 — an ADE for a fleet of parallel agents; the owner asked for agents aware of each other (Claude Code + Antigravity + Hermes)
promptfooossgatecliyes$0candidate25,069 stars — test prompts and agents; would turn the number gate into a regression suite over past pieces
rtkossdeskcli-proxyyes$0candidate80,200 stars, Jan 2026 — proxy cutting LLM tokens 60–90% on dev commands; for the interactive sessions, not the tick
tikhubapiresearcher-verifierscanapiyesto measurecandidatepublic social data API: TikTok, Douyin, Xiaohongshu, Instagram, X, YouTube, Bilibili, Weibo, Kuaishou, Reddit, LinkedIn — recent posts per account, batch public comments, creator lists. Rail 2 (paid API) for platforms we have no scanner for; price unmeasured
uumitmarketplacedistributewebnoto measurecandidateA2A marketplace: register agents, APIs, data and skills as capability cards that other agents find, call and pay for — where the Skool parser or the index could be LISTED (archetype 33)
Google Flow / Veosubscriptionfaceless-videorenderextensionnoto measurepausedestate repo: Chrome extension + server for programmatic Flow control — catalog scan, media harvest, tab routing (plate-harvester agent exists)
Remotionlibraryfaceless-video, video-editorrendercliyes$0pausedestate repo: Layer-3 Remotion compositor driven by a schema — the deterministic render for evergreen assets (script + plates → mp4); gate = transcript diff
UGC-generatorestate-repoface-presenterrenderclinoto measurepausedAI UGC pipeline for TikTok affiliate — the AI-avatar credibility tier
backlotestate-repofaceless-videoauthorcliyesto measurepausedvideo production as a document the system compiles — 35 films one format
clip-rankingsestate-repoclipperscorecliyes$0pausedclip ranking studio + competitor vault (irreplaceable local data)
replicatorestate-repoauthorclinoto measurepausedAI workflow studio; prior attempt at the same OS — mine for parts, do not resume
youtube-apiestate-reporesearcher-verifiercountcliyes$0pausedthe publish+count step's official read; replaces page scraping for our own channels
Typefullysubscriptionoutreachpublishhttpyes$12.5pending-ownerposting without our own X app: outbox → Typefully API → scheduled threads; they carry the X API cost
Whop Trends Pro + MCPsubscriptionresearcher-verifierscanmcpyes$29pending-ownershortcut for daily coverage of every category; our scanner is the free substitute
X API pay-per-useapioutreachpublishhttpyes$0.015pending-ownerthe sanctioned posting path; follow/unfollow/like writes are Enterprise-only since 2026-04-20 (not on pay-per-use) — the unfollow chore cannot go through the API
Apifyapiresearcher-verifierscanhttpyesto measureto-wireSubstack/Skool/Gumroad/YouTube scrapers as actors — the rails chrome-js does not reach at scale
ElevenLabssubscriptionvoicerenderhttpyesto measureto-wirereplaces the $68-avg voice gig; deterministic given voice_id + text; gate = transcribe back and diff (memory: transcribe-generated-audio-to-verify-it)
Google AI Studio / Geminisubscriptionresearcher-verifier, designerauthorhttpnoto measureto-wiretext + image generation; thumbnails via image model; non-deterministic → always behind a rubric gate
Browser MCPmcpoutreach, community-modpublishmcpno$0workingclicking/typing in Chrome; not deterministic (accessibility snapshot), so used only where a URL or count confirms the action
Claude Codesubscriptionresearcher-verifier, outreachauthorclinoto measureworkingthe author and the desk; subagents for collect/organize/rank; cost is the machine line in cash_ledger
cdp.mjscliresearcher-verifier, outreachscancliyes$0workinga SEPARATE Chrome per brand (own user-data-dir under ~/.cache/x-profiles), launched with open -g (never foreground), driven over DevTools Protocol; navigator.webdriver=false; measured 2026-09-13: reads x.com logged-out; a logged-in brand session needs one login by the owner in that window
chrome-js.mjscliresearcher-verifierscanbrowser-jsyes$0workingJS in the owner's logged-in Chrome via Apple Events; ~0.35 s per read; the read side of every scanner
hermes-agentossruncli+gatewayno$0working245,172 stars — runs our tick (operator-tick, operator-scan) and holds the gateway; #2 agent repo on GitHub, which is itself a credential
scan-fiverr.mjscliresearcher-verifier, outreachscancliyes$0working806 suppliers across 13 roles in one pass
scan-whop.mjscliresearcher-verifierscancliyes$0working150 categories · 3,504 products · enrichment from whop.com landing pages
simulate.mjscliscorecliyes$0working120 months per concept from rate rows
twitterapi.ioapiresearcher-verifierscanhttpyes$0.00018workingthe read instrument for the 10,000-profile sample and follow graphs: ~$2 for 10k profiles, no session, no browser, no foreground · key saved 2026-09-13 as TWITTERAPI_IO_KEY in fbi-vault/.env; calibrated on @whotfiszackk: API 5,791/9/1,155 = browser read
vidmaticestate-repofaceless-video, video-editorrendercliyesto measureworkingvideo replication monorepo (active); replicate-beat skill; corpus + reference side-by-side

"Deterministic" means the same input gives the same output and a gate can check it; anything else sits behind a rubric.