memi - The AI agent harness for product design teams
by•
A macOS workbench where Claude, Codex, and Hermes run on your specs, research, and Figma files.
Replies
Best
Maker
📌
Hey Product Hunt 👋
I built memoire because I kept seeing the same problem: designers are being asked to work closer to code, AI agents, design systems, and product logic, but the tools around them still treat design context as something separate.
memoire is an open-source AI agent harness for product designers. It helps connect your design workflow to Figma, GitHub, codebases, design systems, and AI agents like Claude, Codex, and other local or open-source tools.
The goal is simple: make AI-assisted building feel less like starting from zero every time and more like working with a system that understands your project, your components, your patterns, and your taste.
I’m especially interested in feedback from designers, builders, and indie hackers:
What part of your design-to-code workflow still feels the most broken?
Is it handoff, design systems, context switching, agent setup, Figma-to-code, or picking up an existing project mid-way?
Would love your thoughts, critiques, and feature requests.
Report
Love the vision of an AI that understands your patterns and taste. I wonder how does memoire actually learn and quantify something as subjective as a designer's aesthetic preferences over time?
Report
Maker
@crystalmei I love this question because taste is the whole point. We do not try to turn a designer’s aesthetic into one magic score. memi builds a living taste profile from repeated signals: accepted vs rejected generations, recurring token choices, component patterns, spacing/type/color preferences, reference boards, Figma usage, and project-specific decisions. Over time it can say things like “this team tends to prefer denser layouts, sharper radii, quieter contrast, and editorial type” and use that as context for critique or generation. The quantification is really a memory layer plus receipts, so subjective taste becomes something the agent can reference and improve against without pretending it is objective.
Report
Routing multiple agents against the same Figma source is the right call. Text specs drift from design intent the moment a file changes. It's a translation layer that doesn't survive iteration. When Claude and Codex generate diverging implementations from the same component spec, how do you surface and resolve those conflicts?
Report
Maker
@anand_thakkar1 Great question. The way we think about it is: Figma stays the source of truth, and agent outputs become proposals against that source, not separate truths. memi keeps the shared context around component specs, tokens, source frames, receipts, and prior accepted changes. When Claude and Codex diverge, the goal is to surface the delta clearly: what changed, which design intent it maps to, and where it conflicts. The designer can accept, reject, or revise, and that resolution becomes part of the project memory for the next run. So conflict resolution is less “average two agents” and more “keep design intent anchored while agents produce inspectable diffs.”
Replies
Love the vision of an AI that understands your patterns and taste. I wonder how does memoire actually learn and quantify something as subjective as a designer's aesthetic preferences over time?
@crystalmei I love this question because taste is the whole point. We do not try to turn a designer’s aesthetic into one magic score. memi builds a living taste profile from repeated signals: accepted vs rejected generations, recurring token choices, component patterns, spacing/type/color preferences, reference boards, Figma usage, and project-specific decisions. Over time it can say things like “this team tends to prefer denser layouts, sharper radii, quieter contrast, and editorial type” and use that as context for critique or generation. The quantification is really a memory layer plus receipts, so subjective taste becomes something the agent can reference and improve against without pretending it is objective.
Routing multiple agents against the same Figma source is the right call. Text specs drift from design intent the moment a file changes. It's a translation layer that doesn't survive iteration. When Claude and Codex generate diverging implementations from the same component spec, how do you surface and resolve those conflicts?
@anand_thakkar1 Great question. The way we think about it is: Figma stays the source of truth, and agent outputs become proposals against that source, not separate truths. memi keeps the shared context around component specs, tokens, source frames, receipts, and prior accepted changes. When Claude and Codex diverge, the goal is to surface the delta clearly: what changed, which design intent it maps to, and where it conflicts. The designer can accept, reject, or revise, and that resolution becomes part of the project memory for the next run. So conflict resolution is less “average two agents” and more “keep design intent anchored while agents produce inspectable diffs.”