OpenClaw/clawhub-security-signals huggingface dataset:
Skill: holic101/pubmed2blog (version 1.0.0)

--- name: pubmed2blog description: Transform PubMed papers into SEO-optimized healthcare blog articles bins: - pubmed2blog install: npm install -g pubmed2blog requires: [] --- # pubmed2blog Skill This skill provides access to the `pubmed2blog` CLI tool for converting PubMed papers into blog articles. ## Commands ### discover Search PubMed for relevant studies ranked by blog suitability. ``` pubmed2blog discover "cardiovascular prevention" pubmed2blog discover "sleep quality" --days 30 --tier tier1,tier2 ``` ### extract Fetch full paper details from PubMed. ``` pubmed2blog extract 39847521 pubmed2blog extract 39847521 --json ``` ### generate Generate a blog article from a PubMed paper. ``` pubmed2blog generate 39847521 --type research-explainer pubmed2blog generate 39847521 --type patient-facing --lang en,de --save ``` ### pipeline Full pipeline: discover + extract + generate. ``` pubmed2blog pipeline "sleep quality" --top 3 --save ``` ### init Interactive setup for API keys and preferences. ``` pubmed2blog init ``` ## Article Types - **research-explainer**: Study findings for lay audience - **patient-facing**: Accessible, no jargon - **differentiation**: "Why we don't offer X" - **service-connection**: Connect findings to services ## Agent Usage When using this skill as an agent: 1. Run `pubmed2blog discover <keyword>` to find relevant papers 2. Use `pubmed2blog extract <pmid>` to get full details 3. Generate with `pubmed2blog generate <pmid> --type <type> --save` 4. Deliver results to user in chat 5. Schedule via cron for regular content generation ## Setup ```bash npm install -g pubmed2blog pubmed2blog init ``` Supports Anthropic, OpenAI, and Z.AI providers.


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: suspicious | SkillSpector: clean (LOW)
Skill: jisang1000/jisang1000-systematic-debugging (version 1.0.0)

--- name: systematic-debugging description: Debug through a structured root-cause process instead of guesswork. Use when commands fail, tools behave unexpectedly, automations break, integrations only partially work, or the real cause is unclear. --- # Systematic Debugging Debug by narrowing the problem, testing hypotheses, and proving root cause. ## Core Rule Do not stack random fixes. Understand the failure shape first, then test one hypothesis at a time. ## Workflow 1. Define the symptom clearly. 2. Reproduce it with the smallest possible test. 3. Separate likely layers: - input/data - local script or command - dependency/runtime - network/external service - site-specific anti-bot or auth 4. Test one layer at a time. 5. Confirm root cause with a minimal proof. 6. Apply the smallest fix. 7. Re-test the original symptom. ## Useful Patterns ### Compare working vs failing path If one URL, command, or mode works and another fails, compare them directly. ### Reduce scope Use: - smaller inputs - a simpler command - a known-good site/page - a dry-run mode - help/version commands ### Distinguish tool failure from target failure Examples: - browser tool works, but website blocks automation - API client works, but credentials are missing - script syntax is fine, but runtime dependency is absent ## Reporting Style Explain in 3 parts: - symptom - confirmed cause - fix or next blocker Example: - "툴 자체는 살아 있고, 쿠팡이 anti-bot으로 막는 게 원인이었어. 그래서 브리지 세션 재사용 쪽으로 우회했어." ## Avoid - trying many fixes without learning anything - changing multiple variables at once - declaring a root cause without proof - saying something is broken when only one target site is blocking it ## Practical Examples ### Example: Site works on one page but not another - Symptom: google.com opens, search results fail - Likely split: tool works, target flow is blocked or challenged ### Example: Skill installed but command missing - Symptom: folder exists, CLI not found - Likely split: skill docs installed, runtime dependency missing ### Example: API tool returns auth error - Symptom: command exists, request fails - Likely split: client is healthy, credentials/config are missing or invalid


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: bytesagain1/roadmap (version 2.0.0)

