Open Net Worth
Open Net Worth is an open-source personal AI wealth assistant you run yourself: one ledger for your whole financial life, worked by an AI agent you control.
翻訳待ち
No updates detected yet. GitHub releases will appear here.
Token Launch Intelligence — M0: real-time multi-venue launch intelligence (Pons/Pump.fun/Flap)
翻訳待ち
Loading the full README. The saved excerpt is shown below.
Private real-time intelligence prototype observing Pons, Pump.fun, and Flap, normalizing launches into a common schema, and ranking them venue-relative. M0 was scoped read-only per the original design doc; M1 (below) adds a first, deliberately narrow real launch-execution capability, at the user's explicit request.
M1: real coin launching (Pump.fun, Devnet only)Read the full README ↗Private real-time intelligence prototype observing Pons, Pump.fun, and Flap, normalizing launches into a common schema, and ranking them venue-relative. M0 was scoped read-only per the original design doc; M1 (below) adds a first, deliberately narrow real launch-execution capability, at the user's explicit request.
/launch lets a creator actually launch a Pump.fun coin from this app — not a mockup. packages/adapters/src/pump/launch.ts builds a real createV2AndBuyInstructions transaction (Pump's current, non-deprecated create path); this was verified live on Solana Devnet before any UI was written: the real Pump.fun program and its Global config account are genuinely deployed and initialized on Devnet (checked via raw getAccountInfo, not assumed), and a throwaway Devnet wallet ran the exact shipped code path end-to-end — build → sign → send — producing a real, finalized on-chain mint with the correct name/symbol/6-decimals/1e9-supply.
Non-custodial, no exceptions. This app never holds, generates server-side, or transmits any private key. The connected wallet (Phantom etc., via @solana/wallet-adapter-react's Wallet Standard auto-detection) signs with the creator's own key, entirely client-side. Even the fresh mint keypair every new coin needs is generated in the browser and never sent to the server — the server only ever builds and returns an unsigned transaction (/api/pump/launch-transaction).
Devnet only, deliberately — no mainnet toggle exists in the UI. The user chose to prove this out with fake money before ever routing real funds through it; app/providers/wallet-provider.tsx hardcodes the Devnet cluster with no client-controllable network parameter.
Metadata goes through a real endpoint: /api/pump/metadata proxies the creator's image/name/symbol/description to https://pump.fun/api/ipfs (verified live — a real image upload returns a genuine IPFS-hosted metadataUri), the same service pump.fun's own frontend uses.
"Which venue is hot right now" on the /launch page is real intel from this app's own indexed data (recent launch count, graduation rate, average buyers, average holder concentration per venue over a 6-hour window) — not a recommendation engine, and deliberately shown with its sample size so a thin sample isn't mistaken for a strong signal.
Pons launching (/launch → Pons tab) routes through packages/adapters/src/pons/launch.ts, which calls the real, verified PonsV2LaunchAndBuy.launchAndBuy contract on Robinhood Chain mainnet — not the factory's bare launchToken. Pons's launch contracts are open source (github.com/ponsdotdev/ponsfamily), which made this more tractable than Flap's reverse-engineering: the real TokenParams/LaunchConfig structs and every validation rule came straight from verified source, then cross-checked against a real, decoded launchAndBuy transaction and a real on-chain launchFee()/getLaunchConfig(0)/canLaunch() read. PonsV2LaunchAndBuy (not the factory directly) is used deliberately: its own doc comment documents a real incident — a launch's entire sellable allocation bought out by 22 addresses in the two blocks after it opened, before the creator's own follow-up buy landed — that atomic launch+buy in one transaction closes. The exact transaction this app builds was verified via a real eth_call simulation against live mainnet state (no revert, real predicted token/curve addresses, real token amount returned) before the UI was built — same bar as Flap. No real signed Pons launch has gone through this app yet.
What this doesn't do yet:
npm audit surfaced two pre-existing high-severity findings while adding this (not introduced by this feature, both already reachable through dependencies the project already had): a bigint-buffer buffer-overflow advisory in @pump-fun/pump-sdk's own dependency chain, and a postcss XSS/path-traversal advisory via Next.js (fixing it needs Next 16.3.5, which this project already found reproducibly broken on Vercel — see the Next.js downgrade note above). Neither has a safe fix without a breaking, regression-risking change to already-verified code, so both are flagged here rather than silently ignored or force-upgraded.GitHub: https://github.com/kunmmi/token-launch-intel (private)
This isn't three stubs and a demo — every adapter subscribes to live mainnet, decodes real events against ABIs pulled from each venue's own primary sources (official SDK, verified contract source, or a canonical developer-facing interface — never a summary or a guess), and has been watched writing real launches into the actual running app.
Pump.fun (packages/adapters/src/pump/real-adapter.ts) — real implementation against the official @pump-fun/pump-sdk: subscribes to live program logs, decodes real CreateEvent/TradeEvent/CompleteEvent via Anchor's EventParser/BorshCoder against the SDK's own IDL, reads real BondingCurve/Global accounts for exact graduation progress. Trade decoding is fully implemented and tested, but trade ingestion in the scheduled live-refresh workflow is off by default (SEED_INGEST_TRADES) — Pump's real trade volume was found to starve launch writes against Neon Postgres in this session, a genuine unresolved issue, not an oversight (see scripts/seed-live-venue.mjs's header).
This is the beginning of the README. Read the rest at the original. Read the full README ↗