Comment by dataviz1000
11 hours ago
I worked with Mastra for three months and it is awesome. Thank you for making a great product.
One thing to consider is that it felt clunky working with workflows and branching logic with non LLM agents. I have a strong preference for using rules based logic and heuristics first. That way, if I do need to bring in the big gun LLM models, I already have the context engineering solved. To me, an agent means anything with agency. After a couple weeks of frustration, I started using my own custom branching workflows.
One reason to use rules, they are free and 10,000x faster, with an LLM agent fallback if validation rules were not passing. Instead of running an LLM agent to solve a problem every single time, I can have the LLM write the rules once. The whole thing got messy.
Otherwise, Mastra is best in class for working with TypeScript.
I learned that every step that can be solved reasonably without an LLM, should be solved without an LLM. Reliability, cost, performance, etc.
I try to transfer as much work as I can out of LLMs and into deterministic steps. This includes most of the “orchestration” layer which is usually deterministic by nature.
Sprinkle a little bit of AI in the right places and you’ll get something that appears genuinely intelligent. Rely too much on AI and it’s dumb as fuck.
Make their tasks very small and simple (ideally, one step), give them only the context and tools that they need and nothing else, and provide them with feedback when they inevitably mess up (ideally, deterministically), and hope for the best.
Thank you for using us, and for the feedback!
Do you have code snippets you can share about how you wanted to write the rules? Want to understand desired grammar / syntax better.