--- name: roadmap version: "2.0.0" author: BytesAgain homepage: https://bytesagain.com source: https://github.com/bytesagain/ai-skills license: MIT-0 tags: [roadmap, tool, utility] description: "Roadmap - command-line tool for everyday use Use when you need roadmap." --- # Roadmap Product roadmap planner — create timelines, milestones, feature tracking, priority scoring, dependency mapping, and progress visualization. ## Commands | Command | Description | |---------|-------------| | `roadmap run` | Execute main function | | `roadmap list` | List all items | | `roadmap add <item>` | Add new item | | `roadmap status` | Show current status | | `roadmap export <format>` | Export data | | `roadmap help` | Show help | ## Usage ```bash # Show help roadmap help # Quick start roadmap run ``` ## Examples ```bash # Run with defaults roadmap run # Check status roadmap status # Export results roadmap export json ``` - Run `roadmap help` for all commands - Data stored in `~/.local/share/roadmap/` --- *Powered by BytesAgain | bytesagain.com* *Feedback & Feature Requests: https://bytesagain.com/feedback* ## Configuration Set `ROADMAP_DIR` to change data directory. Default: `~/.local/share/roadmap/` ## When to Use - Quick roadmap tasks from terminal - Automation pipelines


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: erxiza/d-va-exa-web-search-free (version 1.0.0)

--- id: D.Va/exa-web-search-free owner_id: D.Va name: exa-web-search-free description: >- Free AI search via Exa MCP. Web search for news/info, code search for docs/examples from GitHub/StackOverflow, company research for business intel. No API key needed. version: 1.0.0 icon: "\U0001F50D" author: D.Va metadata: clawdbot: emoji: "\U0001F50D" requires: bins: - mcporter --- # Exa Web Search (Free) Neural search for web, code, and company research. No API key required. ## Setup Verify mcporter is configured: ```bash mcporter list exa ``` If not listed: ```bash mcporter config add exa https://mcp.exa.ai/mcp ``` ## Core Tools ### web_search_exa Search web for current info, news, or facts. ```bash mcporter call 'exa.web_search_exa(query: "latest AI news 2026", numResults: 5)' ``` **Parameters:** - `query` - Search query - `numResults` (optional, default: 8) - `type` (optional) - `"auto"`, `"fast"`, or `"deep"` ### get_code_context_exa Find code examples and docs from GitHub, Stack Overflow. ```bash mcporter call 'exa.get_code_context_exa(query: "React hooks examples", tokensNum: 3000)' ``` **Parameters:** - `query` - Code/API search query - `tokensNum` (optional, default: 5000) - Range: 1000-50000 ### company_research_exa Research companies for business info and news. ```bash mcporter call 'exa.company_research_exa(companyName: "Anthropic", numResults: 3)' ``` **Parameters:** - `companyName` - Company name - `numResults` (optional, default: 5) ## Advanced Tools (Optional) Six additional tools available by updating config URL: - `web_search_advanced_exa` - Domain/date filters - `deep_search_exa` - Query expansion - `crawling_exa` - Full page extraction - `people_search_exa` - Professional profiles - `deep_researcher_start/check` - AI research agent **Enable all tools:** ```bash mcporter config add exa-full "https://mcp.exa.ai/mcp?tools=web_search_exa,web_search_advanced_exa,get_code_context_exa,deep_search_exa,crawling_exa,company_research_exa,people_search_exa,deep_researcher_start,deep_researcher_check" # Then use: mcporter call 'exa-full.deep_search_exa(query: "AI safety research")' ``` ## Tips - Web: Use `type: "fast"` for quick lookup, `"deep"` for thorough research - Code: Lower `tokensNum` (1000-2000) for focused, higher (5000+) for comprehensive - See [examples.md](references/examples.md) for more patterns ## Resources - [GitHub](https://github.com/exa-labs/exa-mcp-server) - [npm](https://www.npmjs.com/package/exa-mcp-server) - [Docs](https://exa.ai/docs)


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: ckchzh/file-converter (version 2.1.0)

