91 lines
4.1 KiB
Markdown
91 lines
4.1 KiB
Markdown
# TOOLS.md - Local Notes
|
|
|
|
Skills define _how_ tools work. This file is for _your_ specifics — the stuff that's unique to your setup.
|
|
|
|
## What Goes Here
|
|
|
|
Things like:
|
|
|
|
- Camera names and locations
|
|
- SSH hosts and aliases
|
|
- Preferred voices for TTS
|
|
- Speaker/room names
|
|
- Device nicknames
|
|
- Anything environment-specific
|
|
|
|
## Examples
|
|
|
|
```markdown
|
|
### Cameras
|
|
|
|
- living-room → Main area, 180° wide angle
|
|
- front-door → Entrance, motion-triggered
|
|
|
|
### SSH
|
|
|
|
- home-server → 192.168.1.100, user: admin
|
|
|
|
### TTS
|
|
|
|
- Preferred voice: "Nova" (warm, slightly British)
|
|
- Default speaker: Kitchen HomePod
|
|
```
|
|
|
|
## Why Separate?
|
|
|
|
Skills are shared. Your setup is yours. Keeping them apart means you can update skills without losing your notes, and share skills without leaking your infrastructure.
|
|
|
|
---
|
|
|
|
Add whatever helps you do your job. This is your cheat sheet.
|
|
|
|
## Web Routing Preset (Auto)
|
|
|
|
- Site registry file: `/root/.openclaw/workspace/websites.yaml`
|
|
- First apply `routing_rules.hard_route_rules`, then fallback to `sites[].purposes/keywords`.
|
|
- Hard rule: if request mentions "市场分析/行业分析/类目分析/竞品分析/趋势分析", force `ecommerce-market-analysis`.
|
|
- Hard rule: if request mentions "销售数据/业绩/售后/退款/费比/店铺业绩", force `company-sales-db-analysis` (SQLServer), not web page scraping.
|
|
- In forced market-analysis route, do not start with `web_search`; go directly to `https://hq.yucekj.com` login flow.
|
|
- In forced sales/aftersale route, run `company-db` commands directly (`health`, `tables`, `columns`, `query`, `run-file`).
|
|
- If matched site has `login_required: true`, use env credentials first (`username_env/password_env`), then 1Password fallback.
|
|
- If task does not need login, use `public-search` or direct public site access.
|
|
- If OTP/CAPTCHA appears, pause and ask user in chat, then continue.
|
|
- Never operate outside `allowed_domains`.
|
|
|
|
## Product Info Helper
|
|
|
|
- Command: `product-info "<sku或关键词>" --days 30 --limit 20`
|
|
- Returns:
|
|
1) Product master info (`cost_price`, `board_material`, `preview_pic_url`)
|
|
2) Last N days shipped/aftersale counts
|
|
3) Last N days shop distribution by shipped piece count
|
|
4) Last N days daily shipped pieces by SKU
|
|
5) Stock risk estimation (`available_qty`, `avg_daily_shipped_30d`, `estimated_stockout_days`, `suggest_replenish_qty_to_10d`)
|
|
6) Last 30d sold product-id counts by shop channel
|
|
7) Product-id to shop/operator mapping (for notification)
|
|
8) Risk-only contact list (`purchaser_name`, `factory_name`, `warehouse_name`, `operator_name`)
|
|
- Data source: SQLServer `JSDataMiddlePlatform`
|
|
- Command: `product-skus-by-id "<商品id>" --limit 1000`
|
|
- Returns all SKU codes and SKU names under the given product ID (style_code/product_no/spu/shopproid).
|
|
- `product-info` now also returns aftersale insight for matched SKU:
|
|
- aftersale summary, type/result matrix, reason TOP (last N days)
|
|
- Command: `stock-risk-alerts --days 30 --limit 500`
|
|
- Purpose: Query all selling SKUs with potential stockout warning details.
|
|
- Output:
|
|
1) summary counters (`sold_sku_count_30d`, `stock_risk_sku_count`, `urgent_sku_count`, `warning_sku_count`)
|
|
2) detailed risk list with `sku_id`, `estimated_stockout_days`, `suggest_replenish_qty_to_lead_days`, `purchaser_name`, `factory_name`, `warehouse_name`, `operator_name`
|
|
- Command: `stock-risk-to-feishu --days 30 --top 100`
|
|
- Purpose: Push stock risk report to Feishu in structured rows (not one-cell long text).
|
|
- Output:
|
|
- summary record + detail records, with batch id and Feishu link
|
|
- columns include `SKU编码/SKU名称/风险等级/预计缺货天数/建议补货件数/采购/运营/工厂/仓库/渠道/店铺`
|
|
|
|
|
|
## Customer Service Experience Helper
|
|
|
|
- Command: `customer-service-analysis --start 2026-02-01 --end 2026-02-09 --shop "亿家达" --limit 20`
|
|
- Purpose: Analyze customer feedback experience + service wording quality in a date range.
|
|
- Output: overall quality, reason structure, shop comparison score, wording coverage, risk phrase hits, daily trend, dialogue cases, capability score by agent name (S/A/B/C/D).
|
|
|
|
- Replenishment warning rule: when `estimated_stockout_days <= 10`, mark as urgent restock.
|