Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add treylom/knowledge-manager --skill km-content-extractiongit clone --depth 1 https://github.com/treylom/knowledge-managerWrote 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/treylom/knowledge-manager/km-content-extraction)<a href="https://agentmods.dev/skills/treylom/knowledge-manager/km-content-extraction"><img src="https://agentmods.dev/badge/skills/treylom/knowledge-manager/km-content-extraction/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/treylom/knowledge-manager/km-content-extraction"><img src="https://agentmods.dev/badge/skills/treylom/knowledge-manager/km-content-extraction.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector warn
SkillSpector: 4 findings, up to medium
These are SkillSpector’s own severities. On a checked sample its high-severity flags on skills were ~96% false positives — a documented command, a public API, a “never do X” rule — so we show them as a caution to read, not a verdict. Why →
- medium MCP Rug Pull · line 15 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 31 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 17 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
- medium MCP Rug Pull · line 18 npx commands without a version suffix (e.g. @1.0.0) create a rug-pull risk if the upstream server is compromised and publishes a malicious update.Fix: Pin the version: npx @scope/[email protected]
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.00057 | $0.01076 |
| Opus 5.5 | $0.00023 | $0.00430 |
| Sonnet 5.5 | $0.00011 | $0.00215 |
| Haiku 4.5 | $0.00006 | $0.00108 |
Grade A, and why
km-content-extraction scanned grade A with 0 findings 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 27d 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.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 57 lines — stays where its author put it; the contents beside it link to each section on GitHub.
KM Content Extraction (Codex)
km-workflow Phase 2 의 추출 라우터. 입력 형식을 먼저 판정하고, 아래 표의 도구를 실제로 호출한다 — 도구 호출 없이 콘텐츠를 추측·요약하는 것은 금지. 전문(이미지 파이프라인·병렬 처리·포맷별 상세)은 플러그인
skills/km-content-extraction.md(1,087줄) 참조.
소스별 추출 라우팅 (필수 도구 호출)
| 소스 유형 | 🚨 필수 도구 호출 |
|---|---|
| 한글 (HWP/HWP3/HWPX/HWPML) | kordoc: npx -y kordoc@latest <files> -d <outdir> → 변환 md 를 Read — anydoc 은 HWP 미지원, 한글 문서는 처음부터 kordoc |
1순위 Read → 2순위 opendataloader-pdf → 3순위 marker_single — 🔴 anydoc 으로 보내지 않는다(다단 레이아웃 순서 붕괴) |
|
| Word (DOCX) | 1순위 npx -y @firecrawl/anydoc "[파일]" → 2순위 Read — 표가 복잡해 깨지면 kordoc |
| Excel (XLSX) | 1순위 npx -y @firecrawl/anydoc "[파일]" (수식 없는 표 한정) — 수식·분석·편집은 xlsx 계열 도구 |
| CSV | Read (anydoc 편입 보류 — 헤더 밀림) |
| PowerPoint | Read (anydoc 미편입 — 슬라이드 경계 소실) |
| TXT/MD | Read |
| 이미지 | Read (Vision) |
| 일반 웹/소셜 | → $km:km-browser-abstraction / $km:km-social-media |
| Vault 종합 | → $km:km-search |
한국어 로컬 문서 fallback = kordoc
입력이 로컬 문서인데 기본 경로(Read·anydoc)로 충실히 못 읽는 형식 — HWP·HWPX, 표가 복잡한 XLSX/DOCX, 한국어 PDF — 은 kordoc 으로 마크다운 변환 후 진행한다:
npx -y kordoc@latest <files> -d <outdir> # HWP3/HWP/HWPX/HWPML/PDF/XLS/XLSX/DOCX/이미지(OCR — 기본은 Read) → Markdown
<files>복수 일괄 지원. 산출 =<outdir>/<파일명>.md.- 변환 md 는 원문 보존 검증(표 행수·수치 표본 대조) 후 사용한다.
@latest로 항상 최신판(2026-09-28 확인 = 4.15.7). PDF(pdfjs-dist)·OCR 런타임은 선택 의존성으로 자동 설치(별도 peer 설치 불필요), OCR 모델은 첫 사용 시 다운로드 — 스캔 PDF--ocr(~18MB) · 수식--formula-ocr(~155MB) · RAG 청크--format chunks.
anydoc ↔ kordoc 역할 분리
| anydoc | kordoc | |
|---|---|---|
| 고유 영역 | epub · rtf · odt/ods/odp | HWP3/HWP/HWPX/HWPML (anydoc 미지원) |
| 겹치는 영역 | DOCX · XLS/XLSX · PDF | DOCX · XLS/XLSX · PDF |
| 성격 | 순수 Rust · 1회 호출 = 1문서 | Node · 한국어 특화 · 복수 일괄 |
- DOCX·XLSX 기본 = anydoc. 깨지거나 한글(HWP) 계열이면 kordoc.
- 🔴 PDF 는 anydoc 금지(순서 붕괴) — 위 표의 다단 경로 유지.
Phase 2 완료 검증 (필수)
□ 해당 소스 유형의 도구를 실제로 호출했는가?
□ 도구 응답에서 추출된 실제 텍스트를 확인했는가 (추측 아님)?
□ 변환 문서는 원문 보존 검증(표 행수·수치 표본)을 했는가?
⚠️ 미완료 시 Phase 3(분석) 진행 금지.
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.
- 27d ago Changed 34cc163b6b7d
- 1mo ago First seen · 57 lines · 57 tokens per session scan A 74e8e20b5e36
km-content-extraction is a skill published in the GitHub repository treylom/knowledge-manager (250 stars, last pushed 11d ago), licensed MIT. It adds 57 tokens to every session and 1,076 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-01.
Other skills, from other repositories
svg-press
Teaches agents how to hand-craft self-contained SVG diagrams that render correctly in browsers, tags, and Playwright PDF/PNG. Covers containment math, viewBox sizing, arrow construction, text hierarchy, KDCube brand color tokens, semantic zone fills, badges, the PNG inspection loop, writepng parameters, multi-diagram…
thumbnail-of-pptx
Capture a thumbnail image of a slide from a OneDrive/Office presentation link. Opens the PowerPoint web viewer in a headless browser and screenshots the slide canvas, producing a clean 16:9 image with no viewer chrome. Works even when the PPTX is not downloadable (e.g. personal OneDrive shares), since it screenshots…
export-presentation
Export HTML slide presentations to PDF or PNG screenshots.
express-tracking
A parcel-tracking and evidence-recording tool for services such as EMS and SF Express. It uses browser automation to check official tracking pages and can archive timestamped PDF proof.
file-download
Download files from websites, save PDFs, and read downloaded content. Trigger when the user asks to: download a file, save a PDF, export a document, fetch a file from a URL, grab a report, download and read a PDF, or save page content as a file.
openclaw-rpa
Record browser, Excel, Word & API actions once — replay without the LLM: faster, cheaper, no hallucinations. github.com/laziobird/openclaw-rpa . Supports computer-use automation: web clicks/fill/extract, local Excel (.xlsx via openpyxl), Word (.docx via python-docx), HTTP API calls (httpx GET/POST), and auto-login…