What new feature would you like to see?
Our group recently developed CatGo, an AI-agent-driven platform for computational chemistry with a focus on computational catalysis. It combines an interactive 3D structure builder/viewer, a visual DAG
workflow editor, HPC job submission/monitoring, and a natural-language assistant in a single tool.
A recurring pain point for catalysis researchers is the gap between authoring a workflow in code and interactively building/inspecting the structures and monitoring the jobs it runs on. quacc's recipe/flow
design is an excellent fit for the execution side, and we'd like to explore making it a first-class backend engine for CatGo so the two halves connect.
Describe the solution you'd like
Integrate quacc with CatGo so that:
- quacc as a backend execution engine — CatGo workflows (or quacc flows) execute through quacc recipes, with CatGo handling structure editing, HPC submission, and live job monitoring in its UI.
- Bidirectional workflow exchange — a quacc @flow can be visualized and edited as a DAG in the CatGo frontend, and a graph edited in CatGo can be exported back to a runnable quacc flow.
- Catalysis-oriented UX — researchers edit slabs/adsorbates and surface models visually in CatGo, dispatch the run via quacc, and watch progress in the CatGo job UI — without hand-writing or re-deriving the
flow.
Describe alternatives you've considered / what already exists on our side
We've already built a one-directional prototype to validate feasibility:
- An import endpoint that statically parses a quacc @flow-decorated function (AST) — or a declarative job list — and converts it into an editable CatGo workflow DAG.
- A recipe-path mapping layer (quacc.recipes.
.. → CatGo node types with sensible default parameters), currently covering VASP core recipes and others.
- A set of importable quacc workflow templates.
This proves the visualization/editing direction works. The natural next steps — and where guidance from the quacc side would help — are (a) running through quacc as the execution backend rather than
re-mapping to our own engines, and (b) a stable, round-trippable serialization so edits in CatGo regenerate a valid quacc flow.
Questions for the maintainers
- Is there interest in (or prior art for) a GUI front-end driving quacc, and would you be open to collaborating / accepting upstream hooks that make this cleaner?
- What is the recommended stable interface to (de)serialize a flow and its job DAG (e.g. for round-tripping through an external editor)?
- For live monitoring, what's the best supported way to stream per-job status from a running flow (recommended workflow engine, results store, or API) so an external UI can subscribe?
- Any pitfalls you'd flag for treating quacc recipes as nodes that a non-quacc scheduler/UI submits and tracks?
We'd be glad to share the prototype, demo it, and contribute upstream where it makes sense. Thanks for quacc — its recipe design made the prototype straightforward to build.
What new feature would you like to see?
Our group recently developed CatGo, an AI-agent-driven platform for computational chemistry with a focus on computational catalysis. It combines an interactive 3D structure builder/viewer, a visual DAG
workflow editor, HPC job submission/monitoring, and a natural-language assistant in a single tool.
A recurring pain point for catalysis researchers is the gap between authoring a workflow in code and interactively building/inspecting the structures and monitoring the jobs it runs on. quacc's recipe/flow
design is an excellent fit for the execution side, and we'd like to explore making it a first-class backend engine for CatGo so the two halves connect.
Describe the solution you'd like
Integrate quacc with CatGo so that:
flow.
Describe alternatives you've considered / what already exists on our side
We've already built a one-directional prototype to validate feasibility:
.. → CatGo node types with sensible default parameters), currently covering VASP core recipes and others.This proves the visualization/editing direction works. The natural next steps — and where guidance from the quacc side would help — are (a) running through quacc as the execution backend rather than
re-mapping to our own engines, and (b) a stable, round-trippable serialization so edits in CatGo regenerate a valid quacc flow.
Questions for the maintainers
We'd be glad to share the prototype, demo it, and contribute upstream where it makes sense. Thanks for quacc — its recipe design made the prototype straightforward to build.