Settings

Theme

Show HN: Ratel, give agents unlimited tools and skills without context bloat

github.com

23 points by jack1689 11 days ago · 24 comments · 2 min read

Reader

Hi HN! We're Giacomo and Roberto, authors of Ratel (https://github.com/ratel-ai/ratel)

We used to help SaaS companies build agents on top of their products. Whenever we wanted to expand the agents’ complexity/scope, by adding more and more tools and instructions, we always run in the same issue: context bloat, with frequent hallucinations and sky high token bills. So we started constantly engineering the agents, dynamically loading tools, splitting them into subagents, inventing our own way to support skills

And that's exactly when we started building Ratel: a library to let your agent keep its full catalog of tools and skills, but progressively disclosing only the few that actually matter for each turn. Now you can grow your agent's capabilities without breaking it or taking out a loan for it

People are already using it in production, with a user cutting their token cost up to 81% in the first month without compromising the accuracy

We support both keyword and semantic retrieval, all in-process and without any additional infra. Open source, framework-agnostic, exposes OpenTelemetry metrics, available for Typescript and Python

Benchmarks: https://benchmark.ratel.sh

Some cool things we did with this:

• One team's agent had up to 300+ tools dynamically loaded into context. Ratel cut their token cost 81% in month one. • Another team split into several subagents instead, one agent per task. It worked, until the swarm got slow and expensive. We fixed this with our skills.

We're both here all day. Tear it apart, especially if you're an AI or SWE running agents in production

maxdo 2 days ago

I vibe coded such a thing in 15 mins.

I think building it , will be better. Custom solution can have any memory you dream of integrations, it can recommend skills with some nesting or not the call can combine all instructions or not if you want or structure it in custom objects.

Also if you go custom it can be part of your release process. Usually i'm pro libraries, but in this case hard to imagine going with such tool. Connecting it properly to self learning loops might be a challenge too.

vinci00 11 days ago

Isn't this just RAG for tools? Also, MCP already has tool search, how is this useful in that case?

  • jack1689OP 11 days ago

    Hey, yes it's on the same family for sure! The difference is that it works with anything, not just MCPs, and it runs in-process without any additional infra (which usually isn't the case for other RAG solutions). Happy to hear your feedback if you try it out :)

tomhow 11 days ago

[stub for offtopicness]

  • missmoss 11 days ago

    This is neat! It tackles a boring but real problem with agents. When you have too many tools, the model gets confused. This is a good search box for its tools instead of dumping everything into the prompt. Benchmarks is amazing!

    • jack1689OP 11 days ago

      Thank you! Let us know how it works if you try it out :) of course real world is another story, but we agree benchmarks are amazing indeed!

  • flaviobernoni 11 days ago

    really cool, first time I've seen anyone treat "which tools does my agent even get to see" as its own problem. Is the roadmap more about pushing deeper on the retrieval side over time, or mostly about covering more frameworks/languages?

    • jack1689OP 11 days ago

      Thank you! Right now we're adding some frameworks adapters to lower the adoption friction, and pushing deeper on new algorithms on the retrieval side. More languages support is not on the radar yet, but we accept contributions! :)

  • KristianLentino 11 days ago

    Benchmarks looks very promising! I’ll try to test this new tool in the next few days thanks for sharing!

  • atenareply 11 days ago

    This looks so nice!

    • atenareply 11 days ago

      I see you built the core in Rust with bindings to TS/Python. y?

      • jack1689OP 11 days ago

        Yes! I should have mentioned in the original post. It was actually built in Typescript at first, but then the performance were not good enough for production use cases. With Rust the footprint was way lower, and we managed tear the latency down from 200ms to 20ms for a single search

  • iustinai 11 days ago

    man this could save me so much money lol

    • jack1689OP 11 days ago

      Would love to hear your feedback if you can try it. We initially rolled out BM25 for tool search as it worked best for us internally. Recently rolled out also embeddings and an hybrid option that is being tested in production as we speak

  • bbg2401 11 days ago

    Anyone else suspect this is an entirely astroturfed comment section?

    • tortilla 11 days ago

      Yes. The comments read like positive ai vibes and their profiles seem empty and low karma.

      • jack1689OP 11 days ago

        Hey guys, fair callout, but no AI involved, promise! You're right that some comments look off and someone's farming karma for sure. We see genuine traffic to the repo anyway, so people is checking it out!

        Critical feedback is what we're here for, so fire away if you have anything :)

        • tomhow 10 days ago

          This comment was detected by our software as AI generated. It could always be a false positive, but if you're using AI at all to write your comments, please stop. It's against the guidelines and only harms your reputation in the eyes of the community.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection