for a long period of time, it was a convenient thing to blame all faults of agents on models. "the model just isn't smart enough"
however for the past few months(thanks to claude and ralph wagnum), models have proven themselves to be smarter than humans on verifiable tasks(there are all sorts of benchmarks proving it).
now, the onus of "how good an agent is" is on context. context is basically the information you are providing to the model to execute a task. (so the onus is on you anon)
if you give it more, the model will drown in information and needle in a haystack.
if you give it less, it will either error out or fail short in completing the task.
so the question stands: how much context is good enough context.
a good rule of thumb is to think of a model as an extremely smart intern who has no idea how to do the job you've given them. once you have given them the information, think if its enough for the intern to solve or is anything redundant.
that's practically it.
complexity increases when you go from singular agent to multiple agents. how do you avoid information overload when agents are the ones talking to each other? how do you make sure your $$$ bill doesn't eat away all the seed funding?
here are a few things that might help:
1. do not let allow agents to talk to each other. one way communication is mostly better. that's exactly why companies like anthropic, manusai have some sort of a tracker agent that does the orchestration, spinning, handover and subagents only get the task they are supposed to do.
2. use subagents as much as possible. much better if the subagent does a lot of work and just has to return a small answer. just make sure 1 is followed but do not allow subagents to spin up more subagents. its very difficult to control the recursive loop through prompting. if the recursion blows up, $$$ will blow up too.
3. give the subagents ability to gather context when required instead of giving all the context in the start. the benefits are many. lost attention in long running tasks, unused context(extra $), overload amongst others can be avoided. its always a good practice to put yourself in the place of subagent and ask, how would i gather context? give the same tools to the subagents as well.
4. do not give conditional tooling. this also came out in manus blogs. once you take or give tools based on some condition, it increases the likelihood of calling wrong tools. always a good practice to keep tools static for the entire run.
agents are getting better. its always a good time to brush up on what's the current thing and i'd recommend re-writing your entire architecture every 6 months. a lot has changed in the past 6:
- you no longer need to handhold the model in prompting.
- file system is the solo winner in keeping context.
- bash tool is the single most powerful tool.
- sandboxes are a necessity.
- harness decides how good your agent can be.
that's all i guess. ping me if you need any help :)