{"ok":true,"count":30,"hooks":[{"id":"max-wallet@1.2.0","slug":"max-wallet","name":"Max Wallet","kind":"max-wallet","version":"1.2.0","programId":"MaxWoqht2RJ7kheBrWZ3EKZpFMoJB9CpriTyQwj8MWND","author":"HOOKAWAY Labs","description":"Caps any wallet’s post-transfer balance at a share of supply.","source":{"repo":"https://github.com/hookaway-mock/max-wallet","commit":"22hhoh5","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"audited","by":"Kestrel Security (mock)","date":"2026-07-14","note":"live."},"configSchema":[{"key":"maxBps","type":"bps","description":"Max balance as basis points of supply","default":100},{"key":"exempt","type":"pubkey[]","description":"Exempt owners (pools, treasury)"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"exempt-list","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"exempt"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"exempt record for the mint."}],"errors":{"6001":"Post-transfer balance exceeds token limit of {maxBps}."},"restrictions":["Recipient balance after transfer must be ≤ limit.","Exempt accounts (e.g. pool vaults) are not limited."],"cpi":"none","hasManifest":true,"stats":{"tokens":5,"transfers30d":191645,"successRate":0.855},"risk":["verified"],"createdAt":"2026-07-09T00:00:00.000Z"},{"id":"max-wallet-lite@0.9.1","slug":"max-wallet-lite","name":"Max Wallet Lite","kind":"max-wallet","version":"0.9.1","programId":"MwLNcxdxAXQVPvEtL8EPS1V9G8JNrRp7GLDsnuLdvhQq","author":"degen.tools","description":"Caps any wallet’s post-transfer balance at a share of supply.","source":{"verifiedBuild":false},"upgradeAuthority":"9G7LfybrgMA6dWrgZTnyXaHgW4UoWbWopRk5WQ5FJf1z","lastUpgradeSlot":386804752,"verification":"self-published","audit":{"status":"none"},"configSchema":[{"key":"maxBps","type":"bps","description":"Max balance as basis points of supply","default":100},{"key":"exempt","type":"pubkey[]","description":"Exempt owners (pools, treasury)"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"exempt-list","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"exempt"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"exempt record for the mint."}],"errors":{"6001":"Post-transfer balance exceeds token limit of {maxBps}."},"restrictions":["Recipient balance after transfer must be ≤ limit.","Exempt accounts (e.g. pool vaults) are not limited."],"cpi":"none","hasManifest":true,"stats":{"tokens":4,"transfers30d":31032,"successRate":0.909},"risk":["unverified","upgradeable"],"createdAt":"2026-08-14T00:00:00.000Z"},{"id":"allowlist-gate@2.0.0","slug":"allowlist-gate","name":"Allowlist Gate","kind":"allowlist","version":"2.0.0","programId":"ALwsqTFbVw646zd267CmcBryM127naFWvdS4ucdozXxg","author":"Meridian Foundation","description":"Only allowlisted recipients can receive the token.","source":{"verifiedBuild":false},"upgradeAuthority":"SXRPVcMBt6qR1pKMC2P3MrhbUSABVGtMNXTrJhjaSY4Y","lastUpgradeSlot":383642999,"verification":"manifest-reviewed","audit":{"status":"none"},"configSchema":[{"key":"authority","type":"pubkey","description":"Allowlist manager"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"recipient-entry","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"allow"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":3,"label":"destination owner"}]},"writable":false,"signer":false,"description":"allow record for the destination owner."}],"errors":{"6010":"Recipient is not on this token’s allowlist."},"restrictions":["Recipient owner must have an allowlist entry PDA."],"cpi":"none","hasManifest":true,"stats":{"tokens":4,"transfers30d":56616,"successRate":0.917},"risk":["known","upgradeable"],"createdAt":"2026-06-20T00:00:00.000Z"},{"id":"allowlist-merkle@1.0.3","slug":"allowlist-merkle","name":"Merkle Allowlist","kind":"allowlist","version":"1.0.3","programId":"MrkLEvwYsRzz8KwPAyzAPALKtZmyBYgsu1zeHtSaM4V3","author":"OpenGate","description":"Only allowlisted recipients can receive the token.","source":{"repo":"https://github.com/hookaway-mock/allowlist-merkle","commit":"wxhmp25","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"audited","by":"Sable Review (mock)","date":"2026-05-02","note":"live."},"configSchema":[{"key":"authority","type":"pubkey","description":"Allowlist manager"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"recipient-entry","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"allow"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":3,"label":"destination owner"}]},"writable":false,"signer":false,"description":"allow record for the destination owner."}],"errors":{"6010":"Recipient is not on this token’s allowlist."},"restrictions":["Recipient owner must have an allowlist entry PDA."],"cpi":"none","hasManifest":true,"stats":{"tokens":2,"transfers30d":15938,"successRate":0.956},"risk":["verified"],"createdAt":"2026-08-17T00:00:00.000Z"},{"id":"denylist-guard@1.1.0","slug":"denylist-guard","name":"Denylist Guard","kind":"denylist","version":"1.1.0","programId":"DnyGTuohJmsnhHNy7cKJsP5zeQ88pUdujHEAEPTtxXHM","author":"Sentinel Compliance","description":"Blocks transfers to or from denylisted wallets.","source":{"verifiedBuild":false},"upgradeAuthority":"BGUdZ1ZdNpFt1Lh5CWRENPX5ibtghLp61g3BEFKwvxiU","lastUpgradeSlot":385619143,"verification":"manifest-reviewed","audit":{"status":"none"},"configSchema":[{"key":"authority","type":"pubkey","description":"Denylist manager"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"sender-entry","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"deny"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":3,"label":"source owner"}]},"writable":false,"signer":false,"description":"deny record for the source owner."},{"name":"recipient-entry","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"deny"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":2,"label":"destination"}]},"writable":false,"signer":false,"description":"deny record for the destination."}],"errors":{"6020":"Sender or recipient is on this token’s denylist."},"restrictions":["Neither party may have a denylist entry."],"cpi":"known","hasManifest":true,"stats":{"tokens":1,"transfers30d":14154,"successRate":0.917},"risk":["known","upgradeable"],"createdAt":"2025-12-17T00:00:00.000Z"},{"id":"cooldown-timer@1.0.0","slug":"cooldown-timer","name":"Cooldown Timer","kind":"cooldown","version":"1.0.0","programId":"CdTRhYZhLF7uGq9vLw7EWQZdGE5PBKYWEzuhQ6yV96Pd","author":"@slowmint","description":"Enforces a minimum interval between transfers per sender.","source":{"verifiedBuild":false},"upgradeAuthority":null,"verification":"self-published","audit":{"status":"none"},"configSchema":[{"key":"seconds","type":"u32","description":"Minimum seconds between transfers","default":60}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"sender-clock","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"clock"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":3,"label":"source owner"}]},"writable":true,"signer":false,"description":"clock record for the source owner."}],"errors":{"6030":"Sender must wait {remaining}s before the next transfer."},"restrictions":["One outgoing transfer per sender per cooldown window."],"cpi":"none","hasManifest":true,"stats":{"tokens":1,"transfers30d":14154,"successRate":0.917},"risk":["unverified"],"createdAt":"2026-04-05T00:00:00.000Z"},{"id":"cooldown@2.1.0","slug":"cooldown","name":"Cooldown","kind":"cooldown","version":"2.1.0","programId":"CoolMDwytxCPSGMr7jyb6aAwZhaiAi15zb43sBm2Fzrw","author":"HOOKAWAY Labs","description":"Enforces a minimum interval between transfers per sender.","source":{"repo":"https://github.com/hookaway-mock/cooldown","commit":"wkctvud","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"none"},"configSchema":[{"key":"seconds","type":"u32","description":"Minimum seconds between transfers","default":60}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"sender-clock","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"clock"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":3,"label":"source owner"}]},"writable":true,"signer":false,"description":"clock record for the source owner."}],"errors":{"6030":"Sender must wait {remaining}s before the next transfer."},"restrictions":["One outgoing transfer per sender per cooldown window."],"cpi":"none","hasManifest":true,"stats":{"tokens":2,"transfers30d":54334,"successRate":0.874},"risk":["verified"],"createdAt":"2026-03-12T00:00:00.000Z"},{"id":"tx-limit@1.0.0","slug":"tx-limit","name":"Per-Transfer Limit","kind":"tx-limit","version":"1.0.0","programId":"TxLsF6RA32a1n5AwobsuYWu8Xzfs3dj5hw9gzS2Nsj7o","author":"HOOKAWAY Labs","description":"Caps the size of any single transfer.","source":{"repo":"https://github.com/hookaway-mock/tx-limit","commit":"1wulfwt","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"none"},"configSchema":[{"key":"maxAmount","type":"u64","description":"Max tokens per transfer"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."}],"errors":{"6040":"Transfer amount exceeds per-transfer limit of {maxAmount}."},"restrictions":["Each transfer must be ≤ the configured maximum."],"cpi":"none","hasManifest":true,"stats":{"tokens":2,"transfers30d":54334,"successRate":0.874},"risk":["verified"],"createdAt":"2026-04-08T00:00:00.000Z"},{"id":"whale-throttle@0.4.0","slug":"whale-throttle","name":"Whale Throttle","kind":"tx-limit","version":"0.4.0","programId":"WhtEMZV7sVYBgBYXQNdBA8KTXX4xCW1iSVNYmBp32zEh","author":"anon","description":"Caps the size of any single transfer.","source":{"verifiedBuild":false},"upgradeAuthority":"mjWrTb9PtNeoE3mtbMadAwHyay3NMNpSg2MiLjuWwjwi","lastUpgradeSlot":385984193,"verification":"none","audit":{"status":"none"},"configSchema":[{"key":"maxAmount","type":"u64","description":"Max tokens per transfer"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."}],"errors":{"6040":"Transfer amount exceeds per-transfer limit of {maxAmount}."},"restrictions":["Each transfer must be ≤ the configured maximum."],"cpi":"none","hasManifest":true,"stats":{"tokens":5,"transfers30d":70770,"successRate":0.917},"risk":["unverified","upgradeable"],"createdAt":"2026-07-05T00:00:00.000Z"},{"id":"royalty-venues@3.0.1","slug":"royalty-venues","name":"Royalty Venues","kind":"venue-allowlist","version":"3.0.1","programId":"RoyaJkABEpUQfpgrB1fQkNgWy918ka3wgRe6zp2ytqET","author":"Atelier Royalties","description":"Only approved programs (pools, marketplaces) may be counterparties.","source":{"verifiedBuild":false},"upgradeAuthority":"hdQRiJdN2JwDiL9jdBqoefZKFttLagLrMju4UuWdZYcG","lastUpgradeSlot":382571728,"verification":"manifest-reviewed","audit":{"status":"none"},"configSchema":[{"key":"venues","type":"pubkey[]","description":"Approved venue program IDs"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"venue-registry","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"venues"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"venues record for the mint."},{"name":"instructions-sysvar","derivation":{"kind":"fixed","address":"Sysvar1nstructions1111111111111111111111111"},"writable":false,"signer":false,"description":"Used to inspect the calling program."}],"errors":{"6050":"Counterparty program is not an approved venue for this token."},"restrictions":["Swaps must go through an approved venue.","Wallet-to-wallet transfers allowed."],"cpi":"known","hasManifest":true,"stats":{"tokens":5,"transfers30d":70770,"successRate":0.917},"risk":["known","upgradeable"],"createdAt":"2026-05-06T00:00:00.000Z"},{"id":"creator-venues@1.0.0","slug":"creator-venues","name":"Creator Venues","kind":"venue-allowlist","version":"1.0.0","programId":"CrVSotMDK5wXcNU5dcpEKD8JYrBofMLLg35Crxjjvo1x","author":"HOOKAWAY Labs","description":"Only approved programs (pools, marketplaces) may be counterparties.","source":{"repo":"https://github.com/hookaway-mock/creator-venues","commit":"n1pmhqk","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"none"},"configSchema":[{"key":"venues","type":"pubkey[]","description":"Approved venue program IDs"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"venue-registry","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"venues"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"venues record for the mint."},{"name":"instructions-sysvar","derivation":{"kind":"fixed","address":"Sysvar1nstructions1111111111111111111111111"},"writable":false,"signer":false,"description":"Used to inspect the calling program."}],"errors":{"6050":"Counterparty program is not an approved venue for this token."},"restrictions":["Swaps must go through an approved venue.","Wallet-to-wallet transfers allowed."],"cpi":"none","hasManifest":true,"stats":{"tokens":1,"transfers30d":14154,"successRate":0.917},"risk":["verified"],"createdAt":"2025-09-05T00:00:00.000Z"},{"id":"kyc-attest@1.4.0","slug":"kyc-attest","name":"KYC Attestation","kind":"attestation","version":"1.4.0","programId":"KycmFo8ywx4CZwGYsenHN8xSRyLarYdogXN9fD6zQUBD","author":"Attestor Network","description":"Recipient must hold a valid attestation credential (e.g. KYC).","source":{"verifiedBuild":false},"upgradeAuthority":"zguoHRF11rTShBnLzyan4vW1P4skK5KQuMipgrmbGLsW","lastUpgradeSlot":382342297,"verification":"manifest-reviewed","audit":{"status":"none"},"configSchema":[{"key":"issuer","type":"pubkey","description":"Trusted attestation issuer"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"credential","derivation":{"kind":"pda","programId":"Attest1111111111111111111111111111111111111","seeds":[{"kind":"literal","value":"credential"},{"kind":"account","index":3,"label":"destination owner"}]},"writable":false,"signer":false,"description":"Recipient’s attestation credential."}],"errors":{"6060":"Recipient has no valid attestation from the required issuer."},"restrictions":["Recipient must hold an unexpired credential from the configured issuer."],"cpi":"known","hasManifest":true,"stats":{"tokens":7,"transfers30d":268303,"successRate":0.855},"risk":["known","upgradeable"],"createdAt":"2025-09-07T00:00:00.000Z"},{"id":"accredited-only@1.0.0","slug":"accredited-only","name":"Accredited Only","kind":"attestation","version":"1.0.0","programId":"AccqWeLM5tJSsNoNaNDswWL63cnvnk7UxXbN2adBkkV6","author":"Harbor RWA","description":"Recipient must hold a valid attestation credential (e.g. KYC).","source":{"repo":"https://github.com/hookaway-mock/accredited-only","commit":"uzehhfv","verifiedBuild":true},"upgradeAuthority":"JYVfrNH9pEZmS26y6gQdu7Sz39K9n5ooHqGUsVgR4Zbe","lastUpgradeSlot":388710827,"verification":"source-verified","audit":{"status":"audited","by":"Kestrel Security (mock)","date":"2026-03-21","note":"live."},"configSchema":[{"key":"issuer","type":"pubkey","description":"Trusted attestation issuer"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"credential","derivation":{"kind":"pda","programId":"Attest1111111111111111111111111111111111111","seeds":[{"kind":"literal","value":"credential"},{"kind":"account","index":3,"label":"destination owner"}]},"writable":false,"signer":false,"description":"Recipient’s attestation credential."}],"errors":{"6060":"Recipient has no valid attestation from the required issuer."},"restrictions":["Recipient must hold an unexpired credential from the configured issuer."],"cpi":"known","hasManifest":true,"stats":{"tokens":6,"transfers30d":46548,"successRate":0.909},"risk":["verified","upgradeable"],"createdAt":"2026-08-21T00:00:00.000Z"},{"id":"vesting-lock@1.0.0","slug":"vesting-lock","name":"Vesting Lock","kind":"vesting","version":"1.0.0","programId":"Vst2Chk8uQahgjhGek7DAKPjfuyB5f9RKMQvcgj2ZN5i","author":"HOOKAWAY Labs","description":"Locked balances unlock on a schedule; only unlocked tokens move.","source":{"repo":"https://github.com/hookaway-mock/vesting-lock","commit":"raxfccb","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"none"},"configSchema":[{"key":"cliff","type":"i64","description":"Cliff timestamp"},{"key":"durationDays","type":"u32","description":"Linear unlock duration"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"vesting-record","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"vest"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":3,"label":"source owner"}]},"writable":true,"signer":false,"description":"vest record for the source owner."}],"errors":{"6070":"Amount exceeds unlocked balance. {locked} tokens are still locked."},"restrictions":["Sender may transfer at most their unlocked balance."],"cpi":"none","hasManifest":true,"stats":{"tokens":7,"transfers30d":120519,"successRate":0.838},"risk":["verified"],"createdAt":"2025-11-14T00:00:00.000Z"},{"id":"team-vest@0.2.0","slug":"team-vest","name":"Team Vest","kind":"vesting","version":"0.2.0","programId":"TmVhzQtSpTFdiTgz82H1EUo7NUW7btmMVE3mvu5YGbHC","author":"anon","description":"Locked balances unlock on a schedule; only unlocked tokens move.","source":{"verifiedBuild":false},"upgradeAuthority":"ApsvcxMYee2LpxWUh58xrK2fCRhtguKbMSUShPQhGn6p","lastUpgradeSlot":382122352,"verification":"none","audit":{"status":"none"},"configSchema":[{"key":"cliff","type":"i64","description":"Cliff timestamp"},{"key":"durationDays","type":"u32","description":"Linear unlock duration"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"vesting-record","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"vest"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":3,"label":"source owner"}]},"writable":true,"signer":false,"description":"vest record for the source owner."}],"errors":{"6070":"Amount exceeds unlocked balance. {locked} tokens are still locked."},"restrictions":["Sender may transfer at most their unlocked balance."],"cpi":"none","hasManifest":true,"stats":{"tokens":4,"transfers30d":146856,"successRate":0.9},"risk":["unverified","upgradeable"],"createdAt":"2026-06-27T00:00:00.000Z"},{"id":"launch-window@1.0.0","slug":"launch-window","name":"Launch Window","kind":"trading-window","version":"1.0.0","programId":"LWnFxPnGhLGkAC6AcjyW8WELYuoRYhV8AE9zSHVLqwdv","author":"HOOKAWAY Labs","description":"Transfers allowed only after launch time / within open hours.","source":{"repo":"https://github.com/hookaway-mock/launch-window","commit":"afe4dkv","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"none"},"configSchema":[{"key":"opensAt","type":"i64","description":"Unix time trading opens"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"clock","derivation":{"kind":"fixed","address":"SysvarC1ock11111111111111111111111111111111"},"writable":false,"signer":false,"description":"Clock sysvar."}],"errors":{"6080":"Trading has not opened yet for this token."},"restrictions":["No transfers before the configured open time (except from the creator)."],"cpi":"none","hasManifest":true,"stats":{"tokens":1,"transfers30d":15267,"successRate":0.925},"risk":["verified"],"createdAt":"2025-10-25T00:00:00.000Z"},{"id":"market-hours@0.1.0","slug":"market-hours","name":"Market Hours","kind":"trading-window","version":"0.1.0","programId":"MkH3FmLmcRkjZS4XB5GuficzWheKrwySv6aYaThGTspH","author":"Bourse Labs","description":"Transfers allowed only after launch time / within open hours.","source":{"verifiedBuild":false},"upgradeAuthority":"zzGGHzhwd7bFRCYhFxhQVoJU1W4vSpVsdpogEnMgp7KW","lastUpgradeSlot":380093179,"verification":"self-published","audit":{"status":"none"},"configSchema":[{"key":"opensAt","type":"i64","description":"Unix time trading opens"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"clock","derivation":{"kind":"fixed","address":"SysvarC1ock11111111111111111111111111111111"},"writable":false,"signer":false,"description":"Clock sysvar."}],"errors":{"6080":"Trading has not opened yet for this token."},"restrictions":["No transfers before the configured open time (except from the creator)."],"cpi":"none","hasManifest":true,"stats":{"tokens":2,"transfers30d":34434,"successRate":0.838},"risk":["unverified","upgradeable"],"createdAt":"2026-07-22T00:00:00.000Z"},{"id":"holder-cap@1.0.0","slug":"holder-cap","name":"Holder Cap","kind":"holder-cap","version":"1.0.0","programId":"HCpDB3vSySuFt3gaKY32oPZ4fQax6CrQv9fNmHiAMmY1","author":"HOOKAWAY Labs","description":"Limits the number of distinct holders.","source":{"verifiedBuild":false},"upgradeAuthority":null,"verification":"manifest-reviewed","audit":{"status":"none"},"configSchema":[{"key":"maxHolders","type":"u32","description":"Maximum holder count"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"holder-counter","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"holders"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":true,"signer":false,"description":"holders record for the mint."}],"errors":{"6090":"Token has reached its maximum holder count."},"restrictions":["New holders cannot be added once the cap is reached."],"cpi":"none","hasManifest":true,"stats":{"tokens":2,"transfers30d":76658,"successRate":0.855},"risk":["known"],"createdAt":"2025-11-25T00:00:00.000Z"},{"id":"club-100@1.0.0","slug":"club-100","name":"Club 100","kind":"holder-cap","version":"1.0.0","programId":"C1birNbqWTaKeJXHykhqbopqsRjcf4kHZGdnUcQ67EZN","author":"@clubhouse","description":"Limits the number of distinct holders.","source":{"verifiedBuild":false},"upgradeAuthority":null,"verification":"self-published","audit":{"status":"none"},"configSchema":[{"key":"maxHolders","type":"u32","description":"Maximum holder count"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"holder-counter","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"holders"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":true,"signer":false,"description":"holders record for the mint."}],"errors":{"6090":"Token has reached its maximum holder count."},"restrictions":["New holders cannot be added once the cap is reached."],"cpi":"none","hasManifest":true,"stats":{"tokens":1,"transfers30d":27167,"successRate":0.874},"risk":["unverified"],"createdAt":"2026-07-06T00:00:00.000Z"},{"id":"soulbound@1.0.0","slug":"soulbound","name":"Soulbound","kind":"soulbound","version":"1.0.0","programId":"Sou14ykJ6sBbZikQ172o65x6L5paJwqQKWn7w4jjz7X1","author":"HOOKAWAY Labs","description":"Rejects every transfer. Tokens can only be minted or burned.","source":{"repo":"https://github.com/hookaway-mock/soulbound","commit":"x4wfzqa","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"none"},"configSchema":[],"extraAccounts":[],"errors":{"6100":"This token is non-transferable by design."},"restrictions":["All transfers are rejected."],"cpi":"none","hasManifest":true,"stats":{"tokens":4,"transfers30d":146856,"successRate":0},"risk":["verified"],"createdAt":"2026-05-13T00:00:00.000Z"},{"id":"badge-bind@0.3.0","slug":"badge-bind","name":"Badge Bind","kind":"soulbound","version":"0.3.0","programId":"Bdgv77qtoDpYnakh8wdZp8yix4PKuNtdiYgw8vKtyKXQ","author":"Questline","description":"Rejects every transfer. Tokens can only be minted or burned.","source":{"verifiedBuild":false},"upgradeAuthority":"8wZ38n5snRipZkeKawpA3FYTy5SmoogfaZUSeuTZhnfS","lastUpgradeSlot":385741088,"verification":"manifest-reviewed","audit":{"status":"none"},"configSchema":[],"extraAccounts":[],"errors":{"6100":"This token is non-transferable by design."},"restrictions":["All transfers are rejected."],"cpi":"none","hasManifest":true,"stats":{"tokens":0,"transfers30d":0,"successRate":0},"risk":["known","upgradeable"],"createdAt":"2025-11-27T00:00:00.000Z"},{"id":"transfer-counter@1.0.0","slug":"transfer-counter","name":"Transfer Counter","kind":"counter","version":"1.0.0","programId":"CntxtFqsfhVwQJ7vtF6pbeZcCQNu6sAubuVQDYwtdmFR","author":"HOOKAWAY Labs","description":"Records transfer counts/volume. Never blocks.","source":{"repo":"https://github.com/hookaway-mock/transfer-counter","commit":"uywx73j","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"none"},"configSchema":[],"extraAccounts":[{"name":"counter","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"counter"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":true,"signer":false,"description":"counter record for the mint."}],"errors":{},"restrictions":[],"cpi":"none","hasManifest":true,"stats":{"tokens":2,"transfers30d":15938,"successRate":0.956},"risk":["verified"],"createdAt":"2025-09-17T00:00:00.000Z"},{"id":"volume-oracle@2.0.0","slug":"volume-oracle","name":"Volume Oracle","kind":"counter","version":"2.0.0","programId":"VolFqpBiFqp9XVb4eoLSJxBEQYqPfZMWkAWYaAqh5Cmv","author":"Pulse Analytics","description":"Records transfer counts/volume. Never blocks.","source":{"verifiedBuild":false},"upgradeAuthority":"uPfvjdfmy1dwnYuTGfwuoDAYwfRkShPMESKCsGHbaXWz","lastUpgradeSlot":383169436,"verification":"manifest-reviewed","audit":{"status":"none"},"configSchema":[],"extraAccounts":[{"name":"counter","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"counter"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":true,"signer":false,"description":"counter record for the mint."}],"errors":{},"restrictions":[],"cpi":"known","hasManifest":true,"stats":{"tokens":3,"transfers30d":45801,"successRate":0.925},"risk":["known","upgradeable"],"createdAt":"2026-03-05T00:00:00.000Z"},{"id":"launch-guard@1.1.0","slug":"launch-guard","name":"Launch Guard","kind":"launch-guard","version":"1.1.0","programId":"LGdZwFTfoBUjoFqnUNWBwPaRRRWn8GJDMzKVsacH4p5j","author":"HOOKAWAY Labs","description":"Anti-snipe: caps buy size for the first N slots after launch.","source":{"repo":"https://github.com/hookaway-mock/launch-guard","commit":"4igsvrr","verifiedBuild":true},"upgradeAuthority":null,"verification":"source-verified","audit":{"status":"none"},"configSchema":[{"key":"guardSlots","type":"u32","description":"Slots the guard is active"},{"key":"maxBuy","type":"u64","description":"Max tokens per buy while active"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"clock","derivation":{"kind":"fixed","address":"SysvarC1ock11111111111111111111111111111111"},"writable":false,"signer":false,"description":"Clock sysvar."}],"errors":{"6110":"Launch guard active: max {maxBuy} tokens per buy."},"restrictions":["While the guard is active, each buy is limited."],"cpi":"none","hasManifest":true,"stats":{"tokens":5,"transfers30d":86085,"successRate":0.838},"risk":["verified"],"createdAt":"2026-06-06T00:00:00.000Z"},{"id":"snipe-shield@0.8.0","slug":"snipe-shield","name":"Snipe Shield","kind":"launch-guard","version":"0.8.0","programId":"Snp4tzQKC3evCHjJKYv69SkKaApGaTp2u1BfE6mrDsrV","author":"anon","description":"Anti-snipe: caps buy size for the first N slots after launch.","source":{"verifiedBuild":false},"upgradeAuthority":"NHqPmFPmk5W3BxWRNF88eshFUHGD857LXe42fNPtfdWv","lastUpgradeSlot":382311160,"verification":"none","audit":{"status":"none"},"configSchema":[{"key":"guardSlots","type":"u32","description":"Slots the guard is active"},{"key":"maxBuy","type":"u64","description":"Max tokens per buy while active"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"clock","derivation":{"kind":"fixed","address":"SysvarC1ock11111111111111111111111111111111"},"writable":false,"signer":false,"description":"Clock sysvar."}],"errors":{"6110":"Launch guard active: max {maxBuy} tokens per buy."},"restrictions":["While the guard is active, each buy is limited."],"cpi":"none","hasManifest":true,"stats":{"tokens":2,"transfers30d":34434,"successRate":0.838},"risk":["unverified","upgradeable"],"createdAt":"2025-09-26T00:00:00.000Z"},{"id":"blackbox-tax@0.0.0","slug":"blackbox-tax","name":"Blackbox","kind":"opaque","version":"0.0.0","programId":"Bx0pswnh2bw6LLzp6UCHpZRXPNHJfawzyhVDBBf5wz7a","author":"unknown","description":"No manifest and no adapter. Behaviour is unknown.","source":{"verifiedBuild":false},"upgradeAuthority":"yaNe5JW9SPsAz6DhjmsmrBSfKTAscAEsgFQ75SXaEXE9","lastUpgradeSlot":383759720,"verification":"none","audit":{"status":"none"},"configSchema":[],"extraAccounts":[{"name":"unknown-0","derivation":{"kind":"external","note":"Resolved from on-chain ExtraAccountMetaList only"},"writable":true,"signer":false,"description":"Purpose unknown."}],"errors":{},"restrictions":["Unknown. HOOKAWAY can only run a raw chain simulation."],"cpi":"arbitrary","hasManifest":false,"stats":{"tokens":3,"transfers30d":51651,"successRate":0.838},"risk":["unverified","upgradeable","high-risk"],"createdAt":"2026-04-03T00:00:00.000Z"},{"id":"mystery-hook@0.0.0","slug":"mystery-hook","name":"Unlabelled Hook","kind":"opaque","version":"0.0.0","programId":"MysCcfi579598PVFmKNKcHWZErGSN9CCKp2mwCn2YKJk","author":"unknown","description":"No manifest and no adapter. Behaviour is unknown.","source":{"verifiedBuild":false},"upgradeAuthority":null,"verification":"none","audit":{"status":"none"},"configSchema":[],"extraAccounts":[{"name":"unknown-0","derivation":{"kind":"external","note":"Resolved from on-chain ExtraAccountMetaList only"},"writable":true,"signer":false,"description":"Purpose unknown."}],"errors":{},"restrictions":["Unknown. HOOKAWAY can only run a raw chain simulation."],"cpi":"none","hasManifest":false,"stats":{"tokens":3,"transfers30d":51651,"successRate":0.838},"risk":["unverified"],"createdAt":"2026-05-12T00:00:00.000Z"},{"id":"legacy-signed-gate@0.5.0","slug":"legacy-signed-gate","name":"Signed Gate (legacy)","kind":"allowlist","version":"0.5.0","programId":"Lgc4JzriHDZ37xvEMZUBG9GnLhveH3aXGYJ9bm7poWSb","author":"Relic Labs","description":"Only allowlisted recipients can receive the token.","source":{"verifiedBuild":false},"upgradeAuthority":"Qq6skvfAif5SuT4YRdnJQMAA1k7xhVEozzAzSsWa27FB","lastUpgradeSlot":380154680,"verification":"self-published","audit":{"status":"none"},"configSchema":[{"key":"authority","type":"pubkey","description":"Allowlist manager"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"recipient-entry","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"allow"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":3,"label":"destination owner"}]},"writable":false,"signer":false,"description":"allow record for the destination owner."},{"name":"signed-permit","derivation":{"kind":"external","note":"Requires an off-chain signature from the issuer API"},"writable":false,"signer":false,"description":"Off-chain permit. Not derivable on-chain."}],"errors":{"6010":"Recipient is not on this token’s allowlist."},"restrictions":["Recipient owner must have an allowlist entry PDA.","Requires an off-chain permit that HOOKAWAY cannot obtain or verify."],"cpi":"none","hasManifest":true,"stats":{"tokens":3,"transfers30d":23094,"successRate":0},"risk":["unsupported","unverified","upgradeable"],"createdAt":"2025-09-18T00:00:00.000Z"},{"id":"echo-cpi@1.3.7","slug":"echo-cpi","name":"Echo","kind":"counter","version":"1.3.7","programId":"Ech0Q9uGAJEbkx7BJbVM2ndcg2jfHWcTKPer7amQRJww","author":"anon","description":"Records transfer counts/volume. Never blocks.","source":{"verifiedBuild":false},"upgradeAuthority":"5BwRDet7yWTtHFphGtV4aBHWvrPiAJAqEiDg7mbRrh54","lastUpgradeSlot":388335440,"verification":"none","audit":{"status":"none"},"configSchema":[],"extraAccounts":[{"name":"counter","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"counter"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":true,"signer":false,"description":"counter record for the mint."}],"errors":{},"restrictions":[],"cpi":"arbitrary","hasManifest":true,"stats":{"tokens":2,"transfers30d":54334,"successRate":0.874},"risk":["unverified","upgradeable","high-risk"],"createdAt":"2025-12-09T00:00:00.000Z"},{"id":"max-wallet-fork@1.2.0","slug":"max-wallet-fork","name":"Max Wallet (fork)","kind":"max-wallet","version":"1.2.0","programId":"MaxWjAHPzdb9tHUypX9vC853PvrxmrsHiwYaegKZzgRy","author":"unknown","description":"Claims to be HOOKAWAY Max Wallet 1.2.0. Program bytecode and upgrade authority do not match the verified build.","source":{"verifiedBuild":false},"upgradeAuthority":"7NqawssYLrbx516MJB3DjmvM78Hni2Fvs2qwsdECEXr6","lastUpgradeSlot":384446732,"verification":"self-published","audit":{"status":"none"},"configSchema":[{"key":"maxBps","type":"bps","description":"Max balance as basis points of supply","default":100},{"key":"exempt","type":"pubkey[]","description":"Exempt owners (pools, treasury)"}],"extraAccounts":[{"name":"config","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"config"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"Per-mint hook configuration."},{"name":"exempt-list","derivation":{"kind":"pda","programId":"hook","seeds":[{"kind":"literal","value":"exempt"},{"kind":"account","index":1,"label":"mint"},{"kind":"account","index":1,"label":"mint"}]},"writable":false,"signer":false,"description":"exempt record for the mint."}],"errors":{"6001":"Post-transfer balance exceeds token limit of {maxBps}."},"restrictions":["Recipient balance after transfer must be ≤ limit.","Exempt accounts (e.g. pool vaults) are not limited."],"cpi":"none","hasManifest":true,"stats":{"tokens":6,"transfers30d":46548,"successRate":0.909},"risk":["unverified","upgradeable","high-risk"],"createdAt":"2026-05-19T00:00:00.000Z"}]}