Repository navigation
Releases: hett-patell/pi-x
Releases · hett-patell/pi-x
Release list
pi-x 1.1.0 — DMs (opt-in, confirmed, never duplicated)
Added
x_dm_inbox: recent 1:1 DM conversations with the last message and unread status.x_dm: send a direct message (create or reuse the 1:1 conversation)./x write on|off [--no-confirm]: opt-in DM access, off by default./x statusshows it.- API discovery scans every loaded script bundle, so operations outside
main.jsare found too.
Safety
- Each
x_dmsend asks you to confirm the recipient and text in the Pi UI. Without a UI it refuses unless you chose/x write on --no-confirm. - A DM goes out from exactly one account (named, else active, else first enabled) and is never rotated to another account.
- A DM is sent exactly once: no re-run after a failed page script and no rate-limit retry, so a timeout can't cause a duplicate.
- Both DM tools are blocked until
/x write on; DM text is treated as untrusted input in the skill.
Fixed
- DM inbox picked the wrong "latest" message and unread state when message ids had different lengths (ids were compared as text).
pi-x 1.0.2: skill routing & counting fixes
Fixed
- Skill routing:
x_trending()without a location uses the/x locationdefault; it is personalized Explore only when no default is saved.- News, sports and entertainment exist only on personalized Explore, so those requests pass
location: "default". - The x_trending guideline and the
location/include_newsdescriptions now say the same.
- Skill counting rule:
- Stance is counted only from posts whose text is shown ("of the posts shown (from N sampled)").
- Percentages the stats block printed, such as verified share, are repeated as-is.
pi-x 1.0.1: more accurate agent answers
Changed
- Rewrote the
pi-xskill so agents report results accurately. They now:- say whose trends they are (account Explore vs. worldwide / a place);
- describe stance by counting posts instead of inventing sentiment percentages;
- read sample stats correctly;
- fetch less by default, and size the answer to the question;
- relay each error's fix line instead of editing the installed package.
- Tool
promptGuidelinesnow defer to the skill (one source of truth). dom_changedfix hint points users topi update/ issues instead of patching package files.
pi-x 1.0.0: trending, news & why-it's-trending for Pi agents
Give your Pi coding agent eyes on X (Twitter): what's trending right now and why, search with stats, threads and profiles. It needs no API keys because it uses your own logged-in browser session.
Install
npm i -g agent-browser && agent-browser install # prerequisite
pi install git:github.com/hett-patell/pi-xThen in Pi run /x login, and ask "What's trending on X right now, and why?"
Upgrading from 0.x: your config and accounts are migrated automatically. If you copied x-insights.ts into ~/.pi/agent/extensions/ by hand, remove it.
Added
x_trending: personalized Explore tabs (trending/news/sports/entertainment) or any location (WOEID), X News stories with volume & age,drilldownto explain why topics trend, NEW-since-last-check marking.x_search: filters (from/to/mentions, since/until, lang, min likes/retweets/replies, media/links/video, exclude replies/retweets, verified, near/within), pagination to 300, cursor continuation, stats block (velocity, medians, verified share, top voices/hashtags/sites, earliest notable post), copy-paste collapse.x_tweet: author thread + top replies viareplies.x_user: profiles via your session (no key) + recent posts with stats.x_doctor: live per-account check, API discovery report, fixes./xcommand: status dashboard, autocomplete, pickers,loginthat confirms itself,use auto,enable/disable,proxy,location,backup/restore,close,help; footer status.- In-page X API engine with runtime query-ID/feature discovery and DOM fallback; per-account locks; rate-limit backoff + account rotation; Esc cancels everything.
Changed
- Config moved to
~/.pi/agent/pi-x/(auto-migrated from~/.pi/x-insights.json), written atomically with 0600. - Browser sessions are named
pix-<account>and closed when Pi exits.
Removed
- SocialData backend (
x_search/x_userno longer need a key),/x setkey,x_scrape_topic(merged intox_search).
Security
- Proxy credentials masked everywhere and passed via env, not argv; saved login state 0600; env API keys never persisted.