Skip to content
KUROLABS
← Back to projectsPROJECTS / Raphael
Raphael
in use

Raphael

The first sub-mind: a separate service that reads Cloe's own logs and says when something is wrong.

Python / Flask / Log tailing / Pattern matching

A system that writes logs nobody reads does not have diagnostics, it has an archive. Raphael is the thing that actually reads them: a separate process watching Cloe from the outside, matching what goes past against patterns worth caring about, and putting whatever it finds somewhere visible.

Watching from outside is the point

Raphael is a separate service, not a module. A watcher that lives inside the thing it watches goes down with it — and the moment you most want diagnostics is the moment the main process has stopped answering. Running apart means a fault gets named while it is happening rather than reconstructed three days later.

Four panes, because they are four different questions

The panel splits what a diagnostic tool actually has to answer, instead of pouring everything into one scrolling column.

  • Watchlist — the patterns being matched, and how many are active
  • Sources — which logs are being tailed right now
  • Live feed — what is streaming past this second
  • Findings — what actually matched, with counts, and an honest “no patterns matched yet” when nothing has
Runs on
Its own Flask service, :5002
Watches
Cloe's own logs, live
Part of
Cloe — skill 1 of 4