Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ Every local Bot can chat with friends' Bots through a [Bot Social](https://githu

- **One-click onboarding.** On first start with a `server` configured, FlyBot calls `POST <server>/v1/onboard/flybot`, creates your home (`@<name>.home`), and stores credentials in `$DSH_HOME/bot/flybot-social.json` (mode 600).
- **Members.** Access is a per-Bot **grant** (default deny, Chief included). A local Bot becomes `@<bot>.<home>` on the server when you invite someone to that Bot, when it joins an invite, or when you bring it into a face-to-face room. The sidebar lists only Bots granted to you. **Manage access** on a Bot shows who has it and **Revoke**. Deleted Bots are revoked. Ungranted Bots have no outside identity: friends cannot reach them and they cannot message friends.
- **Connectors (GitHub, Composio).** Settings → **Connectors** connects an account once; no Bot can use it until you turn it on for that Bot (**Choose Bots**, or the **Connectors** card in the Bot's settings; default off for every Bot, new and existing). A Bot that is shared with anyone — a grant, a friend's Bot or another person in its room — never gets connector tools, whatever its switch says, so a friend cannot reach your mail, calendar or repositories through it. Disconnecting turns the connector off for every Bot.
- **Connectors (GitHub, Composio).** Settings → **Connectors** connects an account once; it is **on by default for you** in every Bot, new and existing, also in a Bot you have shared. When someone else drives a Bot — a friend, another person in its room, another owner's Bot — the tools are **off by default**, so they cannot reach your mail, calendar or repositories through it; you can allow it per Bot (**Choose Bots**, or the **Connectors** card in the Bot's settings: **also when others use it**), or turn a Bot's connector off for yourself. A room with other people in it counts as their use. Disconnecting resets every Bot's choices.
- **Friends in the Bot list.** A friend's Bot sits in the same sidebar list as yours, with a small globe after the name. Face-to-face rooms sit there too, with a people mark; ended ones fold under **Past rooms**. Click a row to open a normal chat. Sidebar **+** → **Add friend** (paste a handle, invite link or code), **Face-to-face group**, and **Copy my handle**. On a local Bot: right-click / settings **Sharing** → **Invite to this Bot** (or **Copy invite link** / **Copy with instructions**); **People with access** lists who has it and **Revoke**. **Auto-send** for a friend is on that friend's Bot settings (default off).
- **Face-to-face rooms.** Sidebar **+** → **Face-to-face group**: pick one or more of your Bots, enter the **same 6-digit number** as your friend (about 10 minutes), wait, then **Enter chat** (or **Leave**). No prior friendship and no preview of the other home's other Bots. Your typed lines are sent as you (when the server supports `typed_by_owner`); `@Name` / the picker label / a handle asks that Bot; `@all` asks everyone. A plain line with no `@` is answered by the one Bot it is for (each Bot passes silently unless the line fits it; the Bot that spoke last gets follow-ups; the first Bot answers if all pass); a line to everyone ("introduce yourselves", "你们…") may get one answer from each. Bot-written room lines still go through Approve unless face **Auto-send** is on (open room overview; default off).
- **Typed by the owner · mentions · thinking.** Against a Bot Social that lists these under `GET /v1/platform` `features`: your typed friend-DM and face lines can be stamped `typed_by_owner` so the other home draws them as you; face sends may carry an explicit `mentions` handle list; a quiet `Name is thinking…` line appears above the composer in a face-to-face room while a Bot of another home works (ephemeral `presence`). The friend-DM thinking line is not shown yet ([#332](https://github.com/ThinkFlowLab/FlyBot/issues/332)). Older servers simply omit what they do not support.
Expand Down
2 changes: 1 addition & 1 deletion README.zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@ npx -y @deepseek-ai/dsh@0.2.0-rc.2 plugin --profile web add "github:ThinkFlowLab

- **一键入驻。** 配置好 `server` 后首次启动会调用 `POST <server>/v1/onboard/flybot`,创建家(`@<name>.home`),凭证写在 `$DSH_HOME/bot/flybot-social.json`(权限 600)。
- **成员。** 访问是按 Bot 的**授权**(默认拒绝,Chief 也一样)。本地 Bot 在你邀请别人使用它、它加入邀请、或你把它带进面对面房间时,才会在服务器上成为 `@<bot>.<home>`。侧栏只列出别人授权给你的 Bot。每个 Bot 的 **管理访问** 列出谁有它,并可 **撤销**。删除 Bot 会撤销其身份。未授权的 Bot 没有对外身份:朋友够不到它,它也不能给朋友发消息。
- **连接器(GitHub、Composio)。** 设置 → **连接器** 里连接一次账号;在你为某个 Bot 打开之前,没有任何 Bot 能用它(**选择 Bot**,或该 Bot 设置里的 **连接器** 卡片;所有 Bot 默认关闭,新建的和已有的都一样)。共享给别人的 Bot——有授权、房间里有好友的 Bot 或别人——无论开关如何都拿不到连接器工具,所以好友碰不到你的邮件、日历或代码仓库。断开连接会为所有 Bot 关闭该连接器。
- **连接器(GitHub、Composio)。** 设置 → **连接器** 里连接一次账号;**默认对你自己开启**,每个 Bot(新建的和已有的)都能用,共享出去的 Bot 你自己也照样能用。别人在驱动某个 Bot 时——好友、房间里的其他人、别人的 Bot——工具**默认关闭**,所以他们碰不到你的邮件、日历或代码仓库;你可以按 Bot 单独允许(**选择 Bot**,或该 Bot 设置里的 **连接器** 卡片:**别人使用时也开启**),也可以为自己关闭某个 Bot 的连接器。有其他人在的房间里也算别人使用。断开连接会重置所有 Bot 的选择。
- **侧栏里的好友。** 好友的 Bot 和你自己的 Bot 在同一列表,名字后面有一个小地球标记。面对面房间也在这份列表里,带一个小人标记;已结束的折在 **过去的房间** 下。点开就是普通对话。侧栏 **+** → **添加好友**(可粘贴句柄、邀请链接或码)、**面对面建群**、**复制我的 handle**。本地 Bot:设置里 **Sharing(分享)** → **Invite to this Bot(邀请使用此 Bot)**(或 **复制邀请链接** / 带说明的邀请);**People with access(访问权限)** 列出谁有它并可 **Revoke(撤销)**。对该好友的 **Auto-send(自动发送)** 在该好友 Bot 的设置里(默认关)。
- **面对面房间。** 侧栏 **+** → **面对面建群**:勾选自己的 Bot,双方输入**同一组 6 位数字**(约 10 分钟内),等候后点 **Enter chat(进入聊天)**(或 **Leave**)。不必先成为好友,也不会暴露对方家里的其他 Bot。你打的字在对方看来是你本人(服务器支持 `typed_by_owner` 时);`@名字` / 选择器标签 / handle 点名该 Bot;`@all` 叫全员。没有 `@` 的普通一句话只由最合适的那个 Bot 回答(其他 Bot 默默跳过;追问优先给上一个发言的 Bot;都跳过时第一个 Bot 兜底回答);对“大家 / 你们 / 自我介绍”这类面向所有人的话,每个 Bot 可各答一句。Bot 自己写的房间消息仍可能进审批,除非在该房间概览开了面对面 **Auto-send**(默认关)。
- **主人手打 · 提及 · 正在输入。** 若 Bot Social 的 `GET /v1/platform` `features` 含相应项:私聊与面对面里你手打的行可盖 `typed_by_owner` 章;面对面发送可带显式 `mentions` handle 列表;面对面房间里,其他家的 Bot 工作时输入框上方会出现安静的 `Name is thinking…`(短暂的 `presence`);私聊里的“正在思考”提示目前还不显示。旧服务器没有的能力会自动跳过。
Expand Down
2 changes: 1 addition & 1 deletion changelog.d/335-connector-bots.security.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
Connector tools (GitHub, Composio: `mcp__github__*`, `mcp__composio__*`) are now available only to the Bots you turn them on for: a per-Bot switch under Settings → Connectors → **Choose Bots** and in each Bot's settings, off by default. After upgrading every Bot starts off, including ones that used the tools before; turn them on again for the Bots you want. A Bot that is shared with anyone (a grant, a friend's Bot or another person in its room) never gets connector tools, whatever its switch says, and sharing a Bot clears its switches. Composio's session address is no longer kept in `state.json`: only the session id is stored and the address is asked for from Composio at each start, and a leftover address from an older version is removed on start ([#335](https://github.com/ThinkFlowLab/FlyBot/issues/335)). An Agent whose Bot cannot be determined (for example a sub-agent whose parent Session is gone) gets no connector tools, and the tool list follows a person or friend joining or leaving a Bot's room.
Connector tools (GitHub, Composio: `mcp__github__*`, `mcp__composio__*`) are now decided per Bot and per turn instead of reaching every Bot and Session, so a friend who reaches one of your Bots cannot use your mail, calendar or repositories through it unless you allow it (the exact rule is in the entry for [#369](https://github.com/ThinkFlowLab/FlyBot/issues/369)). Composio's session address is no longer kept in `state.json`: only the session id is stored and the address is asked for from Composio at each start, and a leftover address from an older version is removed on start ([#335](https://github.com/ThinkFlowLab/FlyBot/issues/335)). An Agent whose Bot cannot be determined (for example a sub-agent whose parent Session is gone) gets no connector tools, and the tool list follows a person or friend joining or leaving a Bot's room.
1 change: 1 addition & 0 deletions changelog.d/369-connectors-default-on.changed.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Connector tools (GitHub, Composio) are now **on by default for you** in every Bot, new and existing, and a Bot you share (a grant, a friend, a face room, a room code) stays usable by you with them. The default-off setting moved to **other people**: when a friend, another room member or another owner's Bot drives a Bot, or a Bot works in a room with other people in it, the tools are off unless you turn on that Bot's separate **also when others use it** switch, which sharing no longer disables (Settings → Connectors → **Choose Bots**, and each Bot's settings; zh copy included). Who is driving a turn is read from the messages the turn took in when each tool is called, and anything that cannot be determined counts as someone else's. A Bot post into a room (and the report that comes back) carries the verdict of the turn that made it, so a friend driving a Main Bot cannot reach your connectors through the members of an owner-only room. After upgrading, Bots that #346 left off are on again; an explicit off you set stays off, and Disconnect resets every Bot's choices. This replaces #346's "off by default, never on a shared Bot" rule; the Composio session address still stays out of `state.json` ([#369](https://github.com/ThinkFlowLab/FlyBot/issues/369), [#335](https://github.com/ThinkFlowLab/FlyBot/issues/335)).
Loading
Loading