Skip to content

Releases: trynipcode/hikara

v0.3.0 — rebrand to hikara

30 Apr 15:24

Choose a tag to compare

rebrand: hakiri to hikara

this is a rename. the project was published as hakiri for two days
(v0.1.0 ethereum, v0.2.0 solana pivot). it ships from v0.3.0 onward as
hikara. brand, name, package, cli command, env-var prefix, banner,
domain — all changed. nothing else.

if you installed v0.2.0: uninstall and reinstall under the new name.

changed

  • python package: hakiri to hikara. import path is from hikara import ...
  • cli command: hakiri to hikara
  • pyproject name + console script entrypoint
  • rust crate: hakiri-ingest to hikara-ingest
  • env-var prefix: HAKIRI_ to HIKARA_
  • banner asset: assets/bannerhakiri.jpg to assets/bannerhikara.jpg
  • repo description and topics
  • domain: hakiri.xyz to hikara.xyz

kept

  • github repo path: github.com/hakiriagent/hikara (account login unchanged, slug renamed)
  • maintainer handles: hakiri (lead), 0xnova, mikrohash, luka
  • license, philosophy, heuristic ids (SAND-01, BACK-01), confidence cap (0.95)

removed

  • nothing functional. the rename is brand-only. all detection logic, decoders,
    scoring, and ingest stubs from v0.2.0 carry forward identically.

links

v0.2.0 — chain pivot to solana

30 Apr 14:31

Choose a tag to compare

scope change

this is a chain pivot. the v0.1.x line was an ethereum mev forensics agent.
v0.2.0 moves the entire detector to solana. brand, domain, contributor zones
unchanged — chain and dex stack changed.

if you starred for ethereum-side mev: that work lives at the v0.1.1 tag and
the codebase before this commit. fork it under MIT, no need to ask.

what shipped

  • raydium amm v4 inner-instruction swap decoder
  • orca whirlpool inner-instruction swap decoder
  • known solana program-id table (raydium clmm, meteora dlmm/amm, lifinity v2, jupiter v4/v6, pump.fun, jito tip)
  • jito tip detector with the eight canonical tip accounts
  • validator (leader) attribution table
  • solana mev searcher label table (placeholder seeds)
  • ingest stubs for yellowstone-grpc geyser and jito-shredstream-proxy
  • jito block engine bundle reader stub
  • core types reshaped for slot / signature / lamports / compute units / jito_tip_lamports
  • new classify_slot() entry point alongside the legacy classify_block alias
  • pyproject deps: dropped eth-utils / eth-abi / eth-hash. added based58.
  • rust crate refactored: SwapLeg.signature, Bundle.slot, jito_tip_lamports
  • demo fixture moved from a uniswap v3 sandwich on weth/usdc to a raydium amm v4 sandwich on sol/usdc
  • env vars renamed: HAKIRI_RPC_HTTP_URL, HAKIRI_GEYSER_GRPC_URL, HAKIRI_JITO_BLOCK_ENGINE_URL
  • trace mode values: getblock | geyser | shredstream
  • readme, roadmap, architecture, heuristics, glossary fully rewritten

numbers

  • 38 commits between v0.1.1 and v0.2.0
  • 23 pytest tests + 3 cargo integration tests, all green
  • ruff + cargo fmt + clippy -D warnings enforced

honest status

what is not shipped in 0.2.0:

  • the geyser / shredstream live ingest is still a stub. `hakiri scan` falls through to demo when called.
  • jit, atomic-arb, leader-collusion, liquidation rules are planned for v0.3 / v0.4
  • meteora, lifinity, pump.fun, phoenix, raydium-clmm decoders are stubs
  • the searcher and leader tables are seeded with placeholders. real curation lands as PRs from the community
  • the ai filter is still a no-op pass-through

read-only by design. no wallet, no signer, no executor. the chain changed; the philosophy did not.

links

v0.1.1 — branding + DX polish

29 Apr 23:33

Choose a tag to compare

what shipped

  • top-level --version / -V flag on the cli for fast version checks
  • banner asset (assets/bannerhakiri.jpg) referenced from the readme
  • twitter, telegram, and website badges on the readme

changed

  • project homepage now points to https://hakiri.xyz/ (pyproject + repo metadata)
  • ascii wordmark dropped from readme; the banner already shows it

fixed

  • ruff import order in enrich/searcher.py and enrich/builder.py
  • duplicate authors / description / license keys in ingest-rs/Cargo.toml

honest status

still a v0.1.x patch. live mempool ingest is the v0.2 work. no new heuristics shipped in this release. if you starred for sandwich and backrun detection, that is what is in the box.

links

v0.1.0 — sandwich + backrun, uniswap v2/v3 decode

29 Apr 13:14

Choose a tag to compare

what shipped

  • core types: `Event`, `Bundle`, `SwapTx`, `Victim`, `Verdict`
  • sandwich detector (`SAND-01`) and one-step backrun detector (`BACK-01`)
  • uniswap v2 + v3 swap log decoders
  • known-router / known-builder / known-searcher lookup tables
  • coinbase-transfer detector for bundle attribution
  • rule-based scorer with confidence cap at 0.95
  • output sinks: stdout (rich), jsonl, webhook (httpx)
  • typer cli with `scan`, `investigate`, `demo`, `version`
  • offline `demo scan` and `demo investigate` driving synthetic fixtures
  • pydantic-settings config loader
  • rust crate `hakiri-ingest`: pending-tx + sandwich classifier + trace types
  • pytest suite (20 tests) + cargo integration tests (3 tests) — all green
  • ci workflow on push and pr: python matrix (3.9-3.12) + rust stable

numbers

  • 150 commits across 4 contributors
  • 26 distinct days of activity
  • six commit prefixes: feat, fix, refactor, docs, chore, test
  • ruff + cargo fmt + clippy -D warnings enforced

honest status

what is NOT shipped in 0.1.0:

  • live mempool subscribe is a stub. `hakiri scan` falls through to `demo scan` when called without rpc.
  • jit, atomic-arb, liquidation, oracle rules are planned for v0.2 / v0.3
  • only ethereum mainnet. l2s land in v0.3
  • ai filter is a noop pass-through. enabling `ANTHROPIC_API_KEY` does not change scoring yet
  • balancer + curve decoders are stubs

read-only by design. no wallet, no signer, no executor. the repo is the product.