Finding Speaking Opportunities on Twitter — скилл для Claude Code
Скилл автоматически ищет на Twitter конференции, подкасты и саммиты, которые ищут спикеров. Возвращает контакты организаторов, сроки подачи и ссылки на регистрацию — всё нужное, чтобы выстроить канал возможностей для выступлений.
npx skills add apidojo-io/apidojo-skills --skill finding-speaking-opportunities-on-twitter -a claude-codeЧто делает finding-speaking-opportunities-on-twitter
Скилл использует Twitter-скрейпер apidojo и стандартные поисковые операторы X, чтобы находить посты организаторов о поиске спикеров. Ищет по ключевым фразам вроде «call for speakers», «looking for speakers», «CFP» и их вариантам по нужной тематике. Результаты включают название события, хэндл организатора, тему фокуса, сигналы о сроках и размер аудитории.
Для работы нужен APIFY_TOKEN в переменной окружения или .env файле. Скилл может запуститься тремя способами: через run_actor.js (самый быстрый — результаты в чате или экспортом в CSV/JSON), через MCP apify (если установлен), или напрямую через REST API. Если результатов мало, скилл подскажет расширить критерии поиска.
Основные параметры — массив поисковых запросов, максимум твитов, язык, фильтры по верификации или наличию видео. Вывод ранжирует результаты по релевантности: оценивает размер аудитории события, как далеко осталось до дедлайна и совпадение темы. Выявляет истекшие сроки подачи и помечает их как EXPIRED.
Какие задачи решает
- найти конференции и саммиты, ищущие спикеров в определённой нише
- собрать контакты организаторов событий прямо из их объявлений
- построить трубопровод возможностей для думаю-лидерства через выступления
- отследить дедлайны подачи заявок и не пропустить призывы к спикерам
- выявить размер и тип события для выбора подходящих возможностей
Примеры запросов агенту
- Найди на Twitter конференции по машинному обучению, которые набирают спикеров
- Собери список подкастов, ищущих гостей в сфере веб-девелопмента
- Поищи вирт-саммиты, где стартапы ищут основателей для панелей в ближайшие три месяца
Как установить finding-speaking-opportunities-on-twitter
1Через Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill finding-speaking-opportunities-on-twitter -a claude-code2Вручную: положить файлы
~/.claude/skills/finding-speaking-opportunities-on-twitter/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/finding-speaking-opportunities-on-twitter/
1Через Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill finding-speaking-opportunities-on-twitter -a codex2Вручную: положить файлы
.agents/skills/finding-speaking-opportunities-on-twitter/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill finding-speaking-opportunities-on-twitter -a cursor2Вручную: положить файлы
.cursor/skills/finding-speaking-opportunities-on-twitter/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install apidojo-io/apidojo-skills finding-speaking-opportunities-on-twitter2Вручную: положить файлы
.github/skills/finding-speaking-opportunities-on-twitter/SKILL.md1Через Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill finding-speaking-opportunities-on-twitter -a gemini-cli2Командой платформы
gemini skills install https://github.com/apidojo-io/apidojo-skills --path skills/intent/finding-speaking-opportunities-on-twitterВручную: положить файлы
.devin/skills/finding-speaking-opportunities-on-twitter/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add apidojo-io/apidojo-skills --skill finding-speaking-opportunities-on-twitter -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Вопросы о finding-speaking-opportunities-on-twitter
Как установить скилл в Claude Code?
Выполни в терминале: npx skills add apidojo-io/apidojo-skills --skill finding-speaking-opportunities-on-twitter -a claude-code, затем открой ~/.claude/skills/finding-speaking-opportunities-on-twitter/SKILL.md. После этого скилл будет доступен как инструмент в Claude Code.
Что нужно для работы скилла?
Обязателен APIFY_TOKEN — ключ Apify API, который нужно установить в переменную окружения или .env файл. Скилл использует Twitter-скрейпер apidojo, который требует действительного токена. Если установлен MCP-сервер apify, скилл может работать и через него.
Почему скилл вернул мало результатов?
Поисковые условия могли быть слишком узкими. Попробуй расширить набор ключевых фраз, убрать фильтры по верификации или видео, или проверить, корректны ли названия тем. Если твитов нет совсем, убедись, что поисковые операторы написаны правильно.
Исходный текст
SKILL.md · Apache-2.0
---
name: finding-speaking-opportunities-on-twitter
description: >
Finds speaking opportunities and event organizer contacts on Twitter using apidojo's Twitter scrapers. Triggers when the user asks to: find speaking opportunities on Twitter, discover conferences looking for speakers on X, find event organizers calling for speaker submissions, identify call-for-speakers announcements in an industry on Twitter, find podcast or summit hosts looking for guests, discover virtual event opportunities for thought leadership, or build a speaking opportunity pipeline from Twitter.
Returns event name, organizer handle, topic focus, deadline signals, event size, and submission URL.
Ideal for startup founders, executives, coaches, and consultants building thought leadership through speaking.
license: Apache-2.0
metadata:
author: apidojo
version: "1.0"
apify-actor: apidojo/tweet-scraper
---
# Finding Speaking Opportunities On Twitter
Executes finding speaking opportunities on twitter using apidojo scrapers. Part of the apidojo intelligence skills library.
## Prerequisites
- `APIFY_TOKEN` environment variable set
- Optional: Apify MCP server installed
## Inputs
| Parameter | Type | Required | Default | Notes |
|-----------|------|----------|---------|-------|
| `searchTerms` | array | ✅ | `[]` | Twitter advanced search queries (e.g. `["#AI lang:en", "from:NASA"]`) |
| `sort` | string | Optional | `Top` | Sort order: `Latest`, `Top`, or `Latest+Top` |
| `tweetLanguage` | string | Optional | — | ISO 639-1 language code (e.g. `en`) |
| `maxItems` | number | Optional | Unlimited | Maximum tweets to return |
| `onlyVerifiedUsers` | boolean | Optional | `false` | Only tweets from verified users |
| `onlyTwitterBlue` | boolean | Optional | `false` | Only Twitter Blue subscribers |
| `onlyImage` | boolean | Optional | `false` | Only tweets with images |
| `onlyVideo` | boolean | Optional | `false` | Only tweets with videos |
| `onlyQuote` | boolean | Optional | `false` | Only quote tweets |
| `author` | string | Optional | — | Filter to a specific author handle |
| `inReplyTo` | string | Optional | — | Tweets replying to a specific handle |
| `mentioning` | string | Optional | — | Tweets mentioning a specific handle |
| `geotaggedNear` | string | Optional | — | Tweets near a location |
| `withinRadius` | string | Optional | — | Radius around geotaggedNear |
| `geocode` | string | Optional | — | Lat/lng + radius string |
| `placeObjectId` | string | Optional | — | Tweets tagged with a place |
| `minimumRetweets` | number | Optional | — | Minimum retweet count |
| `minimumFavorites` | number | Optional | — | Minimum like count |
| `minimumReplies` | number | Optional | — | Minimum reply count |
| `start` | string | Optional | — | Tweets after this date (YYYY-MM-DD) |
| `end` | string | Optional | — | Tweets before this date (YYYY-MM-DD) |
| `includeSearchTerms` | boolean | Optional | `false` | Add the matched search term to each tweet |
| `customMapFunction` | string | Optional | — | JavaScript function to transform each output object |
## Workflow
```
Progress:
- [ ] Step 1: Define parameters
- [ ] Step 2: Run tweet-scraper
- [ ] Step 3: Filter and classify results
- [ ] Step 4: Score by quality and relevance
- [ ] Step 5: Deliver output
```
### Step 2: Run the Actor
**Recommended — run_actor.js (handles waiting, output, and file saving automatically):**
```bash
# Quick answer (prints table to chat)
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}'
# Save as CSV
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}' \
--output YYYY-MM-DD_results.csv --format csv
# Save as JSON
node scripts/run_actor.js \
--actor "apidojo~tweet-scraper" \
--input '{"param": "value"}' \
--output YYYY-MM-DD_results.json --format json
```
> `APIFY_TOKEN` must be set in environment or `.env` file.
**If Apify MCP is available:**
```
Tool: apify:run-actor
Actor: "apidojo~tweet-scraper"
Input:
{
"searchTerms": ["call for speakers [TOPIC]", "looking for speakers [TOPIC]", "CFP [TOPIC]", "speaker applications [TOPIC]"],
"maxItems": 100
}
```
**REST API fallback:**
```bash
curl -X POST \
"https://api.apify.com/v2/acts/apidojo~tweet-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{"searchTerms": ["call for speakers [TOPIC]", "looking for speakers [TOPIC]", "CFP [TOPIC]", "speaker applications [TOPIC]"], "maxItems": 100}'
```
Wait for `SUCCEEDED`. Fetch dataset:
```bash
curl "https://api.apify.com/v2/actor-runs/$RUN_ID/dataset/items?token=$APIFY_TOKEN"
```
### Step 3: Classify Results
```
classification: KEYNOTE (large event, competitive) | PANEL (group format) | PODCAST_GUEST (audio interview) | VIRTUAL_SUMMIT (online event) | WORKSHOP (hands-on, smaller)
```
### Step 4: Score Each Result
```
score = opportunity_score = (event_audience_size_signal: large=1, mid=0.6, small=0.3) * 0.40 + (deadline_is_future ? 1 : 0) * 0.35 + (topic_alignment ? 1 : 0.5) * 0.25
```
### Step 5: Edge Cases
- **CFP deadlines are time-sensitive; flag any opportunity with a deadline in the past as EXPIRED; prioritize by days until deadline**
Additional fallbacks:
- **< 20 results**: Broaden search terms; remove secondary filters
- **No results**: Verify the search terms are correct; try alternate phrasings
- **Data quality issues**: Remove entries with missing key fields; note count in output
## Output Format
```
# Finding Speaking Opportunities On Twitter
Results: [N] | Date: [DATE]
| # | [Key Field] | [Metric 1] | [Metric 2] | [Classification] | [Score] |
|---|------------|-----------|-----------|-----------------|---------|
| 1 | [value] | [value] | [value] | [type] | [0.XX] |
## Summary
Top result: [description]
Key finding: [insight]
```
## Troubleshooting
**Too few results:** Broaden the primary search term; remove restrictive filters.
**Low quality results:** Apply minimum score threshold (≥ 0.50) to filter noise.
**Actor fails to run:** Verify API key; check actor status at apify.com/apidojo.
© apidojo · Apache-2.0 · apidojo-io/apidojo-skills