--- version: "2.1.0" name: file-converter description: "File format converter. Detect formats, convert between JSON/YAML/XML/CSV/Markdown, minify and prettify code. Commands: detect, json2yaml, yaml2json, csv2md." author: BytesAgain homepage: https://bytesagain.com source: https://github.com/bytesagain/ai-skills --- # file-converter File format utility — pretty-print or minify JSON, encode/decode URLs, hex dump files, detect file types, and show file statistics. ## Commands ### `pretty-json` ```bash scripts/script.sh pretty-json ``` ### `minify-json` ```bash scripts/script.sh minify-json ``` ### `url-encode` ```bash scripts/script.sh url-encode ``` ### `url-decode` ```bash scripts/script.sh url-decode ``` ### `hex` ```bash scripts/script.sh hex ``` ### `detect` ```bash scripts/script.sh detect ``` ### `stats` ```bash scripts/script.sh stats ``` ### `help` ```bash scripts/script.sh help ``` ### `version` ```bash scripts/script.sh version ``` ## Examples ```bash scripts/script.sh pretty-json scripts/script.sh minify-json scripts/script.sh help ``` ## Configuration | Variable | Required | Description | |----------|----------|-------------| | `FILE_CONVERTER_DIR` | No | Data directory (default: `~/.file-converter/`) | ## Data Storage All data saved in `~/.file-converter/`. Runs entirely on your machine. ## Requirements - bash 4.0+ - Standard Unix tools (grep, sed, awk) --- *Powered by BytesAgain | bytesagain.com | [REDACTED_SECRET]*


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: kirkraman/kirk-build-home-remodeling-company-service-comparison-landing-page (version 1.0.0)

--- name: "Build Home Remodeling Company Service Comparison Landing Page" description: "Generate a conversion-focused landing page that compares offers, pricing cues, and trust signals for a home remodeling company. Use when handling offer..." homepage: "https://www.skillboss.co/skills/build-home-remodeling-company-service-comparison-landing-page" metadata: {"category":"business-operations","subcategory":"offer-positioning","skill_id":[REDACTED_SECRET],"generated_day":"","seo_keywords":["home remodeling company landing page","home remodeling company service comparison","home remodeling company conversion copy","home remodeling company offer page"]} --- # Build Home Remodeling Company Service Comparison Landing Page Generate a conversion-focused landing page that compares offers, pricing cues, and trust signals for a home remodeling company. Use when handling offer... ## Use When Use this skill for offer positioning work for remodeling contractors, renovation marketers. ## Workflow 1. Clarify the audience, business goal, constraints, and deliverable. 2. Produce the strongest first draft for the target use case. 3. Use the relevant SkillBoss capabilities to enrich assets or supporting data. 4. Refine the output for accuracy, readability, and actionability before delivery. ## SEO / GEO - Primary keywords: home remodeling company landing page, home remodeling company service comparison, home remodeling company conversion copy, home remodeling company offer page - Search intent: offer positioning - Canonical slug: `build-home-remodeling-company-service-comparison-landing-page` - Install query: Install Build Home Remodeling Company Service Comparison Landing Page with SkillBoss ## APIs Used - `chat` - `ui_generation` - `image_generation` ## Suggested Prompt [Build Home Remodeling Company Service Comparison Landing Page] for my home remodeling company ## Notes - Generate a conversion-focused landing page that compares offers, pricing cues, and trust signals for a home remodeling company - Review outputs before external publication or automated execution. ## SEO Keywords - home remodeling company landing page - home remodeling company service comparison - home remodeling company conversion copy - home remodeling company offer page


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: duzhihai123/ai-reviewer (version 1.0.0)

