fix(desktop): allow adding agents in open channels (#179)

This commit is contained in:
Wes
2026-03-25 11:46:48 -07:00
committed by GitHub
parent 242b43c849
commit 7ec5ebbb9c
2 changed files with 18 additions and 1 deletions
@@ -75,10 +75,12 @@ export function ChannelMembersBar({
members.find(
(member) => normalizePubkey(member.pubkey) === normalizedCurrentPubkey,
) ?? null;
const canManageMembers =
selfMember?.role === "owner" || selfMember?.role === "admin";
const canAddAgents =
channel.channelType !== "dm" &&
channel.archivedAt === null &&
(selfMember?.role === "owner" || selfMember?.role === "admin");
(channel.visibility === "open" || canManageMembers);
const managedAgentPubkeys = React.useMemo(
() => new Set(managedAgents.map((agent) => normalizePubkey(agent.pubkey))),
[managedAgents],
+15
View File
@@ -378,6 +378,21 @@ test("manage channel can invite and remove members", async ({ page }) => {
).toHaveCount(0);
});
test("open-channel members can add agents from the header", async ({
page,
}) => {
await page.goto("/");
await page.getByTestId("channel-random").click();
await expect(page.getByTestId("chat-title")).toHaveText("random");
const addAgentTrigger = page.getByTestId("channel-add-bot-trigger");
await expect(addAgentTrigger).toBeEnabled();
await addAgentTrigger.click();
await expect(page.getByRole("heading", { name: "Add agents" })).toBeVisible();
});
test("open channel management supports join and leave", async ({ page }) => {
await page.goto("/");