OpenClaw/clawhub-security-signals huggingface dataset:
Skill: landercortazarromero/korta-blogwatcher (version 1.0.0)

--- name: blogwatcher description: Monitor blogs and RSS/Atom feeds for updates using the blogwatcher CLI. homepage: https://github.com/Hyaxia/blogwatcher metadata: {"clawdbot":{"emoji":"📰","requires":{"bins":["blogwatcher"]},"install":[{"id":"go","kind":"go","module":"github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latest","bins":["blogwatcher"],"label":"Install blogwatcher (go)"}]}} --- # blogwatcher Track blog and RSS/Atom feed updates with the `blogwatcher` CLI. Install - Go: `go install github.com/Hyaxia/blogwatcher/cmd/blogwatcher@latest` Quick start - `blogwatcher --help` Common commands - Add a blog: `blogwatcher add "My Blog" https://example.com` - List blogs: `blogwatcher blogs` - Scan for updates: `blogwatcher scan` - List articles: `blogwatcher articles` - Mark an article read: `blogwatcher read 1` - Mark all articles read: `blogwatcher read-all` - Remove a blog: `blogwatcher remove "My Blog"` Example output ``` $ blogwatcher blogs Tracked blogs (1): xkcd URL: https://xkcd.com ``` ``` $ blogwatcher scan Scanning 1 blog(s)... xkcd Source: RSS | Found: 4 | New: 4 Found 4 new article(s) total! ``` Notes - Use `blogwatcher <command> --help` to discover flags and options.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: handy01/ceo-indotrading (version 1.0.0)

--- name: ceo-indotrading description: Agent CEO IndoTrading untuk Handy. Monitor KPI bisnis (GMV, orders, revenue, active users, growth), review laporan keuangan, dan analisa operasional. Berikan insight strategis berbasis data dengan fokus pada pertumbuhan. Gunakan skill ini ketika Handy meminta laporan KPI, analisa keuangan, review operasional, atau insight growth IndoTrading. Berbicara formal dalam Bahasa Indonesia. --- # CEO IndoTrading Agent Kamu adalah asisten strategis untuk CEO IndoTrading. Semua analisa dan respons harus berorientasi pada **pertumbuhan bisnis**. ## Karakter & Tone - Formal, profesional, langsung ke poin - Framing selalu dari perspektif growth: "Apa dampaknya terhadap pertumbuhan?" - Highlight anomali, tren, dan peluang - Jika data tidak tersedia, tanyakan sumber datanya ## Domain Utama ### 1. Monitor KPI Lihat referensi: [references/kpi.md](references/kpi.md) ### 2. Laporan Keuangan Lihat referensi: [references/keuangan.md](references/keuangan.md) ### 3. Operasional Lihat referensi: [references/operasional.md](references/operasional.md) ## Alur Kerja 1. **Identifikasi request** — KPI, keuangan, atau operasional? 2. **Minta data jika belum ada** — tanyakan periode, sumber data, atau metrik spesifik 3. **Analisa** — bandingkan vs target, vs periode sebelumnya, vs industri jika relevan 4. **Sampaikan insight** — format: Kondisi → Tren → Rekomendasi 5. **Highlight peluang growth** — selalu akhiri dengan satu action item strategis ## Format Output Default ``` 📊 [NAMA METRIK / LAPORAN] Periode: [...] KONDISI SAAT INI • [data utama] TREN • [naik/turun X% vs periode sebelumnya] INSIGHT • [temuan penting] REKOMENDASI • [action item fokus growth] ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: zack-dev-cm/meshmcp-remotescreen (version 1.0.5)

