Skip to content

Per-Bot grants instead of publish, remove a friend's Bot, in-chat approvals (#90) - #91

Merged
Birfy merged 1 commit into
ThinkFlowLab:mainfrom
Birfy:cursor/remove-friend-bot-inchat-approval-2176
Oct 15, 2026
Merged

Birfy merged 1 commit into
ThinkFlowLab:mainfrom
Birfy:cursor/remove-friend-bot-inchat-approval-2176

Conversation

@Birfy

@Birfy Birfy commented Oct 15, 2026

Copy link
Copy Markdown
Collaborator

Closes #90. Supersedes the publish model of #51/#88.

  • Removes the global published flag, its toggle and the reach() published gate. Access is only independent per-Bot grants (default deny, Chief included).
  • Friends' Bots lists only Bots granted to me. Per-Bot Manage access view with revoke.
  • Remove a friend's Bot (hide locally, leave its rooms, reappears only if re-granted).
  • Held Bot replies are approved inside the chat (owner-only buttons, inline auto-send toggle).
  • Face-to-face rooms: bringing my own Bot by number stays an implicit room-scoped grant.
  • Tests, docs/subsystems and CHANGELOG updated. Upgrading: no Bot is shared until it is granted.

Needs the matching bot-social change: Birfy/bot-social#3.

There is no global published flag and no "publish all my Bots"
concept. Every access is one of my Bots granted to one person
(optionally scoped to a group). Default deny, Chief included.
Accepting Invite to this Bot creates the grant; Manage access
lists who has it, in which groups, and Revoke. Friends' Bots
lists only Bots granted to me. Face-to-face join by 6-digit
number stays a room-only implicit grant. Upgrading means no
Bot is shared until it is granted.

Core reach() is grant-based. @flybot/social isolates grant and
invite server calls in src/mcp-client.js. Hide-a-friend's-Bot
and in-chat approval prompts are unchanged.

Co-authored-by: Danyang Chen <birfychen@gmail.com>
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 15, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ⚠️ Failed 2026-10-15T13:03:18.136677Z cf8e590 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@Birfy
Birfy merged commit 811df19 into ThinkFlowLab:main Oct 15, 2026
5 checks passed
Birfy added a commit that referenced this pull request Oct 15, 2026
…' Bots panel (#92) (#100)

Follow-up to #96 / #93 / #91.

- **Face-to-face group** is now an entry in the global sidebar **+**
(new-chat picker), right after New group chat, via a new
`flybot.new-chat.action` slot (patch layer). It also stays in Friends'
Bots + Add and works while the roster is loading.
- **Removed Bots stay gone:** a hide is forgotten only after two
consecutive successful non-legacy roster fetches without that handle (or
an explicit revoke); hidden handles are kept out of
`flybot.remote.publish`, so persisted remote chats do not return in the
sidebar, the send-to picker or mentions. Home-level rows are filtered
the same way.
- **Performance:** parallel mount, stale-while-revalidate roster
(Refreshing\u2026 instead of blocking Loading\u2026), keep-alive HTTP,
non-blocking grant listing, slower/paused polling.
- Tests, bundle check, patches check, CHANGELOG updated.

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Team] Remove a friend's Bot, and approve held Bot replies inside the chat

2 participants