Bankr Agent - Arbitrary Transactions
This skill should be used when the user wants to "submit a transaction", "execute calldata", "send raw transaction", "submit transaction JSON", or provides a JSON object with to/data/value/chainId fields. Handles raw EVM transaction submission.
Savant verdict: Review advised
Security analysis or source-hub review identified patterns requiring attention.
Live evaluation
Not evaluated yet. Workspaces can request a live evaluation.
Security assessment
Scan pending.
Structure
- No license declaredConfirm you may reuse this skill before importing it into your repository.
- The source hub's security checks flagged this skillGen Agent Trust Hub: fail (This sk il l al l o w s t h e a g e n t t o e x e c u t e a r b i t r a r y b l o c k c h a i n t r a n s a c t i o n s w i t h r a w c a l l d a t a . T h i s i s a h i g h - r i s k c a p a b i l i t y b e c a u s e a n a t t a c k e r c a n p r o v i d e m a l i c i o u s t r a n s a c t i o n d a t a v i a i n d i r e c t p r o m p t i n j e c t i o n t o e x e c u t e u n a u t h o r i z e d a c t i o n s , s u c h a s d r a i n i n g t o k e n s o r i n t e r a c t i n g w i t h m a l i c i o u s c o n t r a c t s .); Socket: warn (1 alert: gptSecurity); Snyk: warn (Risk: MEDIUM · No issues)
SKILL.md
---
name: Bankr Agent - Arbitrary Transactions
description: This skill should be used when the user wants to "submit a transaction", "execute calldata", "send raw transaction", "submit transaction JSON", or provides a JSON object with to/data/value/chainId fields. Handles raw EVM transaction submission.
version: 1.0.0
---
# Arbitrary Transaction Submission
Submit raw EVM transactions with explicit calldata to any supported chain.
## JSON Format
```json
{
"to": "0x...",
"data": "0x...",
"value": "0",
"chainId": 8453
}
```
| Field | Type | Description |
|-------|------|-------------|
| `to` | string | Target contract address (0x + 40 hex chars) |
| `data` | string | Calldata to execute (0x + hex string) |
| `value` | string | Amount in wei (e.g., "0", "1000000000000000000") |
| `chainId` | number | Target chain ID |
## Supported Chains
| Chain | Chain ID |
|-------|----------|
| Ethereum | 1 |
| Polygon | 137 |
| Base | 8453 |
| Unichain | 130 |
## Prompt Examples
**Submit a raw transaction:**
```
Submit this transaction:
{
"to": "0x1234567890abcdef1234567890abcdef12345678",
"data": "0xa9059cbb000000000000000000000000recipient00000000000000000000000000000000000000000000000000000000000f4240",
"value": "0",
"chainId": 8453
}
```
**Execute calldata on a contract:**
```
Execute this calldata on Base:
{
"to": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"data": "0x095ea7b30000000000000000000000007a250d5630b4cf539739df2c5dacb4c659f2488dffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff",
"value": "0",
"chainId": 8453
}
```
**Send ETH with calldata:**
```
Submit transaction with value:
{
"to": "0xRecipientAddress...",
"data": "0x",
"value": "1000000000000000000",
"chainId": 1
}
```
## Validation Rules
| Field | Validation |
|-------|------------|
| `to` | Must be 0x followed by exactly 40 hex characters |
| `data` | Must start with 0x, can be "0x" for empty calldata |
| `value` | Wei amount as string, use "0" for no value transfer |
| `chainId` | Must be a supported chain ID |
## Common Issues
| Issue | Resolution |
|-------|------------|
| Unsupported chain | Use chainId 1, 137, 8453, or 130 |
| Invalid address | Ensure 0x + 40 hex chars |
| Invalid calldata | Ensure proper hex encoding with 0x prefix |
| Transaction reverted | Check calldata encoding and contract state |
| Insufficient funds | Ensure wallet has enough ETH/MATIC for gas + value |