Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add aiocean/claude-plugins/plugin install aio-epub-translateWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/aiocean/claude-plugins/aio-epub-translate)<a href="https://agentmods.dev/skills/aiocean/claude-plugins/aio-epub-translate"><img src="https://agentmods.dev/badge/skills/aiocean/claude-plugins/aio-epub-translate/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/aiocean/claude-plugins/aio-epub-translate"><img src="https://agentmods.dev/badge/skills/aiocean/claude-plugins/aio-epub-translate.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00060 | $0.03228 |
| Opus 5 | $0.00030 | $0.01614 |
| Sonnet 5 | $0.00012 | $0.00646 |
| Haiku 4.5 | $0.00006 | $0.00323 |
Grade A, and why
aio-epub-translate scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
**LUÔN dùng Python** — KHÔNG dùng bash curl (JSON escaping lỗi với Unicode). How it starts
The opening of the file, as written. The whole thing — 312 lines — stays where its author put it; the contents beside it link to each section on GitHub.
EPUB Translate — Chapter Translation
Dịch nội dung EPUB bằng khả năng ngôn ngữ của Claude, submit bản dịch qua API.
Prerequisites: Cần API key (
aio-epub-setup) và sách đã upload (aio-epub-upload). Chưa có sách? Dùngaio-epub-manageđể xem danh sách.
API Setup
LUÔN dùng Python — KHÔNG dùng bash curl (JSON escaping lỗi với Unicode).
import json, urllib.request, os
BASE = "https://read-api.aiocean.dev/ListBooks.v1.BookService"
KEY = os.environ.get("AIO_EPUB_API_KEY", "")
def api(method, body):
data = json.dumps(body).encode('utf-8')
req = urllib.request.Request(f"{BASE}/{method}", data=data, headers={
"Content-Type": "application/json",
"X-License-Key": KEY
})
with urllib.request.urlopen(req) as resp:
return json.loads(resp.read())
Workflow
1. Parse URL (nếu user gửi link)
URL format: https://read.aiocean.io/books/{bookId}/read/{filePath}
filePathcó thể double-encoded:Text%252Fchapter0018.html→Text/chapter0018.html
2. Lấy context TRƯỚC KHI DỊCH
# Lấy cross-chapter context (guideline + glossary + previous chapter summary)
context = api("GetChapterContext", {
"bookId": BOOK_ID,
"filePath": FILE_PATH
})
guideline = context.get("guideline", "")
chapter_guideline = context.get("chapterGuideline", "")
previous_summary = context.get("previousChapterSummary", "")
glossary = context.get("glossary", [])
print("=== GUIDELINE ===")
print(guideline)
if chapter_guideline:
print("=== CHAPTER GUIDELINE ===")
print(chapter_guideline)
if glossary:
print("=== GLOSSARY (recurring terms) ===")
for term in glossary:
print(f" {term['original']} → {term['translated']} (x{term['frequency']})")
if previous_summary:
print("=== PREVIOUS CHAPTER (last paragraphs) ===")
print(previous_summary[:500])
3. Lấy nội dung cần dịch
page = api("GetPageJson", {
"bookId": BOOK_ID,
"filePath": FILE_PATH,
"size": 0, # 0 = tất cả
"offset": 0
})
contents = page["contents"]
print(f"Total items: {len(contents)}")
# Filter items chưa dịch hoặc dịch kém
items_to_translate = []
for item in contents:
translations = item.get("translations", [])
if not translations or not translations[0].get("contentText", "").strip():
items_to_translate.append(item)
print(f"Need translation: {len(items_to_translate)}")
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 312 lines · 60 tokens per session scan A 612f6fe833b8
aio-epub-translate is a skill published in the GitHub repository aiocean/claude-plugins (4 stars, last pushed 6d ago), licensed MIT. It adds 60 tokens to every session and 3,228 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-03.
Other skills, from other repositories
guide-recap
Transform CHANGELOG entries into social content (LinkedIn, Twitter/X, Newsletter, Slack) in FR + EN. Use after releases or weekly to generate ready-to-post content from guide updates.
humanize-korean
A Korean editing tool that removes translation-like phrasing and common AI writing habits while preserving facts, numbers, names, and quotations. It is intended for existing Korean prose, not for writing new marketing copy.
source-command-audit-whitepapers
Audit version freshness, FR/EN parity, and metadata quality of all whitepapers and recap cards.
audit-agents-skills
Audit Claude Code agents, skills, and commands for quality and production readiness. Use when evaluating skill quality, checking production readiness scores, or comparing agents against best-practice templates.
design-patterns
Detect, suggest, and evaluate GoF design patterns in TypeScript/JavaScript codebases. Use when refactoring code, applying singleton/factory/observer/strategy patterns, reviewing pattern quality, or finding stack-native alternatives for React, Angular, NestJS, and Vue.
eval-agents
Audit Claude Code agents defined in .claude/agents/ for description specificity, model tier appropriateness, tools scoping, and system prompt quality. Detects dispatch ambiguity between agents, flags over-permissive tool grants, and checks for human-in-the-loop patterns that break programmatic orchestration. Use when…