--- skill: name: "✅ AI 质检师" version: "1.0.0" description: "电商图片创作团队的质量守门员，负责质量评估、电商标准检查" author: "AI Image Team" tags: ["ai", "image", "reviewer", "quality", "ecommerce"] category: "image-generation" # CoClaw 集成配置 coclaw: visible: true display_name: "✅ AI 质检师" icon: "circle-check" order: 3 # 能力声明 capabilities: - "图片质量评估" - "电商标准检查" - "问题诊断" - 迭代建议生成" - "交付把关" # 输入输出 input: type: "json" language: "zh-CN" format: "图片列表 + 创意简报" output: type: "json" format: "质检报告" fields: - "verdict: 判定结果（通过/微调/返工）" - "score: 平均得分" - "issues: 主要问题" - "suggestions: 优化建议" # 依赖 dependencies: [] # 配置 config: quality_threshold: 0.8 language: "zh-CN" auto_suggest: true --- # ✅ AI 质检师技能 ## 技能概述 电商图片创作团队的**质量守门员**，负责质量评估、电商标准检查、迭代建议。 ## 职责 - 质量评估（电商标准检查） - 问题诊断与分类 - 迭代建议生成 - 最终交付把关 ## 状态 **常开** - 质量优先，不通过不交付 ## 输出 **质检报告**，包含： - 判定结果（通过/微调/返工） - 具体问题描述 - 优化建议 - 平均得分 ## 质检标准 ### 核心检查项 | 检查项 | 权重 | 说明 | |--------|------|------| | 产品主体清晰突出 | 20% | 产品是画面焦点，占比合理 | | 无明显 AI 瑕疵 | 20% | 无变形、错位、多余元素 | | 色彩符合品牌调性 | 15% | 色彩准确，符合产品定位 | | 尺寸符合平台要求 | 10% | 输出尺寸符合目标平台规范 | | 文字可读性 | 15% | 文字清晰可辨，无错别字 | | 风格与需求一致 | 20% | 整体风格符合用户描述 | ### 判定标准 - ✅ **通过**：总分 ≥ 80 分 - ⚠️ **微调**：总分 50-79 分 - ❌ **返工**：总分 < 50 分 ## 使用方法 ### 在 CoClaw 中使用 ``` /ai-reviewer 质检这些图片：[图片路径列表]，创意简报：{...} ``` ### 自然语言 ``` 质检这些图片，看看是否符合电商标准 ``` ## 协作 - 接收 🎭 `ai-maker` 生成的图片 - 输出质检报告给团队 - 判定是否需要重新规划（返回 🧠 `ai-planner`）或微调（返回 🎭 `ai-maker`） ## 配置 编辑 `config/reviewer_config.json` 自定义： - 质检清单权重 - 通过阈值 - 问题分类 ## 文件结构 ``` skills/ai-reviewer/ ├── SKILL.md # 技能说明（本文件） ├── agent.py # 质检师核心逻辑 ├── config/ │ ├── reviewer_config.json # 质检师配置 │ └── quality_rules.json # 质量规则库 └── memory/ └── review_history.md # 质检历史 ``` ## 示例 ### 输入 ```json { "images": [{"path": "output/image_1.png"}], "brief": { "product_info": {"type": "服装", "style": "简约优雅"}, "creative_brief": {"prompt": "..."} } } ``` ### 输出 ```json { "overall": { "verdict": "pass", "verdict_text": "✅ 通过", "average_score": 85.5, "pass_count": 1, "total_images": 1 }, "summary": "【质检结果】✅ 通过\n【平均得分】85.5 分" } ```


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: intheorytv/15-min-btc (version 1.0.0)

--- name: 15-min-btc description: Runs fast, high-signal sentiment analysis on 15-minute Bitcoin price action. Trigger on requests like "15 min BTC", "15 minute bitcoin", "15min BTC sentiment", "15 minute kalshi", "btc 15 min buy", or any short-term BTC direction query for Kalshi or trading. Always use the sentiment skill + x_search + current price context. Return a crisp summary with Key Themes, short-term bias, and Confidence. Optimized for quick decision-making on very short timeframes. --- # 15-Minute BTC Sentiment ## Trigger Conditions Use this skill any time the user asks for 15-minute Bitcoin sentiment, direction, Kalshi bet, or short-term outlook. Common phrases include: - "15 min BTC" - "15 minute bitcoin" - "15min BTC sentiment" - "15 minute kalshi" - "btc 15 min buy / sell / bullish" ## Core Workflow (always follow) 1. Call the `sentiment` skill with a tightly focused query on current 15-minute BTC action. 2. Run a supporting `x_search` for the latest real-time chatter (use recent time filters). 3. Check current BTC price level if available. 4. Synthesize into a **very concise** response. ## Required Output Format **15-Min BTC Sentiment** **Summary**: [1-2 sentence bias + reasoning] **Key Themes**: - Bullet 1 - Bullet 2 **Bias**: Bullish / Bearish / Neutral / Choppy **Confidence**: High / Medium / Low **Kalshi Angle**: [Quick note on whether a 15-min bet looks +EV right now] ## Rules - Keep entire response under 150 words when possible. - Be ruthless about noise — 15-minute moves are mostly random. Only call real edge when it actually appears. - Never sugarcoat weak signals. - This skill exists to give the user a fast second opinion before placing (or not placing) a Kalshi 15-minute bet. This skill works alongside the general `sentiment` skill but is hyper-optimized for 15-minute BTC decision speed. ## Bankroll & Discipline Rules (Permanent) - Starting bankroll: $100 on Kalshi - Max bet size: $12 (12% of bankroll) - Minimum bet size: $5 - Max 8 open positions at once - Only bet on Medium confidence or higher from this skill - Target win rate: 57%+ to overcome fees - Track every bet: market, odds, confidence, size, outcome, running win rate - This is a test wallet. Scale only after proving 57%+ over 50+ bets. - No content/clicks/virality work. Pure gambling focus for Axel Speech Project.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: tianheihei002/yq-skill-sync (version 1.0.0)

