Skip to main content

track17

Track parcels via the 17TRACK API (local SQLite DB, polling + optional webhook ingestion)

설치로 이동

소스 정보

저장소
tristanmanchester/agent-skills
최근 소스 활동
2026년 2월 1일 08:28
감지된 SKILL.md 언어
영어
스타
3
포크
2

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
3 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
track17
description
Track parcels via the 17TRACK API (local SQLite DB, polling + optional webhook ingestion)
user-invocable
true
metadata
{"clawdbot":{"emoji":"📦","requires":{"anyBins":"[Truncated]","env":"[Truncated]"},"primaryEnv":"TRACK17_TOKEN"}}
# track17 (17TRACK parcel tracking) This skill lets Clawdbot keep a local list of your parcels, track their state via the **17TRACK Tracking API v2.2**, and summarise changes. It stores everything in a small **SQLite DB** under your **workspace** (by default: `<workspace>/packages/track17/track17.sqlite3`). `<workspace>` is auto-detected as the parent directory of the nearest `skills/` directory that contains this skill. For example, if you install it at `/clawd/skills/track17/`, data will be stored at `/clawd/packages/track17/`. ## Requirements - `TRACK17_TOKEN` must be set (17TRACK API token; used as the `17token` header). - Python (`python3` preferred). Optional: - `TRACK17_WEBHOOK_SECRET` if you want to verify webhook signatures. - `TRACK17_DATA_DIR` to override where the DB/inbox live. - `TRACK17_WORKSPACE_DIR` to override what this tool considers the workspace directory. ## Quick start 1) Initialise storage (safe to run multiple times): ```bash python3 {baseDir}/scripts/track17.py init ``` 2) Add a package (registers it with 17TRACK and stores it locally): ```bash python3 {baseDir}/scripts/track17.py add "RR123456789CN" --label "AliExpress headphones" ``` If carrier auto-detection fails, specify a carrier code: ```bash python3 {baseDir}/scripts/track17.py add "RR123456789CN" --carrier 3011 --label "..." ``` 3) List tracked packages: ```bash python3 {baseDir}/scripts/track17.py list ``` 4) Poll for updates (recommended if you don't want webhooks): ```bash python3 {baseDir}/scripts/track17.py sync ``` 5) Show details for one package: ```bash python3 {baseDir}/scripts/track17.py status 1 # or python3 {baseDir}/scripts/track17.py status "RR123456789CN" ``` ## Webhooks (optional) 17TRACK can push updates to a webhook URL. This skill supports webhook ingestion in two ways: ### A) Run the included webhook server ```bash python3 {baseDir}/scripts/track17.py webhook-server --bind 127.0.0.1 --port 8789 ``` Then point 17TRACK's webhook URL at that server (ideally via a reverse proxy or Tailscale Funnel). ### B) Ingest webhook payloads from stdin/file ```bash cat payload.json | python3 {baseDir}/scripts/track17.py ingest-webhook # or python3 {baseDir}/scripts/track17.py ingest-webhook --file payload.json ``` If you saved webhook deliveries to the inbox directory, process them: ```bash python3 {baseDir}/scripts/track17.py process-inbox ``` ## Common actions - Stop tracking: ```bash python3 {baseDir}/scripts/track17.py stop 1 ``` - Retrack a stopped parcel: ```bash python3 {baseDir}/scripts/track17.py retrack 1 ``` - Delete a parcel from local DB (does not delete at 17TRACK unless you also call `delete-remote`): ```bash python3 {baseDir}/scripts/track17.py remove 1 ``` - Show API quota: ```bash python3 {baseDir}/scripts/track17.py quota ``` ## Operating guidance for the agent - Prefer **sync** (polling) for simplicity unless the user explicitly wants webhooks. - After adding a package, run `status` once to confirm a valid carrier/status was returned. - When summarising, prioritise: - delivered/out for delivery - exception/failed delivery - customs holds - carrier handoffs - Never echo `TRACK17_TOKEN` or `TRACK17_WEBHOOK_SECRET`.
GitHub에서 보기