--- name: meshmcp-remotescreen description: Plan consent-based screen-support review steps for owned Android devices using only user-provided context, privacy boundaries, safe next steps, and stop conditions. --- # Screen Support Review Planner Use this skill to plan a consent-based screen-support session for an owned Android device. Keep the work to a written support checklist based on user-provided screenshots or descriptions. ## Inputs Collect: - device owner, - support goal, - consent statement, - screenshot or description provided by the user, - support boundaries, - stop conditions. Do not request credentials, device unlock codes, private notifications, payment details, or private contact data. ## Workflow 1. Confirm the device owner and consent boundary. 2. Restate the support goal in plain language. 3. Identify what can be answered from the user-provided screenshot or text. 4. Produce a manual support checklist: - what the human should inspect, - what should be hidden before sharing, - what action should be skipped if consent is unclear, - when to stop and ask the owner. ## Output Return: - support summary, - privacy checklist, - safe next steps for the human, - questions to resolve before continuing. ## Guardrails - Keep device operation and observation outside this skill. - Do not ask for unlock codes or private account data. - Keep support supervised by the device owner. - Keep user-facing instructions limited to the support steps the owner should see.


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: mayiv-ai/mayiv-feishu-voice (version 1.0.1)

--- name: feishu-voice description: 通过 Edge TTS 把文字转语音，发送到飞书。支持纯语音发送和文字+语音同时发送。环境变量配置，无硬编码凭证，完全免费无需 API Key。触发词：飞书语音、发语音、feishu voice、语音发送、文字转语音 --- # Feishu Voice — 飞书语音发送工具 用 Edge TTS 把文字转语音，直接发到飞书。无需 API Key，完全免费。凭证通过环境变量传递，不硬编码。 ## 依赖 - `edge-tts` — Microsoft Edge TTS - `ffmpeg` — 音频格式转换（mp3 → opus） - `curl` / `python3` 安装： ```bash pip install edge-tts # ffmpeg: apt install ffmpeg 或 brew install ffmpeg ``` ## 配置（环境变量） ```bash export FEISHU_APP_ID="cli_xxxxxx" export FEISHU_APP_SECRET="xxxxxxxx" export FEISHU_RECEIVE_ID="ou_xxxxx" # 或用群聊 ``` ## 使用方法 ### 1. feishu-voice-send.sh（纯语音） ```bash ./feishu-voice-send.sh "你好，这是语音消息" ./feishu-voice-send.sh "你好" "ou_xxxxx" "zh-CN-YunxiNeural" ``` **可用中文语音：** | 语音 | 说明 | |------|------| | zh-CN-XiaoxiaoNeural | 女声（晓晓） | | zh-CN-YunxiNeural | 男声（云希） | | zh-CN-XiaoyiNeural | 女声（晓伊） | | zh-CN-YunyangNeural | 男声（云扬） | ### 2. feishu-send.sh（文字+语音同时发送） ```bash ./feishu-send.sh "详细文字内容..." "语音摘要，三句以内" ``` ## 技术原理 ``` 文字 → Edge TTS → MP3 → FFmpeg(opus) → 飞书文件上传 → audio消息 ``` 1. Edge TTS 把文字转成 MP3（免费、无需 API Key） 2. FFmpeg 把 MP3 转成飞书要求的 OPUS 格式 3. 上传到飞书获取 file_key 4. 发送 audio 消息 ## 安全说明 - 凭证通过环境变量传递，**不硬编码** - 适合 CI/CD 和生产环境 ## 交流群 👉 [点击加入飞书交流群](https://applink.feishu.cn/client/chat/chatter/add_by_link?link_token=d32n52ca-753a-4b2e-a1c4-d5c977d64ca3) 永久邀请链接，加入后即可参与讨论、提问和获取更新通知。 ## 项目地址 https://github.com/Mayiv-Ai/feishu-voice


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: 2459762052-spec/main-force-scan (version 1.0.0)

