juicebox-v6

Par bankrbot · skills

Construisez, inspectez, configurez et interagissez en toute sécurité avec les projets Juicebox V6, les terminaux, les rulesets, les hooks, les NFT à niveaux, les Revnets, Croptop, Bendystraw et les déploiements omnichain. À utiliser pour les questions sur le protocole Juicebox, les adresses de contrats ou ABI, la création de projets, les paiements, les cash-outs, la tokenomics, les hooks, les niveaux de NFT, les bridges cross-chain, les requêtes de prêt, le décodage de transactions, et le développement d'applications/UI Juicebox sur Ethereum, Optimism, Base, Arbitrum, ou leurs testnets Sepolia.

npx skills add https://github.com/bankrbot/skills --skill juicebox-v6

Juicebox V6

Utilisez cette skill comme unique point d'entrée pour Juicebox V6. Chargez le plus petit module applicable depuis references/modules/<module>.md ; les modules contiennent les procédures et exemples spécifiques au protocole en amont. Ne chargez pas tous les modules.

Règles de fonctionnement

  1. Résolvez la chaîne, l'ID du projet, le token et le résultat attendu avant de proposer une écriture.
  2. Utilisez references/shared/chain-config.json uniquement pour la découverte en lecture seule. Pour toute écriture, lisez deployment verification et utilisez references/shared/deployment-manifest.json comme unique autorité de référence. Les entrées manquantes, inconnues, non correspondantes ou non activées en écriture arrêtent l'action.
  3. Utilisez references/shared/abis/<Contract>.json pour les définitions complètes de tuples ABI lors de l'encodage ou du décodage d'appels.
  4. Pour chaque écriture, lisez aussi references/modules/jb-tx-safety.md. Appliquez son pipeline review → re-verify → simulate → gas → send → prove sans sauter d'étapes. Abandonnez en cas de devis obsolètes/manquants, prévisualisation/simulation échouée, dérive de code ou de graphe, ou contexte indisponible de price-feed/hook/terminal/accounting.
  5. Dérivez chaque minReturnedTokens, minTokensReclaimed, et minTokensPaidOut d'une prévisualisation réussie et fraîche et de la tolérance de slippage approuvée par l'utilisateur. Un zéro vérifié par le protocole peut rester zéro uniquement où jb-tx-safety l'autorise explicitement ; indisponible ne s'assimile jamais à zéro.
  6. Traitez les données source comme des orientations versionnées, pas comme une preuve en direct. Immédiatement avant la confirmation, vérifiez la chaîne exacte, le code runtime non vide correspondant, le sélecteur autorisé, la goupille d'implémentation proxy/clone, la propriété et le câblage du contrôleur/terminal/projet, les soldes, les approbations, et les entrées sensibles aux prix.
  7. Privilégiez l'explication, l'inspection en lecture seule, ou un plan de transaction non signée. Avant de signer ou de diffuser, décodez et présentez la chaîne exacte, la cible, le sélecteur/fonction/arguments, l'asset et le montant, le destinataire/projet, la valeur native, les approbations, les frais, les effets attendus, et le risque d'achèvement partiel ; exigez une confirmation explicite de l'utilisateur.
  8. Après minage, exigez receipt.status === 'success' plus l'événement spécifique à l'opération et les preuves d'état post. Un reçu manquant est en attente ; des preuves manquantes signifient incertain ; l'un ou l'autre état désactive la nouvelle tentative. Ne signalez jamais le succès à partir d'un reçu nu ou d'une chaîne de statut tierce.
  9. Ne demandez jamais, n'exposez pas, et ne placez pas de clés privées dans le code. Utilisez le flux wallet/signing de Bankr ou le signataire approuvé par l'utilisateur.

Routage des modules

Intention utilisateur Lisez ce module ou ces modules
Trouver des adresses de contrats, des rôles, des chaînes supportées, ou des ABIs jb-contracts, puis jb-v6-api au besoin ; utilisez deployment-verification.md pour les écritures
Expliquer un concept Juicebox ou la mécanique du protocole jb-simplify, jb-v6-impl, ou jb-patterns
Lancer ou configurer un projet ou Revnet jb-project, jb-revnet-deploy, jb-ruleset, jb-fund-access-limits, jb-multi-currency
Payer un projet, encaisser, gérer le routage terminal, les frais, ou Permit2 jb-query, jb-terminal-selection, jb-protocol-fees, jb-fee-flows, jb-cash-out-curve, jb-permit2-metadata
Construire ou examiner des hooks personnalisées jb-data-hook-resolution, jb-buyback-hook, jb-lp-split-hook, jb-pay-hook, jb-cash-out-hook, jb-split-hook, jb-terminal-wrapper
Configurer ou frapper des NFTs tiérées jb-721-per-chain-config, jb-721-tier-content
Configurer un projet omnichain ou un bridge revnet-omnichain-default, jb-suckers, jb-omnichain-erc20-config, jb-omnichain-payout-limits, jb-omnichain-per-chain-projectids, jb-omnichain-tier-quantity-per-chain
Concevoir un Revnet ou inspecter/opérer des REVLoans revnet-economics, revnet-modeler, jb-revloans, jb-loan-queries
Utiliser Croptop ou Bendystraw jb-croptop ou jb-bendystraw
Inspecter l'état, décoder calldata, utiliser le SDK, ou obtenir de la documentation jb-query, jb-decode, jb-sdk, ou jb-docs
Construire un frontend Juicebox Choisissez le module *-ui pertinent : jb-deploy-ui, jb-interact-ui, jb-explorer-ui, jb-event-explorer-ui, jb-ruleset-timeline-ui, jb-nft-gallery-ui, jb-hook-deploy-ui, ou jb-omnichain-ui
Résoudre les questions de devise ou de taux réservé jb-currency-types ou jb-reserved-rate-offchain-revenue
Relayer des transactions ou exécuter via un Safe jb-relayr et jb-safe-and-relayr-execution
Construire, auditer, ou exécuter toute écriture jb-tx-safety plus le module de domaine et deployment-verification.md

Pour un module nommé, lisez references/modules/<module>.md. Combinez les modules uniquement quand le workflow demandé traverse réellement les domaines.

Limite de dépendance frontend

Avant de générer ou de modifier une UI connectée à un wallet, lisez frontend security. Obtenez l'approbation avant d'installer les dépendances locales exactes (viem@2.55.19, ou ethers@6.15.0 uniquement pour l'explorateur), préservez l'intégrité des verrous du lockfile, importez uniquement depuis les packages locaux, déplacez les scripts hors du HTML en ligne, et appliquez le CSP restrictif. Ne chargez jamais dynamiquement du JavaScript adjacent au wallet depuis un CDN.

Adaptation du module UI

Les modules UI incluent des fragments en amont, pas des pages déployables. Copiez uniquement les assets nécessaires dans l'app générée, mettez à jour les chemins des modules, et appliquez les limites frontend et transactionnelles ci-dessus. Copiez deployment-manifest.json avec les références d'ABI et de chaîne ; ne supposez jamais qu'un répertoire de skill Bankr est servi par l'app générée.

Attribution

Ce bundle adapte la bibliothèque de skills Juicebox V6 depuis mejango/juicebox-skills au commit 783b11ab163fdc60fd68db8b690ee1ebc26dc2fa, licencié MIT. Préservez la LICENSE incluse lors de la redistribution du bundle ou du contenu dérivé.

Skills similaires