pi-coingecko
CoinGecko (공식 API) 클라이언트 for pi — 암호화폐 시세·차트·시장 랭킹·코인 상세·검색 (무료 Demo 키, 직접 REST, 의존성 0).
Package details
Install pi-coingecko from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-coingecko- Package
pi-coingecko- Version
0.2.0- Published
- Aug 26, 2026
- Downloads
- 203/mo · 173/wk
- Author
- preinpost
- License
- MIT
- Types
- extension
- Size
- 77.7 KB
- Dependencies
- 1 dependency · 2 peers
Pi manifest JSON
{
"extensions": [
"./index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-coingecko
CoinGecko 공식 API 클라이언트 pi 패키지 — 암호화폐 현재가·OHLC 차트·시장 랭킹·코인 상세·검색.
REST 직접 호출(의존성 0, MCP 서버 없음). 무료 Demo 키(x-cg-demo-api-key 헤더) — 키가 없어도 공개 API 사용 가능(5~15 req/min).
설치
pi install npm:pi-coingecko
# pi 재시작
사용
# pi 안에서:
/coingecko-key # CoinGecko Demo API 키 등록 (없어도 공개 API 사용 가능)
/coingecko-status # 연동 상태 진단 (키/백엔드/레이트리밋/캐시)
# 그 다음 자연어로:
"비트코인 현재가" # coingecko_price
"이더리움 30일 차트 지표" # coingecko_chart
"시가총액 랭킹 top 20" # coingecko_market
"리플 코인 상세" # coingecko_coin
"아발란체 코인 id 찾아줘" # coingecko_search
⚠️ 코인 식별은 id(bitcoin, ethereum, ...)입니다 — 심볼이 중복될 수 있어
coingecko_search로 정확한 id를 확인하세요.
도구
| 도구 | 설명 |
|---|---|
coingecko_price |
현재가 — 복수 코인 (id 콤마 구분 최대 10, 표시 통화 최대 5, 24h 변동률·시총 포함) |
coingecko_chart |
OHLC 차트·지표 — 1/7/14/30/90/180/365/max일, 공용 지표(pi-finance-core) |
coingecko_market |
시장 랭킹 — order(4종) / perPage(최대 50), usd 기준 |
coingecko_coin |
코인 상세 — market_data에서 usd 값만 pick |
coingecko_search |
코인 검색 — id 찾기용 (심볼 아님) |
⚠️
coingecko_chart는 OHLC 데이터라 volume이 없어 거래량 지표는 제한적입니다. 참고용 분석이며 투자 결정의 책임은 사용자에게 있습니다.
한도 (무료 플랜)
- 공개 API(키 없음):
515 req/min — 기본 스로틀 5000ms (12 req/min) - Demo 키:
530 req/min —COINGECKO_RATE_LIMIT_MULTIPLIER로 배율 조정 (0이면 해제) - TTL 캐시로 호출 절약: price 15s / chart 60s / market 2m / coin·search 10m
(
COINGECKO_DISABLE_CACHE=1로 비활성화) - 429(레이트 초과) 시 GET 자동 백오프 재시도 (최대 2회)
키 등록
coingecko.com API 대시보드 무료 가입 → demo key 발급 →
/coingecko-key로 등록 (OS 키체인 / 0600 파일 폴백). 셸 env COINGECKO_API_KEY 폴백 지원 — 키가 없으면 공개 API를 사용합니다.
아키텍처
index.ts — thin entry: export default registerExtension
src/
cache.ts TTL 메모리 캐시 (엔드포인트별 TTL, COINGECKO_DISABLE_CACHE=1 비활성)
client.ts CoinGecko transport — x-cg-demo-api-key 헤더 + 레이트리밋 + 에러 envelope + 429 백오프
ratelimit.ts promise-chain 레이트리밋 (기본 5000ms, COINGECKO_RATE_LIMIT_MULTIPLIER 배율)
secret.ts pi-coingecko 전용 키 스토어 (mergeWrite — COINGECKO_API_KEY env 폴백)
roles/ — 도메인 역할 (typed wrapper, 에이전트가 직접 import)
coingecko.ts 가격·차트·랭킹·상세·검색 정규화(compact) + OHLC → Bar 변환
agent/ — pi 통합
extension.ts registerExtension
tools.ts coingecko_* 5 툴 (execute는 roles 위임)
commands.ts /coingecko-key, /coingecko-status
시크릿 저장소
namespace pi-coingecko (env 컨트롤은 공용 KIS_SECRET_STORE/KIS_KEYS_FILE).
백엔드 우선순위: OS 키체인(@napi-rs/keyring) → 0600 파일 폴백(~/.pi/agent/pi-coingecko-keys.json).
자세한 동작(적응형 폴백/마이그레이션)은 pi-finance-core 참고.
개발
이 패키지는 pi-finances 모노레포(pnpm workspace)의 일부입니다.
pnpm --filter pi-coingecko typecheck
pnpm --filter pi-coingecko exec node --experimental-transform-types scripts/smoke.mjs