Taxi Expense

v1.1.0

识别滴滴打车订单截图,OCR识别文字+坐标,马赛克脱敏目的地,按月生成报销Excel

0· 80·1 current·1 all-time
MIT-0
Download zip
LicenseMIT-0 · Free to use, modify, and redistribute. No attribution required.
Security Scan
VirusTotalVirusTotal
Benign
View report →
OpenClawOpenClaw
Benign
high confidence
Purpose & Capability
Name/description, README, SKILL.md, package.json and the two scripts all consistently implement OCR (tesseract.js), image processing (sharp) and Excel generation (exceljs). The declared dependencies and setup script match the stated purpose. Minor mismatch: SKILL.md and README mention storing files under ~/.openclaw/workspace/taxi_expense/, but process.js uses paths relative to the scripts directory (scripts/taxi_data.json, scripts/screenshots). This is a usability/packaging inconsistency, not an indication of unrelated capability requests.
Instruction Scope
Runtime instructions are narrowly scoped to local OCR, parsing, masking, saving screenshots and producing Excel. The SKILL.md suggests optionally sending the final file via an openclaw CLI telegram command (user-triggered). Concerns: process.js expects an existing taxi_data.json and screenshots directory (it reads DATA_FILE without checking existence), and worker langPath is set to /tmp/tessdata while setup.sh writes tessdata into the skill directory — this mismatch may cause runtime failures unless user provides traineddata at /tmp/tessdata or modifies config.
Install Mechanism
No platform install spec in registry; setup.sh runs npm install locally and downloads Tesseract traineddata from GitHub raw (https://github.com/tesseract-ocr/tessdata/raw/...), which is a known upstream. Installing sharp may pull native binaries and requires build/toolchain on host; setup.sh runs in the skill folder and is explicit about where it writes data. No obscure or third-party personal servers or shortened URLs are used.
Credentials
The skill requests no credentials or sensitive environment variables. setup.sh optionally respects http_proxy/HTTP_PROXY to fetch training data, which is normal. There are no requests for unrelated secrets or config paths.
Persistence & Privilege
Skill is not forced-always; it is user-invocable and may be invoked by the agent normally. It writes files to the skill workspace (taxi_data.json, screenshots, monthly Excel) which is expected for this functionality. It does not modify other skills or system-wide configuration.
Assessment
This skill appears to do what it says, but check a few practical points before use: - Paths: process.js reads/writes taxi_data.json and screenshots relative to the scripts directory, while SKILL.md/README reference ~/.openclaw/workspace/taxi_expense/ — decide which path you want and adjust files or move/copy taxi_data.json and tessdata accordingly. - Create initial files/dirs: create an initial taxi_data.json (an empty JSON array: []) and the screenshots directory in the same directory as process.js to avoid crashes. - Tesseract traineddata: setup.sh writes tessdata into the skill's tessdata directory, but process.js config points to /tmp/tessdata. Either place traineddata in /tmp/tessdata or edit process.js to point to the skill tessdata directory. - Network & build: setup.sh runs npm install and downloads large traineddata files from GitHub; ensure the host environment allows network access and has the build/runtime requirements for sharp (native binaries). Use a proxy if required (http_proxy/HTTP_PROXY supported). - Review generated output before sharing: the script masks destination text and images, but OCR errors and masking heuristics can produce edge cases — verify sensitive content in produced XLSX and screenshots before sending to others. - Audit before automation: the code performs only local I/O and image processing. If you plan to add automated sending (openclaw message send), confirm recipient/channel configuration to avoid accidental data exfiltration. If you want, I can suggest minimal edits to process.js and setup.sh to make paths consistent, add safe existence checks (create taxi_data.json if missing), and make the tessdata path configurable.

Like a lobster shell, security has layers — review code before you run it.

latestvk97fzqtyg7hwbeg8npx3sg309s841c2b

License

MIT-0
Free to use, modify, and redistribute. No attribution required.

Comments