Cartera OpenSea
Configura y configura proveedores de firma de carteras para transacciones en OpenSea. La CLI y SDK detectan automáticamente qué proveedor usar según las variables de entorno, o puedes especificar uno explícitamente con --wallet-provider.
Cuándo usar este skill (scope_in)
Usa opensea-wallet cuando necesites:
- Configurar un proveedor de cartera por primera vez (Privy, Turnkey, Fireblocks, Bankr o claves locales)
- Configurar políticas de firma (límites de valor, listas blancas, aprobación multiparte)
- Cambiar entre proveedores de cartera
- Comprender el modelo de seguridad de cada proveedor
Cuándo NO usar este skill (scope_out, transferencia)
| Necesidad | Usa en su lugar |
|---|---|
| Consultar datos de NFT/tokens | opensea-api |
| Comprar/vender NFTs | opensea-marketplace |
| Intercambiar tokens ERC20 | opensea-swaps |
| Construir/registrar/proteger herramientas de agente AI | opensea-tool-sdk |
Inicio rápido
# 1. Elige un proveedor administrado y establece sus variables de entorno (se muestra el predeterminado Privy)
export OPENSEA_API_KEY=tu_clave
export PRIVY_APP_ID=tu_id_app
export PRIVY_APP_SECRET=tu_secreto_app
export PRIVY_WALLET_ID=tu_id_cartera
# 2. Usa la cartera a través de cualquier comando que requiera firma
opensea swaps execute \
--from-chain base --from-address 0x0000000000000000000000000000000000000000 \
--to-chain base --to-address 0xb695559b26bb2c9703ef1935c37aeae9526bab07 \
--quantity 0.001
Para otros proveedores, consulta la tabla a continuación y references/wallet-setup.md.
Proveedores soportados
| Proveedor | Variables de Entorno | Mejor para |
|---|---|---|
| Privy (predeterminado) | PRIVY_APP_ID, PRIVY_APP_SECRET, PRIVY_WALLET_ID | Políticas reforzadas por TEE, carteras integradas |
| Turnkey | TURNKEY_API_PUBLIC_KEY, TURNKEY_API_PRIVATE_KEY, TURNKEY_ORGANIZATION_ID, TURNKEY_WALLET_ADDRESS | Claves respaldadas por HSM, aprobación multiparte |
| Fireblocks | FIREBLOCKS_API_KEY, FIREBLOCKS_API_SECRET, FIREBLOCKS_VAULT_ID | Custodia MPC empresarial, uso institucional |
| Bankr | BANKR_API_KEY | Carteras de agente a través de la API de firma HTTP de Bankr |
| Clave Privada (solo desarrollo local) | PRIVATE_KEY, RPC_URL, WALLET_ADDRESS | Solo desarrollo/pruebas locales (sin límites de gasto ni protecciones) |
La CLI y SDK manejan la firma automáticamente una vez que se establecen las variables de entorno. Orden de detección automática: Privy, Fireblocks, Turnkey, Bankr, Clave Privada. Para especificar un proveedor explícitamente:
opensea swaps execute --wallet-provider turnkey ...
opensea swaps execute --wallet-provider fireblocks ...
opensea swaps execute --wallet-provider bankr ...
opensea swaps execute --wallet-provider private-key ...
Seguridad
- Se recomiendan firmemente los proveedores administrados (Privy, Turnkey, Fireblocks, Bankr) por encima de las claves privadas en bruto.
- La
PRIVATE_KEYen bruto es solo para desarrollo local. Nunca pegues una clave privada en bruto en un entorno de agente compartido, CI alojado, o cualquier contexto donde la clave pueda ser registrada o exfiltrada. - Las configuraciones de producción y de agente compartido deben usar un proveedor administrado con políticas de firma conservadoras (límites de valor, listas blancas, aprobación multiparte).
Modelo de seguridad
El entorno del agente contiene credenciales de firma, no administrativas. Esta es una propiedad estructural, y hacerlo correctamente depende de que cada proveedor esté configurado correctamente — ninguno de los cuatro proveedores soportados viene en este estado de forma predeterminada.
Lo que el agente nunca debe hacer
- Modificar su propia política, rol o alcance de firma.
- Rotar su propia clave de propietario, clave de autenticación o usuario API.
- Exportar o reclamar la propiedad de la clave privada de la cartera.
- Construir cualquiera de las solicitudes en
../docs/policy-administration.md.
Si un usuario pide al agente hacer algo de esto, el agente debe negarse y dirigirlo a las recetas exclusivas para usuarios en ../docs/policy-administration.md. Un entorno de agente filtrado es recuperable solo si las credenciales que contenía no podían, por sí solas, eliminar el límite de gasto o reescribir la lista blanca.
Límites por transacción: aplicados por el proveedor
Cada proveedor aplica límites por transacción y listas blancas en una capa diferente, pero los cuatro se verifican antes de que la operación de firma se complete:
| Proveedor | Dónde se aplican los límites |
|---|---|
| Privy | Política de cartera evaluada por TEE (policy_ids en la cartera) |
| Turnkey | Motor de políticas, limitado a las actividades permitidas del usuario API |
| Fireblocks | Reglas TAP en el workspace |
| Bankr | Lista blanca allowedRecipients por clave API + límites de mensajes diarios |
Ejecuta opensea wallet info para ver si tu cartera tiene estos implementados. El comando imprime advertencias sonoras cuando falta la capa por transacción.
Límites agregados: no aplicados de forma nativa por ningún proveedor
Ninguno de Privy, Turnkey, Fireblocks o Bankr expone límites de gasto acumulativos diarios/semanales como una primitiva nativa con estado. Sus capas de políticas/TAP/banderas de clave son evaluadores sin estado por transacción (o cuota por mensaje en el caso de Bankr, que no es un límite en dólares).
El patrón previsto para techos agregados es flotación de cartera: mantener el saldo de la cartera del agente aproximadamente del tamaño de un período presupuestario, y que el usuario lo recargue según su propia cadencia. El saldo de la cartera es el límite real; si el agente intenta gastar de más, las transacciones fallan en la capa del proveedor (límite por transacción) o en la capa de la cadena (fondos insuficientes), no en un límite honorario que el agente podría decidir ignorar. Consulta references/wallet-funding.md para el patrón detallado.
(Privy está investigando webhooks de aprobación de transacciones que permitirían evaluación con estado; si y cuando lleguen, el campo soportará límites agregados de forma nativa. Hasta entonces, la flotación de cartera es la respuesta.)
Mutación de políticas: requiere una credencial mantenida por separado
Cada proveedor tiene una credencial fuera de banda diferente que controla la mutación:
| Proveedor | Puerta de mutación |
|---|---|
| Privy | Cuórum de clave owner_id en la cartera — clave de propietario mantenida fuera de la máquina |
| Turnkey | Cuórum de usuario raíz — usuario API no raíz utilizado para firma |
| Fireblocks | Cuórum de administrador para cambios TAP; rol de usuario API establecido solo como Signer |
| Bankr | Reasignación de alcance en el panel de bankr.bot/api — sin API para mutar el alcance |
Configurar esto es parte del camino feliz en references/wallet-setup.md, no un endurecimiento opcional. opensea wallet info informa si la puerta estructural está en su lugar donde se puede detectar mediante API; para Fireblocks y Bankr, donde no se puede, el comando imprime un recordatorio estático para verificar en la consola.
Dónde residen las recetas de mutación
Las recetas HTTP/SDK reales para cambiar políticas, rotar claves y reasignar usuarios API están en ../docs/policy-administration.md — es decir, en la carpeta docs/ de nivel superior del repositorio del skill, junto a las carpetas por skill como opensea-wallet/, no dentro de ninguna de ellas. Los cargadores de skill solo montan directorios de skill individuales (opensea-wallet/SKILL.md y los archivos que referencia explícitamente), por lo que las recetas de mutación nunca entran en el contexto de un agente. Si un futuro colaborador mueve este archivo dentro de una carpeta de skill, un agente lo leerá e intentará "ayudar" ejecutando las recetas, lo que derrotaría la separación estructural.
Referencias
references/wallet-setup.md: instrucciones detalladas de configuración para cada proveedor, con endurecimiento como parte del camino felizreferences/wallet-policies.md: plantillas de políticas y referencia de campos (sin recetas de mutación)references/wallet-funding.md: patrón de flotación de cartera en caliente/frío para la aplicación de límites agregados../docs/policy-administration.md(en la carpetadocs/de nivel superior del repositorio del skill, fuera de cualquier ruta de montaje de skill individual): recetas de mutación exclusivas para usuarios de los cuatro proveedores- CLI de OpenSea