Commit Graph

276 Commits

Author SHA1 Message Date
David Lau 316840d84d fix(trenches): omit empty launchpad/quote filters as a safety net
Complements the robinhood config: buildTrenchesBody now only sends
launchpad_platform / quote_address_type when non-empty. These fields are
allow-list filters, so an empty array returned an all-empty response. A
future chain missing from the config maps now degrades to API defaults
instead of silently returning nothing (chains should still be added to
both maps).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 20:37:35 +08:00
David Lau f6e3bc4ef7 fix(trenches): add robinhood launchpad/quote-address config
market trenches returned all-empty on robinhood because
TRENCHES_PLATFORMS and TRENCHES_QUOTE_ADDRESS_TYPES had no robinhood
entry, so an empty quote_address_type filtered out every result.

Add robinhood config:
- platforms: noxa, virtuals_v2, bankr, dyorswap, pool_uniswap_v2/v3/v4
- quote_address_type: [11, 20, 24, 12, 0]

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 17:52:43 +08:00
GMGN.AI 1e45828c8c 1.5.1 v1.5.1 2026-07-09 14:41:01 +08:00
davidsx 2c88807988 Merge pull request #171 from GMGNAI/feat-add-robinhood-chain-support
feat(chain): add robinhood support; disable monad/megaeth/hyperevm/tron
2026-07-09 14:04:01 +08:00
David Lau 2670188acb docs(market): hot-searches default set is 5 chains incl. robinhood
Update hot-searches default-set docs from 4 chains to 5
(sol/bsc/base/eth/robinhood) and fix two stale "7-chain" leftovers.

- skills/gmgn-market/SKILL.md, docs/cli-usage.md: 5-chain default
- src/commands/market.ts: update default-config comment

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-09 11:49:43 +08:00
David Lau 2d7d0043e6 feat(chain): add robinhood support; disable monad/megaeth/hyperevm/tron
Add robinhood as a supported chain across the CLI and skills, and stop
advertising chains that are not publicly supported yet.

robinhood:
- validate.ts: add to VALID_CHAINS and treat as EVM for address checks
- reject guards for commands that do not support it: track kol,
  track smartmoney, cooking create (mirrors market signal)
- --chain help updated for supported commands (token/portfolio/swap/
  market kline·trending·trenches·hot-searches/track follow-*/order get/
  gas-price); OpenApiClient chain comment
- docs: all SKILL.md, Readme.md, Readme.zh.md (split-out row for
  unsupported commands), cli-usage.md, plugin/marketplace descriptions

disable monad/megaeth/hyperevm/tron:
- comment monad out of VALID_CHAINS (kept for quick re-enable)
- strip these chains from all --chain help, SKILL.md, cli-usage.md
  (hot-searches default now 4 chains: sol/bsc/base/eth)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-08 22:48:54 +08:00
GMGN.AI 0e1ba6181c 1.5.0 v1.5.0 2026-07-01 11:22:11 +08:00
GMGN.AI b7b6250766 Merge pull request #166 from gina888666/feat/auto-config
feat(config): add gmgn-cli config command for API Key onboarding
2026-07-01 11:21:20 +08:00
gina888666 e3b713b150 fix(config): combine stderr+stdout when detecting auth errors in verify
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 21:12:27 +08:00
gina888666 ac1ea2e336 fix(config): distinguish auth vs network failures in verify step
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 21:08:55 +08:00
gina888666 b782743c8c fix(config): load dotenv before --check so ~/.config/gmgn/.env is read
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 20:12:11 +08:00
gina888666 d56c904b26 docs(skills): fix Credential Model content in swap to match main verbatim
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 17:37:38 +08:00
gina888666 3ecd76c572 docs(skills): restore Credential Model to original position in cooking and swap
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 17:30:05 +08:00
gina888666 d0e9e42f17 docs(skills): remove Credential Model from token/market/portfolio/track (only cooking/swap had it on main)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 17:25:48 +08:00
gina888666 18a0bf98b1 docs(skills): restore Credential Model section to all 6 SKILL.md files
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-30 17:18:31 +08:00
GMGN.AI 1b27af9bb8 1.4.9 v1.4.9 2026-06-29 17:09:58 +08:00
GMGN.AI 1ab38a1685 Merge pull request #169 from GMGNAI/feat/market-hot-searches
feat(market): add hot-searches command for hot-search ranking
2026-06-29 17:08:09 +08:00
David Lau bdf1996e2f feat(market): hot-searches range filters, flattened params, long-form fields
- Add --min-*/--max-* range flags to `market hot-searches` (same metric names as
  market trending); flatten filter fields onto each param (no nested filter object)
- Document response as long-form RankItem fields (server maps shortcodes); drop the
  filter_id field from the documented response shape
- Sync SKILL.md, cli-usage.md, Readme.md, Readme.zh.md, and OpenApiClient types

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29 16:02:59 +08:00
David Lau 36771529d7 feat(market): add hot-searches command for hot-search ranking
- Add `market hot-searches` CLI command for POST /v1/market/hot_searches
- Add getHotSearches() + HotSearchesParam/HotSearchesFilter to OpenApiClient
- Support --chain (repeatable), --interval, --limit, --filter, --params override
- Omitting --chain falls back to server default 7-chain config
- Validate --interval against 1m/5m/1h/6h/24h
- Sync SKILL.md, cli-usage.md, Readme.md, Readme.zh.md docs

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-29 11:22:27 +08:00
GMGN.AI 01a376a951 1.4.8 v1.4.8 2026-06-26 22:06:13 +08:00
gina888666 88643ca05c feat(config): add --check flag and improve BEFORE RUNNING ANY COMMAND detection
- Add gmgn-cli config --check: pure local check for GMGN_API_KEY, exit 0 = found, exit 1 = not found
- Update BEFORE RUNNING ANY COMMAND in all 6 SKILL.md files to use --check instead of file path detection
- Add fallback instruction for outdated gmgn-cli versions (unknown option → prompt user to npm install -g gmgn-cli)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:39:57 +08:00
gina888666 d701420705 refactor(config): move setup flow into CLI, remove gmgn-config skill
- gmgn-cli config: add multi-language guidance (zh-CN/zh-TW/en) based on system locale
- gmgn-cli config --apply <key>: write GMGN_API_KEY + GMGN_PRIVATE_KEY to ~/.config/gmgn/.env and verify via track follow-wallet
- Delete skills/gmgn-config/SKILL.md — all logic now lives in CLI source
- Simplify BEFORE RUNNING ANY COMMAND in all 6 SKILL.md files to two CLI commands, no duplicated text
- Remove stale First-time setup sections (openssl-based) from all 6 SKILL.md files

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:39:57 +08:00
gina888666 48a94a46a5 fix(gmgn-config): fix fixed guidance and verification messages in all languages
Add exact fixed messages for link guidance and verification results in
zh-CN, zh-TW, and English. Instruct Agent to output them verbatim in
the user's conversation language without paraphrasing.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:39:57 +08:00
gina888666 ec35707d15 feat(config): extract setup flow into gmgn-config skill; simplify CLI output
- Add skills/gmgn-config/SKILL.md with complete setup flow: key pair
  generation, credential writing, and verification via track follow-wallet.
  Verification result is output in the user's conversation language.
- Simplify all 6 SKILL.md BEFORE RUNNING ANY COMMAND to one line that
  delegates to gmgn-config skill, removing duplicate logic.
- Remove locale detection from CLI — output only the link; Agent handles
  all user-facing guidance in the conversation language.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:39:57 +08:00
gina888666 cc2fc0ed00 fix(skills): replace python3/awk with node for .env config in all SKILL.md
Use node -e to write GMGN_API_KEY and GMGN_PRIVATE_KEY into .env —
node is guaranteed to be present since gmgn-cli requires Node.js.
Also clarify that the same config step applies when the user explicitly
runs gmgn-cli config and sends back an API Key.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:39:57 +08:00
gina888666 5453373ffa fix(skills): fix private key extraction command in BEFORE RUNNING ANY COMMAND
Replace awk+echo with python3+printf to correctly serialize the PEM
private key as a single-line \n-escaped value when writing to .env.
The awk approach produced multi-line output that broke .env parsing.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:39:57 +08:00
gina888666 e8af4b88b5 feat(config): add gmgn-cli config command for API Key onboarding
Add a new `gmgn-cli config` command that automates Ed25519 key pair
generation for new users. The command reuses an existing keypair.pem if
present, or generates a new one, then outputs a pre-filled API Key
creation link with the public key embedded. Guidance text is output in
the user's system locale (zh-CN, zh-TW, or English).

All 6 SKILL.md files are updated with a BEFORE RUNNING ANY COMMAND
block that detects missing GMGN_API_KEY, triggers gmgn-cli config, and
instructs the Agent to write both GMGN_API_KEY and GMGN_PRIVATE_KEY
into ~/.config/gmgn/.env once the user provides their API Key.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-26 21:39:57 +08:00
davidsx 845a8aaa62 Merge pull request #168 from GMGNAI/feat/openapi-new-feature-sync 2026-06-26 21:34:13 +08:00
David Lau ed58e67180 docs(market): address PR review — ETH trenches docs + created-unit clarity
ETH trenches/trending (SKILL.md, cli-usage.md):
- Add per-chain --launchpad-platform value tables incl. ETH for `market trenches`
- Add ETH trenches usage examples (all / new_creation / completed)
- Rename "Trending — ETH (No Platform Filter)" to "Trending — ETH by Launchpad
  Platform" and add --platform ETH examples (platform list is now supported)

min_created/max_created units (market trending):
- Clarify that the raw upstream rank interface accepts minutes only; the
  openapi-service does NOT forward this field — it evaluates the age window itself
  (cutoff = now - duration, native for m/h/d), so 6h/7d work via this CLI.
- Note a bare number with no unit suffix is rejected. Update --help text and
  code comment accordingly.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-26 21:15:22 +08:00
