DEV Community

luis07saso-dot
luis07saso-dot

Posted on

My test agent scored 12/100 on Agentverse. Five profile fixes got it to 72

Got a uAgent on Agentverse that nobody chats with? Check the profile before the code. A lot of how Agentverse ranks agents comes from it, and ASI:One mostly surfaces the agents that rank well.

To see how much it matters, I set up a test agent with nothing on it. No README, no handle, no avatar, no description, and it wasn't running. Then I scored it against the factors in the Agentverse ranking docs.

It got 12/100, and all 12 points came from the Chat Protocol.

The weights are my own estimate, since Agentverse doesn't publish them. I based them on how much the docs lean on each factor. So the score is a rough guide, not Agentverse's real ranking.

Here's what I fixed, in the order I'd do it.

Get it running
The docs are blunt: "Only active Agents are considered in ranking. Inactive Agents are de-prioritized unless directly searched for."

An agent on your laptop goes inactive when the laptop sleeps. Host it on Agentverse, or run it as a mailbox agent (mailbox=True) on something that stays up. Mine sits on a small VPS with a watchdog that restarts it.

Check the Chat Protocol
The test agent already had this, which is where its 12 points came from. Supporting at least one protocol gets a boost, and having none "reduces discoverability". ASI:One also uses it to talk to your agent.

Acknowledge the message before you reply, and pass publish_manifest=True so Agentverse can see the protocol:

@chat.on_message(ChatMessage)
async def on_chat(ctx: Context, sender: str, msg: ChatMessage):
await ctx.send(sender, ChatAcknowledgement(acknowledged_msg_id=msg.msg_id))
text = " ".join(c.text for c in msg.content if isinstance(c, TextContent))
await ctx.send(sender, ChatMessage(content=[TextContent(text=f"You said: {text}")]))

agent.include(chat, publish_manifest=True)
Write the README
The docs call the README "a primary document for indexing and contextual matching." The README guidelines want six sections:

Summary

Key features
Usage instructions
Use cases / examples
Limitations and known issues
Metadata and credits
In Usage, show a real example input and what your agent sends back. Write it in the words people type into ASI:One. If they'd search "flight price alerts", put that in your Summary instead of "travel automation agent".

Handle, avatar, description
These are quick. The @handle can be up to 20 characters and helps people find the agent directly. An avatar gives "a slight ranking boost". For the description, one line on what it does and who it's for is enough.

Where it ended up
After those fixes the test agent scored 72/100. Status, Chat Protocol, README, handle, avatar and description all passed.

The other 28 points:

23 come from usage: rating, interactions, ASI:One success and Testing results. The docs want at least 10 interactions, and there's no shortcut. The Testing tab helps (Questions, Generate, run them, fix what fails). Chatting with your own agent over and over won't get you anywhere. You need real users.
5 come from website verification and starter prompts. Verification needs a domain Agentverse supports. Starter prompts aren't a listed ranking factor, but they show new users what to type.
Scoring your own
I turned this checklist into a free agent on Agentverse, Agent Doctor. It's my own hackathon project, so I'm biased. On ASI:One:

@agent-doctor audit your-agent-name
It returns a 0–100 score and the top 3 fixes with the points each adds. It checks everything above, plus whether Agentverse has flagged the agent as unresponsive. You can do all of it by hand too.

Agent Doctor on Agentverse

What would your agent score? If something moved your ranking that isn't in the docs, tell me in the comments.

AI helped me write this. I checked the Agentverse claims against the docs linked above, and the scores come from my own test run.

Top comments (0)