From Local-Web-Capture
Capture an article from a URL (via the normal localhost scrape path) and save a translated version alongside the original. Default language pair is Hebrew → English; supports arbitrary source → target. Saves to ~/local-web-capture/translations/. Use when the user shares a Hebrew article URL and wants the English version, says "capture and translate", or passes a URL in a language they want rendered into another.
npx claudepluginhub danielrosehill/claude-code-plugins --plugin Local-Web-CaptureThis skill uses the workspace's default tool permissions.
Scrape an article from localhost, then produce a translation alongside the original capture.
Prevents silent decimal mismatch bugs in EVM ERC-20 tokens via runtime decimals lookup, chain-aware caching, bridged-token handling, and normalization. For DeFi bots, dashboards using Python/Web3, TypeScript/ethers, Solidity.
Share bugs, ideas, or general feedback.
Scrape an article from localhost, then produce a translation alongside the original capture.
scrape-article (or scrape-authenticated if the user indicates the page is behind auth). Use the saved markdown + frontmatter as the source — do not re-fetch just to translate.language disagrees or the user specified otherwise, use that.en). User can override (--to es, "translate to French", etc.).<capture-root>/translations/YYYY/MM/YYYY-MM-DD--HHMM--<slug>--<src>-<tgt>.md. Resolve <capture-root> per reference/save-location.md (project-local preferred; global fallback).Default: Claude (inline). For the user's typical volume (one article at a time), Claude translating directly in-conversation gives the best quality with zero extra deps. This is the right choice for most calls.
Optional: LibreTranslate (local server). For bulk or scripted runs, a locally-running LibreTranslate instance is a good fit — keeps the request local and avoids sending content to external APIs. Install notes:
pip install libretranslate
libretranslate --host 127.0.0.1 --port 5000 --load-only en,he,ar,es,fr,de,ru
Call:
curl -s -X POST http://127.0.0.1:5000/translate \
-H 'Content-Type: application/json' \
-d '{"q":"<text>","source":"he","target":"en","format":"text"}'
Pick LibreTranslate over Claude only when:
Otherwise use Claude.
Stacked (block-per-section), not side-by-side, for readability in plain markdown viewers:
---
source_url: <url>
source_capture: <path to the original article file>
source_language: he
target_language: en
translator: claude | libretranslate
translated_at: <ISO now>
title_source: <original title>
title_target: <translated title>
---
# <translated title>
> Source: <url>
> Original title: <original title>
<translated body as markdown, same structure as source>
---
## Original (Hebrew)
<original body>
Report: path, translator used, source/target languages, word counts for both versions.