Skip to content

mindseedinc/social-search

v0.1.0

Search public social content through Social Searcher using a bundled browser-based skill.

Social search

A GitHub Copilot Agent Plugins 1.0 package providing a social-search skill, plugin-scoped instructions, and executable query code. It is not an MCP server and does not contribute a separate callable entry to the Tools list.

Provider

Social Searcher (https://www.social-searcher.com/) is a provisional choice because the original request did not specify a site URL. Its current public search embeds Google search results by network. The old /api/ documentation returned HTTP 404 during development, so this plugin uses the public browser interface rather than assuming the historical API still works.

The script searches the site's network search pages with a browser. No API key is required. Queries are sent to Social Searcher and Google; do not include secrets or private information. The results are indexed public snippets, not an exhaustive, real-time social feed. No login, CAPTCHA bypass, or pagination is implemented.

Setup

Run from this plugin directory:

npm ci
npm run setup:browser

Node.js 22 or newer is required. The dependency lockfile pins the installed versions. Install Chromium again if upgrading Playwright.

Register this folder as a marketplace (its marketplace.json is self-contained) and install — loads live from this folder; no path editing needed:

copilot plugin marketplace add /absolute/path/to/tools/social-search
copilot plugin install social-search@social-search

Alternatively, register this folder directly in settings:

{
  "chat.plugins.enabled": true,
  "chat.pluginLocations": {
    "/absolute/path/to/tools/social-search": true
  }
}

Open Chat: Open Customizations > Plugins to check registration, and Skills to find social-search. Start a new session after enabling it. The plugin's instructions live under com.github.copilot/rules/.

Example chat request:

Use social-search to find public Reddit discussions about GitHub Copilot.

Direct usage

npm run search -- --query '"GitHub Copilot"' --network reddit --limit 5

Run the script directly if you need pure JSON stdout without npm's banner:

node skills/social-search/scripts/search.mjs --query "vscode" --network reddit --limit 3

Supported networks: Facebook, X (twitter), Instagram, TikTok, LinkedIn, YouTube, and Reddit. Omit --network to search all seven sequentially. --limit is per network (1-20; default 5) and applies only to the first page. --timeout is per network in milliseconds (1000-120000; default 30000). Use --headed to inspect browser behavior.

Successful output contains:

{
  "provider": "Social Searcher",
  "query": "vscode",
  "searchedAt": "ISO-8601 timestamp",
  "searchUrl": "https://www.social-searcher.com/google-social-search/?q=vscode",
  "networks": [
    {
      "network": "reddit",
      "searchUrl": "https://www.social-searcher.com/redditcse.html?q=vscode",
      "status": "ok",
      "results": [
        {
          "title": "Result title",
          "url": "https://www.reddit.com/...",
          "snippet": "Indexed excerpt",
          "network": "reddit"
        }
      ]
    }
  ]
}

An explicit empty result page has status: "no_results" and results: []. HTTP errors, unrendered results, and invalid layouts produce a nonzero exit and an error on stderr. A failure on any network fails the entire request, without outputting partial data as success. Respect access restrictions and retry later rather than bypassing them.

Validation

npm test

Tests use intercepted browser requests: no real search queries are sent. For a live smoke test, run the direct usage example above.

Distribution

Publish this directory as a repository root and install with Chat: Install Plugin From Source. Consumers need the same dependency/browser setup. Local npm dependencies are not part of the published source.

References: