MESS Web Client
Overview
The MESS Web Client is a static HTML/JavaScript application for human executors to view and respond to requests. It works with GitHub as the backend and requires no server.
Features
- •View incoming requests (Inbox)
- •Claim and respond to requests
- •Take photos directly from mobile devices
- •Create new requests (optional)
- •Dark/light theme support
- •Works offline once configured
Setup
1. Host the Client
The client is a single HTML file. Host it anywhere:
- •GitHub Pages: Automatic if using the template repo
- •Cloudflare Pages: Upload
client/folder - •Netlify/Vercel: Drag and drop
- •Local file: Just open
client/index.html
2. Create GitHub Token
- •Go to github.com/settings/personal-access-tokens/new
- •Select "Only select repositories" → your MESS repo
- •Permissions: Contents → Read and write
- •Generate and copy the token
3. Configure on First Launch
The setup wizard walks you through:
- •Token - Paste your GitHub token
- •Repository - Enter
username/mess-exchange - •Profile - Set executor ID, display name, capabilities
Interface
Tabs
| Tab | Contents |
|---|---|
| Inbox | Pending requests waiting to be claimed |
| Active | Requests you've claimed and are working on |
| Done | Completed requests |
| Closed | Failed, declined, or cancelled requests |
Thread List
Each thread shows:
- •Status badge (pending, claimed, etc.)
- •Intent (what's being requested)
- •Reference number and time
- •Priority indicator (if elevated/urgent)
- •Camera icon (if photo requested)
Thread Detail
Click a thread to see:
- •Full message history
- •Response form (if claimed)
- •Action buttons (Claim, Complete, Need Info, Can't Do)
Actions
Claiming a Request
Quick claim: Click the arrow button on any pending request
From detail view:
- •Click the thread to open detail
- •Click "Claim This Request"
Completing a Request
- •Open a claimed thread
- •(Optional) Add text response
- •(Optional) Take/attach photo
- •Click "✓ Complete"
Taking Photos
- •Click the camera button (📷)
- •Take photo or select from gallery
- •Preview appears below
- •Photo is included when you complete
Need More Info
If you need clarification:
- •Click "More" to expand options
- •Click "Need Info"
- •Wait for requestor to respond
Can't Complete
If you can't do the task:
- •Click "More" to expand options
- •Click "Can't Do"
- •Thread moves to Closed
Creating Requests
If "Can Create Requests" is enabled in your profile:
- •Click "+ New" button
- •Fill in:
- •What do you need? - The request intent
- •Context - Additional details (one per line)
- •Priority - How urgent
- •Want photo - Check if you want an image response
- •Click "Submit Request"
Settings
Click the gear icon (⚙️) to access:
- •View current configuration
- •Test GitHub connection
- •Reset settings (clears all data)
Capabilities
Configure what tasks you can handle:
Physical Tasks
- •
visual:check- Look at something - •
physical:inspect- Touch/measure - •
fetch:indoor- Get items inside - •
fetch:outdoor- Get items outside - •
appliance:operate- Use appliances - •
vehicle:operate- Drive/move vehicles
Communication
- •
comm:phone- Make phone calls - •
comm:text- Send texts - •
comm:person- Talk to people
Information
- •
photo:capture- Take photos - •
document:read- Read documents - •
research:local- Local research
Care
- •
care:plants- Plant care - •
care:pets- Pet care - •
care:children- Child supervision
URL Parameters
Configure the client via URL for easy sharing:
https://your-client.com/?repo=username/mess-exchange
Keyboard Shortcuts
| Key | Action |
|---|---|
1-4 | Switch tabs |
Escape | Close detail view |
r | Refresh |
Troubleshooting
"No threads here"
- •Check your GitHub token has correct permissions
- •Verify repository name is correct
- •Try refreshing
"Action failed: sha wasn't supplied"
- •Thread was modified elsewhere
- •Refresh and try again
Photos not working
- •Allow camera permissions in browser
- •On iOS, use Safari for best camera support
Token expired
- •Create a new token
- •Go to Settings → Reset → Re-enter new token
Data Storage
All configuration is stored in browser localStorage:
- •
mess_config- Token, repo, profile settings
No data is sent to any server except GitHub's API.
Privacy
- •Your token is stored only in your browser
- •Tasks are stored in your private GitHub repo
- •The client code contains no tracking
- •Photos are stored as base64 in the thread files