Ruby client for the PLATO room server protocol. Submit tiles, read room history, search — pure Ruby, no dependencies beyond the standard library.
gem install plato-clientOr in your Gemfile:
gem 'plato-client'require 'plato-client'
client = Plato::Client.new('http://localhost:8847')
# Read room status
status = client.status
puts "Rooms: #{status['rooms'].keys.count}"
# Read tiles from a room
tiles = client.tiles('fleet_health')
tiles.each { |t| puts t['question'] }
# Submit a tile
client.submit_tile('my_project', {
domain: 'review',
question: 'Is this constraint safe?',
answer: 'Yes — ZHC consensus confirms geometric consistency',
confidence: 0.95,
tags: ['safety', 'zhc']
})
# Search across all rooms
results = client.search('constraint')Create a client. Default: http://localhost:8847
Returns room list and metadata from /status.
Returns list of room names.
Returns array of tiles from the named room.
Submit a tile. Hash keys: domain, question, answer, confidence, tags.
Search all rooms for tiles matching query.
Plato.tiles('fleet_health') # one-liner
Plato.submit('my_room', question: '...', answer: '...')MIT