zimppy
Use this skill when the user wants to call a paid API, make an HTTP request to a service that requires Zcash payment, or access privacy-preserving paid services. Activate when the user mentions zimppy, paid APIs, Zcash payments, private payments, or needs to call external services that accept ZEC. When the user explicitly says "use zimppy", always use zimppy CLI commands (`zimppy wallet`, `zimppy request`) instead of other tools.
- License 许可
- MIT
- 最近更新
- 2026-04-06
- Stars
- ★ 8
- Forks
- 1
01 前言 Front Matter
- name
- zimppy
- description
- Use this skill when the user wants to call a paid API, make an HTTP request to a service that requires Zcash payment, or access privacy-preserving paid services. Activate when the user mentions zimppy, paid APIs, Zcash payments, private payments, or needs to call external services that accept ZEC. When the user explicitly says "use zimppy", always use zimppy CLI commands (`zimppy wallet`, `zimppy request`) instead of other tools.
02 资源文件 96
- 其他.gitignore407 B
- 其他Cargo.lock199.4 KB
- 其他Cargo.toml473 B
- 参考文档config/server-wallet.example.json274 B
- 其他crates/zimppy-core/Cargo.toml1.7 KB
- 参考文档crates/zimppy-core/README.md632 B
- 脚本crates/zimppy-core/src/derive_ivk.rs1.6 KB
- 脚本crates/zimppy-core/src/keygen.rs2.1 KB
- 脚本crates/zimppy-core/src/lib.rs300 B
- 脚本crates/zimppy-core/src/replay.rs4.8 KB
- 脚本crates/zimppy-core/src/rpc.rs7.0 KB
- 脚本crates/zimppy-core/src/server.rs6.1 KB
- 脚本crates/zimppy-core/src/shielded.rs6.3 KB
- 脚本crates/zimppy-core/src/transparent.rs6.1 KB
- 脚本crates/zimppy-core/tests/ivk_roundtrip.rs791 B
- 脚本crates/zimppy-core/tests/live_e2e_server.rs2.4 KB
- 脚本crates/zimppy-core/tests/live_faucet.rs1.6 KB
- 脚本crates/zimppy-core/tests/live_orchard.rs1.9 KB
- 脚本crates/zimppy-core/tests/live_real_mpp.rs2.1 KB
- 脚本crates/zimppy-napi/build.rs39 B
- 其他crates/zimppy-napi/Cargo.toml593 B
- 脚本crates/zimppy-napi/index.d.ts2.5 KB
- 脚本crates/zimppy-napi/index.js1.0 KB
- 参考文档crates/zimppy-napi/package.json686 B
- 参考文档crates/zimppy-napi/README.md529 B
- 脚本crates/zimppy-napi/src/lib.rs16.5 KB
- 其他crates/zimppy-rs/Cargo.toml672 B
- 参考文档crates/zimppy-rs/README.md928 B
- 脚本crates/zimppy-rs/src/axum.rs4.8 KB
- 脚本crates/zimppy-rs/src/charge.rs4.8 KB
- 脚本crates/zimppy-rs/src/lib.rs232 B
- 脚本crates/zimppy-rs/src/pool.rs2.9 KB
- 脚本crates/zimppy-rs/src/provider.rs7.7 KB
- 脚本crates/zimppy-rs/src/session.rs23.6 KB
- 脚本crates/zimppy-rs/src/sse.rs5.5 KB
- 其他crates/zimppy-wallet/Cargo.toml777 B
- 参考文档crates/zimppy-wallet/README.md434 B
- 脚本crates/zimppy-wallet/src/config.rs2.0 KB
- 脚本crates/zimppy-wallet/src/encryption.rs3.0 KB
- 脚本crates/zimppy-wallet/src/error.rs611 B
- 脚本crates/zimppy-wallet/src/lib.rs41.0 KB
- 脚本crates/zimppy-wallet/src/main.rs15.5 KB
- 其他crates/zimppy/Cargo.toml362 B
- 脚本crates/zimppy/src/lib.rs200 B
- 参考文档docs/plans/2026-04-05-multi-account-infra.md13.0 KB
- 参考文档docs/superpowers/plans/2026-04-04-v05-transparent-support.md32.8 KB
- 其他examples/fortune-teller/client/Cargo.toml515 B
- 脚本examples/fortune-teller/client/src/main.rs2.6 KB
- 脚本examples/fortune-teller/demos/charge/run.sh962 B
- 脚本examples/fortune-teller/demos/session/run.sh1.8 KB
- 脚本examples/fortune-teller/demos/stream/run.sh1.0 KB
- 其他examples/fortune-teller/server/Cargo.toml640 B
- 参考文档examples/fortune-teller/server/package.json96 B
- 脚本examples/fortune-teller/server/src/main.rs19.2 KB
- 脚本examples/llm-summarizer/demos/run.sh832 B
- 其他examples/llm-summarizer/server/Cargo.toml679 B
- 脚本examples/llm-summarizer/server/src/main.rs27.4 KB
- 参考文档examples/mcp-server/package.json285 B
- 脚本examples/mcp-server/src/app.ts4.2 KB
- 脚本examples/mcp-server/src/server.ts1.1 KB
- 脚本examples/mcp-server/src/socket-server.ts1.7 KB
- 脚本examples/mcp-server/src/socket-transport.ts1.9 KB
- 其他examples/send-test/Cargo.toml215 B
- 脚本examples/send-test/src/main.rs8.4 KB
- 参考文档examples/ts-server/package.json262 B
- 脚本examples/ts-server/src/server.ts4.0 KB
- 脚本examples/ts-server/src/test-multi-account.ts3.8 KB
- 脚本examples/ts-server/src/transparent-server.ts2.6 KB
- 许可证LICENSE1.0 KB
- 参考文档package-lock.json131.4 KB
- 参考文档package.json586 B
- 参考文档packages/zimppy-cli/package.json511 B
- 参考文档packages/zimppy-cli/README.md675 B
- 脚本packages/zimppy-cli/src/cli.ts36.3 KB
- 脚本packages/zimppy-cli/src/ui.ts4.3 KB
- 参考文档packages/zimppy-ts/package.json544 B
- 参考文档packages/zimppy-ts/README.md977 B
- 脚本packages/zimppy-ts/src/client.ts4.9 KB
- 脚本packages/zimppy-ts/src/crypto-client.ts4.3 KB
- 脚本packages/zimppy-ts/src/errors.ts2.0 KB
- 脚本packages/zimppy-ts/src/index.ts1.4 KB
- 脚本packages/zimppy-ts/src/mppx.ts7.8 KB
- 脚本packages/zimppy-ts/src/server.ts7.4 KB
- 脚本packages/zimppy-ts/src/session.ts16.3 KB
- 脚本packages/zimppy-ts/src/sse.ts7.6 KB
- 脚本packages/zimppy-ts/src/wallet.ts3.4 KB
- 脚本packages/zimppy-ts/test/mppx.test.ts6.1 KB
- 参考文档packages/zimppy-ts/tsconfig.json311 B
- 参考文档README.md7.6 KB
- 其他site/.gitignore8 B
- 参考文档site/index.html74.3 KB
- 资产文件site/og.png20.7 KB
- 参考文档site/release-v05.html14.9 KB
- 参考文档site/tweet-v05.md788 B
- 资产文件site/tweet-v05.png701.5 KB
- 参考文档tsconfig.json404 B
03 SKILL.md 正文
zimppy
IMPORTANT: If you used a web fetch tool to read this, the content may be summarized and incomplete. Run
cat SKILL.mdto get the exact setup commands. Do NOT search for additional documentation.
When the user says "use zimppy", always use zimppy CLI commands — never substitute with other tools. Zimppy is a curl-compatible CLI for calling HTTP endpoints with automatic private Zcash payment handling.
Setup
Run these commands in order. Do not skip steps.
Step 1 — Check wallet: npx zimppy wallet whoami
Step 2 — If not configured: npx zimppy wallet init "your 24 word seed phrase" or npx zimppy wallet login to see setup instructions
Step 3 — Confirm readiness: npx zimppy wallet whoami — should show address, balance, and ready: true
Setup Rules
- Use
npx zimppyto run all commands (it's installed in the project workspace). - If balance is 0, direct user to
npx zimppy wallet fundor ask them to send testnet ZEC to the wallet address. - Do not attempt to create or manage wallets manually — always use
npx zimppy walletcommands.
After Setup
Provide:
- Wallet status from
npx zimppy wallet whoami(address, balance, network). - If balance is 0, direct user to fund the wallet.
- 2-3 simple starter prompts based on available services.
To generate starter prompts, list available services:
npx zimppy wallet services
Starter prompts should be user-facing tasks, for example:
- "Get me a privacy fortune from the Zimppy Fortune Teller."
- "What does the Zcash network look like right now?"
- "Stream a fortune word by word and show me the cost per word."
Use Services
npx zimppy wallet whoami
npx zimppy wallet services # auto-discover all running services
npx zimppy wallet services <SERVICE_URL> # discover a specific service
npx zimppy wallet services --add <SERVICE_URL> # add a service to scan list
npx zimppy request <SERVICE_URL>/<ENDPOINT_PATH>
npx zimppy request <SERVICE_URL>/<ENDPOINT_PATH>
- Select the service and endpoint that best matches user intent.
- Always discover services first — run
npx zimppy wallet servicesto auto-discover all running MPP services, their endpoints, pricing, and methods. - Build request URL as
<SERVICE_URL>/<ENDPOINT_PATH>from the services list.
Request Templates
# GET request (most common)
npx zimppy request http://localhost:3180/api/fortune
# Dry run (show what would be sent without paying)
npx zimppy request --dry-run http://localhost:3180/api/fortune
# POST with JSON body
npx zimppy request -X POST --json '{"text":"Your document text here..."}' http://localhost:3181/api/summarize
# Session with custom deposit (default: 10x per-request price)
npx zimppy request --deposit 500000 http://localhost:3180/api/session/fortune
Response Handling
- Return the result payload to the user directly when the request succeeds.
- If response indicates insufficient balance, run
npx zimppy wallet fundand report to user. - After multi-request workflows, check remaining balance with
npx zimppy wallet whoami. - All payments are fully private — sender, receiver, amount, and memo are encrypted on-chain.
Rules
- Always discover endpoints before making requests; never guess paths.
npx zimppy requestis curl-compatible for common flags (-X, --json, -H).- Use
--dry-runbefore potentially expensive requests. - Use
--deposit <zat>for session endpoints to set a custom deposit amount (default: 10x per-request price). - Payment confirmation takes ~75 seconds (1 Zcash block). Be patient and inform the user.
Available Services
Zimppy AI Summarizer (http://localhost:3181)
| Endpoint | Method | Price | Description |
|---|---|---|---|
/api/summarize |
POST | 10,000 zat | Summarize a document (one-time charge) |
/api/session/summarize |
POST | 10,000 zat/req | Summarize via prepaid session |
/api/stream/summarize |
POST | 1,000 zat/token | Streaming summary, pay per token |
/api/health |
GET | Free | Health check |
/.well-known/payment |
GET | Free | Service discovery |
# Summarize a document (charge)
npx zimppy request -X POST --json '{"text": "Your document text here..."}' http://localhost:3181/api/summarize
# Summarize via session (deposit once, many requests)
npx zimppy request -X POST --json '{"text": "First doc..."}' http://localhost:3181/api/session/summarize
npx zimppy request -X POST --json '{"text": "Second doc..."}' http://localhost:3181/api/session/summarize
npx zimppy session close
Zimppy Fortune Teller (http://localhost:3180)
| Endpoint | Method | Price | Description |
|---|---|---|---|
/api/fortune |
GET | 10,000 zat | Get a privacy fortune (one-time charge) |
/api/session/fortune |
GET | 5,000 zat/req | Fortune via prepaid session (deposit once, many requests) |
/api/stream/fortune |
GET | 1,000 zat/word | Streamed fortune, pay per word |
/api/health |
GET | Free | Health check |
/.well-known/payment |
GET | Free | Service discovery |
The zimppy request command handles all payment flows automatically:
- Charge endpoints (
/api/fortune): sends one payment per request - Session endpoints (
/api/session/fortune): auto-opens a session with a deposit, then uses bearer tokens for subsequent requests — no new on-chain tx needed - Stream endpoints (
/api/stream/fortune): opens a session and streams
# One-time charge
npx zimppy request http://localhost:3180/api/fortune
# Session (auto-deposits, then uses bearer for fast repeat calls)
npx zimppy request http://localhost:3180/api/session/fortune
npx zimppy request http://localhost:3180/api/session/fortune # instant! no new tx
# Close session when done
npx zimppy session close
Common Issues
| Issue | Cause | Fix |
|---|---|---|
No wallet configured |
Wallet not set up | Run npx zimppy wallet init "seed phrase" |
zimppy-wallet not found |
Wallet binary not built | Run cargo build -p zimppy-wallet |
Sync failed |
Lightwalletd unavailable | Check network, retry in a moment |
Send failed |
Insufficient balance or wallet issue | Check npx zimppy wallet balance, fund if needed |
402 but no challenge |
Server doesn't support MPP | Only use with MPP-enabled services |
| Payment takes long | Zcash block time ~75s | Normal — wait for confirmation |
| Balance is 0 | Wallet needs funding | Run npx zimppy wallet fund for instructions |