David Lau ca55a80d12 feat(market): add min/max range filters to trending command
- Register dynamic --min-*/--max-* flags on `market trending`, mirroring the
  trenches pattern; forwarded as min_<metric>/max_<metric> query params to
  /v1/market/rank
- Add RANK_RANGE_FIELDS covering the 18 numeric metrics plus min/max-created
  token-age windows (m/h/d duration strings, passed through as-is)
- Document range filters and web-client filter aliases in SKILL.md, cli-usage.md,
  Readme.md and Readme.zh.md

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 20:30:25 +08:00
David Lau 4205bda0af feat(market): add eth chain support for trenches
- Add eth to TRENCHES_PLATFORMS and TRENCHES_QUOTE_ADDRESS_TYPES
- Allow --chain eth for market trenches
- Document eth platforms in CLI help, SKILL.md, and cli-usage.md

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 16:21:19 +08:00
David Lau 0b140b4a5f feat(market): support 30s kline resolution
- Add 30s to --resolution help text in market kline command
- Sync SKILL.md argument-hint and parameters table
- Sync docs/cli-usage.md resolution values

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-25 15:00:46 +08:00
GMGN.AI aa74d04839 1.4.7 v1.4.7 2026-06-24 16:23:07 +08:00
GMGN.AI 6461d2f8df chore: ignore local Claude Code dev configs 2026-06-24 16:22:55 +08:00
GMGN.AI 22d2ad25d5 Merge pull request #167 from GMGNAI/feat-quote-exist-auth
docs(order-quote): order quote now uses normal auth, no private key needed
2026-06-24 16:21:20 +08:00
David Lau 25f4207351 fix(order-quote): switch quoteOrder to exist auth and update CLI help text
- OpenApiClient.quoteOrder now calls authExistRequest instead of authSignedRequest
- Remove all GMGN_PRIVATE_KEY references from the quote command description and options

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-24 16:13:37 +08:00
David Lau d0ca1b40ce docs(order-quote): order quote now uses normal auth, no private key needed
quote endpoint downgraded to exist auth (API Key only); from_address
no longer needs to match the key's bound wallet. Update all auth
references in cli-usage.md, SKILL.md, and CLAUDE.md.
2026-06-22 16:55:51 +08:00
GMGN.AI 4e54086137 1.4.6 v1.4.6 2026-06-18 11:59:38 +08:00
GMGN.AI fcd14effbf Merge pull request #165 from GumpOnchain/feat/add-bsc-launchpad-platforms
feat(bsc): add new BSC launchpad platforms
2026-06-18 11:57:14 +08:00
gumponchain d34315ce98 fix(bsc): update --platform hint text with new BSC launchpad names
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-18 11:52:04 +08:00
gumponchain b6c4ff50f2 feat(bsc): add new BSC launchpad platforms
Add cubepeg, likwid, goplus_creator, goplus_skills, openfour after
four_xmode_agent; add flap_stocks and flap_aioracle after flap.
Updates both TRENCHES_PLATFORMS defaults and SKILL.md examples.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-18 11:47:18 +08:00
GMGN.AI e6dfca48d8 1.4.5 v1.4.5 2026-06-16 11:19:13 +08:00
deepfeature 362d180910 Merge pull request #161 from GMGNAI/feat/add-user-agent-header
feat(client): send User-Agent header on all API requests
2026-06-16 11:13:35 +08:00
deepfeature d5c43eed51 feat(client): send User-Agent header on all API requests
Add a `User-Agent: gmgn-cli/<version>` header (version read from
package.json) to both authExistRequest and authSignedRequest, so
upstream can identify CLI traffic and gateways that reject empty/default
UAs do not block requests.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-16 11:12:10 +08:00
GMGN.AI 968013ebce Merge pull request #160 from nova-0328/feat/cooking
docs(cooking): clarify Flap fee-share schema and add real-world examples
2026-06-12 15:04:24 +08:00
prodev-nova 3d11f8c6d6 docs(cooking): clarify Flap fee-share schema and add real-world examples
- Correct mkt_bps: it's the tax-recipient share (X handle in gift mode or
  split_conf addresses in split mode), not a generic "marketing" fund
- Make twitter_account / split_conf conditional-required based on recipient_type
  instead of always required
- Add two end-to-end Flap examples (split mode → BSC address, gift mode → X handle)
- Merge "Full worked examples" into the Usage Examples section

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-12 14:54:11 +08:00
GMGN.AI f15e8271f9 1.4.4 v1.4.4 2026-06-11 12:07:35 +08:00
GMGN.AI eda0ac9f52 Merge pull request #158 from GMGNAI/feat-add-follow-tokens-command
Feat add follow tokens command
2026-06-11 11:53:40 +08:00
davidsx b940c66c00 Merge pull request #156 from prodev-nova/feat/cooking
fix(cooking): remove deprecated --interval-seconds flag
2026-06-05 21:18:04 +08:00
prodev-nova 1964e927cd fix(cooking): remove deprecated --interval-seconds flag
The interval_seconds param is no longer used. Removed from the CLI
option, params assembly, CreateTokenParams, SKILL.md and cli-usage.md.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-05 21:03:23 +08:00