Problem
GOAT gives agents 200+ financial tools and multi-chain wallet access, but no way to assess who they're transacting with. When an agent is about to send a payment, provide liquidity, or interact with another wallet — there's no trust signal to inform the decision.
This is especially important as agent-to-agent commerce grows. A lending agent extending credit needs different risk thresholds than a simple payment agent.
Proposal
Add a wallet reputation scoring plugin powered by DJD Agent Score.
The API returns a 0–100 trust score across 5 behavioral dimensions, derived from on-chain activity on Base:
| Dimension |
What it measures |
| Identity |
Multi-chain attestations (ENS, stETH, governance tokens) |
| Behavior |
Transaction frequency, diversity, gas efficiency |
| Reliability |
Balance stability, payment consistency |
| Viability |
Balance trajectory, longevity |
| Capability |
Contract interactions, DeFi protocol usage |
Plugin sketch
import { PluginBase, createTool } from "@goat-sdk/core";
class WalletReputationPlugin extends PluginBase {
constructor() {
super("walletReputation", []);
}
supportsChain = () => true; // Scoring works for any wallet
getTools() {
return [
createTool({
name: "check_wallet_reputation",
description: "Score a wallet's on-chain reputation (0-100) before transacting",
parameters: {
wallet: { type: "string", description: "Wallet address to score" },
},
execute: async ({ wallet }) => {
const res = await fetch(
`https://djd-agent-score.fly.dev/score/basic/${wallet}`
);
return res.json();
},
}),
createTool({
name: "check_reputation_detailed",
description: "Get detailed wallet reputation with dimension breakdown",
parameters: {
wallet: { type: "string", description: "Wallet address to score" },
},
execute: async ({ wallet }) => {
const res = await fetch(
`https://djd-agent-score.fly.dev/score/full/${wallet}`
);
return res.json();
},
}),
];
}
}
Usage with any GOAT agent
import { WalletReputationPlugin } from "@goat-sdk/plugin-wallet-reputation";
const tools = getOnChainTools({
wallet: myWallet,
plugins: [
new WalletReputationPlugin(),
// ... other plugins
],
});
// Agent can now check reputation before sending payments:
// "Check the reputation of 0x... before sending 100 USDC"
Key features
- Free tier: 3 scores/day, no API key needed
- x402 micropayments: Pay-per-request via USDC on Base for higher volume
- TypeScript SDK:
npm install djd-agent-score-client
- Sybil detection: Flags wash trading, gas manipulation, circular flows
- ERC-8004: Scores also published on-chain for trustless access
This fits GOAT's plugin architecture well — lightweight, optional, and composable with existing financial tools. Happy to help build this out or submit a PR!
Problem
GOAT gives agents 200+ financial tools and multi-chain wallet access, but no way to assess who they're transacting with. When an agent is about to send a payment, provide liquidity, or interact with another wallet — there's no trust signal to inform the decision.
This is especially important as agent-to-agent commerce grows. A lending agent extending credit needs different risk thresholds than a simple payment agent.
Proposal
Add a wallet reputation scoring plugin powered by DJD Agent Score.
The API returns a 0–100 trust score across 5 behavioral dimensions, derived from on-chain activity on Base:
Plugin sketch
Usage with any GOAT agent
Key features
npm install djd-agent-score-clientThis fits GOAT's plugin architecture well — lightweight, optional, and composable with existing financial tools. Happy to help build this out or submit a PR!