Communitygithub.com

llm-trading-agent-security

Patrones de seguridad para agentes de trading autónomos con autoridad sobre wallets o transacciones. Cubre inyección de prompts, límites de gasto, simulación previa al envío, interruptores de circuito, protección MEV y manejo de claves. Útil cuando un agente autónomo tiene autoridad sobre una wallet o transacción y se necesita revisar sus límites, simulación o manejo de claves.

¿Qué es llm-trading-agent-security?

Este skill proporciona una guía completa de seguridad para agentes de trading autónomos que pueden firmar y enviar transacciones. A diferencia de las aplicaciones LLM normales, los agentes autónomos enfrentan un modelo de amenazas más severo, donde una inyección de prompt o una ruta de herramienta incorrecta puede resultar directamente en pérdida de activos. El skill cubre múltiples capas de defensa, incluyendo la sanitización de datos externos para prevenir inyecciones de prompt, límites de gasto duros (por transacción y diarios), simulación de transacciones antes de enviarlas para comprobar slippage, interruptores de circuito que detienen operaciones en caso de pérdidas consecutivas o excesivas, aislamiento de wallets con claves provenientes de variables de entorno o gestores de secretos, y protección contra MEV mediante RPC privados y fechas límite. Es ideal para desarrolladores que construyen agentes de trading automatizados, bots de ejecución on-chain, o asistentes de tesorería, y necesitan implementar controles de seguridad robustos e independientes.

Compatible con~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/affaan-m/everything-claude-code/tree/main/skills/llm-trading-agent-security

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Seguridad para Agentes de Trading con LLM

Los agentes de trading autónomos tienen un modelo de amenazas más severo que las aplicaciones LLM normales: una inyección o una ruta de herramienta incorrecta puede convertirse directamente en pérdida de activos.

Cuándo Usarlo

  • Construir un agente de IA que firme y envíe transacciones
  • Auditar un bot de trading o un asistente de ejecución en cadena
  • Diseñar la gestión de claves de wallet para un agente
  • Dar a un LLM acceso a colocación de órdenes, swaps u operaciones de tesorería

Cómo Funciona

Capa las defensas. Ninguna verificación es suficiente por sí sola. Trata la higiene de prompts, la política de gasto, la simulación, los límites de ejecución y el aislamiento de wallets como controles independientes.

Ejemplos

Tratar la inyección de prompts como un ataque financiero

import re

INJECTION_PATTERNS = [
    r'ignora (instrucciones anteriores|todas las instrucciones)',
    r'nueva (tarea|directiva|instrucción)',
    r'prompt del sistema',
    r'envía .{0,50} a 0x[0-9a-fA-F]{40}',
    r'transfiere .{0,50} a',
    r'aprueba .{0,50} para',
]

def sanitize_onchain_data(text: str) -> str:
    for pattern in INJECTION_PATTERNS:
        if re.search(pattern, text, re.IGNORECASE):
            raise ValueError(f"Posible inyección de prompt: {text[:100]}")
    return text

No inyectes ciegamente nombres de tokens, etiquetas de pares, webhooks o feeds sociales en un prompt con capacidad de ejecución.

Límites de gasto duros

from decimal import Decimal

MAX_SINGLE_TX_USD = Decimal("500")
MAX_DAILY_SPEND_USD = Decimal("2000")

class SpendLimitError(Exception):
    pass

class SpendLimitGuard:
    def check_and_record(self, usd_amount: Decimal) -> None:
        if usd_amount > MAX_SINGLE_TX_USD:
            raise SpendLimitError(f"Transacción individual ${usd_amount} excede el máximo ${MAX_SINGLE_TX_USD}")

        daily = self._get_24h_spend()
        if daily + usd_amount > MAX_DAILY_SPEND_USD:
            raise SpendLimitError(f"Límite diario: ${daily} + ${usd_amount} > ${MAX_DAILY_SPEND_USD}")

        self._record_spend(usd_amount)

Simular antes de enviar

class SlippageError(Exception):
    pass

async def safe_execute(self, tx: dict, expected_min_out: int | None = None) -> str:
    sim_result = await self.w3.eth.call(tx)

    if expected_min_out is None:
        raise ValueError("Se requiere min_amount_out antes de enviar")

    actual_out = decode_uint256(sim_result)
    if actual_out < expected_min_out:
        raise SlippageError(f"Simulación: {actual_out} < {expected_min_out}")

    signed = self.account.sign_transaction(tx)
    return await self.w3.eth.send_raw_transaction(signed.raw_transaction)

Interruptor de circuito

class TradingCircuitBreaker:
    MAX_CONSECUTIVE_LOSSES = 3
    MAX_HOURLY_LOSS_PCT = 0.05

    def check(self, portfolio_value: float) -> None:
        if self.consecutive_losses >= self.MAX_CONSECUTIVE_LOSSES:
            self.halt("Demasiadas pérdidas consecutivas")

        if self.hour_start_value <= 0:
            self.halt("hour_start_value inválido")
            return

        hourly_pnl = (portfolio_value - self.hour_start_value) / self.hour_start_value
        if hourly_pnl < -self.MAX_HOURLY_LOSS_PCT:
            self.halt(f"PnL por hora {hourly_pnl:.1%} por debajo del umbral")

Aislamiento de wallets

