Graphdom documentation

Graphdom learns a website task by watching experts do it, then gives you a spider that must pass its tests offline before it touches the real site.

How a task becomes a spider

An expert records the task. Graphdom rebuilds the site as an offline sandbox from the recording, builds a deterministic spider, and runs it against every recorded session. Only a spider that passes them all goes on to the real site. How it works walks through each stage.

  1. recordAn expert does the task in Chrome.graphdom record <url>
  2. archiveEvents, bodies and a causal graph, on disk.graphdom studio
  3. sandboxThe site, served offline from the recording.graphdom sandbox
  4. buildOne spider, tested on every session.graphdom build [root]
  5. runThe spider on the real site.graphdom runtime runSUBMIT asks first

Principles

  • No model at run time. A model writes and repairs the spider. The spider runs without one and gives the same result for the same site and inputs.
  • Evidence first. A spider, or a repair of one, ships only when it passes the tests derived from the recorded sessions.
  • Local first. Recordings, sandboxes and spiders stay on your machine. Nothing reaches a model before it is redacted.
  • No runtime dependencies. Graphdom is the Node.js standard library and Chrome, driven over the DevTools Protocol.