/perplexity
AI-powered search and chat with Perplexity. Use when you need to: (1) get AI responses with real-time web search, or (2) answer questions with up-to-date information.
$ npx -y skills add refly-ai/refly-skills --skill perplexity --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
- You can call itInvoke it directly when you want it.
- Slash command
/perplexity
Context preview
The summary Claude sees to decide when to auto-load this skill.
AI-powered search and chat with Perplexity. Use when you need to: (1) get AI responses with real-time web search, or (2) answer questions with up-to-date information.
SKILL.md
perplexity.SKILL.mdname: perplexity
description: "AI-powered search and chat with Perplexity. Use when you need to: (1) get AI responses with real-time web search, or (2) answer questions with up-to-date information."
version: 1.0.0
skillId: skp-rkmnjbtpxxpidhck89q60yvt
workflowId: c-xz42o3itzw4bdnnhoovb16dv
installationId: skpi-sww12wxvy9zbfr1wwx35gybm
category: text-data
Perplexity
AI-powered search and chat with Perplexity. Use when you need to: (1) get AI responses with real-time web search, or (2) answer questions with up-to-date information.
Input
Provide input as JSON:
{
"query": "Your search query or question"
}Execution
Step 1: Run the Skill
refly skill run --id skpi-sww12wxvy9zbfr1wwx35gybm --input '{
"query": "Your question here"
}'Step 2: Wait for Completion
refly workflow status c-xz42o3itzw4bdnnhoovb16dv --watch --interval 10000
Step 3: Get the Run ID
refly workflow runs c-xz42o3itzw4bdnnhoovb16dv --limit 1
Look for `runId` in the output (format: `we-xxx`).
Step 4: Get the Result ID
refly workflow detail <RUN_ID>
Look for `resultId` in the `skillResponse` node (format: `ar-xxx`).
Step 5: Extract the Content
refly workflow result <RESULT_ID> --include-messages --raw
The AI response is in `.payload.messages[]` where `type` is `"ai"`. Extract with:
refly workflow result <RESULT_ID> --include-messages --raw | jq -r '.payload.messages[] | select(.type=="ai") | .content'
Alternative: One-liner (after Step 2)
RUN_ID=$(refly workflow runs c-xz42o3itzw4bdnnhoovb16dv --limit 1 | jq -r '.payload.runs[0].runId') && \
RESULT_ID=$(refly workflow detail "$RUN_ID" | jq -r '.payload.nodes[] | select(.nodeType=="skillResponse") | .resultId') && \
refly workflow result "$RESULT_ID" --include-messages --raw | jq -r '.payload.messages[] | select(.type=="ai") | .content'
Key Concepts
| ID Type | Format | How to Get | Used For | |---------|--------|------------|----------| | workflowId | `c-xxx` | In SKILL.md frontmatter | `workflow status`, `workflow runs` | | runId | `we-xxx` | From `workflow runs` or `workflow status` output | `workflow detail`, `workflow toolcalls` | | resultId | `ar-xxx` | From `workflow detail` → nodes[].resultId | `workflow result` |
Common Mistakes to Avoid
Do NOT use `toolcalls` with `.output.preview`
# WRONG - This will fail!
refly workflow toolcalls <RUN_ID> --latest | jq -r '.payload.toolCalls[-1].output.preview | fromjson | .data.response'
**Why it fails:**
- `.output.preview` may be `null` → jq error: `null (null) only strings can be parsed`
- `.output.preview` may be truncated → jq error: `Unfinished string at EOF`
- The preview field is not guaranteed to exist
**Always use this instead:**
refly workflow result <RESULT_ID> --include-messages --raw | jq -r '.payload.messages[] | select(.type=="ai") | .content'
Expected Output
- **Type**: Text content with citations
- **Format**: AI-generated response from Perplexity with web search results
- **Action**: Display content to user
Read more
name: perplexity description: "AI-powered search and chat with Perplexity. Use when you need to: (1) get AI responses with real-time web search, or (2) answer questions with up-to-date information." version: 1.0.0 skillId: skp-rkmnjbtpxxpidhck89q60yvt workflowId: c-xz42o3itzw4bdnnhoovb16dv installationId: skpi-sww12wxvy9zbfr1wwx35gybm category: text-data
Perplexity
AI-powered search and chat with Perplexity. Use when you need to: (1) get AI responses with real-time web search, or (2) answer questions with up-to-date information.
Input
Provide input as JSON:
{
"query": "Your search query or question"
}Execution
Step 1: Run the Skill
refly skill run --id skpi-sww12wxvy9zbfr1wwx35gybm --input '{
"query": "Your question here"
}'Step 2: Wait for Completion
refly workflow status c-xz42o3itzw4bdnnhoovb16dv --watch --interval 10000
Step 3: Get the Run ID
refly workflow runs c-xz42o3itzw4bdnnhoovb16dv --limit 1
Look for `runId` in the output (format: `we-xxx`).
Step 4: Get the Result ID
refly workflow detail <RUN_ID>
Look for `resultId` in the `skillResponse` node (format: `ar-xxx`).
Step 5: Extract the Content
refly workflow result <RESULT_ID> --include-messages --raw
The AI response is in `.payload.messages[]` where `type` is `"ai"`. Extract with:
refly workflow result <RESULT_ID> --include-messages --raw | jq -r '.payload.messages[] | select(.type=="ai") | .content'
Alternative: One-liner (after Step 2)
RUN_ID=$(refly workflow runs c-xz42o3itzw4bdnnhoovb16dv --limit 1 | jq -r '.payload.runs[0].runId') && \ RESULT_ID=$(refly workflow detail "$RUN_ID" | jq -r '.payload.nodes[] | select(.nodeType=="skillResponse") | .resultId') && \ refly workflow result "$RESULT_ID" --include-messages --raw | jq -r '.payload.messages[] | select(.type=="ai") | .content'
Key Concepts
| ID Type | Format | How to Get | Used For | |---------|--------|------------|----------| | workflowId | `c-xxx` | In SKILL.md frontmatter | `workflow status`, `workflow runs` | | runId | `we-xxx` | From `workflow runs` or `workflow status` output | `workflow detail`, `workflow toolcalls` | | resultId | `ar-xxx` | From `workflow detail` → nodes[].resultId | `workflow result` |
Common Mistakes to Avoid
Do NOT use `toolcalls` with `.output.preview`
# WRONG - This will fail! refly workflow toolcalls <RUN_ID> --latest | jq -r '.payload.toolCalls[-1].output.preview | fromjson | .data.response'
**Why it fails:**
- `.output.preview` may be `null` → jq error: `null (null) only strings can be parsed`
- `.output.preview` may be truncated → jq error: `Unfinished string at EOF`
- The preview field is not guaranteed to exist
**Always use this instead:**
refly workflow result <RESULT_ID> --include-messages --raw | jq -r '.payload.messages[] | select(.type=="ai") | .content'
Expected Output
- **Type**: Text content with citations
- **Format**: AI-generated response from Perplexity with web search results
- **Action**: Display content to user
Repo: refly-ai/refly-skills
Other skills on refly-skills.
- /ai-readability-audit
AI可读性审计工具,模拟AI爬虫视角评估网站对大语言模型的友好程度,分析结构化数据、语义HTML和Meta信息
Open skill - /airtable
Integrate with Airtable for database management. Use when you need to: (1) create and query Airtable records, (2) manage structured data in bases, or (3) automate data workflows.
Open skill - /alpha-vantage
Get financial data from Alpha Vantage. Use when you need to: (1) retrieve stock quotes and prices, (2) get forex or crypto rates, or (3) access market analytics data.
Open skill - /amazon-christmas-tree-research
亚马逊圣诞树竞品调研分析,搜索热销产品,分析定价策略、用户评价和市场机会
Open skill - /apollo
Search sales leads with Apollo.io. Use when you need to: (1) find company and contact information, (2) enrich lead data, or (3) search for B2B prospects.
Open skill - /asana
Integrate with Asana for task management. Use when you need to: (1) create and manage Asana tasks, (2) organize project work, or (3) automate team task tracking workflows.
Open skill

