Agent skill

Threads Keyword Search

by browser-act in browser-act/skills

Searches Threads posts by keyword or hashtag and returns matching posts with engagement metrics, extracted from SSR-embedded JSON.

MITAuto-check passedData & Analytics

Install Threads Keyword Search

skills CLI
$ npx skills add browser-act/skills --skill threads-keyword-search -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install browser-act/skills threads-keyword-search --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/browser-act/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/solutions/social-listening/threads-keyword-search .claude/skills/threads-keyword-search && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
threads-keyword-search
GitHub stars
6.1k
Token cost
~1.7k tokens
SKILL.md length
615 words
Files
2 (incl. scripts)
Skills in repo
87
Repo updated
First seen
Licence
MIT

At a glance

Searches Threads posts by keyword or hashtag and returns matching posts with engagement metrics, extracted from SSR-embedded JSON.

  • Works in 3 steps: navigate… → wait stable → eval "$(python…
  • User asks to search Threads posts
  • SKILL.md covers Language, Objective, Prerequisites and Pre-execution Checks, plus 7 more sections
  • Runs Python scripts from its folder; calls python; reaches threads.com

What it does

Threads Keyword Search is an agent skill from browser-act/skills. Searches Threads posts by keyword or hashtag and returns matching posts with engagement metrics, extracted from SSR-embedded JSON. Use when user asks to search Threads posts, find Threads content by topic, scrape Threads search results, collect Threads posts about a keyword, monitor Threads hashtag activity, pull Threads posts mentioning a term, gather Threads content by hashtag, search for posts on Threads, extract Threads search feed, get trending posts on Threads, find Threads discussions about a subject, or…

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including scripts (for example `scripts/extract-search-results.py`).

It sits in Data & Analytics, covering Product metrics, Web scraping and Social media marketing. It works with Python. The repository describes itself as: Browser automation CLI built for AI agents. Break through anti-bot walls, hand off to humans across platforms when stuck. Parallel multi-task execution, independent multi-session… The licence is MIT.

When your agent uses it

  • User asks to search Threads posts
  • Find Threads content by topic
  • Scrape Threads search results
  • Collect Threads posts about a keyword

Example prompts

  • “Use the threads-keyword-search skill to search Threads posts by keyword or hashtag and returns matching posts with engagement metrics, extracted…”
  • “/threads-keyword-search”

Requirements

  • Python 3

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. navigate https://www.threads.com/search/?q={keyword}&serp_type={filter}
  2. wait stable
  3. eval "$(python scripts/extract-search-results.py '{keyword}' --filter {filter})"

What it can do on your machine

Read from SKILL.md and the folder at commit 11c057b. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • threads.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Threads Keyword Search loads about 1.7k tokens when it runs. Until then it costs about 146 tokens; SKILL.md has 615 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~146
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from browser-act/skills at commit 11c057b, republished under its MIT licence (© browser-act). 615 words, ~1,654 tokens.

Download SKILL.mdSave it as .claude/skills/threads-keyword-search/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
threads-keyword-search
description
Searches Threads posts by keyword or hashtag and returns matching posts with engagement metrics, extracted from SSR-embedded JSON. Use when user asks to search Threads posts, find Threads content by topic, scrape Threads search results, collect Threads posts about a keyword, monitor Threads hashtag activity, pull Threads posts mentioning a term, gather Threads content by hashtag, search for posts on Threads, extract Threads search feed, get trending posts on Threads, find Threads discussions about a subject, or fetch recent or top Threads posts by keyword.

keyword + sort filter → list of matching posts with engagement metrics

Language

All process output to user (progress updates, process notifications) follows the user's language.

Objective

Search Threads for posts matching a keyword or hashtag and extract the results from SSR-embedded JSON, with support for top/recent sort ordering.

Prerequisites

  • A browser is open and connected via browser-act
  • No login required for public search results (unauthenticated: typically 17-18 results per query, no pagination)

Pre-execution Checks

1. Tool Readiness

If browser-act has been confirmed available in the current session → skip this step.

Invoke browser-act via Skill tool to load usage. If installation or configuration issues arise, follow its guidance to resolve then retry.

Capability Components

This Skill's operational boundary = what the user can manually do in their browser. It only reads data already displayed to the user on the page. JS code is encapsulated in Python files under the scripts/ directory, invoked via eval "$(python scripts/xxx.py {params})". $(...) is bash syntax; it is recommended to use the bash tool for execution.

SSR: Extract keyword search results