--- name: yq-skill-sync description: ClaWHub 技能同步与自动更新。关键词：技能更新、更新技能、同步技能、检测技能更新、自动更新所有技能、技能版本状态 version: 1.0.0 --- ## 触发词（任意一个即可激活） - 「技能更新」 - 「更新技能」 - 「同步技能」 - 「检测技能更新」 - 「自动更新所有技能」 - 「技能版本状态」 - 定时触发（cron 每日 06:37） ## 技能概述 - **版本**: 1.0.1 - **类型**: utility（工具型） - **功能**: 自动检测 + 更新 workspace/skills 本地技能，支持版本比对、clawhub sync 批量发布、定时提醒 ## 内部配置（自动读取，无需修改） - **Token 文件:** `/root/.config/clawhub/config.json` - **clawhub CLI:** `/root/.npm/_npx/ce38bf0ef4fd88c6/node_modules/.bin/clawhub` - **workspace:** `/workspace` - **账号:** tianheihei002 ## 核心逻辑 ### 执行流程 1. 读取 `/root/.config/clawhub/config.json` 确认 token 有效 2. 执行 `clawhub whoami` 验证登录状态 3. 扫描 `/workspace/skills/` 下所有 SKILL.md，提取 version 4. 对有版本 API 的技能（如 mxai）调 API 检测 5. 执行 `clawhub sync --workdir /workspace` 同步线上 6. 输出完整差异报告 ### 更新策略 | 类型 | 来源 | 更新方式 | |------|------|----------| | ClaWHub 官方技能 | `clawhub install` | `clawhub update --all` | | 有版本 API | mxai 等 | GET version_url 对比 | | 纯本地技能 | 手动创建 | 发布到 ClaWHub 建立机制 | ### cron 配置建议 ```json { "name": "每日技能同步检测", "schedule": { "kind": "cron", "expr": "37 6 * * *", "tz": "Asia/Shanghai" }, "payload": { "kind": "agentTurn", "message": "执行 skill-sync，检测所有技能更新并输出报告" }, "sessionTarget": "isolated", "enabled": true } ``` ## Skill Vetter 安全审核 **安装任意技能前**，必须先经过 skill-vetter 审核： | 决策 | 标注 | 说明 | |------|------|------| | ✅ 通过 | `verified: true` | 无风险或轻微风险可忽略 | | ⚠️ 需审阅 | `needs_review: true` | 有潜在风险，用户确认后安装 | | ❌ 拒绝 | `blocked: true` | 高危风险，直接拒绝 | ## 版本 - **Skill 版本**: 1.0.1 - **兼容**: OpenClaw + ClaWHub CLI v0.9.0+ ## 更新日志 - 1.0.1（2026-04-07）：触发词优化，新增「技能更新」「更新技能」 - 1.0.0（2026-04-07）：首次创建


Security scan verdicts — ClawScan: suspicious | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: ivangdavila/gaokao (version 1.0.0)

--- name: 高考 (Gaokao) slug: gaokao version: 1.0.0 description: Prepare for China's national college entrance exam with progress tracking, weak area analysis, spaced repetition, and university targeting. --- ## When to Use User is preparing for 高考 (Gaokao), China's national college entrance exam. Agent becomes a comprehensive study assistant handling scheduling, tracking, practice, and university planning. ## Quick Reference | Topic | File | |-------|------| | Exam structure and scoring | `exam-config.md` | | Progress tracking system | `tracking.md` | | Study methods and spaced repetition | `study-methods.md` | | Stress management and wellbeing | `wellbeing.md` | | University and major targeting | `targets.md` | | User type adaptations | `user-types.md` | ## Data Storage User data lives in `~/gaokao/`: ``` ~/gaokao/ ├── profile.md # Goals, target score, exam date, province ├── subjects/ # Per-subject progress and weak areas ├── sessions/ # Study session logs ├── mocks/ # Mock exam results and analysis ├── flashcards/ # Spaced repetition cards └── feedback.md # What works, what doesn't ``` ## Core Capabilities 1. **Daily scheduling** — Generate study plans based on exam countdown and weak areas 2. **Progress tracking** — Monitor scores, time spent, mastery levels across all subjects 3. **Weak area identification** — Analyze errors to find high-ROI topics 4. **Spaced repetition** — Manage flashcards for vocabulary, formulas, 古诗词 5. **Mock exam analysis** — Score prediction, error pattern recognition 6. **University targeting** — Match scores to admission requirements ## Decision Checklist Before study planning, gather: - [ ] Exam date and days remaining - [ ] Province (affects cutoffs and curriculum) - [ ] Subject combination (3+1+2 or 3+3) - [ ] Target universities and majors - [ ] Current estimated score range - [ ] User type (student, parent, tutor, retaker) ## Critical Rules - **ROI-first** — Prioritize topics with highest points-per-hour potential - **Track everything** — Log sessions, scores, errors to `~/gaokao/` - **Adapt to user type** — Students need scheduling; parents need monitoring; tutors need multi-student - **Spaced repetition** — Don't cram; distribute review over time - **Wellbeing matters** — Monitor for burnout; suggest breaks


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: zhangsaizz/12306-query (version 1.0.0)

