lt2md

REVIEW · 60
Registry indexed

Convert born-digital, scanned, or mixed PDFs into auditable Markdown while preserving reading order, equations, source-page anchors, and information-bearing images as adjacent non-original text descriptions. Use this skill whenever a user asks to transcribe, OCR, understand, or c

Verified installs0
Stars33
Version1.0.0
Quality62/100 · Promising
Trust60/100 · Sandbox only
Audit74/100 · Needs review

Supply asset profile

Research and knowledge work

Deep research, source comparison, literature review, RAG, knowledge search, and reports.

Browse track

Scenario

Document processing

I need my agent to read PDFs, extract tables, and turn documents into structured data.

Agent fit

Claude Code + CLI + Codex

Codex, Claude Code, Cursor, CLI, or custom agents.

Install

Ready

npx skills add libnyx/LT2MD --skill lt2md

Maintenance

fresh

Pushed today

Risk

Needs review

Permission surface may require sandboxing

GitHub quality

33

62/100 Quality · 68/100 Trust

Coverage tags

ResearchDocument processingsecurityagent-skill

Review notes

Permission surface may require sandboxing · The SKILL.md references external files (references/*.md, scripts/*.py) that are not fully included in the excerpt, but they are part of the repository and the skill is self-contained within the repo.

Agent adoption scorecard

Trust, audit, and install readiness at a glance

These scores combine public repository metadata, OpenAgentSkill review signals, maintenance freshness, and install readiness. They are a shortlist signal, not a replacement for human review.

Quality

Promising
62

Useful candidate, but compare it with alternatives before adopting.

Trust

Sandbox only
60

Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.

Audit

Needs review
74

A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.

OpenAgentSkill Trust Score v5

Human review before install

Run only in a sandbox and compare close alternatives before using it for real work.

CodexClaude CodeCursorOpenAgentSkill CLI

Stars

33 GitHub stars

Repo activity

33 stars, 1 forks

Maintenance

Pushed today

License

AGPL-3.0

Install

npx skills add libnyx/LT2MD --skill lt2md

Install safety

standard package or runtime install path

Permission surface

secrets or environment access, shell or command execution

Agent outcomes

No agent outcome data yet

Docs

Strong README/SKILL.md context

Risk summary

Review before production

  • The SKILL.md references external files (references/*.md, scripts/*.py) that are not fully included in the excerpt, but they are part of the repository and the skill is self-contained within the repo.
  • Low GitHub adoption signal
  • Quality score needs review
  • Permission surface needs review: secrets or environment access, shell or command execution

Install readiness

Install path available

  • Install path is available
  • Repository evidence is available
  • License is declared
  • No Agent Proven outcome evidence yet

Agent-readable metadata

Machine-readable decision data for this skill.

Use this block or the embedded JSON to decide whether an agent should install this skill, choose an alternative, or ask for human review first.

Open JSON

Suited tasks

  • Document processing workflows
  • Claude Code teams
  • builders willing to evaluate younger projects
  • Read uploaded files

Suited agents

CodexClaude CodeCursorOpenAgentSkill CLICLI

Install decision

Command
npx skills add libnyx/LT2MD --skill lt2md
Policy
block
Human review
yes

Trust and risk

Trust
60/100
Audit
74/100
Risk level
Needs review

Outcome loop

Endpoint
/api/agent/outcome
Event ID
resolve
Outcomes
5

Install command

npx skills add libnyx/LT2MD --skill lt2md

Do not use when

  • teams that need a vendor-supported SLA
  • production agents without a repository review
  • Low GitHub adoption signal
  • The SKILL.md references external files (references/*.md, scripts/*.py) that are not fully included in the excerpt, but they are part of the repository and the skill is self-contained within the repo.
  • No OpenAgentSkill engagement data yet

Agent safety v2

30/100 · Avoid automatic install

Blocked for auto-installblock

This skill should not be selected by an agent without explicit human security review.

Do not auto-install. Inspect the source, dependencies, and permission surface first.

Resolve via API

high

Shell or command execution

Skill metadata references terminal, CLI, shell, subprocess, or command execution workflows.

medium

Network access

Skill likely fetches remote pages, APIs, repositories, or external services.

medium

Filesystem access

Skill may read or write project files, documents, generated artifacts, or local workspace state.

high

Secrets or environment access

Skill metadata references credentials, tokens, environment variables, or secret-bearing workflows.

  • High-risk permission hints: Shell or command execution, Secrets or environment access
  • Permission surface may require sandboxing

Install targets

Install this skill in your agent workflow

Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.

skill install

OpenAgentSkill CLI

Resolve policy, run the source installer safely, and report a verified install receipt.

$ npx --yes https://github.com/Leon-Drq/openagentskill/releases/download/cli-v0.2.1/openagentskill-0.2.1.tgz install libnyx-lt2md

Agent resolve plan

Let an agent verify fit before installing.

The Resolve API returns the selected skill, alternatives, safety policy, audit notes, install target, and copy-paste prompt an agent can follow without scraping this page.

Open text plan

Agent should check

  • Task fit and alternatives from Resolve API.
  • Audit score, trust score, and safety policy warnings.
  • Install target compatibility for Codex, Claude Code, Cursor, or CLI.

Copy prompt

Task: Use lt2md in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20lt2md%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/libnyx-lt2md/install
Install command: npx skills add libnyx/LT2MD --skill lt2md
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.

Agent handoff

Give an agent the install path, not another directory page.

Use the public install endpoint to fetch the command, safety checklist, target prompts, and canonical links for this skill.

Open install API

Agent prompt

Use lt2md for this task. Review https://www.openagentskill.com/api/skills/libnyx-lt2md/install, then install with: npx skills add libnyx/LT2MD --skill lt2md

Registry metadata

Agent-readable profile for automatic skill selection.

This page exposes the same decision, trust, audit, use-case, and install signals through the Registry API, so agents can rank this skill without scraping the UI.

Open manifest

Agent fit

61/100

Document processing

Platforms

Claude Code

Audit report

Needs review · 74/100

A machine-readable review of install readiness, security metadata, maintenance, and adoption risk.

View audit reportView eval report

Agent decision cockpit

Fallback candidate for Document processing

Prototype with this skill first; keep a fallback candidate ready.

61
Readiness
Prototype
Stage

Role in stack

Fallback candidate

Primary fit

Document processing

Trust label

Prototype first

Install path

Command ready

Use when

  • Document processing workflows
  • Claude Code teams
  • builders willing to evaluate younger projects

Evidence

  • recent repository activity
  • install command or GitHub repo available
  • 62/100 quality profile

review first

  • Low GitHub adoption signal
  • The SKILL.md references external files (references/*.md, scripts/*.py) that are not fully included in the excerpt, but they are part of the repository and the skill is self-contained within the repo.
  • No OpenAgentSkill engagement data yet

Implementation path

  1. 1Install it in a sandbox agent and run one Document processing task end to end.
  2. 2Compare output quality, latency, and failure behavior against at least one alternative.
  3. 3Promote it into production only after reviewing repository permissions, license, and maintenance signals.

Trust profile

Sandbox only

Useful candidate with missing or mixed trust signals. Keep it in an isolated workspace until the outcome loop proves task fit.

60
OpenAgentSkill Trust Score

GitHub adoption

CHECK

33 GitHub stars

Stars/forks activity

CHECK

33 stars, 1 forks; issue activity unavailable in current metadata

Recent maintenance

PASS

Pushed today

License clarity

PASS

AGPL-3.0

Good signals

  • AI review approved
  • Install path is available
  • Repository evidence is available
  • Recently maintained repository
  • Install command has no obvious high-risk pattern
  • Outcome loop is ready but needs first real agent run

Review before install

  • The SKILL.md references external files (references/*.md, scripts/*.py) that are not fully included in the excerpt, but they are part of the repository and the skill is self-contained within the repo.
  • Low GitHub adoption signal
  • Quality score needs review
  • Permission surface needs review: secrets or environment access, shell or command execution
  • GitHub adoption: 33 GitHub stars
  • Stars/forks activity: 33 stars, 1 forks; issue activity unavailable in current metadata
  • Permission surface: secrets or environment access, shell or command execution
  • No real agent outcome reports yet
  • Human review required before unattended installation

Recommended action

Run only in a sandbox and compare close alternatives before using it for real work.

Quality profile

Promising candidate for agent workflows

Useful candidate, but compare it with alternatives before adopting.

62
GitHub stars
33
Freshness
Today
Install ready
Yes
License
AGPL-3.0
Review before install: Low GitHub adoption signal · The SKILL.md references external files (references/*.md, scripts/*.py) that are not fully included in the excerpt, but they are part of the repository and the skill is self-contained within the repo.

Workflow fit

Use this skill in these scenarios

Workflow fit

Add it to a complete workflow

Alternative shortlist

Compare before you install

Similar skills that may fit this task.

Compare all

Overview

--- name: lt2md description: Convert born-digital, scanned, or mixed PDFs into auditable Markdown while preserving reading order, equations, source-page anchors, and information-bearing images as adjacent non-original text descriptions. Use this skill whenever a user asks to transcribe, OCR, understand, or convert a PDF into Markdown, especially for scanned PDFs, image-heavy pages, formulas, multi-column layouts, page or section ranges, or token-efficient reuse. LT2MD (Long Transcribe to Markdown) is a workflow contract, not a replacement for a PDF parser or OCR/VLM backend. ---

# LT2MD — Long Transcribe to Markdown

LT2MD turns observable PDF content into Markdown that an agent or a person can audit later. It is designed for born-digital, scanned, and mixed PDFs. The goal is not merely to obtain text: preserve reading order, formulas, figure meaning, scope boundaries, and a path back to the source page.

The PDF remains the only authority for content. OCR, extracted text, model guesses, and formatting preferences are candidates or transformations, never evidence that can overrule the rendered page.

## Read before doing the task

1. Read [workflow.md](references/workflow.md) for roles, batches, two-pass visual reading, and write permissions. 2. Before rendering or reusing pages, read [page-cache.md](references/page-cache.md) and initialize/recover a local job with `scripts/manage_job.py`. 3. Before creating or changing a candidate Markdown file, read [markdown-contract.md](references/markdown-contract.md); for long documents also read [job-state.md](references/job-state.md) and [checkpoint-review.md](references/checkpoint-review.md). 4. Before a format review, read [format-review.md](references/format-review.md) and treat [示范文档.md](references/示范文档.md) as a read-only format fixture. 5. Use `scripts/validate_markdown.py`, `scripts/audit_markdown.py`, and `scripts/manage_job.py verify` as separate final gates. Do not place OCR, model calls, or PDF interpretation inside the static tools.

## Non-negotiable principles

- **Separate evidence, semantic target, and allowed transformation.** Evidence is the rendered page, PDF page number, readable text layer, and Markdown markers. The semantic target is the author's text, mathematics, figure relationships, and reading order. Allowed transformations include merging print line breaks, removing page furniture, and applying the Markdown contract. - **Lock the scope before writing.** If no range is specified, process the whole PDF. If a range is specified, do not silently expand it. A range that ends mid-page includes only the requested semantic blocks. - **Reuse page evidence by byte identity.** Render through the content-addressed job cache. The same PDF bytes and render configuration must reuse verified page PNGs across chapters, restarts and renamed files; only missing or corrupt pages may be rerendered. - **Use the rendered page as the tie-breaker.** Text extraction and OCR are useful candidates. They do not settle reading order, formulas, captions, diagrams, or ambiguous glyphs without visual confirmation. - **Describe every information-bearing figure.** Keep the original caption when readable, then place an adjacent description explicitly marked as a LT2MD/transcriber supplement and not original text. Include objects, labels, directions, arrows, sequence, spatial relationships, subfigures, and relationships directly expressed by the figure without inventing outside conclusions. - **Keep provenance local.** Put one block-level `SOURCE` HTML comment on its own line before every complete paragraph, display equation, figure block, table or example block. Do not insert an anchor inside a word, sentence, inline formula, display-math block, table row, caption or image description. A cross-page block uses one physical-page range before the merged block. - **Keep content and format review separate.** Content corrections require evidence from the source PDF. A format reviewer may only report or apply style-only changes against the immutable fixture. Only the coordinator writes the final Markdown. - **Mark uncertainty instead of guessing.** When a glyph, page boundary, or reading order cannot be uniquely resolved, give the best source-grounded transcription and add a `转录注` with the exact page and ambiguity. Never silently normalize an uncertain value into a familiar one.

## Operating procedure

1. **Preflight.** Initialize or recover a job. Record the PDF SHA-256, physical page count, requested range, book-page mapping if readable, text-layer availability, render configuration, columns, formula/figure density, output path and task-requirement hash. Render the original pages before trusting OCR. If printed page numbers become visibly clear only after initialization and have a verified linear relation, record it before the first inventory with `manage_job.py set-book-page-offset <job> --offset <N>`; otherwise retain `unmapped` rather than guessing. Once recorded, that mapping is source evidence: the batch scaffold's `source_print_pages` and every `SOURCE` `BOOK_PAGE` must follow it, and manager review/checkpoint/finalization rejects contradictions. 2. **Batch.** Process continuous page ranges adaptively: 1–2 dense/low-quality pages, 2–4 ordinary pages, and at most 6 clear single-column pages. If the user did not choose groups, run `manage_job.py batch-plan <job> --json` after initialization, then visually lower any recommendation that contains formulas, tables, multi-column order, dense figures, poor legibility, or a cross-page semantic block. The raster-only plan is a conservative starting point, not visual proof. Prefer complete paragraphs, sections, or examples as cut points; keep a sentence crossing a page boundary with one transcriber. 3. **Inventory and transcribe.** Before trusting any existing Markdown candidate, visually inventory each source page's headings, prose, displayed equations, figures/captions, tables, footnotes, examples/exercises and cross-page continuations. For the current 1–6-page batch, create that source-only record first with `manage_job.py source-inventory-template`, fill only source objects and evidence, then freeze it with `manage_job.py seal-source-inventory`. Only after that seal may the transcriber use `manage_job.py batch-template --author-id <transcriber>` to create a fresh, non-overwriting batch-scoped candidate. This order is a hard gate: candidate block IDs, review decisions and candidate text must not be retrofitted into the source inventory. Never copy an unreviewed full-document V1 draft into the batch candidate and mistake a whole-document audit failure for a batch transcription attempt. Separate body text, equations, figures, captions, examples, headers, footers, and scan noise. Preserve literal Markdown backslashes while writing formulas: an escape-interpreting string layer must not turn a formula command into TAB, FF, or another C0 control byte. Merge only print line breaks and cross-page continuation; do not insert a page boundary inside a word, sentence, or LaTeX expression. An existing Markdown draft is an untrusted candidate, not evidence: visually re-check every retained block. If an inventory item has no source-grounded candidate block, leave the batch blocked; do not omit it merely because the candidate lacks an anchor. If a block is left unchanged, preserve page-specific review evidence; if the page cannot be read, stop there rather than calling the unchanged draft complete. 4. **Coordinate.** Merge candidate blocks in source-page order, attach page anchors, preserve equation tags and figure/example structure, and keep the locked range visible. 5. **Second visual read.** After the candidate passes its static contract and before generating a review template, record a handoff of its exact bytes with `manage_job.py reviewer-handoff`. The manager, not reviewer-supplied JSON, owns the reviewer actor ID, local security-principal record, candidate digest, and sealed-inventory binding. The default policy is an auditable process handoff: it does not prove subjective independence merely because labels differ. An optional `init --review-identity-policy os-security-principal-v1` also requires the reviewer process to use a different local OS security principal from the candidate and source-inventory authoring processes; it still cannot prove distinct people or model contexts. The handoff reviewer re-reads the rendered source and completes mappings against the already sealed source-only inventory. The reviewer may add candidate mappings, dispositions and risk closures, but may not rewrite sealed source facts. The coordinator changes content only after confirming the source. An omitted footnote, caption, heading, or cross-page continuation remains blocking even when static Markdown checks pass. 6. **Risk-driven third read.** Run the audit and re-check only real differences, low-resolution areas, dense formulas, multi-panel figures, cross-page joins, scope boundaries and risk hits. Use only the cached target/adjacent pages and targeted crops. 7. **Checkpoint and recover context.** Freeze every complete 1–6 page batch with a source-bound `checkpoint-review` JSON manifest through `manage_job.py checkpoint` before starting later pages. Use `manage_job.py review-template` only after the sealed-inventory-backed candidate passes the static contract **and** its exact-byte reviewer handoff is recorded; it produces a blocked identity/hash scaffold and does not replace source review. The manager rejects a missing handoff, a stale candidate digest, a forged reviewer label/principal, an indented-code pseudo-anchor, a review block spanning multiple SOURCE blocks, or a structural modification hidden by whitespace normalization. A failed static check, audit, source-inventory mapping, or independent review is a stop condition: repair the same batch or leave it explicitly incomplete; never treat a failure report as permission to continue. If a source object visibly continues to the next physical page before any independent review, do not accept the short batch or anchor a fragment. Use `manage_job.py extend-unclosed-source-inventory` only to preserve its sealed source facts and exact unclosed candidate while expanding the same-start range to at most six pages; then re-inventory every page, create a fresh candidate, and complete the normal independent review. This extension is blocked evidence, never acceptance, and cannot change a checkpointed range. When a reviewer supplies source-grounded omissions, misreads, ordering defects, or wrong-page anchors, return only that batch and the exact evidence to the transcriber, then obtain a new independent reread—never relabel the old review as accepted. If that review proves the **source-only inventory facts themselves** are incomplete or wrong, do not mutate the old seal: use `manage_job.py source-inventory-revision-template` with that independent blocked review, reread and seal the new source-only inventory, then create a fresh replacement candidate for the same range. The manager freezes a SHA-named copy of the blocked candidate and review; the new candidate receipt must bind the new active seal, and verification checks both the forward and backward revision chain. It rejects self-review, stale candidate replay, altered lineage, and unchanged source facts; a blocked review can never become acceptance. For jobs created before frozen-candidate evidence existed, use the strict `manage_job.py backfill-revision-evidence <job> --pages <range>` migration only when the preserved bytes, hashes, receipt, old seal and blocked review agree exactly. Every 16 accepted physical pages or 4 accepted batches, whichever comes first, actually reread task brief, render manifest, progress, frozen evidence and risk queue, then record the receipt with `manage_job.py reread`. This longer cadence supplements, rather than replaces, the per-batch evidence checkpoint; a cache-only or partial job must n

Technical details

Version
1.0.0
License
AGPL-3.0
Last updated
Aug 23, 2026
Published
Aug 23, 2026

Decision snapshot

Fallback candidate

61
Ready
Prototype
Stage

recent repository activity

Audit

Install review

Install and adoption review

74
Needs review
Security
72/100
Maintenance
100/100
Install
92/100
Open full auditView eval report

Agent-proven evidence

Agent-proven evidence

Outcome reports after resolve, review, install, and one narrow run.

0
Proven
Needs first agent runAuto-install: review firstLast: Unknown
Success rate
Recent failure
Outcomes
0
Output quality
Failed
0
Not relevant
0
Installs
0
Risk blocked
0
Setup needed
0
Production
0

No agent outcome data yet. The first agent run can report success, setup needs, risk blocks, failure, or not-relevant through /api/agent/outcome.

Install

Add to agent workflow

Free and open source. Review the report before installing into production agents.

Growth loop

Share kit

X

Scenario-led draft for lt2md, ready for a manual X post.

Curator note
A practical pick for design or creative work:

lt2md: Convert born-digital, scanned, or mixed PDFs into auditable Markdown while preserving reading order, equations, source-page...

33 stars

https://www.openagentskill.com/skills/libnyx-lt2md?ref=x
Open X draft
Optional reply with install command
Listing + install path for lt2md:
https://www.openagentskill.com/skills/libnyx-lt2md?ref=x

Install: npx skills add libnyx/LT2MD --skill lt2md

Listing source

Registry indexed

Claimable

This listing was indexed from public sources and is not marked official until a maintainer claim is approved.

Creator
libnyx
Indexed by
OpenAgentSkill community index

Attribution links to the public repository or creator profile. Creators can claim the listing to update ownership signals.

Claim this skill

Owner claim

Claim this skill listing

This Registry indexed listing is attributed to libnyx but is not marked official yet. Claim it to add a verified owner signal and make future launch, install, and audit updates easier to trust.

Creator backlink kit

Add the evidence badges to your README

Show the canonical listing, current trust and audit signals, and real Agent-Proven evidence where developers evaluate the repository.

[![Listed on OpenAgentSkill](https://www.openagentskill.com/api/badge/libnyx-lt2md?metric=listed&label=Listed)](https://www.openagentskill.com/skills/libnyx-lt2md)
[![OpenAgentSkill Trust](https://www.openagentskill.com/api/badge/libnyx-lt2md?metric=trust&label=Trust)](https://www.openagentskill.com/skills/libnyx-lt2md)
[![OpenAgentSkill Audit](https://www.openagentskill.com/api/badge/libnyx-lt2md?metric=audit&label=Audit)](https://www.openagentskill.com/skills/libnyx-lt2md/audit)
[![Agent Proven](https://www.openagentskill.com/api/badge/libnyx-lt2md?metric=proven&label=Agent%20Proven)](https://www.openagentskill.com/skills/libnyx-lt2md)

Author

L

libnyx

@libnyx

Platform fit

Health signals

GitHub stars
33
Quality score
34/100
Last GitHub push
Aug 23, 2026
Framework hints
Unknown
OpenAgentSkill views
0
Install copies
0
Outbound clicks
0

Community signal

Share whether this skill looks useful for your agent workflow. Aggregated feedback improves rankings over time.

Trust & safety

Sandbox only

60
  • GitHub adoption33 GitHub starsCHECK
  • Stars/forks activity33 stars, 1 forks; issue activity unavailable in current metadataCHECK
  • Recent maintenancePushed todayPASS
  • License clarityAGPL-3.0PASS
  • README/SKILL.md completenessMetadata includes enough usage and workflow contextPASS
  • Dependency/runtime riskcredential or environment access, database surfaceINFO