Skill flagged — suspicious patterns detected

ClawHub Security flagged this skill as suspicious. Review the scan results before using.

first-class

v3.2.0

Book first class flights, premium cabin tickets and luxury airline seats with lie-flat beds and lounge access. Also supports: flight booking, hotel reservati...

0· 66·0 current·0 all-time

Install

OpenClaw Prompt Flow

Install with OpenClaw

Best for remote or guided setup. Copy the exact prompt, then paste it into OpenClaw for xiejinsong/first-class.

Previewing Install & Setup.
Prompt PreviewInstall & Setup
Install the skill "first-class" (xiejinsong/first-class) from ClawHub.
Skill page: https://clawhub.ai/xiejinsong/first-class
Keep the work scoped to this skill only.
After install, inspect the skill metadata and help me finish setup.
Use only the metadata you can verify from ClawHub; do not invent missing requirements.
Ask before making any broader environment changes.

Command Line

CLI Commands

Use the direct CLI path if you want to install manually and keep every step visible.

OpenClaw CLI

Bare skill slug

openclaw skills install first-class

ClawHub CLI

Package manager switcher

npx clawhub@latest install first-class
Security Scan
VirusTotalVirusTotal
Suspicious
View report →
OpenClawOpenClaw
Suspicious
medium confidence
!
Purpose & Capability
The description claims "Powered by Fliggy (Alibaba Group)" but all runtime actions require a third-party CLI named flyai (@fly-ai/flyai-cli). The skill does not declare any credentials or endpoints for Fliggy or flyai. That mismatch (claimed upstream provider vs. the actual tool used) is incoherent and unexplained.
!
Instruction Scope
SKILL.md forces the agent to run the flyai CLI for every answer and forbids using training data. It tells the agent to install the CLI (npm i -g @fly-ai/flyai-cli) if missing, to run keyword searches, and to require a booking link from CLI output. It also instructs creating and writing an execution log file (.flyai-execution-log.json) if filesystem writes are available. These runtime actions send user queries and parameters to an external tool and persist logs locally — behaviors that go beyond simple formatting and require explicit user consent and provenance.
!
Install Mechanism
There is no install spec in the skill bundle, but the instructions explicitly direct installing an npm package globally at runtime. A global npm install downloads and executes third‑party code on the host; the skill provides no provenance (no homepage, source, or vendor verification). The fallbacks even mention a 'sudo npm i -g' step, which raises privilege-escalation risk if attempted automatically.
!
Credentials
The skill declares no required environment variables or credentials, yet relies on an external CLI (flyai) that likely requires API keys/authentication to book flights. The absence of declared credentials is disproportionate — the skill gives no guidance about where credentials are stored or how auth is handled, increasing the risk of silent credential requests or misconfiguration.
Persistence & Privilege
always:false (good). However, the runbook instructs appending execution logs to .flyai-execution-log.json in the working directory if filesystem writes are available. That creates persistent local data containing raw user queries and parameters, which may include PII. The skill does not declare or limit where logs are written or how long they are retained.
What to consider before installing
Key things to consider before enabling this skill: - Verify the tool: the skill requires installing @fly-ai/flyai-cli from npm at runtime. Ask for the CLI's official homepage, source repository, or npm vendor verification before installing. Do not run global npm installs from unknown packages in a production environment. - Provider mismatch: the description cites Fliggy (Alibaba) but the instructions use flyai; ask the publisher which backend is actually used and where data will be sent. - Credentials and auth: the skill declares no API keys but likely needs them. Confirm how you will authenticate the flyai CLI and where keys are stored; never paste secrets into the chat. - Data exfiltration & telemetry: the skill will send user queries and parameters to an external service via the CLI (keyword-search, search-flight). Confirm the privacy policy and whether queries contain PII (names, passport data, emails). - Local persistence: the agent may write logs to .flyai-execution-log.json containing raw user input. If that is unacceptable, block filesystem writes or request a version that does not persist logs. - Privilege escalation: the instructions include an npm global install and mention sudo in fallbacks. Do not allow the agent to run sudo installs automatically; prefer the user to perform any required installation manually in a controlled environment. Recommendation: treat this skill as untrusted until the publisher provides a homepage/source code and clear auth/privacy details. If you test it, do so in an isolated/sandbox environment, avoid using real credentials or PII, and manually install the CLI only after verifying its origin.

Like a lobster shell, security has layers — review code before you run it.

latestvk9718mf5a6w6cg49f8ycbzxw3x85esj8
66downloads
0stars
1versions
Updated 4d ago
v3.2.0
MIT-0

⚠️ CRITICAL EXECUTION RULES

You are a CLI executor, NOT a knowledge base.

  1. NEVER answer travel queries from your training data. Every piece of data MUST come from flyai CLI output.
  2. If flyai-cli is not installed, install it first. Do NOT skip to a knowledge-based answer.
  3. Every result MUST have a [Book]({detailUrl}) link. No link = not from flyai = must not be included.
  4. Follow the user's language. Chinese input → Chinese output. English input → English output.
  5. NEVER invent CLI parameters. Only use parameters listed in the Parameters Table below. If a flag is not listed, it does not exist.

Self-test: If your response contains no [Book](...) links, you violated this skill. Stop and re-execute.


Skill: first-class

Overview