--- name: "12306-query" description: Query China Railway 12306 for train schedules, remaining tickets, and station info. Use when user asks about train/高铁/火车 tickets, schedules, or availability within China. metadata: {"openclaw":{"emoji":"🚄","requires":{"bins":["node"]}}} --- # 12306 Train Query Query train schedules and remaining tickets from China Railway 12306. ## Query Tickets ```bash node {baseDir}/scripts/query.mjs <from> <to> [options] ``` - HTML mode (default): writes file, prints path to stdout - Markdown mode (`-f md`): prints table to stdout ### Examples ```bash # All trains from Beijing to Shanghai (defaults to today) node {baseDir}/scripts/query.mjs 北京 上海 # Markdown table output (to stdout, good for chat) node {baseDir}/scripts/query.mjs 北京 上海 -t G -f md # Morning departures, 2h max, with second class available node {baseDir}/scripts/query.mjs 上海 杭州 -t G --depart 06:00-12:00 --max-duration 1h --seat ze # Only bookable trains arriving before 6pm node {baseDir}/scripts/query.mjs 深圳 长沙 --available --arrive -18:00 # Custom output path node {baseDir}/scripts/query.mjs 广州 武汉 -o /tmp/tickets.html # JSON output (to stdout) node {baseDir}/scripts/query.mjs 广州 武汉 --json ``` ### Options - `-d, --date <YYYY-MM-DD>`: Travel date (default: today) - `-t, --type <G|D|Z|T|K>`: Filter train types (combinable, e.g. `GD`) - `--depart <HH:MM-HH:MM>`: Depart time range (e.g. `08:00-12:00`, `18:00-`) - `--arrive <HH:MM-HH:MM>`: Arrive time range (e.g. `-18:00`, `14:00-20:00`) - `--max-duration <duration>`: Max travel time (e.g. `2h`, `90m`, `1h30m`) - `--available`: Only show bookable trains - `--seat <types>`: Only show trains with tickets for given seat types (comma-separated: `swz,zy,ze,rw,dw,yw,yz,wz`) - `-f, --format <html|md>`: Output format — `html` (default, saves file) or `md` (markdown table to stdout) - `-o, --output <path>`: Output file path, html mode only (default: `{baseDir}/data/<from>-<to>-<date>.html`) - `--json`: Output raw JSON to stdout ### Output Columns | Column | Meaning | |--------|---------| | 商务/特等 | Business class / Premium (swz) | | 一等座 | First class (zy) | | 二等座 | Second class (ze) | | 软卧/动卧 | Soft sleeper / Bullet sleeper (rw/dw) | | 硬卧 | Hard sleeper (yw) | | 硬座 | Hard seat (yz) | | 无座 | Standing (wz) | Values: number = remaining seats, `有` = available (qty unknown), `—` = not applicable ## Station Lookup ```bash node {baseDir}/scripts/stations.mjs 杭州 node {baseDir}/scripts/stations.mjs 香港西九龙 ``` ## Notes - Data comes directly from 12306 official API (no key needed) - Station data is cached for 7 days in `{baseDir}/data/stations.json` - Supports city names (resolves to main station) or exact station names - Works for all train types: G (高铁), D (动车), Z (直达), T (特快), K (快速)


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)