Navigate to the search page with the keyword and sort filter, then extract all results embedded in the initial HTML:

  1. navigate https://www.threads.com/search/?q={keyword}&serp_type={filter}
    • {keyword}: URL-encoded search term or hashtag (e.g., AI or %23AI for #AI)
    • {filter}: top (default, most relevant) or recent (chronologically newest)
  2. wait stable
  3. eval "$(python scripts/extract-search-results.py '{keyword}' --filter {filter})"

Output example:

json
{
  "keyword": "AI",
  "filter": "top",
  "posts": [
    {
      "id": "3936653356768062022",          // post internal ID (pk)
      "code": "DZyvcdEl-W1",               // post short code for URL
      "url": "https://www.threads.com/@flower_popy/post/DZyvcdEl-W1",
      "text": "AI is changing everything...", // post text content, null if no caption
      "taken_at": 1781926571,              // Unix timestamp of post creation
      "like_count": 34,                    // number of likes
      "reply_count": 6,                    // number of direct replies
      "repost_count": 0,                   // number of reposts
      "quote_count": 0,                    // number of quote posts
      "is_reply": false,                   // true if this post is a reply
      "media_type": 19,                    // 1=photo, 2=video, 8=carousel, 19=text-only
      "has_media": false,                  // true if post contains image/video/carousel
      "user": {
        "pk": "14803522782",
        "username": "flower_popy",
        "full_name": "Flower",
        "is_verified": false
      }
    }
  ],
  "count": 17,
  "page_info": {
    "end_cursor": null,
    "has_next_page": false,
    "has_previous_page": false,
    "start_cursor": null
  }
}

Error handling: If error: true is returned, check that the search page loaded correctly by verifying the URL contains the query parameter. If searchResults not found, the page may have failed to render SSR data — retry navigate and wait stable once. If count: 0, no posts matched the keyword.

Hashtag search uses the same URL pattern. Prefix keyword with #:

  1. navigate https://www.threads.com/search/?q=%23{hashtag}&serp_type={filter}
    • Example: %23AI for #AI
  2. wait stable
  3. eval "$(python scripts/extract-search-results.py '#AI' --filter top)"

The # prefix in the keyword argument is for labeling only; the URL encoding %23 is what Threads uses to identify hashtag searches.

Enum Parameters

[DOM] filter — values: top (most relevant/popular posts), recent (newest posts first). Set via --filter argument and serp_type URL parameter.

Show full SKILL.md (261 more words)Show less

Pagination

Pagination is not available for unauthenticated access on the search endpoint (has_next_page: false is returned regardless of result volume). Results are limited to approximately 17-18 posts per query without login. For broader coverage, run multiple searches with related keywords.

Success Criteria

result.count >= 1 and result.posts[0].id != null and result.posts[0].user.username != null

Known Limitations

  • Unauthenticated access: no pagination; approximately 17-18 results per keyword
  • Date filtering is not supported as a URL parameter; filter by taken_at (Unix timestamp) client-side after extraction
  • Private account posts may appear in search results but their full content may be restricted
  • Search index may not include very new posts (lag of minutes to hours)

Execution Efficiency

  • Batch orchestration: Write a bash script to loop keywords serially within a single session. Add 1-2 second intervals between searches. For higher throughput, distribute keywords across multiple parallel browser sessions.
  • Test before batch execution: Test with 1-2 keywords first before running full batch.
  • Reduce redundant pre-operations: Each keyword requires a fresh navigate to the search URL — the search parameters are baked into the URL.
  • Error resumption: Save results per keyword; on failure, resume from the breakpoint.

Experience Notes

Path: {working-directory}/browser-act-skill-forge-memories/threads-scraper-threads-keyword-search.memory.md

Before execution: If the file exists, read it first — it records unexpected situations encountered during past executions; adjust strategy order accordingly.

After execution: If an unexpected situation is encountered (strategy became ineffective, page redesigned, anti-scraping upgraded, better path discovered), append a line: {YYYY-MM-DD}: {what happened} → {conclusion}

Normal execution does not write to the file. Do not record what keywords were used or how many results were returned — those are task outputs, not experience.

© browser-act, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (scripts) in solutions/social-listening/threads-keyword-search of browser-act/skills.

  • SKILL.md
  • scripts/extract-search-results.py

Open the folder on GitHubat commit 11c057b

Compare with similar skills

Threads Keyword Search next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Threads Keyword Search compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Threads Keyword Search this skillbrowser-act/skills6.1k—~1.7kAutomated safety check: PassMIT
Apify Content Analyticssickn33/agentic-awesome-skills47k2 repos~1.2kAutomated safety check: NotesMIT
Crawl4AI Web Scrapingsmallnest/goclaw5991 repos~2.5kAutomated safety check: PassMIT
Boss Zhipin Scrapereatmoreduck/boss-zhipin-scraper1.5k—~2.6kAutomated safety check: PassMIT
Axyusukebe/ax7191 repos~918Automated safety check: PassMIT
Google Maps ScraperMahanaicoach/google-maps-scraper-kit1.3k—~2.8kAutomated safety check: PassMIT

Similar skills

  • Apify Content Analytics

    sickn33/agentic-awesome-skills

    Track engagement metrics, measure campaign ROI, and analyze content performance across Instagram, Facebook, YouTube, and TikTok.

    47k GitHub starsUsed in 2 repos~1.2k tokens
    Data & AnalyticsAuto-check: notes
  • Crawl4AI Web Scraping

    smallnest/goclaw

    Scrapes sites, handles JavaScript-heavy pages and extracts structured data with Crawl4AI, through its crwl CLI or Python SDK, including schema-based extraction without an LLM.

    599 GitHub starsUsed in 1 repo~2.5k tokens
    Data & AnalyticsAuto-check passed
  • Boss Zhipin Scraper

    eatmoreduck/boss-zhipin-scraper

    Scrape BOSS直聘 (job listing site) via Chrome CDP. An agent skill from eatmoreduck/boss-zhipin-scraper.

    1.5k GitHub stars~2.6k tokensUpdated 10 days ago
    Data & AnalyticsAuto-check passed
  • Ax

    yusukebe/ax

    Use the ax CLI instead of curl + throwaway parsing scripts whenever you fetch a URL, explore an unknown web page, or extract structured data from HTML.

    719 GitHub starsUsed in 1 repo~918 tokens
    Data & AnalyticsAuto-check passed
  • Google Maps Scraper

    Mahanaicoach/google-maps-scraper-kit

    Scrape Google Maps business listings (name, address, phone, website, rating, reviews, lat/lng, hours, emails) via the local gosom google-maps-scraper REST API.

    1.3k GitHub stars~2.8k tokensUpdated 4 days ago
    Data & AnalyticsAuto-check passed
  • Python Executor

    cortega26/chile-hub

    Execute Python code in a safe sandboxed environment via [inference.sh](https://inference.sh).

    113 GitHub starsUsed in 2 repos~1.5k tokens
    Data & AnalyticsAuto-check passed

More from browser-act/skills

All 87 skills in this repo
  • Amazon ASIN Lookup

    browser-act/skills

    Fetches structured Amazon product details such as title, price, ratings and availability for a given ASIN through BrowserAct's lookup API template.

    6.1k GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Amazon Best Sellers Finder

    browser-act/skills

    Extracts structured Amazon product data for a keyword and marketplace through the BrowserAct API, including titles, prices, ratings, reviews, sales volume and promotions.

    6.1k GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Amazon Buy Box Monitor

    browser-act/skills

    Pulls Amazon product details, competing seller prices and seller ratings for a given ASIN through the BrowserAct API, without browser automation.

    6.1k GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed
  • Analyzes a competitor's Amazon listing by ASIN with BrowserAct data extraction, then reports what it does well, where the market has gaps and opportunity points for your own listing.

    6.1k GitHub starsUsed in 1 repo~3.2k tokens
    Auto-check passed
  • Pulls structured Amazon search results (titles, ASINs, prices, ratings, specifications) for a keyword and brand through BrowserAct's Amazon Product API template.

    6.1k GitHub starsUsed in 1 repo~1.5k tokens
    Auto-check passed
  • Collects structured product data from Amazon search results for a keyword and optional brand, using a BrowserAct script, for market and competitor research.

    6.1k GitHub starsUsed in 1 repo~1.6k tokens
    Auto-check passed

Works with

Questions about Threads Keyword Search

What does Threads Keyword Search do?

Searches Threads posts by keyword or hashtag and returns matching posts with engagement metrics, extracted from SSR-embedded JSON. Threads Keyword Search is an agent skill from browser-act/skills. Searches Threads posts by keyword or hashtag and returns matching posts with engagement metrics, extracted from SSR-embedded JSON.

When should I use Threads Keyword Search?

Threads Keyword Search fits situations like: user asks to search Threads posts; find Threads content by topic; scrape Threads search results; collect Threads posts about a keyword.

How do I install Threads Keyword Search in Claude Code?

Run `npx skills add browser-act/skills --skill threads-keyword-search -a claude-code`. Or copy the skill folder (solutions/social-listening/threads-keyword-search in browser-act/skills) into .claude/skills/threads-keyword-search in your project. Claude Code loads it when a task matches its description.

How do I install Threads Keyword Search in Codex?

Run `npx skills add browser-act/skills --skill threads-keyword-search -a codex`. Or copy the skill folder (solutions/social-listening/threads-keyword-search in browser-act/skills) into .agents/skills/threads-keyword-search in your project. Codex loads it when a task matches its description.

Can I use Threads Keyword Search in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add browser-act/skills --skill threads-keyword-search -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/threads-keyword-search, .gemini/skills/threads-keyword-search, .github/skills/threads-keyword-search and .opencode/skills/threads-keyword-search in your project.

What does Threads Keyword Search need to run?

Going by SKILL.md and its folder, Threads Keyword Search needs Python for the scripts in its folder and the command-line tools its instructions call (python). Our summary lists: Python 3.

Does Threads Keyword Search access the network?

SKILL.md names 1 domain. In commands or code: threads.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Threads Keyword Search safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Threads Keyword Search use?

Threads Keyword Search is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Threads Keyword Search use?

About 1.7k tokens (SKILL.md is roughly 6.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Threads Keyword Search?

Skills that share tags, products or a category with Threads Keyword Search: Apify Content Analytics (sickn33/agentic-awesome-skills, 47k stars), Crawl4AI Web Scraping (smallnest/goclaw, 599 stars), Boss Zhipin Scraper (eatmoreduck/boss-zhipin-scraper, 1.5k stars) and Ax (yusukebe/ax, 719 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Threads Keyword Search?

browser-act (a GitHub organization) maintains it in browser-act/skills, which has 6,122 GitHub stars. The repository holds 87 skills in this directory. The repository was last updated on August 24, 2026.

Source: browser-act/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.