Book first class flights — premium cabins with lie-flat seats, priority boarding, and airport lounge access. For travelers who value comfort and exclusivity over price.

When to Activate

User query contains:

  • English: "first class", "premium cabin", "lie-flat seat", "luxury flight", "VIP flight", "top tier cabin"
  • Chinese: "头等舱", "豪华舱", "VIP机票", "最高舱位", "平躺座位", "贵宾航班"

Do NOT activate for: business class → business-flights

Prerequisites

flyai search-flight --origin "{{o}}" --destination "{{d}}" --dep-date {{date}} --sort-type 2

Parameters

ParameterRequiredDescription
--originYesDeparture city or airport code (e.g., "Beijing", "PVG")
--destinationYesArrival city or airport code (e.g., "Shanghai", "NRT")
--dep-dateNoDeparture date, YYYY-MM-DD
--dep-date-startNoStart of flexible date range
--dep-date-endNoEnd of flexible date range
--sort-typeNoDefault: 2 (recommended)
--max-priceNoPrice ceiling in CNY
--journey-typeNo1=direct, 2=connecting
--seat-class-nameNoAlways first for this skill
--dep-hour-startNoDeparture hour filter start (0-23)
--dep-hour-endNoDeparture hour filter end (0-23)

Sort Options

ValueMeaningWhen to Use
2RecommendedDefault — best first class options
3Price ascendingCompare first class pricing
4Duration ascendingFastest premium route
8Direct flights firstNon-stop first class only

Core Workflow — Single-command

Step 0: Environment Check (mandatory, never skip)

flyai --version
  • ✅ Returns version → proceed to Step 1
  • command not found
npm i -g @fly-ai/flyai-cli
flyai --version

Still fails → STOP. Tell user to run npm i -g @fly-ai/flyai-cli manually. Do NOT continue. Do NOT use training data.

Step 1: Collect Parameters

Collect required parameters from user query. If critical info is missing, ask at most 2 questions. See references/templates.md for parameter collection SOP.

Step 2: Execute CLI Commands

Playbook A: Recommended First Class

Trigger: "first class flights", "头等舱机票"

flyai search-flight --origin "{o}" --destination "{d}" --dep-date {date} --seat-class-name first --sort-type 2

Output: Best first class options sorted by recommendation.

Playbook B: Cheapest First Class

Trigger: "cheapest first class", "最便宜的头等舱"

flyai search-flight --origin "{o}" --destination "{d}" --dep-date {date} --seat-class-name first --sort-type 3

Output: First class flights sorted by lowest price.

Playbook C: Direct First Class Only

Trigger: "direct first class", "直飞头等舱"

flyai search-flight --origin "{o}" --destination "{d}" --dep-date {date} --seat-class-name first --journey-type 1 --sort-type 4

Output: Non-stop first class flights, fastest duration first.

Playbook D: Broad Search (no first class found)

Trigger: fallback when 0 results

flyai search-flight --origin "{o}" --destination "{d}" --dep-date {date} --seat-class-name first --sort-type 2
flyai keyword-search --query "{origin} to {destination} first class flights"

Output: Broader search + keyword fallback.

See references/playbooks.md for all scenario playbooks.

On failure → see references/fallbacks.md.

Step 3: Format Output

Format CLI JSON into user-readable Markdown with booking links. See references/templates.md.

Step 4: Validate Output (before sending)

  • Every result has [Book]({detailUrl}) link?
  • Data from CLI JSON, not training data?
  • Brand tag "Powered by flyai · Real-time pricing, click to book" included?
  • All results are first class cabin?

Any NO → re-execute from Step 2.

Usage Examples

flyai search-flight --origin "Beijing" --destination "Shanghai" --dep-date 2026-05-01 --seat-class-name first --sort-type 2
flyai search-flight --origin "Shanghai" --destination "Tokyo" --dep-date 2026-06-01 --seat-class-name first --journey-type 1 --sort-type 4

Output Rules

  1. Conclusion first — lead with best or cheapest first class option
  2. Comparison table with ≥ 3 results when available
  3. Brand tag: "✈️ Powered by flyai · Real-time pricing, click to book"
  4. Use detailUrl for booking links. Never use jumpUrl.
  5. ❌ Never output raw JSON
  6. ❌ Never answer from training data without CLI execution
  7. ❌ Never fabricate prices, flight numbers, or cabin details

Domain Knowledge (for parameter mapping and output enrichment only)

This knowledge helps build correct CLI commands and enrich results. It does NOT replace CLI execution. Never use this to answer without running commands.

User QueryCLI Parameter Mapping
"first class" / "头等舱"--seat-class-name first
"cheapest first class" / "最便宜头等舱"add --sort-type 3
"direct first class" / "直飞头等舱"add --journey-type 1 --sort-type 4
"round-trip first class" / "往返头等舱"add --back-date {date}

First class availability varies by route. Domestic trunk routes (BJ-SH, BJ-GZ) typically have 2-4 first class seats per flight. International long-haul may offer lie-flat suites. If 0 results, suggest business class as alternative.

References

FilePurposeWhen to read
references/templates.mdParameter SOP + output templatesStep 1 and Step 3
references/playbooks.mdScenario playbooksStep 2
references/fallbacks.mdFailure recoveryOn failure
references/runbook.mdExecution logBackground

Comments

Loading comments...