Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.
Team is where a Company manages its people and its agents together. One roster lists both, each person holds a role that decides what they may do, and each person and agent has a reporting line that decides whom they may hand work to.Open Team in the sidebar. The header reads “People and agents in” your company name, with an Invite button on the right for anyone holding the Manage members permission.
Tab
What it is for
Who sees it
Members
The roster of people and agents, their roles and reporting lines, and pending invitations.
Everyone
Roles & permissions
The built-in and custom roles, and the permissions each one holds.
Holders of Manage roles
Groups
Reusable sets of people, used to grant access to an agent.
Everyone; only managers get the buttons
Org chart
A read-only picture of the whole reporting tree.
Everyone
While a new Company is still being set up, the Team entry is disabled. It becomes available once setup finishes.
The Members tab shows one card with two sections. People lists every teammate with their avatar, name (your own row is marked “(you)”) and email address. Agents lists every agent with its avatar, name, its AI client, and a Head Agent tag on your lead agent.
The Members tab: people with their Role and Reports to selectors, then the agents.
What you can change on a row depends on your permissions:
Without Manage members you see a read-only role badge next to each person.
With Manage members each person’s row carries a Role dropdown, a Reports to dropdown and a trash icon (Remove member). On mobile the row shows the role badge plus a Manage member menu holding the same three actions.
With Manage agents each agent’s row carries its own Reports to dropdown.
Go to Team → Members. You need the Manage members permission.
2
Pick the new role
On desktop, choose it in the Role dropdown on that person’s row. On mobile, tap Manage member and choose under Role.
3
Check the confirmation
The toast Role updated appears and the badge changes straight away.
A Company must always keep at least one Admin. The last Admin cannot be demoted (“There must be at least one Company Admin.”), and nobody can change their own role — ask another Admin. You can also only hand out roles whose permissions you hold yourself: otherwise you see “You can’t assign a role with permissions you don’t hold.”
On a person’s row use Reports to (or Manage member → Reports to on mobile). On an agent’s row use its Reports to dropdown, which needs Manage agents.
2
Choose a manager
The list offers No manager at the top, then a People section and an Agents section. Either kind can be a manager.
3
Confirm
The toast Reporting line updated appears and the Org chart redraws.
Everyone has at most one manager. Nobody can report to themselves, and a choice that would fold the tree back on itself is refused with “that would create a reporting loop”. An agent’s manager can also be set on the Hire agent form or on the agent’s Config tab; see Agents.
Click the trash icon on the person’s row, or Manage member → Remove from company on mobile.
2
Confirm
The toast Member removed appears and the row disappears.
You cannot remove yourself, and the last Admin cannot be removed. Anyone who reported to the person you removed keeps no manager and moves to the top level of the Org chart, so check those rows afterwards. There is no self-service way to leave a Company — ask an admin to remove you.
Invitations are locked to one email address, work once, and expire 7 days after they are created.
1
Open the invite dialog
On the Team page click Invite (top right). You need the Manage members permission.
2
Fill in the details
In Invite a teammate, type the Recipient email and pick a Role. The dropdown lists every role in your Company — the built-in ones and any custom roles — and starts on Member.
3
Send it
Click Send invitation. You see the toast Invitation sent to that address, a green note reading “An invitation email is on its way … The link below is the same invitation, if you’d rather send it yourself.”, and an Invite link field with a copy button.
4
Invite the next person, or close
Click Create another to send another invitation without leaving the dialog.
The invitee gets an email titled “invited you to join” your company. Opening it — or the link you copied — takes them to an invitation page:
Signed out: they are sent to sign up first and brought back afterwards. They must use the exact address the invitation was sent to. See Getting started.
Signed in: they see “You’ve been invited to join” your company, a line naming who invited them and as which role, and a Join button.
Link no longer good: “This invite is no longer valid — The link may have expired, been revoked, or already been used. Ask an admin for a new one.”
Only the invited address can accept. Signing in with a different account fails with “this invite was sent to a different email address”. If the email cannot be delivered, the dialog says so and asks you to copy the link and send it yourself. Sending a second invitation to the same person is fine — revoke the first, or leave it to expire.
Once something is outstanding, a Pending invites card appears below the roster for managers, described as “Links that have been created but not yet accepted.”
1
Find the invitation
Go to Team → Members and scroll to Pending invites. Each row shows the email address, the role, and when it expires.
2
Revoke it
Click Revoke. The toast Invite revoked appears and the link stops working immediately.
There is no resend — send a fresh invitation instead. Accepted and expired invitations drop off the list on their own.
Your plan caps how many people a Company can hold: 10 on Starter and 20 on Growth. Past the cap, accepting an invitation fails with “This plan allows up to N users across the company. Upgrade or add an add-on to add more.” Make room or upgrade first — see Billing and subscriptions.
A role is a named set of permissions. Every person holds exactly one. Three roles ship with every Company, and Admins can add their own.
Role
What it holds
Admin
Every permission, always. Whoever creates the Company is its first Admin. The role is locked and cannot be edited.
Manager
Manage members, Manage agents, Decide approvals, Manage integrations, Delete tasks, Assign tasks to peers and View activity log. Not Manage company, Manage billing or Manage roles.
Member
No gated permissions. The default for invitations.
Member is not a read-only role. Everyone in a Company can open it and all of its projects, create and work on tasks, chat with agents, read reports, and view the roster, groups and Org chart. Permissions gate the actions listed below, nothing else.
There is no owner role and no ownership transfer. To hand a Company over, promote the other person to Admin and have an Admin change or remove your role.
Assigning work sideways, to people and agents at your own level.
Operations
View activity log
Reading the company Activity feed.
Every permission is enforced by Visibility itself, not just hidden in the interface. Creating projects and tasks, running SEO checks and chatting with agents have no permission switch — they are open to every member.
Go to Team → Roles & permissions. You need Manage roles, which the Admin role holds by default.
2
Start a new role
Click New role.
3
Name it and pick its permissions
Type a Role name of up to 60 characters, such as Content Manager, and tick the permissions it should hold from the Company, Members, Agents and Operations groups.
4
Create it
Click Create role. The toast Role created appears and the role becomes available in the invite and role dropdowns.
A custom role replaces the built-in one rather than adding to it. A role with nothing ticked behaves exactly like Member.
You can only grant permissions you hold yourself. Ticking something outside your own set is refused with “You can only grant permissions you hold yourself.”
Each row shows the role name, a System badge on Admin, Manager and Member, and either “All permissions” (Admin) or a count of permissions and members.
1
Edit
Click Edit on the role, rename it or change its ticks, then click Save changes. The toast reads Role updated.
2
Delete a custom role
Click the trash icon on the row. The toast reads Role deleted, and everyone who held it becomes a Member.
Admin shows a lock icon and cannot be edited at all. Manager and Member can be renamed and re-permissioned, but not deleted (“system roles can’t be deleted”).
A group is a reusable, named set of people. Groups carry no permissions — that is what roles are for. Their job is to be picked in an agent’s access list, so several people gain the right to assign that agent in one move.
1
Create the group
Go to Team → Groups and click New group (needs Manage members). Give it a Name of up to 60 characters, such as SEO team, an optional Description of up to 500 characters, and pick its Members with the searchable Pick people… field. Click Create group.
2
Give it access to an agent
Open the agent, go to its Config tab and find Who can assign this agent — or use the Allowed users field while hiring. Pick the group under the Groups section; the change saves itself.
3
Keep it current
Edit the group’s members whenever the team changes. Everyone added or removed gains or loses the ability to assign that agent immediately.
Each row on the Groups tab shows the group’s name, a badge counting the agents that grant access through it, its member count and description, an Edit button and a delete icon. Before there are any, the tab reads “No groups yet. Create one to grant a few people access to the same agents.”
Groups hold people only — never agents — and a group cannot be a task assignee. Names must be unique within the Company. Deleting a group that agents rely on warns you first: “N agents give access through this group — that access will be removed.”
Permissions decide what you may do. The reporting line decides whom you may hand work to.
You can always assign tasks and projects to yourself and to everyone below you in the Org chart, people and agents, however many levels down.
With Assign tasks to peers you can also assign sideways, to people and agents at your own level.
With Manage company you can assign to anyone in the Company.
An agent that lists you — or a group you belong to — under Who can assign this agent is assignable whatever the hierarchy says. Leaving that list empty means hierarchy only.
Outside that scope, assignment is refused with “you can only assign tasks to yourself, your reports, or your peers”, or “you can only assign tasks to agents on your team or ones you’ve been given access to”. Everyone can still see every agent and its runs; the scope only limits who may give it work.
There is no per-project membership in Visibility. Every member of a Company can open every Project. Assign people & agents on a project records who is responsible for it and grants agents access to it — it does not hide the project from anyone. See Projects.
The Org chart tab draws your Company as one tree: the company card at the root, with a count of people and agents, and then everyone under whoever they report to. Anybody with no manager hangs directly under the company card.
The Org chart: people and agents in a single tree, with zoom controls and the status legend.
1
Move around
Drag the canvas to pan and scroll to zoom, or use +, − and Fit at the top right.
2
Find someone
Click the search icon at the top left and type a name. The first match is highlighted and centred, a counter such as “1/3” shows how many matched, Enter and Shift+Enter (or the arrows) step through them, and Esc closes the search.
3
Open an agent
Click an agent card to go to its page. Person cards are not clickable.
Agent cards show a crown on the Head Agent, the AI client the agent runs on, and its status — green for active or running, amber for paused. The legend at the bottom repeats this. Agents you have terminated are not drawn.
The chart is read-only. To change a reporting line, go back to the Members tab and use the Reports to dropdown on the row you want to move.
Activity in the main sidebar is the company’s audit trail: every action taken by a person, an agent or the platform itself, newest first. It needs the View activity log permission, and like Team and Billing the link stays disabled until the company has finished onboarding.Each line reads the same way — who did it, what they did, and what they did it to:
Nora Bell created task DOA-24 2h agoKeyword Research completed run DOA-19 3h agoSystem retired finding opportunity yesterday
Tasks are shown by their identifier, so you can search the same code in Tasks to find the thing being described. An agent that has since been deleted still shows the name it had at the time rather than disappearing from its own history.
Four tabs sit above the list: All, People, Agents and System. Agents is the one to reach for when you want to know what your agents did while you were away, and System shows platform actions nobody triggered by hand — scheduled checks, retired findings, automatic status changes.The feed loads the most recent 100 entries and Load more adds another 100, to a ceiling of 500.
The tabs filter the entries that have already loaded, not the whole history. If a tab looks emptier than you expect, load more before concluding nothing happened — the 100 most recent entries may simply all belong to somebody else.
An empty company reads No activity yet.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Visibility Docs","colors":{"primary":"#171717","light":"#e5e5e5","dark":"#0a0a0a"},"logo":{"light":"https://mintcdn.com/doableteam-a944c448/yZxfxMRqwidNc6fj/logo/light.png?fit=max\u0026auto=format\u0026n=yZxfxMRqwidNc6fj\u0026q=85\u0026s=e1fd35ed3273f515f71eeea2dadf78bc","dark":"https://mintcdn.com/doableteam-a944c448/rtDno5BzOkv5Z5j1/logo/dark.png?fit=max\u0026auto=format\u0026n=rtDno5BzOkv5Z5j1\u0026q=85\u0026s=b596ae0dadfdf638afa6e7647926f980"},"favicon":"https://mintcdn.com/doableteam-a944c448/zTMBed2Ps_Y8Loxi/favicon2.png?fit=max\u0026auto=format\u0026n=zTMBed2Ps_Y8Loxi\u0026q=85\u0026s=ee604d5930191a7b8e1e524f7bfa06a5","footer":{"socials":{},"links":[{"header":"Product","items":[{"label":"Open Visibility","href":"https://app.visibility.so"},{"label":"Status","href":"https://status.visibility.so"}]}]},"icons":{"library":"fontawesome"},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"doableteam-a944c448","hasAudioNarration":false,"actualSubdomain":"doableteam-a944c448","customDomains":["docs.visibility.so"],"gitSource":{"type":"github","owner":"muhammedilyasy","repo":"visibility-docs","deployBranch":"main","isPrivate":true,"contentDirectory":"","mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aa1001aa24ff9286dbd94f6","collectionId":"c6362ac3-9167-4500-94f6-a10bb4528c5f","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aa1001aa24ff9286dbd94f6"},"entitlements":{},"buildId":"6aa1001aa24ff9286dbd94f6","clientVersion":"0.0.3908","searchFilterCounts":[{"language":"default","tag":"Documentation","count":22},{"language":"default","tag":"Projects \u0026 SEO","count":9},{"language":"default","tag":"Agents \u0026 work","count":4},{"language":"default","tag":"Team \u0026 company","count":3},{"language":"default","tag":"Getting started","count":3},{"language":"default","tag":"Billing","count":2},{"language":"default","tag":"Changelog","count":1},{"language":"default","tag":"Updates","count":1},{"language":"default","tag":"FAQ","count":1},{"language":"default","tag":"Help","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-branches-v2-autocommit","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-branches-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"teamspace","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"client-snapshot-docs-config","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[{"filePath":"index.css","content":":root{--background:#ffffff!important;--primary:#1a1918!important;--primary-light:#444444!important;--text-main:#1a1918!important;--text-muted:#6b7280!important;--border-color:#e5e7eb!important;--card-bg:#ffffff!important;--sidebar-bg:#fafafa!important}.dark{--background:#1a1918!important;--primary:#ffffff!important;--primary-light:#eeeeee!important;--text-main:#ffffff!important;--text-muted:#9ca3af!important;--border-color:#333333!important;--card-bg:#242322!important;--sidebar-bg:#111111!important}body{background-color:var(--background)!important}#sidebar-content,.sidebar-container{background-color:var(--sidebar-bg)!important}.logo,.logo img,a[href*=\"visibility.so\"] img,a[href=\"/\"] img,header img,nav img{height:38px!important;max-height:38px!important;width:auto!important}body,h1,h2,h3,h4,h5,h6{color:var(--text-main)!important}a{color:var(--primary)!important;text-decoration-color:var(--border-color)!important}.card,div[class*=Card]{background-color:var(--card-bg)!important;border:1px solid var(--border-color)!important}.card:hover,div[class*=Card]:hover{border-color:var(--primary)!important}code,pre{border-color:var(--border-color)!important}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--background)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-light);border-radius:4px}#header-tabs-container .header-tab,.header-tab,nav[class*=HeaderTabs] a{font-weight:500!important;font-size:.95rem!important;padding:8px 16px!important;transition:all .25s cubic-bezier(.4,0,.2,1)!important;border-bottom:2px solid transparent!important;color:var(--text-muted)!important}#header-tabs-container .header-tab:hover,.header-tab:hover,nav[class*=HeaderTabs] a:hover{color:var(--primary)!important;opacity:1!important}#header-tabs-container .header-tab::after,.header-tab::after,.nav-tabs-item::after,.nav-tabs-item>div{display:none!important;content:none!important}.nav-tabs-item{position:relative!important;padding-bottom:0!important}.header-tab-active,.nav-tabs-item[class*=\"dark:text-gray-200\"],.nav-tabs-item[class*=text-gray-800]{color:var(--primary)!important;font-weight:600!important}.header-tab svg,.nav-tabs-item svg,nav[class*=HeaderTabs] a svg{margin-right:8px!important;width:16px!important;height:16px!important;display:inline-block!important;vertical-align:middle!important}"}],"page":{"pagePath":"team-management","slug":"/team-management","pageMetadata":{"title":"Team management","description":"Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.","href":"/team-management"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Frame,Heading,Note,OptimizedImage,Step,Steps,Table,Tip,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Frame)_missingMdxReference(`Frame`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Note)_missingMdxReference(`Note`,true);if(!OptimizedImage)_missingMdxReference(`OptimizedImage`,true);if(!Step)_missingMdxReference(`Step`,true);if(!Steps)_missingMdxReference(`Steps`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Team`}),` is where a Company manages its people and its agents together. One roster lists both, each person holds a role that decides what they may do, and each person and agent has a reporting line that decides whom they may hand work to.`]}),`\n`,_jsxs(_components.p,{children:[`Open `,_jsx(_components.strong,{children:`Team`}),` in the sidebar. The header reads “People and agents in” your company name, with an `,_jsx(_components.strong,{children:`Invite`}),` button on the right for anyone holding the `,_jsx(_components.strong,{children:`Manage members`}),` permission.`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Tab`}),_jsx(_components.th,{children:`What it is for`}),_jsx(_components.th,{children:`Who sees it`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Members`})}),_jsx(_components.td,{children:`The roster of people and agents, their roles and reporting lines, and pending invitations.`}),_jsx(_components.td,{children:`Everyone`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Roles \u0026 permissions`})}),_jsx(_components.td,{children:`The built-in and custom roles, and the permissions each one holds.`}),_jsxs(_components.td,{children:[`Holders of `,_jsx(_components.strong,{children:`Manage roles`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Groups`})}),_jsx(_components.td,{children:`Reusable sets of people, used to grant access to an agent.`}),_jsx(_components.td,{children:`Everyone; only managers get the buttons`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Org chart`})}),_jsx(_components.td,{children:`A read-only picture of the whole reporting tree.`}),_jsx(_components.td,{children:`Everyone`})]})]})]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`While a new Company is still being set up, the `,_jsx(_components.strong,{children:`Team`}),` entry is disabled. It becomes available once setup finishes.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`members`,children:`Members`}),`\n`,_jsxs(_components.p,{children:[`The Members tab shows one card with two sections. `,_jsx(_components.strong,{children:`People`}),` lists every teammate with their avatar, name (your own row is marked “(you)”) and email address. `,_jsx(_components.strong,{children:`Agents`}),` lists every agent with its avatar, name, its AI client, and a `,_jsx(_components.strong,{children:`Head Agent`}),` tag on your lead agent.`]}),`\n`,_jsx(Frame,{caption:`The Members tab: people with their Role and Reports to selectors, then the agents.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-members.jpg?fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=5e4c4a74ab2b6850165831e818a4d549`,alt:`The Team page Members tab showing the People and Agents sections with role and reporting controls`,\"data-og-width\":`1568`,width:`1568`,\"data-og-height\":`782`,height:`782`,\"data-path\":`images/team-members.jpg`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-members.jpg?w=280\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=b12b1ed495e49e06676df777e517062b 280w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-members.jpg?w=560\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=c68e86f9c34cb5d30be43fbf7d5008d3 560w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-members.jpg?w=840\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=3e97d0a07af2bead37ecdf1f6af6e107 840w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-members.jpg?w=1100\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=cdf15e9952a3404d8ea72354816153b5 1100w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-members.jpg?w=1650\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=be5a69ea481f74f7c9c4c7ad0a1a5650 1650w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-members.jpg?w=2500\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=7de2c6ff86d0108b7ca1e275ba8f6270 2500w`})}),`\n`,_jsx(_components.p,{children:`What you can change on a row depends on your permissions:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Without `,_jsx(_components.strong,{children:`Manage members`}),` you see a read-only role badge next to each person.`]}),`\n`,_jsxs(_components.li,{children:[`With `,_jsx(_components.strong,{children:`Manage members`}),` each person’s row carries a `,_jsx(_components.strong,{children:`Role`}),` dropdown, a `,_jsx(_components.strong,{children:`Reports to`}),` dropdown and a trash icon (`,_jsx(_components.strong,{children:`Remove member`}),`). On mobile the row shows the role badge plus a `,_jsx(_components.strong,{children:`Manage member`}),` menu holding the same three actions.`]}),`\n`,_jsxs(_components.li,{children:[`With `,_jsx(_components.strong,{children:`Manage agents`}),` each agent’s row carries its own `,_jsx(_components.strong,{children:`Reports to`}),` dropdown.`]}),`\n`]}),`\n`,_jsx(Heading,{level:`3`,id:`change-someone’s-role`,children:`Change someone’s role`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open the Members tab`,children:_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Team`}),` → `,_jsx(_components.strong,{children:`Members`}),`. You need the `,_jsx(_components.strong,{children:`Manage members`}),` permission.`]})}),_jsx(Step,{title:`Pick the new role`,children:_jsxs(_components.p,{children:[`On desktop, choose it in the `,_jsx(_components.strong,{children:`Role`}),` dropdown on that person’s row. On mobile, tap `,_jsx(_components.strong,{children:`Manage member`}),` and choose under `,_jsx(_components.strong,{children:`Role`}),`.`]})}),_jsx(Step,{title:`Check the confirmation`,children:_jsxs(_components.p,{children:[`The toast `,_jsx(_components.strong,{children:`Role updated`}),` appears and the badge changes straight away.`]})})]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`A Company must always keep at least one Admin. The last Admin cannot be demoted (“There must be at least one Company Admin.”), and nobody can change their own role — ask another Admin. You can also only hand out roles whose permissions you hold yourself: otherwise you see “You can’t assign a role with permissions you don’t hold.”`})}),`\n`,_jsx(Heading,{level:`3`,id:`set-who-someone-reports-to`,children:`Set who someone reports to`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open the Reports to dropdown`,children:_jsxs(_components.p,{children:[`On a person’s row use `,_jsx(_components.strong,{children:`Reports to`}),` (or `,_jsx(_components.strong,{children:`Manage member`}),` → `,_jsx(_components.strong,{children:`Reports to`}),` on mobile). On an agent’s row use its `,_jsx(_components.strong,{children:`Reports to`}),` dropdown, which needs `,_jsx(_components.strong,{children:`Manage agents`}),`.`]})}),_jsx(Step,{title:`Choose a manager`,children:_jsxs(_components.p,{children:[`The list offers `,_jsx(_components.strong,{children:`No manager`}),` at the top, then a `,_jsx(_components.strong,{children:`People`}),` section and an `,_jsx(_components.strong,{children:`Agents`}),` section. Either kind can be a manager.`]})}),_jsx(Step,{title:`Confirm`,children:_jsxs(_components.p,{children:[`The toast `,_jsx(_components.strong,{children:`Reporting line updated`}),` appears and the Org chart redraws.`]})})]}),`\n`,_jsxs(_components.p,{children:[`Everyone has at most one manager. Nobody can report to themselves, and a choice that would fold the tree back on itself is refused with “that would create a reporting loop”. An agent’s manager can also be set on the `,_jsx(_components.strong,{children:`Hire agent`}),` form or on the agent’s `,_jsx(_components.strong,{children:`Config`}),` tab; see `,_jsx(_components.a,{href:`/agents`,children:`Agents`}),`.`]}),`\n`,_jsx(Heading,{level:`3`,id:`remove-a-member`,children:`Remove a member`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Start the removal`,children:_jsxs(_components.p,{children:[`Click the trash icon on the person’s row, or `,_jsx(_components.strong,{children:`Manage member`}),` → `,_jsx(_components.strong,{children:`Remove from company`}),` on mobile.`]})}),_jsx(Step,{title:`Confirm`,children:_jsxs(_components.p,{children:[`The toast `,_jsx(_components.strong,{children:`Member removed`}),` appears and the row disappears.`]})})]}),`\n`,_jsx(_components.p,{children:`You cannot remove yourself, and the last Admin cannot be removed. Anyone who reported to the person you removed keeps no manager and moves to the top level of the Org chart, so check those rows afterwards. There is no self-service way to leave a Company — ask an admin to remove you.`}),`\n`,_jsx(Heading,{level:`2`,id:`inviting-teammates`,children:`Inviting teammates`}),`\n`,_jsxs(_components.p,{children:[`Invitations are locked to one email address, work once, and expire `,_jsx(_components.strong,{children:`7 days`}),` after they are created.`]}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open the invite dialog`,children:_jsxs(_components.p,{children:[`On the `,_jsx(_components.strong,{children:`Team`}),` page click `,_jsx(_components.strong,{children:`Invite`}),` (top right). You need the `,_jsx(_components.strong,{children:`Manage members`}),` permission.`]})}),_jsx(Step,{title:`Fill in the details`,children:_jsxs(_components.p,{children:[`In `,_jsx(_components.strong,{children:`Invite a teammate`}),`, type the `,_jsx(_components.strong,{children:`Recipient email`}),` and pick a `,_jsx(_components.strong,{children:`Role`}),`. The dropdown lists every role in your Company — the built-in ones and any custom roles — and starts on `,_jsx(_components.strong,{children:`Member`}),`.`]})}),_jsx(Step,{title:`Send it`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Send invitation`}),`. You see the toast `,_jsx(_components.strong,{children:`Invitation sent to`}),` that address, a green note reading “An invitation email is on its way … The link below is the same invitation, if you’d rather send it yourself.”, and an `,_jsx(_components.strong,{children:`Invite link`}),` field with a copy button.`]})}),_jsx(Step,{title:`Invite the next person, or close`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Create another`}),` to send another invitation without leaving the dialog.`]})})]}),`\n`,_jsx(_components.p,{children:`The invitee gets an email titled “invited you to join” your company. Opening it — or the link you copied — takes them to an invitation page:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Signed out:`}),` they are sent to sign up first and brought back afterwards. They must use the exact address the invitation was sent to. See `,_jsx(_components.a,{href:`/getting-started`,children:`Getting started`}),`.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Signed in:`}),` they see “You’ve been invited to join” your company, a line naming who invited them and as which role, and a `,_jsx(_components.strong,{children:`Join`}),` button.`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Link no longer good:`}),` “This invite is no longer valid — The link may have expired, been revoked, or already been used. Ask an admin for a new one.”`]}),`\n`]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`Only the invited address can accept. Signing in with a different account fails with “this invite was sent to a different email address”. If the email cannot be delivered, the dialog says so and asks you to copy the link and send it yourself. Sending a second invitation to the same person is fine — revoke the first, or leave it to expire.`})}),`\n`,_jsx(Heading,{level:`3`,id:`pending-invites-and-revoking`,children:`Pending invites and revoking`}),`\n`,_jsxs(_components.p,{children:[`Once something is outstanding, a `,_jsx(_components.strong,{children:`Pending invites`}),` card appears below the roster for managers, described as “Links that have been created but not yet accepted.”`]}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Find the invitation`,children:_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Team`}),` → `,_jsx(_components.strong,{children:`Members`}),` and scroll to `,_jsx(_components.strong,{children:`Pending invites`}),`. Each row shows the email address, the role, and when it expires.`]})}),_jsx(Step,{title:`Revoke it`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Revoke`}),`. The toast `,_jsx(_components.strong,{children:`Invite revoked`}),` appears and the link stops working immediately.`]})})]}),`\n`,_jsx(_components.p,{children:`There is no resend — send a fresh invitation instead. Accepted and expired invitations drop off the list on their own.`}),`\n`,_jsx(Warning,{children:_jsxs(_components.p,{children:[`Your plan caps how many people a Company can hold: `,_jsx(_components.strong,{children:`10 on Starter`}),` and `,_jsx(_components.strong,{children:`20 on Growth`}),`. Past the cap, accepting an invitation fails with “This plan allows up to N users across the company. Upgrade or add an add-on to add more.” Make room or upgrade first — see `,_jsx(_components.a,{href:`/billing-and-subscriptions`,children:`Billing and subscriptions`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`roles-and-permissions`,children:`Roles and permissions`}),`\n`,_jsx(_components.p,{children:`A role is a named set of permissions. Every person holds exactly one. Three roles ship with every Company, and Admins can add their own.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Role`}),_jsx(_components.th,{children:`What it holds`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Admin`})}),_jsx(_components.td,{children:`Every permission, always. Whoever creates the Company is its first Admin. The role is locked and cannot be edited.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Manager`})}),_jsxs(_components.td,{children:[_jsx(_components.strong,{children:`Manage members`}),`, `,_jsx(_components.strong,{children:`Manage agents`}),`, `,_jsx(_components.strong,{children:`Decide approvals`}),`, `,_jsx(_components.strong,{children:`Manage integrations`}),`, `,_jsx(_components.strong,{children:`Delete tasks`}),`, `,_jsx(_components.strong,{children:`Assign tasks to peers`}),` and `,_jsx(_components.strong,{children:`View activity log`}),`. Not `,_jsx(_components.strong,{children:`Manage company`}),`, `,_jsx(_components.strong,{children:`Manage billing`}),` or `,_jsx(_components.strong,{children:`Manage roles`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.strong,{children:`Member`})}),_jsx(_components.td,{children:`No gated permissions. The default for invitations.`})]})]})]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Member`}),` is not a read-only role. Everyone in a Company can open it and all of its projects, create and work on tasks, chat with agents, read reports, and view the roster, groups and Org chart. Permissions gate the actions listed below, nothing else.`]}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`There is no owner role and no ownership transfer. To hand a Company over, promote the other person to `,_jsx(_components.strong,{children:`Admin`}),` and have an Admin change or remove your role.`]})}),`\n`,_jsx(Heading,{level:`3`,id:`the-permission-matrix`,children:`The permission matrix`}),`\n`,_jsx(_components.p,{children:`Ten permissions exist, shown in four groups in the role editor.`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Group`}),_jsx(_components.th,{children:`Permission`}),_jsx(_components.th,{children:`What it unlocks`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Company`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Manage company`})}),_jsxs(_components.td,{children:[`The `,_jsx(_components.strong,{children:`Company settings`}),` sidebar entry and everything in it. See `,_jsx(_components.a,{href:`/company-settings`,children:`Company settings`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Company`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Manage billing`})}),_jsxs(_components.td,{children:[`The `,_jsx(_components.strong,{children:`Billing`}),` sidebar entry: plan, payment and top-ups. See `,_jsx(_components.a,{href:`/billing-and-subscriptions`,children:`Billing and subscriptions`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Members`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Manage members`})}),_jsxs(_components.td,{children:[`The `,_jsx(_components.strong,{children:`Invite`}),` button, role changes, reporting lines of people, removals, and the Groups buttons.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Members`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Manage roles`})}),_jsxs(_components.td,{children:[`The `,_jsx(_components.strong,{children:`Roles \u0026 permissions`}),` tab: creating, editing and deleting roles.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Agents`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Manage agents`})}),_jsxs(_components.td,{children:[`Hiring agents, an agent’s config and access, its reporting line and its `,_jsx(_components.strong,{children:`Who can assign this agent`}),` list, and stopping a run. See `,_jsx(_components.a,{href:`/agents`,children:`Agents`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Operations`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Decide approvals`})}),_jsxs(_components.td,{children:[`The `,_jsx(_components.strong,{children:`Approve`}),` and `,_jsx(_components.strong,{children:`Reject`}),` buttons on the Inbox’s Approvals tab. See `,_jsx(_components.a,{href:`/inbox-and-approvals`,children:`Inbox and approvals`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Operations`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Manage integrations`})}),_jsxs(_components.td,{children:[`The connection controls under `,_jsx(_components.strong,{children:`Project settings`}),` → `,_jsx(_components.strong,{children:`Integrations`}),`. See `,_jsx(_components.a,{href:`/integrations`,children:`Integrations`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Operations`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Delete tasks`})}),_jsxs(_components.td,{children:[`Deleting a task. See `,_jsx(_components.a,{href:`/tasks`,children:`Tasks`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Operations`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`Assign tasks to peers`})}),_jsx(_components.td,{children:`Assigning work sideways, to people and agents at your own level.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Operations`}),_jsx(_components.td,{children:_jsx(_components.strong,{children:`View activity log`})}),_jsxs(_components.td,{children:[`Reading the company `,_jsx(_components.strong,{children:`Activity`}),` feed.`]})]})]})]}),`\n`,_jsx(_components.p,{children:`Every permission is enforced by Visibility itself, not just hidden in the interface. Creating projects and tasks, running SEO checks and chatting with agents have no permission switch — they are open to every member.`}),`\n`,_jsx(Heading,{level:`3`,id:`create-a-custom-role`,children:`Create a custom role`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Open the tab`,children:_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Team`}),` → `,_jsx(_components.strong,{children:`Roles \u0026 permissions`}),`. You need `,_jsx(_components.strong,{children:`Manage roles`}),`, which the `,_jsx(_components.strong,{children:`Admin`}),` role holds by default.`]})}),_jsx(Step,{title:`Start a new role`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`New role`}),`.`]})}),_jsx(Step,{title:`Name it and pick its permissions`,children:_jsxs(_components.p,{children:[`Type a `,_jsx(_components.strong,{children:`Role name`}),` of up to 60 characters, such as `,_jsx(_components.code,{children:`Content Manager`}),`, and tick the permissions it should hold from the Company, Members, Agents and Operations groups.`]})}),_jsx(Step,{title:`Create it`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Create role`}),`. The toast `,_jsx(_components.strong,{children:`Role created`}),` appears and the role becomes available in the invite and role dropdowns.`]})})]}),`\n`,_jsxs(_components.p,{children:[`A custom role replaces the built-in one rather than adding to it. A role with nothing ticked behaves exactly like `,_jsx(_components.strong,{children:`Member`}),`.`]}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`You can only grant permissions you hold yourself. Ticking something outside your own set is refused with “You can only grant permissions you hold yourself.”`})}),`\n`,_jsx(Heading,{level:`3`,id:`edit-or-delete-a-role`,children:`Edit or delete a role`}),`\n`,_jsxs(_components.p,{children:[`Each row shows the role name, a `,_jsx(_components.strong,{children:`System`}),` badge on `,_jsx(_components.strong,{children:`Admin`}),`, `,_jsx(_components.strong,{children:`Manager`}),` and `,_jsx(_components.strong,{children:`Member`}),`, and either “All permissions” (Admin) or a count of permissions and members.`]}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Edit`,children:_jsxs(_components.p,{children:[`Click `,_jsx(_components.strong,{children:`Edit`}),` on the role, rename it or change its ticks, then click `,_jsx(_components.strong,{children:`Save changes`}),`. The toast reads `,_jsx(_components.strong,{children:`Role updated`}),`.`]})}),_jsx(Step,{title:`Delete a custom role`,children:_jsxs(_components.p,{children:[`Click the trash icon on the row. The toast reads `,_jsx(_components.strong,{children:`Role deleted`}),`, and everyone who held it becomes a `,_jsx(_components.strong,{children:`Member`}),`.`]})})]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Admin`}),` shows a lock icon and cannot be edited at all. `,_jsx(_components.strong,{children:`Manager`}),` and `,_jsx(_components.strong,{children:`Member`}),` can be renamed and re-permissioned, but not deleted (“system roles can’t be deleted”).`]}),`\n`,_jsx(Heading,{level:`2`,id:`groups`,children:`Groups`}),`\n`,_jsx(_components.p,{children:`A group is a reusable, named set of people. Groups carry no permissions — that is what roles are for. Their job is to be picked in an agent’s access list, so several people gain the right to assign that agent in one move.`}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Create the group`,children:_jsxs(_components.p,{children:[`Go to `,_jsx(_components.strong,{children:`Team`}),` → `,_jsx(_components.strong,{children:`Groups`}),` and click `,_jsx(_components.strong,{children:`New group`}),` (needs `,_jsx(_components.strong,{children:`Manage members`}),`). Give it a `,_jsx(_components.strong,{children:`Name`}),` of up to 60 characters, such as `,_jsx(_components.code,{children:`SEO team`}),`, an optional `,_jsx(_components.strong,{children:`Description`}),` of up to 500 characters, and pick its `,_jsx(_components.strong,{children:`Members`}),` with the searchable `,_jsx(_components.strong,{children:`Pick people…`}),` field. Click `,_jsx(_components.strong,{children:`Create group`}),`.`]})}),_jsx(Step,{title:`Give it access to an agent`,children:_jsxs(_components.p,{children:[`Open the agent, go to its `,_jsx(_components.strong,{children:`Config`}),` tab and find `,_jsx(_components.strong,{children:`Who can assign this agent`}),` — or use the `,_jsx(_components.strong,{children:`Allowed users`}),` field while hiring. Pick the group under the Groups section; the change saves itself.`]})}),_jsx(Step,{title:`Keep it current`,children:_jsx(_components.p,{children:`Edit the group’s members whenever the team changes. Everyone added or removed gains or loses the ability to assign that agent immediately.`})})]}),`\n`,_jsxs(_components.p,{children:[`Each row on the Groups tab shows the group’s name, a badge counting the agents that grant access through it, its member count and description, an `,_jsx(_components.strong,{children:`Edit`}),` button and a delete icon. Before there are any, the tab reads “No groups yet. Create one to grant a few people access to the same agents.”`]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`Groups hold people only — never agents — and a group cannot be a task assignee. Names must be unique within the Company. Deleting a group that agents rely on warns you first: “N agents give access through this group — that access will be removed.”`})}),`\n`,_jsx(Heading,{level:`2`,id:`who-can-assign-work-to-whom`,children:`Who can assign work to whom`}),`\n`,_jsx(_components.p,{children:`Permissions decide what you may do. The reporting line decides whom you may hand work to.`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsx(_components.li,{children:`You can always assign tasks and projects to yourself and to everyone below you in the Org chart, people and agents, however many levels down.`}),`\n`,_jsxs(_components.li,{children:[`With `,_jsx(_components.strong,{children:`Assign tasks to peers`}),` you can also assign sideways, to people and agents at your own level.`]}),`\n`,_jsxs(_components.li,{children:[`With `,_jsx(_components.strong,{children:`Manage company`}),` you can assign to anyone in the Company.`]}),`\n`,_jsxs(_components.li,{children:[`An agent that lists you — or a group you belong to — under `,_jsx(_components.strong,{children:`Who can assign this agent`}),` is assignable whatever the hierarchy says. Leaving that list empty means hierarchy only.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Outside that scope, assignment is refused with “you can only assign tasks to yourself, your reports, or your peers”, or “you can only assign tasks to agents on your team or ones you’ve been given access to”. Everyone can still see every agent and its runs; the scope only limits who may give it work.`}),`\n`,_jsx(Note,{children:_jsxs(_components.p,{children:[`There is no per-project membership in Visibility. Every member of a Company can open every Project. `,_jsx(_components.strong,{children:`Assign people \u0026 agents`}),` on a project records who is responsible for it and grants agents access to it — it does not hide the project from anyone. See `,_jsx(_components.a,{href:`/projects`,children:`Projects`}),`.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`org-chart`,children:`Org chart`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.strong,{children:`Org chart`}),` tab draws your Company as one tree: the company card at the root, with a count of people and agents, and then everyone under whoever they report to. Anybody with no manager hangs directly under the company card.`]}),`\n`,_jsx(Frame,{caption:`The Org chart: people and agents in a single tree, with zoom controls and the status legend.`,children:_jsx(OptimizedImage,{src:`https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-org-chart.jpg?fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=b1d3e976bc6232f1aedeaaa6ab13d956`,alt:`The Org chart tab showing the company root card with people and agents connected by reporting lines`,\"data-og-width\":`1568`,width:`1568`,\"data-og-height\":`782`,height:`782`,\"data-path\":`images/team-org-chart.jpg`,\"data-optimize\":`true`,\"data-opv\":`3`,srcset:`https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-org-chart.jpg?w=280\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=f4097591c3ed14c3ef812c9b3fd909ae 280w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-org-chart.jpg?w=560\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=dbe77f20b94b7f9144349a4b527c4da8 560w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-org-chart.jpg?w=840\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=aa1a1e4af322f27d49e5c9dd1892d41c 840w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-org-chart.jpg?w=1100\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=4f489a2e5fca1613ba5db4cbb699332a 1100w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-org-chart.jpg?w=1650\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=28537910c8f045183473aa0d9719819b 1650w, https://mintcdn.com/doableteam-a944c448/vfpuZshuNSFIBxvy/images/team-org-chart.jpg?w=2500\u0026fit=max\u0026auto=format\u0026n=vfpuZshuNSFIBxvy\u0026q=85\u0026s=11899bb066c73fb8234ae7d140336526 2500w`})}),`\n`,_jsxs(Steps,{children:[_jsx(Step,{title:`Move around`,children:_jsxs(_components.p,{children:[`Drag the canvas to pan and scroll to zoom, or use `,_jsx(_components.strong,{children:`+`}),`, `,_jsx(_components.strong,{children:`−`}),` and `,_jsx(_components.strong,{children:`Fit`}),` at the top right.`]})}),_jsx(Step,{title:`Find someone`,children:_jsx(_components.p,{children:`Click the search icon at the top left and type a name. The first match is highlighted and centred, a counter such as “1/3” shows how many matched, Enter and Shift+Enter (or the arrows) step through them, and Esc closes the search.`})}),_jsx(Step,{title:`Open an agent`,children:_jsx(_components.p,{children:`Click an agent card to go to its page. Person cards are not clickable.`})})]}),`\n`,_jsxs(_components.p,{children:[`Agent cards show a crown on the `,_jsx(_components.a,{href:`/agents`,children:`Head Agent`}),`, the AI client the agent runs on, and its status — green for active or running, amber for paused. The legend at the bottom repeats this. Agents you have terminated are not drawn.`]}),`\n`,_jsx(Tip,{children:_jsxs(_components.p,{children:[`The chart is read-only. To change a reporting line, go back to the `,_jsx(_components.strong,{children:`Members`}),` tab and use the `,_jsx(_components.strong,{children:`Reports to`}),` dropdown on the row you want to move.`]})}),`\n`,_jsx(Heading,{level:`2`,id:`the-activity-feed`,children:`The Activity feed`}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Activity`}),` in the main sidebar is the company’s audit trail: every action taken by a person, an agent or the platform itself, newest first. It needs the `,_jsx(_components.strong,{children:`View activity log`}),` permission, and like Team and Billing the link stays disabled until the company has finished onboarding.`]}),`\n`,_jsx(_components.p,{children:`Each line reads the same way — who did it, what they did, and what they did it to:`}),`\n`,_jsx(CodeBlock,{numberOfLines:`4`,language:`text`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`text`,children:_jsxs(_components.code,{language:`text`,numberOfLines:`4`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Nora Bell created task DOA-24 2h ago`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`Keyword Research completed run DOA-19 3h ago`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{children:`System retired finding opportunity yesterday`})}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{})})]})})}),`\n`,_jsxs(_components.p,{children:[`Tasks are shown by their identifier, so you can search the same code in `,_jsx(_components.a,{href:`/tasks`,children:`Tasks`}),` to find the thing being described. An agent that has since been deleted still shows the name it had at the time rather than disappearing from its own history.`]}),`\n`,_jsx(Heading,{level:`3`,id:`filter-by-who-acted`,children:`Filter by who acted`}),`\n`,_jsxs(_components.p,{children:[`Four tabs sit above the list: `,_jsx(_components.strong,{children:`All`}),`, `,_jsx(_components.strong,{children:`People`}),`, `,_jsx(_components.strong,{children:`Agents`}),` and `,_jsx(_components.strong,{children:`System`}),`. `,_jsx(_components.strong,{children:`Agents`}),` is the one to reach for when you want to know what your agents did while you were away, and `,_jsx(_components.strong,{children:`System`}),` shows platform actions nobody triggered by hand — scheduled checks, retired findings, automatic status changes.`]}),`\n`,_jsxs(_components.p,{children:[`The feed loads the most recent 100 entries and `,_jsx(_components.strong,{children:`Load more`}),` adds another 100, to a ceiling of 500.`]}),`\n`,_jsx(Note,{children:_jsx(_components.p,{children:`The tabs filter the entries that have already loaded, not the whole history. If a tab looks emptier than you expect, load more before concluding nothing happened — the 100 most recent entries may simply all belong to somebody else.`})}),`\n`,_jsxs(_components.p,{children:[`An empty company reads `,_jsx(_components.strong,{children:`No activity yet.`})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Team management","description":"Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.","href":"/team-management"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Members","slug":"members","depth":2,"children":[{"title":"Change someone’s role","slug":"change-someone’s-role","depth":3,"children":[]},{"title":"Set who someone reports to","slug":"set-who-someone-reports-to","depth":3,"children":[]},{"title":"Remove a member","slug":"remove-a-member","depth":3,"children":[]}]},{"title":"Inviting teammates","slug":"inviting-teammates","depth":2,"children":[{"title":"Pending invites and revoking","slug":"pending-invites-and-revoking","depth":3,"children":[]}]},{"title":"Roles and permissions","slug":"roles-and-permissions","depth":2,"children":[{"title":"The permission matrix","slug":"the-permission-matrix","depth":3,"children":[]},{"title":"Create a custom role","slug":"create-a-custom-role","depth":3,"children":[]},{"title":"Edit or delete a role","slug":"edit-or-delete-a-role","depth":3,"children":[]}]},{"title":"Groups","slug":"groups","depth":2,"children":[]},{"title":"Who can assign work to whom","slug":"who-can-assign-work-to-whom","depth":2,"children":[]},{"title":"Org chart","slug":"org-chart","depth":2,"children":[]},{"title":"The Activity feed","slug":"the-activity-feed","depth":2,"children":[{"title":"Filter by who acted","slug":"filter-by-who-acted","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"subdomain":"doableteam-a944c448","siteName":"Visibility Docs","title":"Team management - Visibility Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-09T04:05:59.981Z","originalFileLocation":"team-management.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Visibility Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Team management - Visibility Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Visibility Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.visibility.so/team-management\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Team management - Visibility Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/doableteam-a944c448/ppFUL9WdIUUntbf2/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Visibility Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#171717\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.visibility.so/team-management\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/team-management.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.visibility.so/#organization\",\"name\":\"Visibility Docs\",\"url\":\"https://docs.visibility.so\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/doableteam-a944c448/yZxfxMRqwidNc6fj/logo/light.png?fit=max\u0026auto=format\u0026n=yZxfxMRqwidNc6fj\u0026q=85\u0026s=e1fd35ed3273f515f71eeea2dadf78bc\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.visibility.so#website\",\"name\":\"Visibility Docs\",\"url\":\"https://docs.visibility.so\",\"publisher\":{\"@id\":\"https://docs.visibility.so/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.visibility.so/team-management#webpage\",\"url\":\"https://docs.visibility.so/team-management\",\"name\":\"Team management\",\"description\":\"Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.\",\"dateModified\":\"2026-09-09T04:05:59.981Z\",\"isPartOf\":{\"@id\":\"https://docs.visibility.so#website\"},\"breadcrumb\":{\"@id\":\"https://docs.visibility.so/team-management#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.visibility.so/team-management#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Visibility Docs\",\"item\":\"https://docs.visibility.so\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Team management\",\"item\":\"https://docs.visibility.so/team-management\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://docs.visibility.so/team-management#article\",\"headline\":\"Team management\",\"name\":\"Team management\",\"description\":\"Invite people, set roles and permissions, build groups, and see who reports to whom in the org chart.\",\"url\":\"https://docs.visibility.so/team-management\",\"mainEntityOfPage\":{\"@id\":\"https://docs.visibility.so/team-management#webpage\"},\"dateModified\":\"2026-09-09T04:05:59.981Z\",\"publisher\":{\"@id\":\"https://docs.visibility.so/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.visibility.so#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Visibility Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Visibility Docs","nav":{"global":null,"tabs":[{"tab":"Documentation","icon":"book-open","groups":[{"group":"Getting started","pages":[{"title":"Introduction","href":"/introduction"},{"title":"Getting started","href":"/getting-started"},{"title":"Navigating the app","href":"/navigating-the-app"}]},{"group":"Agents \u0026 work","pages":[{"title":"Agents","href":"/agents"},{"title":"Tasks","href":"/tasks"},{"title":"Chat","href":"/chat"},{"title":"Inbox and approvals","href":"/inbox-and-approvals"}]},{"group":"Projects \u0026 SEO","pages":[{"title":"Projects","href":"/projects"},{"title":"SEO features","href":"/seo-features"},{"title":"Keyword rankings","href":"/keyword-rankings"},{"title":"AI Visibility","href":"/ai-visibility"},{"title":"Organic traffic","href":"/organic-traffic"},{"title":"Opportunities","href":"/opportunities"},{"title":"Custom dashboards","href":"/dashboards"},{"title":"Content and WordPress","href":"/content-and-wordpress"},{"title":"Link building","description":"Run outreach campaigns as activity spreadsheets, import prospects from a file, and let the Backlink Building and SEO Outreach agents fill them in.","href":"/link-building"}]},{"group":"Team \u0026 company","pages":[{"title":"Team management","href":"/team-management"},{"title":"Company settings","description":"Set your company's profile, connect the AI clients and data providers your agents run on, install skills, curate the shared company memory, export or import your data, and archive or delete a company.","href":"/company-settings"},{"title":"Your account","href":"/account"}]},{"group":"Billing","pages":[{"title":"Billing and subscriptions","href":"/billing-and-subscriptions"},{"title":"Credits and BYOK","href":"/credits-and-byok"}]},{"group":"Configuration","pages":[{"title":"Integrations","href":"/integrations"}]}]},{"tab":"Changelog","icon":"megaphone","pages":[{"title":"Changelog","href":"/changelog"}]},{"tab":"FAQ","icon":"circle-question","pages":[{"title":"FAQ","href":"/faq"}]}]},"title":"Team management - Visibility Docs","buildId":"dpl_CUnGQP1HgFUzoxatVC37y4zP83Vx","deploymentId":"dpl_CUnGQP1HgFUzoxatVC37y4zP83Vx","dynamics":["07c022d89b","a74be98ba7"],"chunks":["Frame-BCFzRGe_.js","DynamicMarkdown-BUuAYxJE.js","zoom-image-lightbox-DQ5W4Q2v.js","PlusIcon-jZ8vgk6R.js","lightbox-handle-r17bVUz3.js"]}