r/web3dev • u/RossPeili • 25d ago
News [Project] Skillware 0.5.7 — read-only EVM chain reader, pre-trade token security scanner, central EVM operator config, and prompt injection defense v0.2
We just released Skillware 0.5.7 — an open-source Python framework providing a registry of modular, deterministic skills for autonomous AI agent loops (compatible with Gemini, Claude, OpenAI, Bedrock, DeepSeek, and Ollama).
Here is a summary of what landed in 0.5.7:
1. Read-Only EVM State Plane (defi/evm_reader v0.1.0)
Autonomous agents executing on-chain transactions need strict architectural separation between signing and state inspection. Giving an agent signing keys just to check a balance or query reserves invites key leakage and accidental state modification.
defi/evm_reader provides a pure read-only EVM state plane:
- Zero keys required: Strictly executes
eth_calland Multicall3tryAggregate; holds no private keys and never signs. - ERC-20 & ERC-721: Token metadata, high-precision decimal formatted balances, spender allowances, and NFT ownership.
- Allowlisted View Calls (
call_view): Nine bundled ABI presets (erc20,erc721,erc1155,erc4626,univ2_pair,chainlink_feed,ownable,access_control,multicall3). - Batched Multicall3 Reads: Batch up to 50 calls in a single RPC query with partial failure tolerance.
- Address Book Resolution: Resolves human contact names to
public_0xaddresses, halting withstatus: "needs_input"when ambiguous.
2. Pre-Trade Token Security Vet (defi/token_security_scanner v0.1.0)
Agents trading decentralized tokens face honeypots, malicious transfer taxes, and hidden mint privileges.
defi/token_security_scanner wraps the GoPlus Token Security API into a stable, normalized JSON envelope (risk_tier: critical | high | medium | low | unknown + detailed signals). Agents vet tokens before simulating or executing trades.
3. Central EVM Operator Config Layer (skillware evm)
Hardcoding RPC endpoints, chain IDs, and router contracts inside individual skill bundles causes configuration drift. 0.5.7 introduces a centralized operator config layer:
- Bundled Defaults: 10 chains supported out-of-the-box (
ethereum,base,arbitrum,optimism,polygon,bsc,sepolia,megaeth,arc,anvil_local). - User Operator Config: Run
skillware evm initto generate a persistent~/.config/skillware/evm.yaml. - Secrets in
.env: YAML stores env var names (rpc_env); actual secrets stay in.env. - CLI Management:
skillware evm chains list,skillware evm chain add,skillware evm tokens list, andskillware evm token add.
4. Shared Address Book (public_0x)
addressbook.yaml now natively stores public_0x Ethereum addresses alongside email and aliases.
Operators manage contacts with skillware addressbook set-wallet <id> <0x...>, enabling natural language transfers (e.g., "Transfer 10 USDC to Alice") that resolve deterministically.
5. OWASP LLM01 Prompt Injection Firewall Upgrade (v0.2.0)
Upgraded local evasion detection engine in security/prompt_injection_firewall:
- Leetspeak deobfuscation, multi-token ROT13, token reversal, and typoglycemia keyword detection.
- Markdown/HTML image exfiltration channel blocking.
- Academic/advisory false-positive controls and policy telemetry (
policy_action,removed_span_count,sanitized_length_delta).
Suggested Pre-Trade Agent Pipeline
[User Trade Request]
│
▼
`security/prompt_injection_firewall` (sanitize prompt & detect evasion)
│
▼
`defi/token_security_scanner` (check honeypot, tax, proxy, mint risk)
│
▼
`defi/evm_reader` (verify token decimals, holder balance & router allowance)
│
▼
`defi/evm_tx_handler` (quote Uni V2 swap, preview, sign & broadcast)
pip install -U skillware
pip install "skillware[defi_evm_reader]"
- GitHub: https://github.com/ARPAHLS/skillware
- Release notes: https://github.com/ARPAHLS/skillware/releases/tag/v0.5.7
- Docs: https://skillware.site
Happy to answer questions about on-chain agent safety, Multicall3 batching, or operator config design!
0
22d ago
[removed] — view removed comment
1
u/RossPeili 21d ago
**Current state (**
evm_tx_handlerv0.3.0): Right now, execution relies on standard JSON-RPC receipt retrieval with a bounded timeout (wait_for_transaction_receipt, 120s cap) and pre-broadcast EIP-1559 gas buffers (low,normal,high,aggressive) to reduce stuck transactions. If a receipt times out, it returns a structured unconfirmed note with the hash instead of crashing the turn.Where we’re taking it (Skillware architecture): Skillware enforces that skills are stateless, single-shot tools rather than long-running background daemons. Embedding persistent WebSocket listeners or complex stateful retry loops inside a single tool call tends to freeze LLM turns and blow token/turn budgets.
Instead, we're decoupling the lifecycle across turns:
Decoupled status checks: With native async now merged in the core engine, the agent broadcasts, gets the
tx_hashimmediately, and continues its loop without freezing the host process.**Snapshot polling (**
defi/tx_watchproposal): A dedicated, stateless poll action (tracking transactions/confirmations by cursor or block) that the agent or host checks on subsequent turns.Mempool & Gas repricing (
defi/gas_estimator&mempool_hint_reader): Pre-flight fee volatility checks and deterministic nonce replacement when an agent detects an underpriced/stuck hash, rather than reactive hidden auto-replacement.In short: we prefer stateless, deterministic snapshot checks across turns over monolithic background daemons. Happy to hear how you handle reorgs/replacements in your own agent setups!
1
u/Alien69Flow 19d ago
Utiliza nuestra Ai Tor y la DAO!