top of page

Astryx solved the intent problem. Meta's intent.

Writer: john morais
john morais
Aug 10
4 min read

Meta opened Astryx, the design system that ran internally for eight years across thirteen thousand applications, under an MIT license. The difference everyone is talking about is that it was built to be read by agents: a CLI that returns the full documentation of each component, a JSON manifest that describes every command and every prop, an embedded MCP server, and a dense format that cuts human text to save the LLM's context.


The easy reading of this launch is: done, they solved the problem of AI building interfaces. I read it closely precisely because I have been in the middle of this problem for two months, and I reached a different conclusion. Harness Design is contextual.




What they really solved


Astryx does document intent, yes. The project's principles state explicitly that design opinions live in the documentation and in the examples. Each component carries annotations with composition tips and inline guidance on how the pieces fit together. The naming, prop, and composition rules are the same across every component, so once the agent learns a few, it can predict how an unfamiliar one will behave.


The problem that Meta names is that design systems have always been built for human consumption, and that stopped working once part of the code started being written by agents. Their answer was to make the system predictable: the same naming, prop, and composition rules in every component, so the AI can infer how a component it has never seen will behave.


This is intent work. It is designer work. But it is Meta's intent work, solved for Meta's context, and generic by construction (see a case), because it has to serve the thirteen thousand apps running inside it.



Intent lives on a spectrum


This is where it clicked for me.


At one end there is universal intent. A login is a login. A form is a form in almost any system. Tables, pagination, required fields. That knowledge lives outside your company, and that is exactly why a third-party library can deliver it ready-made.


At the other end there is your product's intent. In our case: a drawer replaces a modal, and it is used extensively. The component that represents a tire diagram, where the information cannot shrink without losing legibility. The specific way we handle vehicle status. None of this exists in any library. It is born from scratch, in-house.




The variable that decides where you stand on the spectrum is legacy


And this is where the conversation shifts for most of the designers I know.

If you work on a product that has been on the market for five or ten years, your company has already built a lot of its own. Accumulated decisions, patterns that became identity, ways of doing things that users have already learned and expect to find. You do not take a third party's intent and lay it over that: it will fight with what already exists. Here, producing your own intent is the rule, not the exception.


I have some data on this part. In our tests with Claude Code, before the project was formalized, it got tables, headers, and menus right easily, because the pattern exists outside our system. And it failed precisely where the only reference could be ours: it shrank the information in the tire diagram until it was unreadable, used a checkbox in a list format that does not exist here, and, the most emblematic case, it did not find our way of handling status and invented its own: cards with a yellow, red, and green background, a logic that does not exist in our design system.


Astryx would fix the first category. It would not fix any of the second.



To be fair to the other side


If you are starting a product from scratch, the math is different. You start near the universal end, inherit a large amount of already documented intent, and only go down into your own layer when you hit a problem the library did not anticipate. In that scenario, adopting something like Astryx makes a lot of sense. I am not saying nobody should adopt it. I am saying where the math works and where it does not.




What can be copied, and what cannot


What can be copied from Astryx is the approach. The single door where humans and agents ask the same question and get the same answer. Machine-readable documentation. The dense format that does not burn through context. That is engineering practice, not their property, and it is the part worth studying closely.



The content that goes through that door is another problem. Documenting that the drawer replaces the modal in our system, and in which situation it is the right choice, is not work a third-party library can do. It is the work of understanding what a fleet screen needs to communicate and writing it in a way the machine can use.

This market launches something new every week, and Astryx is this time's novelty. The distinction between the intent that comes ready-made and the intent that is yours: that one I do not see changing with the next launch.

Comments


bottom of page