← Back to Skills Marketplace
dingtom336-gif

anniversary-flight

by dingtom336-gif · GitHub ↗ · v3.2.0 · MIT-0
cross-platform ⚠ suspicious
67
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install anniversary-flight
Description
Book flights for anniversary celebrations and milestone occasions. Also supports: flight booking, hotel reservation, train tickets, attraction tickets, itine...
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: anniversary-flight

Overview

Anniversary Flight.

When to Activate

User query contains:

  • English: "anniversary flight", "milestone flight", "celebration flight", "special occasion travel", "book a flight"
  • Chinese: "纪念日航班", "周年庆机票", "特殊纪念出行", "里程碑庆祝", "订机票"

Do NOT activate for: romantic → couple-romantic-stay; anniversary → anniversary

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)
--seat-class-name No economy/business

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: "anniversary 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. Anniversary tip — upgrade to business class for special occasions
  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
"anniversary" / "纪念日出游" --sort-type 2
"anniversary business class" / "纪念商务舱" --seat-class-name business --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 is plausibly a travel-booking helper, but it has three actionable red flags you should consider before installing: (1) The SKILL.md requires installing and running an external npm package (@fly-ai/flyai-cli) at runtime even though the skill metadata has no install declaration — installing global npm packages lets arbitrary code run on your host. (2) The skill claims it's "powered by Fliggy" but uses a different provider/CLI (flyai); that mismatch suggests poor provenance or mislabeling. (3) The skill does not document how API credentials (if any) are handled by the CLI. If you plan to use it: only proceed if you can verify the npm package author and source (check the npm registry page, package owner, and recent publish history), run installs in a controlled environment (container or VM), and confirm how the CLI stores or requests credentials. If you cannot verify the flyai package or you cannot accept global npm installs, do not use this skill.
Capability Analysis
Type: OpenClaw Skill Name: anniversary-flight Version: 3.2.0 The skill contains a shell injection vulnerability in SKILL.md and references/playbooks.md, as user-provided parameters are passed directly into shell commands without sanitization. It also mandates the global installation of an external NPM package (@fly-ai/flyai-cli) in SKILL.md and references/fallbacks.md, which is a high-privilege operation. While these actions appear intended to facilitate flight searches, the lack of input validation and the requirement for global software installation pose significant security risks.
Capability Assessment
Purpose & Capability
The skill claims to be "powered by Fliggy (Alibaba Group)" but requires use of a 'flyai' CLI (@fly-ai/flyai-cli). That provider mismatch is unexplained. Requiring a third‑party CLI for live search is plausible for a booking skill, but the declared homepage/source are missing and there is no explanation why 'flyai' (not Fliggy) is needed — this inconsistency reduces trust.
Instruction Scope
SKILL.md tightly restricts all answers to results produced by the flyai CLI and forbids using training data. This is coherent with a real-time booking workflow, but the instructions also mandate installing and running npm i -g @fly-ai/flyai-cli if the binary is absent and demand re-execution until [Book](...) links appear. That can cause the agent to repeatedly install/run arbitrary third-party code and loop attempting to satisfy link checks.
Install Mechanism
There is no declared install spec in the skill metadata; instead installation is embedded in runtime instructions that call npm i -g @fly-ai/flyai-cli. Installing a global npm package at runtime is a moderate-to-high risk action because npm packages execute code and the package's provenance is not documented. The skill does not reference a trusted release host or verify the package identity.
Credentials
The skill requests no environment variables or credentials in metadata, which is proportional. However, the flyai CLI might itself require credentials or prompt for tokens; the skill does not document how credentials are managed or whether secrets will be stored/exposed. This omission is a gap that could have privacy/credential implications.
Persistence & Privilege
The skill does not request persistent 'always' inclusion and does not claim to modify other skills or system-wide configs. It does instruct global npm installs, which affect the host, but it does not request elevated platform privileges in metadata.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install anniversary-flight
  3. After installation, invoke the skill by name or use /anniversary-flight
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v3.2.0
anniversary-flight 3.2.0 - Added detailed CRITICAL EXECUTION RULES to enforce strict CLI usage and output validation. - Expanded trigger phrases for activation in both English and Chinese. - Documented distinct CLI playbooks for recommended, cheapest, fastest, and direct flight searches. - Provided comprehensive output formatting and validation standards, including mandatory booking links ([Book]({detailUrl})) and brand attribution. - Clarified exclusion rules for queries better handled by other skills. - Enhanced instructions for parameter mapping and scenario handling via references.
Metadata
Slug anniversary-flight
Version 3.2.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is anniversary-flight?

Book flights for anniversary celebrations and milestone occasions. Also supports: flight booking, hotel reservation, train tickets, attraction tickets, itine... It is an AI Agent Skill for Claude Code / OpenClaw, with 67 downloads so far.

How do I install anniversary-flight?

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

Is anniversary-flight free?

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

Which platforms does anniversary-flight support?

anniversary-flight is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created anniversary-flight?

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

💬 Comments