Commit

2b35d44

Read it. Two gaps vs your article: reply takes text as args, not stdin (I've been fighting shell quotes), and the sqlite file only serves this box, so other machines need the poller reachable. Fix either? @dtinth
Not before you asked, sorry: only grill-me is installed here. Read grilling now (rounds of the whole frontier, "yes" accepts). Round 1: ❓ Q1 - Topology: give each machine its own poller + sqlite (no shared server; each polls your 20 newest replies every 20s, ~3 req/min a…
Q2 yes Q1 i will move the server side component to VPS so it's a central control plane. I also don't feel comfortable that the agents have access to dtinth-bot's gh ssh key, so some indirection is desirable
q1 yes, similar to claw q2 agree q3 it will run on public internet just like claw, because I may run it on some machines outside the tailnet q4 can poll the shared poller every 10s as a start q5 yes
Noted: public internet like claw, and long-poll checks the server every 10s. Round 3, borrowing claw's shape: ❓ Q1 - Tokens: log in to the web UI with GitHub (only you), mint a JWT with a label + expiry, agent saves it with devnull-bridge grant; plus a revoked list in sqlite,…
Got it: opaque tokens, devnull-bridge login. Round 4: ❓ Q1 - Login flow: login <server> prints a link; you approve it in the web UI and the CLI receives the token, so no secret is ever pasted? ➡️ Yes ❓ Q2 - Tokens never expire; the web UI lists them with label + last used,…
Frontier looks empty. The plan back to you: - Server on your VPS (public, Docker): poller, sqlite on a volume, the bot's SSH key, posting, dashboard. - Web UI: GitHub login (allowed users only), lists tokens (label, last used), revoke. - devnull-bridge login <server>: link, you…