원클릭으로
bitcoin-specialist
Especialista em Bitcoin Ordinals, Runes, BRC-20, Rare Sats, wallet integration e protocolo Bitcoin para CYPHER V3
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Especialista em Bitcoin Ordinals, Runes, BRC-20, Rare Sats, wallet integration e protocolo Bitcoin para CYPHER V3
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | bitcoin-specialist |
| description | Especialista em Bitcoin Ordinals, Runes, BRC-20, Rare Sats, wallet integration e protocolo Bitcoin para CYPHER V3 |
| version | 2.0 |
| tags | ["bitcoin","ordinals","runes","brc20","rare-sats","lasereyes","xverse"] |
[txid]i[index] (ex: a1b2c3...i0)WORD•WORD•WORD (separados por bullets){ "p": "brc-20", "op": "mint", "tick": "ordi", "amt": "1000" }@omnisat/lasereyes) — Primaryimport { useLaserEyes, XVERSE, UNISAT, OYL } from '@omnisat/lasereyes'
export function WalletConnect() {
const { connect, disconnect, address, publicKey, balance, network } = useLaserEyes()
const handleConnect = async (walletType: typeof XVERSE) => {
try {
await connect(walletType)
} catch (err) {
console.error('[WalletConnect] Failed:', err)
}
}
return (
<div>
{address ? (
<div>
<span className="font-mono text-[#FF6B00]">
{address.slice(0, 6)}...{address.slice(-4)}
</span>
<button onClick={disconnect}>Desligar</button>
</div>
) : (
<button onClick={() => handleConnect(XVERSE)}>Conectar Xverse</button>
)}
</div>
)
}
// SEMPRE validar endereço antes de qualquer transação
import { validate as validateBitcoinAddress } from 'bitcoin-address-validation'
function isValidBitcoinAddress(address: string): boolean {
return validateBitcoinAddress(address)
}
// SEMPRE usar sats-connect para signing
import { sendBtcTransaction } from 'sats-connect'
async function sendBTC(recipient: string, amountSats: number) {
if (!isValidBitcoinAddress(recipient)) throw new Error('Invalid Bitcoin address')
if (amountSats < 546) throw new Error('Below dust limit (546 sats)')
return new Promise((resolve, reject) => {
sendBtcTransaction({
payload: {
network: { type: 'Mainnet' },
recipients: [{ address: recipient, amountSats }],
senderAddress: walletAddress,
},
onFinish: resolve,
onCancel: () => reject(new Error('User cancelled')),
})
})
}
const HIRO_BASE = 'https://api.hiro.so'
// Coleções de Ordinals
GET /ordinals/v1/collections?limit=20&order_by=volume_24h&order=desc
// Inscrições por coleção
GET /ordinals/v1/collections/{id}/inscriptions?limit=60
// Runes
GET /runes/v1/etchings?limit=20&order=desc
// BRC-20
GET /ordinals/v1/brc-20/tokens?limit=20&order_by=market_cap
// Rare Sats por endereço
GET /ordinals/v1/inscriptions?address={address}&limit=60
const UNISAT_BASE = 'https://open-api.unisat.io/v1'
// Headers: { Authorization: `Bearer ${process.env.UNISAT_API_KEY}` }
// BRC-20 tokens
GET /indexer/brc20/list?start=0&limit=20
// Inscrições de um endereço
GET /indexer/address/{address}/inscription-data
// Runes de um endereço
GET /indexer/address/{address}/runes/utxo-list
const OKX_BASE = 'https://www.okx.com/api/v5/mktplace'
// Coleções de Ordinals
GET /nft/ordinals/collection/list
// Floor price de uma coleção
GET /nft/ordinals/collection/overview?collectionId={id}
// Listings
GET /nft/ordinals/token/listings?collectionId={id}&limit=20
// Bitcoin data tem latência diferente:
// - Preço BTC: 30s cache
// - Ordinals floor price: 60s cache
// - Runes market data: 120s cache
// - Rare Sats de um endereço: 300s cache
const CACHE_TTL = {
BTC_PRICE: 30,
ORDINALS_FLOOR: 60,
RUNES_MARKET: 120,
RARE_SATS: 300,
INSCRIPTIONS: 600,
} as const
| Termo | Significado |
|---|---|
| Satoshi / Sat | 0.00000001 BTC, unidade mínima |
| UTXO | Unspent Transaction Output |
| Inscription | Dado inscrito num satoshi específico |
| Ordinal | Número de série de um satoshi |
| Rune | Token fungível no protocolo Runes |
| Etch | Criar um novo Rune |
| Mint | Criar supply de um Rune existente |
| BRC-20 | Token fungível via Ordinals JSON |
| Rare Sat | Satoshi com propriedades especiais |
| Satribute | Tipo/categoria de rare sat |
Testa cada API route do CYPHER V3 com dados reais — valida schemas, mede performance, detecta breaking changes, garante que cada endpoint retorna o que promete
Modo John Carmack — foco absoluto numa única tarefa técnica, sem distrações, implementação direta e eficiente
Escreve código TypeScript/React/Next.js de produção para CYPHER V3
Garante o fluxo correto de dados desde APIs externas até ao utilizador — cache em camadas, fallbacks inteligentes, transformação de dados, sem dados stale ou inválidos na UI
Identifica e corrige bugs, memory leaks, hydration mismatches, e erros silenciosos no CYPHER V3
Protege o CYPHER V3 em produção — checklist de deploy, environment variables, health checks, rollback automático, zero downtime