Social listening

Monitor brand mentions, competitor activity, and industry conversations across social media and the web

How to use it

  1. Hit Copy the whole skill.
  2. Claude: ⋯ → Download .md, then Customize → Skills → Add → Upload skill.
    ChatGPT: make a Project and paste it into Instructions.
    Neither? Paste it at the top of a new chat — it works for that chat.
  3. Describe your job in plain words. The AI follows the skill from there.
Claude Code — installs the whole folder, not just SKILL.md
npx degit gooseworks-ai/goose-skills/skills/social/capabilities/social-listening#main ~/.claude/skills/social-listening

For one project only, change the path to .claude/skills/social-listening.

Not working?
  • Check which app you pasted it into — the steps above name the right one.
  • Some skills need the paid tier of Claude or ChatGPT.
Step-by-step guide with screenshots · Ask in the forum

Paste into Claude, ChatGPT or Cursor.

Show the full text121 lines
social-listening/SKILL.md121 lines4.2 KBpushed 38d agoRawView on GitHub

Social Listening

Setup

Choose the available runtime before doing any credential setup:

  • Terminal-free client: skip the shell commands below. Use connected MCP tools. For ScrapeCreators operations, read scrapecreators-api and prefer call_data_provider. For another provider step without a connected tool, use an equivalent built-in public-web method when it preserves the workflow, or clearly report that step as unavailable.
  • Local terminal: use the GooseWorks credentials and proxy commands below.

Read your credentials from ~/.gooseworks/credentials.json:

export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")

If ~/.gooseworks/credentials.json does not exist, tell the user to run: npx gooseworks login

The local proxy endpoints use Bearer auth: -H "Authorization: Bearer $GOOSEWORKS_API_KEY". ScrapeCreators operation descriptions below remain environment-neutral in both runtimes.

Track brand mentions, competitor activity, and industry conversations across social media and the web.

When to Use

  • User wants to monitor what people say about a brand or product
  • User asks "what are people saying about [company]?"
  • Tracking competitor launches or announcements
  • Monitoring industry trends and sentiment
  • Social media due diligence before partnerships

Workflow

Step 1: Search Web Mentions with Exa

Find recent mentions, reviews, and discussions across the web:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"exa","path":"/search"}'
  "query": "Notion reviews opinions user feedback",
  "numResults": 30,
  "contents": {"text": true}
}'

Step 2: Monitor Social Media with Scrape Creators

Check what's being posted on X/Twitter:

provider: scrapecreators
method: GET
path: /v1/twitter/user-tweets
query:
  handle: NotionHQ

Check LinkedIn company activity:

provider: scrapecreators
method: GET
path: /v1/linkedin/company/posts
query:
  url: https://linkedin.com/company/notion

Use /v1/linkedin/company when only the company page is needed, and /v1/linkedin/post for one specific post URL.

Step 3: Deep Scrape Key Pages with Scrapegraph

Extract structured data from specific pages found in Steps 1-2:

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"scrapegraph","path":"/v1/smartscraper"}'
  "website_url": "https://example.com/review-page",
  "user_prompt": "Extract sentiment, key complaints, and praise about the product"
}'

Examples

User: "What are people saying about Slack?"

# Step 1: Web mentions
curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"exa","path":"/search","body":{"query":"Slack reviews complaints praise 2025 2026","numResults":20,"contents":{"text":true}}}'

Then run the X/Twitter operation from Step 2 with handle: SlackHQ through the selected ScrapeCreators runtime.

User: "Monitor competitor launches in the AI space"

curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
  -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"api":"exa","path":"/search","body":{"query":"AI startup launch announcement new product 2026","numResults":30,"contents":{"text":true}}}'

Tips

  • Use Exa for broad web monitoring (blogs, forums, news)
  • Use Scrape Creators for social media (X/Twitter, LinkedIn, Instagram, TikTok)
  • Use Scrapegraph for extracting structured data from specific URLs
  • Include date ranges in Exa queries for recent results
  • Track both your brand and competitors for comparative insights
