Skip to content

penguineer

penguineer finds the root cause of off-spec lots from historian and LIMS exports, on a laptop and offline. It is a KausalFlow open-source project under the Apache-2.0 license.

It reads files and writes files; only the fetch commands, which pull a window from AVEVA PI or a data lake, use the network. The engines are deterministic Python, and an LLM is optional and never decides a ranking. Every command is defined once, as a Pydantic parameter model, a result model and a function. The CLI, the --json output and the Python API are all generated from that definition, so they cannot drift apart.

Alchemist imports penguineer as a library and adds the UI, runners, project management, the data catalog, staging and sealing on top. penguineer has none of those itself.

Status

This is an early release. init, fetch pi, fetch lake, data health, graph check, graph draft, graph lags, lag, align, compare, investigate, bench homeostat and mcp work. graph draft reads tag names and DEXPI P&IDs, and can ask an LLM for the relations they leave open. On Homeostat plants it names the injected cause among its top three in 93% of the hidden scenarios: see Results.

Where to go next