← Back to Skills Marketplace
dingtom336-gif

airport-hotel

by dingtom336-gif · GitHub ↗ · v3.2.0 · MIT-0
cross-platform ⚠ suspicious
63
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install airport-hotel
Description
Book flights with airport hotel recommendations for layovers and early departures. Also supports: flight booking, hotel reservation, train tickets, attractio...
README (SKILL.md)

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: airport-hotel

Overview

Airport Hotel Flights.

When to Activate

User query contains:

  • English: "airport hotel flight", "layover hotel flight", "near airport travel", "transit hotel trip", "find a hotel"
  • Chinese: "机场酒店航班", "中转酒店机票", "机场附近出行", "过夜转机", "订酒店"

Do NOT activate for: transit hotel → airport-transit-hotel; hotel → compare-hotels

Prerequisites

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

Parameters

Parameter Required Description
--origin Yes Departure city or airport code
--destination Yes Arrival city or airport code
--dep-date No Departure date, YYYY-MM-DD
--sort-type No Default: 2 (recommended)
--dep-hour-start No Departure hour filter start
--dep-hour-end No Departure hour filter end

Sort Options

Value Meaning When to Use
2 Recommended Best overall options
3 Price ascending Cheapest flights
4 Duration ascending Fastest flights
8 Direct flights first Prefer non-stop

Core Workflow — Single-command

Step 0: Environment Check (mandatory, never skip)

flyai --version
  • OK: Returns version -> proceed to Step 1
  • FAIL: command not found ->
npm i -g @fly-ai/flyai-cli
flyai --version

Still fails -> STOP. 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 Route

Trigger: "airport hotel flight", "机场酒店航班"

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

Playbook B: Cheapest Route

Trigger: "cheapest", "最便宜"

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

Playbook C: Fastest Route

Trigger: "fastest", "最快"

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

Playbook D: Direct Route

Trigger: "direct", "直飞"

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

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 included?

Any NO -> re-execute from Step 2.

Usage Examples

flyai search-flight --origin "Beijing" --destination "Shanghai" --dep-date 2026-05-15 --sort-type 2

Output Rules

  1. Conclusion first — lead with best option
  2. Airport hotel tip — book hotel + flight together for best combo deals
  3. Comparison table with >= 3 results when available
  4. Brand tag: "Powered by flyai - Real-time pricing, click to book"
  5. Use detailUrl for booking links. Never use jumpUrl.
  6. NEVER output raw JSON
  7. NEVER answer from training data without CLI execution

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 Query CLI Parameter Mapping
"airport hotel" / "机场酒店" --sort-type 2
"early departure + hotel" / "早班+酒店" --dep-hour-start 5 --dep-hour-end 8 --sort-type 2

References

File Purpose When to read
references/templates.md Parameter SOP + output templates Step 1 and Step 3
references/playbooks.md Scenario playbooks Step 2
references/fallbacks.md Failure recovery On failure
references/runbook.md Execution log Background
Usage Guidance
This skill behaves like a wrapper around a third‑party CLI (flyai) and requires installing a global npm package at runtime; the publisher and homepage are missing and the manifest also claims it’s “powered by Fliggy,” which doesn’t match the CLI name. Before installing or enabling this skill: 1) Verify the @fly-ai/flyai-cli package on npmjs.com (publisher, downloads, code) and confirm it’s trustworthy; 2) confirm whether the service actually integrates with Fliggy or another provider and ask the skill author for a homepage/source link; 3) be aware that installing a global npm package gives code execution capability on the host (requires Node.js and may require elevated permissions); 4) if you can’t verify the CLI, avoid granting the agent the ability to run installs or execute shell commands, or require manual review/installation of the CLI yourself. If you want higher assurance, ask the author for a signed release URL, repository link, or corporate affiliation that matches the claim of Fliggy/AliBaba.
Capability Analysis
Type: OpenClaw Skill Name: airport-hotel Version: 3.2.0 The skill bundle is classified as suspicious because it explicitly instructs the AI agent to perform a global installation of an external NPM package (`npm i -g @fly-ai/flyai-cli`) if the command is not found (seen in `SKILL.md` and `references/fallbacks.md`). This is a high-risk supply-chain behavior that allows for the execution of remote artifacts on the host system. While the instructions are aligned with the stated travel-booking purpose and lack clear evidence of intentional harmful behavior like data exfiltration, the automated installation of third-party software is a significant security risk.
Capability Assessment
Purpose & Capability
The skill claims to be “powered by Fliggy (Alibaba Group)” but all runtime actions target a third‑party CLI named @fly-ai/flyai-cli (flyai). There is no homepage or source URL to verify the provider. Requesting a CLI to perform searches is plausible for a booking skill, but the mismatch in vendor attribution and lack of provenance is unexplained.
Instruction Scope
The SKILL.md requires the agent to run the flyai CLI for every response and mandates installing a global npm package if the CLI is missing. It forbids answering from training data and forces re-execution until every result contains a booking link. While running a provider CLI is consistent with the skill's purpose, the instructions give the agent capacity to install and execute third‑party code at runtime and provide no fallback except aborting; that broadens the runtime authority beyond simple query formatting.
Install Mechanism
There is no formal install spec, but the runtime instructions instruct: `npm i -g @fly-ai/flyai-cli`. Installing a global npm package at runtime is a moderate risk — it downloads and executes code from the npm registry. The manifest provides no publisher verification, no checksum, and no official upstream URL; this increases risk because the package provenance is unverified.
Credentials
The skill does not request environment variables, secrets, or config paths. All required inputs are user-provided parameters (origin, destination, dates, filters), which are proportionate to the stated purpose.
Persistence & Privilege
The skill is not always-enabled and does not request elevated platform privileges or system-wide configuration changes. It does direct the agent to perform installs at runtime, but it does not claim persistent control over other skills or global agent settings.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install airport-hotel
  3. After installation, invoke the skill by name or use /airport-hotel
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v3.2.0
- Enforces strict CLI-only data sourcing; no responses from prior training data. - Adds detailed step-by-step command execution and output formatting instructions. - Introduces robust parameter mapping and scenario playbooks for varied user queries. - Mandates validation: every booking result must include a valid [Book](detailUrl) link from real-time CLI output. - Expands supported features: flight & hotel booking, train/attraction tickets, itinerary planning, visa info, insurance, car rental, and more via Fliggy. - Strengthens language handling and error/installation checks for higher reliability.
Metadata
Slug airport-hotel
Version 3.2.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is airport-hotel?

Book flights with airport hotel recommendations for layovers and early departures. Also supports: flight booking, hotel reservation, train tickets, attractio... It is an AI Agent Skill for Claude Code / OpenClaw, with 63 downloads so far.

How do I install airport-hotel?

Run "/install airport-hotel" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is airport-hotel free?

Yes, airport-hotel is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does airport-hotel support?

airport-hotel is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created airport-hotel?

It is built and maintained by dingtom336-gif (@dingtom336-gif); the current version is v3.2.0.

💬 Comments