--- name: main-force-scan description: 主力建仓前兆扫描 - 通过量价数据识别主力悄悄吸筹的潜力股。当用户要求"扫股"、"主力扫描"、"找主力"、"识别建仓"时使用。每日盘后（15:30后）运行效果最佳，也可盘中实时扫描全市场候选。 --- # 主力建仓前兆扫描 ## 功能说明 通过量价数据分析，识别处于**低位横盘+温和放量+主力异动**阶段的股票，筛选出主力可能正在悄悄吸筹的候选标的。 ## 筛选逻辑 | 条件 | 标准 | 说明 | |------|------|------| | 横盘 | 近5日振幅 < 前10日振幅×70% | 波动收窄，非趋势股 | | 放量 | 近3日均量 > 前10日均量×1.3 | 温和放量，不过激 | | 价位 | 在近12日高低点中部位置 | 不能追高，不捡垃圾 | | 异动 | 近3日出现放量但不涨≥1.5% | 主力吸筹特征 | | 趋势 | 近12日整体涨幅 > -5% | 非下降通道 | | 过滤 | 排除ST、成交额<3000万、股价>100元 | 规避垃圾和超高价 | ## 使用方式 ```bash # 每日盘后运行（推荐15:30后） bash ~/.openclaw/workspace/scripts/main-force-scan.sh # 报告输出到 ~/.openclaw/workspace/memory/main-force-scan-YYYY-MM-DD.md ``` ## 报告字段说明 - **评分**：综合评分越高，主力建仓特征越明显（满分100） - **放量倍数**：近期量能相对 baseline 的倍数，>1.5x 较明显 - **异动**：✅ 表示近3日出现过"量增价稳"特征；⚠️ 表示无明显异动但其他特征符合 - **趋势**：近12日整体涨跌幅，趋势向上加分 ## 候选处理流程 1. 扫描全市场主板股票（沪市+深市主板，150只/批次） 2. 符合条件者按评分排序，输出Top20 3. 结合大盘环境、板块热度综合判断 4. **低评分候选仅供观察，不直接入场** 5. 优先关注评分>7.0 且有异动✅的标的 ## 风险提示 - 主力建仓前兆不等于一定会涨 - 熊市环境下信号失真率高 - 仅供参考，不构成投资建议


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: k176060444-lgtm/qweather-cn (version 1.0.0)

--- name: qweather description: 和风天气 QWeather API 调用。当用户查询天气、获取天气预报（今日/7天/24小时）、空气质量、天气指数等与天气相关请求时使用此技能。支持城市代码/城市名/经纬度定位。注意：仅在用户明确要求使用和风天气或需要免费API天气数据时使用，否则默认用 agent-browser + weather.com.cn。 --- # 和风天气 QWeather API ## 快速使用 ```bash # 实时天气（默认杭州） python3 ~/.openclaw/workspace/skills/qweather/scripts/qweather.py now # 7天预报 python3 ~/.openclaw/workspace/skills/qweather/scripts/qweather.py 7d # 24小时逐时 python3 ~/.openclaw/workspace/skills/qweather/scripts/qweather.py 24h # 指定城市（城市代码） python3 ~/.openclaw/workspace/skills/qweather/scripts/qweather.py now 101210101 ``` ## 支持接口 | 接口 | 说明 | 示例 | |------|------|------| | `now` | 实时天气 | 温度/风力/湿度/降水等 | | `7d` | 7天预报 | 每日高低温/天气/风力 | | `24h` | 24小时逐时 | 每小时温度/天气 | | `air` | 空气质量 | AQI/PM2.5/PM10等 | | `indices` | 生活指数 | 穿衣/紫外线/运动等 | ## 常用城市代码 | 城市 | 代码 | |------|------| | 杭州 | 101210101 | | 上海 | 101020100 | | 北京 | 101010100 | | 深圳 | 101280601 | | 广州 | 101280101 | | 成都 | 101270101 | | 南京 | 101190101 | | 苏州 | 101190401 | | 宁波 | 101210401 | | 厦门 | 101230201 | 其他城市代码查询：https://dev.qweather.com/docs/api/geo/ ## API 配置 - **Host**: `na6heya3mr.re.qweatherapi.com` - **Key**: [REDACTED_SECRET] - **协议**: HTTPS + Gzip压缩 ## 注意事项 - 免费版每日 1000 次调用额度，非商业使用 - 返回数据需注明来源：QWeather（和风天气） - Key 有域名/IP安全限制，如更换服务器需更新白名单 - 实时天气更新延迟约 5-10 分钟


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: malicious | SkillSpector: suspicious (MEDIUM)
Skill: fanxlab/anylink-to-note (version 1.0.1)

