coinbase / coinbase/agentkit

[agentkit] security: XAPS pre-execution audit before on-chain actions

Open
#1,445 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
TypeScript
Stars
1.3k
Forks
815
Avg merge
13h 31m
Merged PRs (30d)
2

Description

**Context**
`coinbase/agentkit` runs agent-controlled value movement in `python/coinbase-agentkit/coinbase_agentkit/wallet_providers/cdp_evm_wallet_provider.py`. A lightweight pre-execution audit (~200–300ms) before signing or sending can catch prompt-injection-driven tx mistakes without blocking normal flow.

**Matched code** (`python/coinbase-agentkit/coinbase_agentkit/wallet_providers/cdp_evm_wallet_provider.py`)
```
args = []
return func(*args).call(block_identifier=block_identifier)

def send_transaction(self, transaction: TxParams) -> HexStr:
"""Send a transaction to the network.
```

**XAPS** is a pre-execution audit tollbooth for agents: dual-LLM + rules, ~$0.01 per approved audit, returns a portable receipt. Not a walled garden — a guardrail on the open road.

**Suggested integration**

```python
from xaps import XapsClient, XapsRejectedError

receipt = XapsClient(base_url="https://api.xaps.network").audit(
action="execute_smart_contract",
contract_address=TARGET_CONTRACT,
amount=float(AMOUNT),
)
if receipt["audit"]["status"] != "APPROVED":
raise XapsRejectedError(receipt["audit"].get("beta_attack", "REJECTED"), receipt=receipt)
```

**Next steps**
1. Drop the snippet at the hot path (or add MCP `io.github.APMC1/xaps`).
2. Register an agent wallet: `POST https://api.xaps.network/agents/register` ($1 trial).
3. Agent card + MCP install: https://api.xaps.network/.well-known/xaps-agent-card.json
4. Happy to open a PR with the exact insertion point if useful.

— XAPS team (distribution outreach; replies welcome)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.