Wave Ruby
Ruby API client and CLI for Wave
$ wave login
Authenticated as avi@example.com
$ wave search "roadmap"
Found 3 sessions matching "roadmap"
About Wave
Wave is an AI note taker for meetings and conversations, and it is one of my favorite tools in this category. This gem wraps their API so you can work with your Wave data from Ruby or the command line.
Learn more at wave.co and follow @waveappai.
Install
gem install wave-ruby
Or add it to your Gemfile:
gem "wave-ruby"
CLI
A full command-line interface for interacting with Wave. Authenticate once, then query your sessions, search transcripts, and pull data right from the terminal.
wave login
wave account
wave list
wave search "meeting content"
wave show SESSION_ID
wave transcript SESSION_ID
Every read command supports --json for machine-readable output:
wave list --json
wave account --json
Ruby API
Use the client directly in your Ruby code. Initialize with a token, then call methods for each Wave endpoint.
client = Wave::Client.new(token: ENV.fetch("WAVE_API_TOKEN"))
client.account
client.list_sessions(limit: 10)
client.search_sessions(query: "roadmap")
client.session("session_123")
client.transcript("session_123")
API Reference
| Method | Description |
|---|---|
account |
Get current account info |
list_sessions(limit:) |
List recent sessions |
search_sessions(query:) |
Search sessions by content |
session(id) |
Get a specific session |
transcript(id) |
Get full transcript for a session |
Development
# Install dependencies
bundle install
# Run the test suite
bundle exec rspec
# Build the gem locally
gem build wave-ruby.gemspec
Live API Verification
Live specs are opt-in and skipped by default. Set up your credentials, then run them locally:
cp .env.example .env
# Set WAVE_API_TOKEN in .env
WAVE_LIVE=1 bundle exec rspec spec/wave/live/client_live_spec.rb
Live coverage includes: account, list_sessions, stats, session, transcript, and search_sessions.
gem install wave-ruby