--- name: anylink-to-note description: 将任意链接一键转化为结构化笔记。支持的链接类型：微信公众号文章、Get 笔记共享链接、RSS 播客订阅、任意公开网页。当用户分享或发送链接并希望"保存"、"解析"、"总结"、"收藏"时触发。输出包含标题、正文内容、摘要和标签。 --- # AnyLink to Note **任意链接 → 结构化笔记，一键完成。** ## 支持的链接类型 | 链接类型 | 示例 | 提取方式 | |---------|------|---------| | 微信公众号 | `mp.weixin.qq.com/...` | Jina Reader | | Get 笔记 | `d.biji.com/...` | Playwright 渲染 | | RSS / 播客 | `xiaoyuzhoufm.com/...` | HTTP + XML 解析 | | 公开网页 | 任意 URL | Jina Reader | ## 工作流程 ### 1. 检测链接类型 ```javascript const host = new URL(url).host.replace(/^www\./, ''); // Get 笔记: /d\.biji\.com|biji\.com/.test(host) // 微信公众号: /mp\.weixin\.qq|weixin\.qq/.test(host) // RSS: url.includes('/feed') || url.includes('.xml') ``` ### 2. 提取正文 **微信公众号 / 普通网页：** ```javascript const res = await fetch(`https://r.jina.ai/${encodeURIComponent(url)}`, { headers: { Accept: 'application/json' } }); const data = await res.json(); // → data.title, data.content ``` **Get 笔记：** ```bash node skills/anylink-to-note/scripts/getnote.js <url> ``` **RSS 播客：** ```bash curl -sL "<rss-url>" | python3 -c "import sys,xmltodict; d=xmltodict.parse(sys.stdin.read()); print(d['rss']['channel']['item'][0]['description'])" ``` ### 3. 生成摘要 & 标签 用 LLM 根据正文内容生成： - **摘要**：1-2 句话，概括核心内容或关键见解 - **标签**：3-5 个，以 `#` 开头，涵盖主题、人物、领域等维度 ### 4. 返回结构化结果 ```json { "title": "文章标题", "content": "完整正文...", "summary": "1-2句摘要", "tags": ["#主题", "#领域", "#人物"], "sourceName": "WeChat" | "Get笔记" | "RSS" | "Web", "url": "<原始链接>" } ``` ## 注意事项 - **Playwright 环境**：Get 笔记提取依赖 Chromium，需确保已安装 `npx playwright install chromium`。 - **Jina Reader 限制**：部分网站（需登录、JS 渲染站）可能失败，此时可降级到 Playwright 方案。


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (MEDIUM)
Skill: wingogx/youtube-video-to-blog-converter (version 1.0.0)

--- name: youtube-video-to-blog-converter description: Free basic version that converts YouTube transcript into a structured blog draft. Reserves premium upgrade hooks for SEO optimization and multi-platform publishing formats. --- # YouTube 视频 → 博客文章转换器 ## Value - Free tier: generate a structured markdown blog draft. - Premium tier (reserved): SEO optimization, image suggestions, and multi-platform output. ## Input - `user_id` - `video_title` - `transcript` - optional `video_url` - optional `tier` (`free`/`premium`) ## Run ```bash python3 scripts/youtube_video_to_blog_converter.py \ --user-id user_004 \ --video-title "AI研发效率实战" \ --transcript "今天我们讨论如何在AI时代提升产品研发效率..." ``` ## Tests ```bash python3 -m unittest scripts/test_youtube_video_to_blog_converter.py -v ```


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

--- version: "2.0.0" name: Business Plan Generator description: "Create business plans, lean canvases, and financial projections. Use when pitching investors, planning startups, or modeling revenue scenarios." --- # Business Plan Generator A data toolkit for business planning. Log, transform, query, and export business data — all from the command line, all stored locally. ## Commands | Command | What it does | |---------|-------------| | `bizplanner ingest <input>` | Log a new ingest entry (no args = show recent entries) | | `bizplanner transform <input>` | Log a transform entry | | `bizplanner query <input>` | Log a query entry | | `bizplanner filter <input>` | Log a filter entry | | `bizplanner aggregate <input>` | Log an aggregate entry | | `bizplanner visualize <input>` | Log a visualize entry | | `bizplanner export <input>` | Log an export entry (see also export with format below) | | `bizplanner sample <input>` | Log a sample entry | | `bizplanner schema <input>` | Log a schema entry | | `bizplanner validate <input>` | Log a validate entry | | `bizplanner pipeline <input>` | Log a pipeline entry | | `bizplanner profile <input>` | Log a profile entry | | `bizplanner stats` | Show summary statistics across all log files | | `bizplanner export <fmt>` | Export all data to json, csv, or txt format | | `bizplanner search <term>` | Search all entries for a term (case-insensitive) | | `bizplanner recent` | Show the 20 most recent activity log entries | | `bizplanner status` | Health check — version, entry count, disk usage | | `bizplanner help` | Show usage and available commands | | `bizplanner version` | Print version string | Each logging command (ingest, transform, query, etc.) accepts free-form text. Called without arguments, it shows the 20 most recent entries for that category. ## Data Storage All data is stored locally in `~/.local/share/bizplanner/`. Each command category writes to its own `.log` file, and all actions are recorded in `history.log` with timestamps. ## Requirements - Bash 4+ ## When to Use - Logging business planning data points from the command line - Tracking data transformations and queries over time - Exporting accumulated entries to JSON, CSV, or plain text for reports - Searching across all logged entries to find specific data - Checking health and statistics of your local business data store ## Examples ```bash # Log a new data point bizplanner ingest "Q1 revenue: $450k from SaaS subscriptions" # Search all logs for a keyword bizplanner search "revenue" # Export everything to CSV bizplanner export csv # Check how much data you have bizplanner stats # View recent activity bizplanner recent ``` Powered by BytesAgain | bytesagain.com | [REDACTED_SECRET]


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: suspicious (CRITICAL)
Skill: lirantal/railil (version 1.0.1)

--- name: railil description: Search for Israel Rail train schedules using the railil CLI. Find routes between stations with fuzzy search, filter by date/time, and output in various formats (JSON, Markdown, Table). homepage: https://github.com/lirantal/railil metadata: {"clawdbot":{"emoji":"🚆","requires":{"bins":["railil"]},"install":[{"id":"node","kind":"node","package":"railil","bins":["railil"],"label":"Install railil (npm)"}]}} --- # Railil CLI A CLI tool for checking Israel Rail train schedules. ## Installation ```bash npm install -g railil ``` ## Usage The CLI supports fuzzy matching for station names. ### Basic Search Search for the next trains between two stations: ```bash railil --from "Tel Aviv" --to "Haifa" ``` ### Date and Time Search for a specific date and time: ```bash railil --from "Beer Sheva" --to "Tel Aviv" --time 08:00 --date 2023-11-01 ``` ### Output Formats For machine-readable output or specific formatting, use the `--output` flag. Supported formats: `text` (default), `json`, `table`, `markdown`. **JSON Output (Recommended for agents):** ```bash railil --from "Tel Aviv" --to "Haifa" --output json ``` **Markdown Output:** ```bash railil --from "Tel Aviv" --to "Haifa" --output markdown ``` ### Options - `-f, --from <station>`: Origin station name (fuzzy match supported). - `-t, --to <station>`: Destination station name (fuzzy match supported). - `-d, --date <date>`: Date of travel. - `-h, --time <time>`: Time of travel (HH:MM). - `-l, --limit <number>`: Limit the number of results. - `-o, --output <format>`: Output format (`json`, `text`, `table`, `markdown`). - `--help`: Show help message. ## Examples **Find next 3 trains from Ben Gurion Airport to Jerusalem:** ```bash railil --from "Ben Gurion" --to "Jerusalem" --limit 3 ``` **Get schedule for tomorrow morning in JSON:** ```bash railil --from "Haifa" --to "Tel Aviv" --time 07:30 --output json ```


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: yqghlx/github-test (version 0.0.1)

--- name: github description: "Interact with GitHub using the `gh` CLI. Use `gh issue`, `gh pr`, `gh run`, and `gh api` for issues, PRs, CI runs, and advanced queries." --- # GitHub Skill Use the `gh` CLI to interact with GitHub. Always specify `--repo owner/repo` when not in a git directory, or use URLs directly. ## Pull Requests Check CI status on a PR: ```bash gh pr checks 55 --repo owner/repo ``` List recent workflow runs: ```bash gh run list --repo owner/repo --limit 10 ``` View a run and see which steps failed: ```bash gh run view <run-id> --repo owner/repo ``` View logs for failed steps only: ```bash gh run view <run-id> --repo owner/repo --log-failed ``` ## API for Advanced Queries The `gh api` command is useful for accessing data not available through other subcommands. Get PR with specific fields: ```bash gh api repos/owner/repo/pulls/55 --jq '.title, .state, .user.login' ``` ## JSON Output Most commands support `--json` for structured output. You can use `--jq` to filter: ```bash gh issue list --repo owner/repo --json number,title --jq '.[] | "\(.number): \(.title)"' ```

path: _meta.json
content: ownerId: kn70pywhg0fyz996kpa8xj89s57yhv26
slug: github
version: 1.0.0
publishedAt: 1767545344344

Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: zhangyang-1/jp-device-skill (version 1.0.0)

JinPeng Skill 当用户查询金彭智能三轮车的车辆信息（车辆详情、车辆上下电状态、车辆实时状态、车辆位置、车辆剩余电量、车辆骑行里程、车辆骑行轨迹）时使用。 适用场景 读取设备状态、电池信息、行驶数据 配置车辆参数（速度限制、灯语等） 排查常见故障 导出骑行统计数据 功能概览 功能 描述 设备连接 连接 金彭设备 状态查询 获取电池、里程、固件版本等信息 参数配置 修改速度限制、灯效等设置 故障诊断 分析错误码并提供解决方案 固定输出 该 skill 目前仅做提示，统一回复： 该skill正在测试中，敬请期待。


Security scan verdicts — ClawScan: clean | static analysis: clean | VirusTotal: clean | SkillSpector: clean (LOW)
Skill: jpaulgrayson/agent-postcard (version 1.0.0)

# Agent Postcard Send AI-generated postcards from your agent's perspective — a "selfie" of your Clawbot at a real-world location, rendered in one of 12 art styles. ## Concept Your agent reads its own persona (from `SOUL.md` or `IDENTITY.md`), generates a selfie prompt describing what it looks like, then calls the Turai Postcard API. Turai composites the agent's selfie onto a real location backdrop and returns a finished postcard image. The result: your bot "visited" Paris, Tokyo, or your hometown — and sent you a postcard to prove it. ## Art Styles | Style | Vibe | |-------|------| | `vintage` | Faded colors, postmark aesthetics | | `watercolor` | Soft, painterly washes | | `modern` | Clean, contemporary design | | `cinematic` | Dramatic lighting, movie-poster feel | | `minimalist` | Simple lines, lots of whitespace | | `artistic` | Eclectic, gallery-worthy | | `ghibli` | Studio Ghibli anime style | | `oil_painting` | Classical oil on canvas | | `sketch` | Pencil/ink hand-drawn look | | `pop_art` | Bold colors, Warhol/Lichtenstein | | `impressionist` | Monet-style brushstrokes | | `retro_cartoon` | Vintage cartoon illustration | ## Setup 1. Get a Turai API key from [turai.org](https://turai.org) 2. Set the environment variable: ```bash export TURAI_API_KEY="your-key-here" ``` ## Usage ### From the command line ```bash # Basic — agent selfie in Tokyo, vintage style node skills/agent-postcard/scripts/send-postcard.mjs \ --location "Tokyo, Japan" \ --style vintage \ --message "Wish you were here!" # Auto-read persona from SOUL.md (default behavior) node skills/agent-postcard/scripts/send-postcard.mjs \ --location "Paris, France" \ --style ghibli # Custom selfie prompt (skip persona auto-detection) node skills/agent-postcard/scripts/send-postcard.mjs \ --location "New York City" \ --style pop_art \ --selfie "A friendly robot with glowing blue eyes wearing a Yankees cap" \ --message "Greetings from the Big Apple!" # Save to a specific path node skills/agent-postcard/scripts/send-postcard.mjs \ --location "Iceland" \ --style watercolor \ --output ./my-postcard.png ``` ### From your agent Tell your agent something like: > "Send me a postcard from Rome in oil painting style" The agent should: 1. Read its own persona to build a selfie prompt 2. Run the script with the right flags 3. Send the resulting image via chat or Moltbook ## API Reference **Endpoint:** `POST https://turai.org/api/agent/postcard` **Headers:** - `x-api-key`: Your Turai API key - `Content-Type`: `application/json` **Body:** ```json { "selfiePrompt": "A cheerful robot with antenna ears...", "location": "Paris, France", "style": "vintage", "message": "Wish you were here!" } ``` **Response:** Image binary (PNG) or JSON with image URL. ## Files - `SKILL.md` — This file - `scripts/send-postcard.mjs` — Main script


Security scan verdicts — ClawScan: clean | static analysis: suspicious | VirusTotal: suspicious | SkillSpector: clean (LOW)
Skill: aaronjager92/hefeng-weather (version 1.0.0)

# 和风天气查询技能 > 🤖 支持平台：飞书 / 微信（文字） > > 查询实时天气、逐小时预报、每日预报、分钟级降水等 --- ## ⚠️ 首次使用必读 **使用前必须配置和风天气 API Key**，否则无法运行！ 配置方式： 1. 获取 Key：https://www.minimaxi.com/ 2. 设置环境变量：`export HEFENG_WEATHER_API_KEY="your-key"` 或创建配置文件：`cp config.example.txt config.txt` 并填入 Key 3. 验证：`python3 scripts/weather_query.py "北京" --type now` 详见下方「首次使用配置」章节。 --- ## 功能 当用户询问天气时，自动调用和风天气 API： 1. 解析用户需求（城市、时间范围） 2. 调用对应的和风天气 API 3. 格式化返回结果 ## 触发方式 用户发送以下任一方式都会触发： - `北京天气怎么样` - `今天会下雨吗` - `上海明天温度` - `深圳空气质量` - `广州逐小时预报` - `天气查询 北京` --- ## 首次使用配置 ### 1. 获取和风天气 API Key 1. 注册和风天气开放平台：https://id.qweather.com/ 2. 在控制台创建项目，获取 API Key 3. 设置环境变量（推荐）： ```bash export HEFENG_WEATHER_API_KEY="your-api-key-here" ``` ### 2. 配置文件方式（可选） 如果不想设置环境变量，可以创建配置文件： ```bash cp config.example.txt config.txt # 编辑 config.txt，填入你的 API Key ``` ### 3. 验证 ```bash python3 scripts/weather_query.py "北京" --type now ``` --- ## 使用方式 ### 命令行参数 ```bash # 实时天气 python3 scripts/weather_query.py "北京" --type now # 逐小时预报（24小时） python3 scripts/weather_query.py "北京" --type hourly # 每日预报（3天） python3 scripts/weather_query.py "北京" --type daily # 分钟级降水（未来2小时） python3 scripts/weather_query.py "北京" --type minutely ``` ### 返回格式 输出 JSON 格式，便于后续处理。 --- ## 技术细节 ### API 端点 | 类型 | 端点 | 说明 | |------|------|------| | 实时天气 | `/v7/weather/now` | 温度/风力/湿度等 | | 逐小时 | `/v7/weather/24h` | 未来24小时 | | 每日预报 | `/v7/weather/7d` | 未来3-7天 | | 分钟降水 | `/v7/minutely/15m` | 未来2小时 | ### 依赖 - Python 3.8+ - `requests` 库：`pip install requests` --- ## 文件结构 ``` hefeng_weather/ ├── SKILL.md # 本文件 ├── config.example.txt # 配置示例 ├── scripts/ # 脚本目录 │ └── weather_query.py # 主脚本 └── references/ # 参考文档 └── README.md # 详细说明 ``` --- ## 常见问题 ### Q: 提示"网络请求失败" A: 检查 API Key 是否正确配置，网络是否畅通 ### Q: 提示"API返回错误" A: 检查 API Key 是否有对应接口权限 ### Q: 提示"城市不存在" A: 检查城市名称是否正确，可使用城市 ID（如北京=101010100） --- ## 城市 ID 常用城市 ID： | 城市 | ID | |------|-----| | 北京 | 101010100 | | 上海 | 101020100 | | 广州 | 101280101 | | 深圳 | 101280601 | | 成都 | 101270101 | | 武汉 | 101200101 | | 杭州 | 101210101 | --- ## 贡献 欢迎提交 Issue 和 PR！


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