1---
2name: social-listening
3description: Monitor brand mentions, competitor activity, and industry conversations across social media and the web
4source: orthogonal
5---
6 
7 
8# Social Listening
9 
10## Setup
11 
12Choose the available runtime before doing any credential setup:
13 
14- **Terminal-free client:** skip the shell commands below. Use connected MCP tools. For ScrapeCreators operations, read `scrapecreators-api` and prefer `call_data_provider`. For another provider step without a connected tool, use an equivalent built-in public-web method when it preserves the workflow, or clearly report that step as unavailable.
15- **Local terminal:** use the GooseWorks credentials and proxy commands below.
16 
17Read your credentials from ~/.gooseworks/credentials.json:
18```bash
19export GOOSEWORKS_API_KEY=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json'))['api_key'])")
20export GOOSEWORKS_API_BASE=$(python3 -c "import json;print(json.load(open('$HOME/.gooseworks/credentials.json')).get('api_base','https://api.gooseworks.ai'))")
21```
22 
23If ~/.gooseworks/credentials.json does not exist, tell the user to run: `npx gooseworks login`
24 
25The local proxy endpoints use Bearer auth: `-H "Authorization: Bearer $GOOSEWORKS_API_KEY"`. ScrapeCreators operation descriptions below remain environment-neutral in both runtimes.
26 
27 
28Track brand mentions, competitor activity, and industry conversations across social media and the web.
29 
30## When to Use
31 
32- User wants to monitor what people say about a brand or product
33- User asks "what are people saying about [company]?"
34- Tracking competitor launches or announcements
35- Monitoring industry trends and sentiment
36- Social media due diligence before partnerships
37 
38## Workflow
39 
40### Step 1: Search Web Mentions with Exa
41 
42Find recent mentions, reviews, and discussions across the web:
43 
44```bash
45curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
46 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
47 -H "Content-Type: application/json" \
48 -d '{"api":"exa","path":"/search"}'
49 "query": "Notion reviews opinions user feedback",
50 "numResults": 30,
51 "contents": {"text": true}
52}'
53```
54 
55### Step 2: Monitor Social Media with Scrape Creators
56 
57Check what's being posted on X/Twitter:
58 
59```yaml
60provider: scrapecreators
61method: GET
62path: /v1/twitter/user-tweets
63query:
64 handle: NotionHQ
65```
66 
67Check LinkedIn company activity:
68 
69```yaml
70provider: scrapecreators
71method: GET
72path: /v1/linkedin/company/posts
73query:
74 url: https://linkedin.com/company/notion
75```
76 
77Use `/v1/linkedin/company` when only the company page is needed, and `/v1/linkedin/post` for one specific post URL.
78 
79### Step 3: Deep Scrape Key Pages with Scrapegraph
80 
81Extract structured data from specific pages found in Steps 1-2:
82 
83```bash
84curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
85 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
86 -H "Content-Type: application/json" \
87 -d '{"api":"scrapegraph","path":"/v1/smartscraper"}'
88 "website_url": "https://example.com/review-page",
89 "user_prompt": "Extract sentiment, key complaints, and praise about the product"
90}'
91```
92 
93## Examples
94 
95**User:** "What are people saying about Slack?"
96```bash
97# Step 1: Web mentions
98curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
99 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
100 -H "Content-Type: application/json" \
101 -d '{"api":"exa","path":"/search","body":{"query":"Slack reviews complaints praise 2025 2026","numResults":20,"contents":{"text":true}}}'
102```
103 
104Then run the X/Twitter operation from Step 2 with `handle: SlackHQ` through the selected ScrapeCreators runtime.
105 
106**User:** "Monitor competitor launches in the AI space"
107```bash
108curl -s -X POST $GOOSEWORKS_API_BASE/v1/proxy/orthogonal/run \
109 -H "Authorization: Bearer $GOOSEWORKS_API_KEY" \
110 -H "Content-Type: application/json" \
111 -d '{"api":"exa","path":"/search","body":{"query":"AI startup launch announcement new product 2026","numResults":30,"contents":{"text":true}}}'
112```
113 
114## Tips
115 
116- Use Exa for broad web monitoring (blogs, forums, news)
117- Use Scrape Creators for social media (X/Twitter, LinkedIn, Instagram, TikTok)
118- Use Scrapegraph for extracting structured data from specific URLs
119- Include date ranges in Exa queries for recent results
120- Track both your brand and competitors for comparative insights
121 

Discussion

Alternatives

Also in Posting & scheduling
Linkedin comment drafterDraft a LinkedIn comment on someone else's post from its URL, or reshare (repost) it to your feed with optional commentary. Use when the user pastes a post URL and asks to comment, engage, be first commenter, or repost with their thoughts. Produces 1-3 variants in the user's voice, picks a reaction, and publishes via Publora on approval. Not for replying to existing comments (use linkedin-reply-handler).Marketing · MITLinkedin content plannerGenerate a 7-day LinkedIn content plan from a theme, audience, and pillars. Produces per-day post pillar, format, hook type, CTA, posting time, daily comment targets, and a weekly inbound-readiness check. Use when the user wants to plan a week or month of content, not draft a single post (use linkedin-post-writer).Marketing · MITLinkedin employee advocacyStand up and run a LinkedIn employee advocacy program for a marketing or sales team. Covers 14-day launch playbook, brand-guideline governance, per-post time budget, cadence benchmarks, and team ROI (reach, engagement, pipeline). Triggers on "employee advocacy", "get the team posting", "scale LinkedIn across team", "advocacy ROI". Not for planning one person's own calendar (use linkedin-content-planner).Marketing · MITInstagram Audience InsightsRead your Instagram niche and profile from real data via Apify, no login. Scan a hashtag for the posts traveling now (likes, comments, owner) to see the format and hook that works. Pull profile stats for any handle, yours or a competitor's: followers, posts, bio, category. Instagram hides who liked or commented on other accounts, so this is discovery plus profiles, not engagers. Triggers on "what works in my niche", "scan the hashtag", "competitor stats". Not for writing captions (use ig-caption-writer).Marketing · MIT