{"_id":"@blockhash/slonks","_rev":"6-4c3c2912fbc96d98ee5185df86707dd7","name":"@blockhash/slonks","dist-tags":{"latest":"0.2.0"},"versions":{"0.1.0":{"name":"@blockhash/slonks","version":"0.1.0","keywords":["slonks","nft","cli","ethereum"],"license":"UNLICENSED","_id":"@blockhash/slonks@0.1.0","maintainers":[{"name":"hirsch","email":"michael@hirsch.me"}],"homepage":"https://github.com/blockhash-xyz/slonks-api/tree/main/packages/slonks#readme","bugs":{"url":"https://github.com/blockhash-xyz/slonks-api/issues"},"bin":{"slonks":"src/cli/slonks.ts"},"dist":{"shasum":"9aa1801ffca14677d88ef28445d76492b42613c0","tarball":"https://registry.npmjs.org/@blockhash/slonks/-/slonks-0.1.0.tgz","fileCount":11,"integrity":"sha512-KTdQscjRvHg57K2V1E6O71n3KQKLwTP52xeIOIJX9dD3o7KOHsc5Y01FCoVRWKdZ+Xe6qqNoUWLg1uIGAsr+6w==","signatures":[{"sig":"MEUCIFSg3/A0pf499FWHETbI03NPZOo6hVUaJE0CBpjvaOiwAiEA0x/HTYKsTPPP/huEQfPdtMrvjq+AbuirTqmoZnFEviw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":248777},"type":"module","shasum":"9aa1801ffca14677d88ef28445d76492b42613c0","engines":{"bun":">=1.2.0"},"_npmUser":{"name":"hirsch","email":"michael@hirsch.me"},"_integrity":"sha512-KTdQscjRvHg57K2V1E6O71n3KQKLwTP52xeIOIJX9dD3o7KOHsc5Y01FCoVRWKdZ+Xe6qqNoUWLg1uIGAsr+6w==","repository":{"url":"git+ssh://git@github.com/blockhash-xyz/slonks-api.git","type":"git","directory":"packages/slonks"},"_npmVersion":"10.8.3","description":"Command-line tools for Slonks.","directories":{},"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/slonks_0.1.0_1777831339837_0.6795658329324108","host":"s3://npm-registry-packages-npm-production"}},"0.1.1":{"name":"@blockhash/slonks","version":"0.1.1","keywords":["slonks","nft","cli","ethereum"],"license":"UNLICENSED","_id":"@blockhash/slonks@0.1.1","maintainers":[{"name":"hirsch","email":"michael@hirsch.me"}],"homepage":"https://github.com/blockhash-xyz/slonks-api/tree/main/packages/slonks#readme","bugs":{"url":"https://github.com/blockhash-xyz/slonks-api/issues"},"bin":{"slonks":"src/cli/slonks.ts"},"dist":{"shasum":"9680fa84639261f20783895be4e4fa81562dd2a5","tarball":"https://registry.npmjs.org/@blockhash/slonks/-/slonks-0.1.1.tgz","fileCount":13,"integrity":"sha512-JTlmKKruKlSMzqbs50shz5hp/IrVCiGwBpp9ULT6n4SjWQDT9xKCFiir4jV+fnoKUtLIwHt3pqhnRsvXkPxixg==","signatures":[{"sig":"MEUCIHlxuCcjlJbVpNTIuSnEoq2AhaUJtjikHZGJM5vXO0HFAiEAwY/8noGma6DUs3acF1yE/D3LC+johZXPYjwRFCS/v1U=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":280116},"type":"module","shasum":"9680fa84639261f20783895be4e4fa81562dd2a5","engines":{"bun":">=1.2.0"},"_npmUser":{"name":"hirsch","email":"michael@hirsch.me"},"_integrity":"sha512-JTlmKKruKlSMzqbs50shz5hp/IrVCiGwBpp9ULT6n4SjWQDT9xKCFiir4jV+fnoKUtLIwHt3pqhnRsvXkPxixg==","repository":{"url":"git+ssh://git@github.com/blockhash-xyz/slonks-api.git","type":"git","directory":"packages/slonks"},"_npmVersion":"10.8.3","description":"Command-line tools for Slonks.","directories":{},"_nodeVersion":"24.3.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/slonks_0.1.1_1777858702737_0.7589584637328652","host":"s3://npm-registry-packages-npm-production"}},"0.1.2":{"name":"@blockhash/slonks","version":"0.1.2","keywords":["slonks","nft","cli","ethereum"],"license":"UNLICENSED","_id":"@blockhash/slonks@0.1.2","maintainers":[{"name":"hirsch","email":"michael@hirsch.me"}],"homepage":"https://github.com/blockhash-xyz/slonks-api/tree/main/packages/slonks#readme","bugs":{"url":"https://github.com/blockhash-xyz/slonks-api/issues"},"bin":{"slonks":"src/cli/slonks.ts"},"dist":{"shasum":"0afb54c0e2290fca57c2325a9ff3b0f3787abe22","tarball":"https://registry.npmjs.org/@blockhash/slonks/-/slonks-0.1.2.tgz","fileCount":13,"integrity":"sha512-+K2pthsaJSQJHWRBH24srszHBqC3DNQLI4XnissWh4w4rWx2xvbqXgq0f9nZSgiMUY5AZqcxciwdX9YTxhc1iQ==","signatures":[{"sig":"MEUCIQDft011pcAaoo+0pj5y15rrA/gwJ0uKqG6Nk3vWWjwjhQIgCu7c0xGzsxvFce+TsvNcpVciUyEGmcN8e3stcghM4dg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":286711},"type":"module","engines":{"bun":">=1.2.0"},"gitHead":"e97bf32b77461c9060e8cdb6fd6a849efc28a8c6","_npmUser":{"name":"hirsch","email":"michael@hirsch.me"},"repository":{"url":"git+ssh://git@github.com/blockhash-xyz/slonks-api.git","type":"git","directory":"packages/slonks"},"_npmVersion":"10.9.0","description":"Command-line tools for Slonks.","directories":{},"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/slonks_0.1.2_1777913200994_0.03796885038353959","host":"s3://npm-registry-packages-npm-production"}},"0.1.3":{"name":"@blockhash/slonks","version":"0.1.3","keywords":["slonks","nft","cli","ethereum"],"license":"MIT","_id":"@blockhash/slonks@0.1.3","maintainers":[{"name":"hirsch","email":"michael@hirsch.me"}],"homepage":"https://github.com/blockhash-xyz/slonks-api/tree/main/packages/slonks#readme","bugs":{"url":"https://github.com/blockhash-xyz/slonks-api/issues"},"bin":{"slonks":"src/cli/slonks.ts"},"dist":{"shasum":"a3cd94fff62d7c2bc7e5df881245da69c1534157","tarball":"https://registry.npmjs.org/@blockhash/slonks/-/slonks-0.1.3.tgz","fileCount":14,"integrity":"sha512-Wx7k17XVp6bgEbqGzvKGdxhAjWG7XmZAizQ2VgUbsLMnj1rlWZXDk8J2xlGx7Cjspi2jl6GV0R6pbo/xwvJClQ==","signatures":[{"sig":"MEQCIET1kg8M7yxdaAEJ23XDRZDpbasLT9pHSM5eYMxink+1AiBaBsXrV5o0VcaGa3ZgDYsKrLrOztflQaUDycMiTev60g==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":287802},"type":"module","engines":{"bun":">=1.2.0"},"gitHead":"4932e4d1b688930703b220d269299fdf9a77387b","_npmUser":{"name":"hirsch","email":"michael@hirsch.me"},"repository":{"url":"git+ssh://git@github.com/blockhash-xyz/slonks-api.git","type":"git","directory":"packages/slonks"},"_npmVersion":"10.9.0","description":"Command-line tools for Slonks.","directories":{},"_nodeVersion":"22.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/slonks_0.1.3_1777914307349_0.7025245834929574","host":"s3://npm-registry-packages-npm-production"}},"0.1.4":{"name":"@blockhash/slonks","version":"0.1.4","keywords":["slonks","nft","cli","ethereum"],"license":"MIT","_id":"@blockhash/slonks@0.1.4","maintainers":[{"name":"hirsch","email":"michael@hirsch.me"}],"homepage":"https://github.com/blockhash-xyz/slonks-api/tree/main/packages/cli#readme","bugs":{"url":"https://github.com/blockhash-xyz/slonks-api/issues"},"bin":{"slonks":"src/cli/slonks.ts"},"dist":{"shasum":"5385c579a4b6689030f0d9bdb19eaad9b944e4ea","tarball":"https://registry.npmjs.org/@blockhash/slonks/-/slonks-0.1.4.tgz","fileCount":8,"integrity":"sha512-ZL6sFpgPzSYezCAQGLquQfOOgiDuKAeOjXOeRNX1lVDphdEvH5j+gm6N+IVi2F7SU+wmuWCOMZ731figDAHVUg==","signatures":[{"sig":"MEUCIAXJ1eRGlYQAZezE88ApcWQI9jvojXpCOlqBBp8j4+gxAiEA8pD2xV32E/2vTGfPL5GuogJuIs1mNFtXXRuxEoJM7o0=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":64263},"type":"module","engines":{"bun":">=1.2.0"},"gitHead":"a03c4755cfe2bf88c6d10342eab09ebc8635eedd","scripts":{"test":"cd ../.. && bun test packages/cli"},"_npmUser":{"name":"hirsch","email":"michael@hirsch.me"},"repository":{"url":"git+ssh://git@github.com/blockhash-xyz/slonks-api.git","type":"git","directory":"packages/cli"},"_npmVersion":"10.9.0","description":"Command-line tools for Slonks.","directories":{},"_nodeVersion":"22.12.0","dependencies":{"@blockhash/slonks-core":"0.1.0"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/slonks_0.1.4_1778038832183_0.0897203113445193","host":"s3://npm-registry-packages-npm-production"}},"0.2.0":{"name":"@blockhash/slonks","version":"0.2.0","description":"Command-line tools for Slonks.","type":"module","bin":{"slonks":"src/cli/slonks.ts"},"scripts":{"test":"cd ../.. && bun test packages/cli"},"repository":{"type":"git","url":"git+ssh://git@github.com/blockhash-xyz/slonks-api.git","directory":"packages/cli"},"bugs":{"url":"https://github.com/blockhash-xyz/slonks-api/issues"},"homepage":"https://github.com/blockhash-xyz/slonks-api/tree/main/packages/cli#readme","publishConfig":{"access":"public"},"engines":{"bun":">=1.2.0"},"keywords":["slonks","nft","cli","ethereum"],"license":"MIT","dependencies":{"@blockhash/slonks-core":"0.1.0"},"_id":"@blockhash/slonks@0.2.0","gitHead":"26d6912db3197f382879d9bc52acf4bb81e602c4","_nodeVersion":"22.12.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-LS3kdoVMEMtKVf1U7O6JyLjRpu9FkjsKB3lEhFOixNrpjAJUjchEBFoYwg6Rb1C6h2A4EAxvaKw478yf88uKTw==","shasum":"04bb02b15ef773e659cd375edae0c90e51aea203","tarball":"https://registry.npmjs.org/@blockhash/slonks/-/slonks-0.2.0.tgz","fileCount":8,"unpackedSize":64155,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIFdq/TeuBBOley6XBh4mNoA1/kUScwCfdLi5VxzK0lPUAiEA1ZBtK+guLpouG6df5fIt1/5ax/ObsboizugpIfeVEDc="}]},"_npmUser":{"name":"hirsch","email":"michael@hirsch.me"},"directories":{},"maintainers":[{"name":"hirsch","email":"michael@hirsch.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/slonks_0.2.0_1778040686081_0.9399401561649421"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-03T18:02:19.733Z","modified":"2026-05-06T04:11:26.415Z","0.1.0":"2026-05-03T18:02:20.096Z","0.1.1":"2026-05-04T01:38:22.966Z","0.1.2":"2026-05-04T16:46:41.204Z","0.1.3":"2026-05-04T17:05:07.572Z","0.1.4":"2026-05-06T03:40:32.332Z","0.2.0":"2026-05-06T04:11:26.261Z"},"bugs":{"url":"https://github.com/blockhash-xyz/slonks-api/issues"},"license":"MIT","homepage":"https://github.com/blockhash-xyz/slonks-api/tree/main/packages/cli#readme","keywords":["slonks","nft","cli","ethereum"],"repository":{"type":"git","url":"git+ssh://git@github.com/blockhash-xyz/slonks-api.git","directory":"packages/cli"},"description":"Command-line tools for Slonks.","maintainers":[{"name":"hirsch","email":"michael@hirsch.me"}],"readme":"# slonks\n\nCommand-line tools for Slonks. The npm package is `@blockhash/slonks`, and the\ninstalled binary is `slonks`.\n\nThe CLI fetches indexed token/listing data from `https://api.slonks.xyz`, then\nruns merge search locally with `@blockhash/slonks-core`.\n\n## Requirements\n\n- Bun `>=1.2.0`\n\n## Install\n\nRun without installing:\n\n```bash\nbunx @blockhash/slonks mine --owner 0x...\nbunx @blockhash/slonks --owner 0x...\n```\n\nOr install globally:\n\n```bash\nbun add -g @blockhash/slonks\nslonks mine --owner 0x...\n```\n\nGeneral commands:\n\n- `slonks --help`: show top-level help.\n- `slonks help <command>`: show help for a command.\n- `slonks --version`: print the installed CLI version.\n\n## `slonks mine`\n\nMine high-slop merge paths for a holder. The miner fetches indexed token\nsnapshots from `https://api.slonks.xyz`, then runs the combinatorial search\nlocally using the bundled Slonks model weights. By default it shows a live\nterminal UI and keeps running, moving from level 1 to deeper/wider searches\nuntil you stop it.\n\n```bash\nslonks mine --owner 0x2052051a0474fb0b98283b3f38c13b0b0b6a3677\n```\n\nStop once a target slop value is found:\n\n```bash\nslonks mine --owner 0x... --target 330\n```\n\nInclude currently listed Slonks up to `2x` floor in the same search pool:\n\n```bash\nslonks mine --owner 0x... --listings --budget 0.02 --target 330\n```\n\nOptions:\n\n- `--owner 0x...`: required holder address.\n- `--target N`: stop when a path reaches slop `N`.\n- `--listings`: include listed Slonks from `/listings`, capped to `2x` floor by default.\n- `--budget ETH`: include listings, but only show paths at or below this total ETH spend.\n- `--once`: run one strong mining pass and exit.\n- `--top N`: number of paths to keep/show. Default: `10`.\n- `--json`: emit final machine-readable JSON. Requires `--once` or `--target`.\n- `--api URL`: API base URL. Default: `https://api.slonks.xyz`.\n- `--help`: show command help.\n\nJSON output shape:\n\n```ts\n{\n  ownerTokenCount: number;\n  poolSize: number;\n  passes: Array<{\n    pass: number;\n    mode: \"beam\" | \"deep-l2\";\n    maxLevel: number;\n    beamSize: number;\n    generated: number;\n    best: MinedPath | null;\n    targetHit: boolean;\n  }>;\n  best: MinedPath | null;\n  target: number | null;\n  targetHit: boolean;\n  exitReason: string;\n  elapsedSeconds: number;\n}\n```\n\n## `slonks global-l1`\n\nCheck every directed one-level merge between live unmerged tokens. The command\nfetches `mergeLevel=0` tokens only, so burned tokens and tokens that already\nsurvived a merge are ignored.\n\n```bash\nslonks global-l1 --top 20 --workers 8\n```\n\nOptions:\n\n- `--api URL`: API base URL. Default: `https://api.slonks.xyz`.\n- `--top N`: number of pairs to print. Default: `20`.\n- `--workers N`: local worker processes. Default: `min(cpu - 1, 8)`.\n- `--max-tokens N`: testing cap; omit for the full unmerged collection.\n- `--json`: emit machine-readable JSON.\n\n## Development\n\nRun from the repo root:\n\n```bash\nbun run cli -- --help\nbun run cli -- mine --owner 0x...\nbun test packages/cli\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md"}