agentsclimarketplace

Image

Skill axoviq-ai/synthadoc/synthadoc/skills/image

Synthadoc: An open-source LLM knowledge compilation engine that turns raw documents into structured, local-first wikis. A transparent, human-readable alternative to traditional RAG, which can be self-managed and self-improved without the use of any tools.

Install
npx -y skills add axoviq-ai/synthadoc --skill image

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

Extract text from images using a vision LLM

The file declares its own license as AGPL-3.0-or-later. That is the author’s claim about this one file, and it is not the same thing as the license GitHub reports for the repository, which is listed with the other numbers below.

SKILL.md

2.1 KB, as published. Nobody here has run it

Image Skill

Base64-encodes the image and passes it to a vision-capable LLM that extracts all text and key information. Returns the LLM's response as result.text.

Setup

No pip dependency — the skill uses only the Python standard library plus a LLM provider you supply at construction time. The provider can be any object that implements the complete() interface (see below).

Standalone usage

import asyncio
from synthadoc.skills.image.scripts.main import ImageSkill

# ImageSkill REQUIRES a vision-capable provider — calling extract() without
# one raises ValueError immediately.
skill = ImageSkill(provider=my_provider)

async def main():
    result = await skill.extract("/path/to/screenshot.png")
    print(result.text)          # extracted text from the image
    print(result.metadata)      # {"tokens_input": N, "tokens_output": N}

asyncio.run(main())

Provider interface — any object with this async method:

async def complete(
    messages: list,             # list of Message objects from synthadoc.skills.base
    system: str | None = None,
    temperature: float = 0.0,
    max_tokens: int = 4096,
) -> object                     # must have .text (str), .input_tokens (int), .output_tokens (int)

Build the provider with any vision-capable model. Message is importable from synthadoc.skills.base — no dependency on synthadoc.providers:

from synthadoc.skills.base import Message

Supported image formats: .png, .jpg/.jpeg, .webp, .gif, .tiff

When this skill is used

  • Source path ends with .png, .jpg, .jpeg, .webp, .gif, or .tiff
  • User intent contains: image, screenshot, diagram, photo

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.