import os
from eth_account import Account

private_key = os.environ.get("TRADING_WALLET_PRIVATE_KEY")
if not private_key:
    raise EnvironmentError("TRADING_WALLET_PRIVATE_KEY no está configurada")

account = Account.from_key(private_key)

Usa una hot wallet dedicada con solo los fondos necesarios para la sesión. Nunca apuntes el agente a una wallet de tesorería principal.

Protección MEV y de fecha límite

import time

PRIVATE_RPC = "https://rpc.flashbots.net"
MAX_SLIPPAGE_BPS = {"stable": 10, "volatile": 50}
deadline = int(time.time()) + 60

Lista de Verificación Pre-Despliegue

  • Los datos externos se sanitizan antes de entrar al contexto del LLM
  • Los límites de gasto se aplican independientemente de la salida del modelo
  • Las transacciones se simulan antes de enviarse
  • min_amount_out es obligatorio
  • Los interruptores de circuito se activan en caso de drawdown o estado inválido
  • Las claves provienen de env o de un gestor de secretos, nunca del código o los logs
  • Se usa un mempool privado o enrutamiento protegido cuando sea apropiado
  • El slippage y las fechas límite se establecen por estrategia
  • Todas las decisiones del agente se registran en un log de auditoría, no solo los envíos exitosos

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

accessibility

Design, implement, and audit inclusive digital products using WCAG 2.2 Level AA. Use when building or auditing UI that must meet WCAG 2.2 Level AA, or when reviewing a change for keyboard, contrast, or screen-reader support.

affaan-m/claude-api

Anthropic Claude API patterns for Python and TypeScript. Covers Messages API, streaming, tool use, vision, extended thinking, batches, prompt caching, and Claude Agent SDK. Use when building applications with the Claude API or Anthropic SDKs.

affaan-m/everything-claude-code

End-to-end marketing campaign planning and execution. Covers audience research, positioning, campaign angle definition, landing page copy, email sequences, social posts, ad copy, short-form video scripts, and content calendars. Use as the orchestration layer for multi-channel product launches. Use when planning or executing a multi-channel product launch, or producing landing page, email, social, or ad copy.

affaan-m/everything-claude-code

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/everything-claude-code-conventions

Development conventions and patterns for everything-claude-code. JavaScript project with conventional commits.

affaan-m/frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use when the user asks to build web components, pages, or applications and the visual direction matters as much as the code quality.

affaan-m/gget

gget CLI and Python workflow for quick genomic database queries, sequence lookup, BLAST-style searches, enrichment checks, and reproducible bioinformatics evidence logs.

affaan-m/literature-review

Systematic literature-review workflow for academic, biomedical, technical, and scientific topics, including search planning, source screening, synthesis, citation checks, and evidence logging.

affaan-m/motion-ui

Production-ready UI motion system for React/Next.js. Use when implementing animations, transitions, or motion patterns.

affaan-m/project-guidelines-example

Example project-specific skill template based on a real production application.

affaan-m/pubmed-database

Direct PubMed and NCBI E-utilities search workflows for biomedical literature, MeSH queries, PMID lookup, citation retrieval, and API-backed literature monitoring.

affaan-m/scholar-evaluation

Structured scholarly-work evaluation for papers, proposals, literature reviews, methods sections, evidence quality, citation support, and research-writing feedback.

affaan-m/uspto-database

USPTO patent and trademark data workflow for official record lookup, PatentSearch queries, TSDR checks, assignment data, and reproducible IP research logs.

agent-architecture-audit

Full-stack diagnostic for agent and LLM applications. Audits the 12-layer agent stack for wrapper regression, memory pollution, tool discipline failures, hidden repair loops, and rendering corruption. Produces severity-ranked findings with code-first fixes. Essential for developers building agent applications, autonomous loops, or any LLM-powered feature. Use when an agent or LLM feature misbehaves and the failing layer is unknown, or before shipping an agent stack.

agent-eval

Head-to-head comparison of coding agents (Claude Code, Aider, Codex, etc.) on custom tasks with pass rate, cost, time, and consistency metrics. Use when choosing between coding agents, or when a change to an agent setup needs measured pass rate, cost, and time rather than an impression.

agent-harness-construction

Design and optimize AI agent action spaces, tool definitions, and observation formatting for higher completion rates. Use when defining or revising an agent

agentic-engineering

Operate as an agentic engineer using eval-first execution, decomposition, and cost-aware model routing. Use when planning or executing engineering work that agents will carry out end to end.

agentic-os

Build persistent multi-agent operating systems on Claude Code. Covers kernel architecture, specialist agents, slash commands, file-based memory, scheduled automation, and state management without external databases. Use when building a persistent multi-agent system on Claude Code with its own memory, commands, and scheduling.

agent-introspection-debugging

Structured self-debugging workflow for AI agent failures using capture, diagnosis, contained recovery, and introspection reports. Use when an agent run fails and you need a reproducible diagnosis instead of a retry.

agent-payment-x402

Add x402 payment execution to AI agents with per-task budgets, spending controls, and non-custodial wallets. Supports Base through agentwallet-sdk and X Layer through OKX Payments / OKX Agent Payments Protocol. Use when an agent must pay for something itself and needs per-task budgets, spending controls, and a non-custodial wallet.

Skills relacionados