Dinoer

How a model sees a page

The same page, two ways: as structure, and as text. Real output from Dinoer — no screenshot exists to show alongside it, because none was ever produced.

A language model does not see a web page. Dinoer’s answer to that is not a better image — it is no image. The two views below are the whole of what a call returns, captured for real against https://example.com, unedited.

One — as structure

/opt/dinoer/venv/bin/python3 /opt/dinoer/shot.py \
  --url https://example.com --a11y --guide-version 1.6
- heading "Example Domain" [level=1]
- paragraph: This domain is for use in documentation examples without needing permission. Avoid use in operations.
- paragraph:
  - link "Learn more":
    - /url: https://iana.org/domains/example

This is the accessibility tree the browser itself builds, meant for a screen reader — not something Dinoer invents. It carries roles (heading, link), destinations (/url:), and structure, in about a thousand milliseconds, with no rendering step at all.

Two — as text

{"type": "extraire_texte"}
{"extraction_texte": {
  "titre": "Example Domain",
  "texte": "Example Domain\nExample Domain\nThis domain is for use in documentation examples without needing permission. Avoid use in operations.\nLearn more",
  "url": "https://example.com/",
  "date_capture": "2026-08-14T13:23:35+00:00"}}

Same call path, same session. Where the tree tells you what the page is — one heading, one paragraph, one link — the extracted text tells you what it says, with markup and noise tags stripped. On a documentation page or an article, this is usually the view worth reading first.

What is missing, and why nothing fills it

There is a third view on this page’s equivalent for the tool Dinoer forked from: a screenshot, with every interactive element outlined and numbered. Dinoer produces neither. Not because the image was cropped out of this page — because the code path that would have produced it does not exist anymore. Why that was the choice →

The practical consequence: if a page’s structure genuinely does not say what it looks like — a canvas, a clickable image with no label — there is nothing here to fall back to. That is a real limit, not a hidden one. Where perception stops reaching →

Reproduce it

One command returns the tree; extraire_texte as an action in the same call returns the text. Both outputs on this page are real, from the same session, against the same page — nothing staged.

Recorded 15 August 2026 Produced with Dinoer 1.0.0 against https://example.com, guide-version 1.6.