Skip to content

tempoxyz/wallet-cli



Tempo wordmark



Tempo Wallet CLI

Command-line wallet and HTTP client for the Tempo blockchain, with built-in Machine Payments Protocol support.

Website | Docs | MPP Spec

What is Tempo Wallet CLI?

Tempo Wallet is a CLI that lets you create a wallet, manage keys, and make HTTP requests that pay automatically — no API keys required. It uses the Machine Payments Protocol (MPP) to handle 402 Payment Required challenges natively, turning any paid API into a simple HTTP call.

Install

Install the Tempo launcher:

curl -fsSL https://tempo.xyz/install | bash

The launcher manages tempo wallet and tempo request extensions automatically.

Quick Start

# Log in with your passkey
tempo wallet login

# Remote-host login when your browser is on another device
tempo wallet login --no-browser

# Check wallet status
tempo wallet whoami

# Fund your wallet
tempo wallet fund

# Discover available paid services
tempo wallet services --search ai

Make a paid HTTP request:

# Preview payment details
tempo request --dry-run https://example.mpp.tempo.xyz/v1/resource

# Pay and retry automatically
tempo request https://example.mpp.tempo.xyz/v1/resource

Session-based services open a reusable payment channel:

tempo request -X POST \
  --json '{"input":"hello"}' \
  https://service.mpp.tempo.xyz/v1/stream

tempo wallet sessions list
tempo wallet sessions close https://service.mpp.tempo.xyz

Commands

tempo wallet includes:

  • login, logout, refresh, whoami, keys
  • fund
  • transfer
  • services
  • sessions list, sessions close, sessions sync
  • debug
  • completions

Credit-related flows use whoami --credits, fund --credits, and transfer --credits.

tempo request supports common curl-style flags for methods, headers, bodies, output files, redirects, retries, proxies, and streaming responses.

Local State

Wallet state is stored under:

~/.tempo/wallet/store.json
~/.tempo/wallet/channels.db

Tests use isolated temporary HOME directories so they do not mutate a developer's real wallet state.

Development

Requirements:

  • Node.js 22
  • pnpm 11
pnpm install
pnpm dev -- --help
node --import tsx src/request-cli.ts --help

Useful commands:

pnpm check
pnpm test
pnpm build
pnpm bundle
pnpm package

pnpm check runs formatting/lint checks, production TypeScript typecheck, test/helper TypeScript typecheck, and Vitest.

Release Artifacts

The release workflow builds standalone Linux and macOS binaries for both tempo-wallet and tempo-request. Each binary is published with a checksum, SBOM, Sigstore bundle, and GitHub attestations.

Security

Please do not report vulnerabilities through public issues. Email security@tempo.xyz.

Local wallet files may contain access key material. Do not commit files from ~/.tempo/, .env, or generated release artifacts.

Contributing

Use conventional commit titles and include a .changelog/*.md entry for pull requests:

---
wallet-cli: patch
---

Brief description of the change.

Supported bump levels are major, minor, patch, and none.

Run pnpm check before submitting changes.

About

No description, website, or topics provided.

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE-APACHE
MIT
LICENSE-MIT

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors