Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
45ab0f2
fix(knowledge): simplify connector management (#7788)
waleedlatif1 Sep 11, 2026
8e2623d
fix(search): bound retrieval and progressively read document evidence…
icecrasher321 Sep 11, 2026
29c604d
fix(ci): bake the CLI telemetry token into the build that bun publish…
waleedlatif1 Sep 11, 2026
9d7557a
fix(rss): deliver unseen items published before the last poll (#7792)
TheodoreSpeaks Sep 11, 2026
1d4c004
fix(sidebar): unify navigation menus and stabilize hydration (#7791)
waleedlatif1 Sep 12, 2026
9294beb
fix(search): use compact candidates for filtered vector retrieval (#7…
icecrasher321 Sep 12, 2026
3bdc279
fix(workflows): surface workflow import failures (#7768)
j15z Sep 12, 2026
1a7c827
fix(realtime): compare search replacements independent of object key …
j15z Sep 12, 2026
2799994
fix(desktop): reopen a chat on the browser tab the user left it on (#…
waleedlatif1 Sep 13, 2026
ad11808
fix(sso): require an organization when registering an SSO provider (#…
waleedlatif1 Sep 13, 2026
f75f55a
fix(mcp): always guard the MCP transport and validate on every manage…
waleedlatif1 Sep 13, 2026
ae32a4d
feat(copilot): show model-authored tool activity (#7803)
waleedlatif1 Sep 13, 2026
14c8f36
fix(agent): keep nested tool basic/advanced modes attached to their t…
waleedlatif1 Sep 13, 2026
5e7d17a
fix(workflows): preserve durable execution across repeated human paus…
mzxchandra Sep 14, 2026
85a5938
fix(chat): stabilize inline tool activity updates (#7806)
waleedlatif1 Sep 14, 2026
c734e46
fix(search): preserve partial results and reuse document access check…
icecrasher321 Sep 14, 2026
09239ca
feat(network): add organization-specific HTTPS egress (#7807)
waleedlatif1 Sep 14, 2026
17e983e
fix(search): shorten direct retrieval and simplify result states (#7809)
icecrasher321 Sep 14, 2026
5613e74
fix(chat): share thinking and preserve natural activity labels (#7810)
waleedlatif1 Sep 14, 2026
e9d17ba
fix(integrations): remove workspace Search configuration (#7812)
waleedlatif1 Sep 14, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
12 changes: 7 additions & 5 deletions .github/workflows/publish-sim-cli.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,13 @@ concurrency:

jobs:
publish-npm:
# Job-level, not on the build step: `bun publish` runs `prepublishOnly`,
# which rebuilds `dist` a second time, and that second build is the one
# that ships. A build without the token reports nothing. See
# docs/cli/usage-data.
env:
SIM_CLI_TELEMETRY_KEY: ${{ vars.SIM_CLI_TELEMETRY_KEY }}
SIM_CLI_TELEMETRY_HOST: ${{ vars.SIM_CLI_TELEMETRY_HOST }}
runs-on: ${{ (vars.CI_PROVIDER == '' || vars.CI_PROVIDER == 'blacksmith') && 'blacksmith-4vcpu-ubuntu-2404' || 'ubuntu-latest' }}
timeout-minutes: 15
steps:
Expand Down Expand Up @@ -63,11 +70,6 @@ jobs:

- name: Build package
working-directory: packages/sim-cli
env:
# Public PostHog project token for anonymous CLI usage reporting; a
# build without it reports nothing. See docs/cli/usage-data.
SIM_CLI_TELEMETRY_KEY: ${{ vars.SIM_CLI_TELEMETRY_KEY }}
SIM_CLI_TELEMETRY_HOST: ${{ vars.SIM_CLI_TELEMETRY_HOST }}
run: bun run build

- name: Resolve release channel
Expand Down
2 changes: 1 addition & 1 deletion apps/docs/content/docs/knowledgebase/connectors.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import { Step, Steps } from 'fumadocs-ui/components/steps'
import { Image } from '@/components/ui/image'
import { FAQ } from '@/components/ui/faq'

For workspace Search with each person's source permissions, use the [Search connector guides](/search). This page covers connectors inside general knowledge bases.
For organization Search with each person's source permissions, use the [Search connector guides](/search). This page covers connectors inside general knowledge bases.

Connectors continuously sync documents from external services into your knowledge base, so you never have to upload files manually. New content is added, changed content is re-processed, and deleted content is removed — all automatically.

Expand Down
1 change: 1 addition & 0 deletions apps/docs/content/docs/platform/enterprise/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ Sim Enterprise adds organization controls for access, provisioning, operations,
| [Single sign-on](/platform/enterprise/sso) | Connect a SAML or OIDC identity provider |
| [Verified domains](/platform/enterprise/verified-domains) | Prove domain ownership for SSO and provisioning |
| [Directory provisioning](/platform/enterprise/scim) | Sync users and group-based access from your directory |
| [Security](/platform/enterprise/security) | Manage session policies and view configured outbound IP addresses |
| [Session policies](/platform/enterprise/session-policies) | Set session lifetimes and revoke member sessions |
| [Audit logs](/platform/enterprise/audit-logs) | Investigate configuration and security events |
| [Usage tracking](/platform/enterprise/usage-tracking) | Review usage by member, workspace, model, and source |
Expand Down
1 change: 1 addition & 0 deletions apps/docs/content/docs/platform/enterprise/meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
"sso",
"scim",
"verified-domains",
"security",
"session-policies",
"access-control",
"custom-blocks",
Expand Down
34 changes: 34 additions & 0 deletions apps/docs/content/docs/platform/enterprise/security.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
---
title: Security
description: Manage organization session policies and view configured outbound IP addresses
---

Organization owners and admins open **Settings → Security** to manage session policies and view outbound IP addresses.

## Session policies

Set **Max session lifetime** and **Idle timeout** in hours, then select **Save**. Leave either field empty to use its default behavior. **Discard** restores your saved values.

**Sign out all members** opens a confirmation before revoking the organization's browser sessions, except your current session. It does not revoke API keys.

See [Session policies](/platform/enterprise/session-policies) for limits, defaults, and how changes affect existing sessions.

## Outbound IP addresses

Copy your organization's configured addresses in `/32` format and allowlist **every listed address** on the destination firewall. These addresses apply to supported HTTPS connections from Sim and its background workers.

Contact Sim support or your deployment administrator to configure dedicated IPs and confirm connection coverage.

### Connection coverage

Dedicated routing supports public IPv4 destinations over HTTPS on port 443. It applies to supported Search connector API requests, HTTP request blocks, MCP and A2A connections, and HTTP requests made through Sim's local Function runtime. Background jobs use the same organization assignment.

Native database connections, AWS SDK integrations, remote sandbox traffic, and browser requests keep their existing network paths. Other provider SDKs and OAuth authorization or token refresh calls require separate coverage confirmation. Dedicated IPs do not change access permissions in connected services.

Google Drive, Fireflies, Google Workspace user and group discovery, and Atlassian OAuth site discovery currently use their existing network paths.

If dedicated routing is unavailable, affected requests fail instead of using shared IPs. Organizations without dedicated routing keep their existing behavior.

## Availability

On Sim Cloud, Security settings require an Enterprise organization and an owner or admin role. On self-hosted deployments, the outbound IP section is available to organization administrators; session controls appear only when session policies are enabled. See [self-hosted enterprise configuration](/platform/enterprise/self-hosted).
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ Session Policies let organization owners and admins on Enterprise plans control

## Setup

Go to **Settings → Organization → Session policies** in your organization settings.
Go to **Settings → Security → Session policies** in your organization settings.

Both limits are optional. Leave a field empty to keep the default behavior: sessions last 30 days and extend automatically while a member stays active.

Expand Down
4 changes: 1 addition & 3 deletions apps/docs/content/docs/search/confluence.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,6 @@ Each teammate completes this identity connection. An existing authorized account
</Step>
</Steps>

For workspace Search, start from **Search → Add source**. Available methods depend on the enabled features.

## Connect member accounts

After an admin configures Confluence, open **Integrations** and select **Connect** beside Confluence. Authorize your account; you do not enter the site's domain or choose its spaces again.
Expand Down Expand Up @@ -132,7 +130,7 @@ Central sources combine space permissions, page and ancestor restrictions, and g

Open **Settings → Sources → Confluence**, then a source's **Documents**, **Settings**, or **Sync history**. Invite teammates through **Settings → Members → Invite** or SSO, then have them connect through **Integrations**. **People → Request connections** only requests a provider connection; it does not invite people to the organization.

Syncing runs automatically. Admins can use **Sync now** for an immediate update, **Pause syncing** to stop scheduled syncs, or **Resume syncing** to restart them. **Full resync**, available for service-account connections, fetches unchanged content again and asks for confirmation. Successful manual syncs have a one-minute cooldown; failed syncs can be retried immediately.
Syncing runs automatically. Admins can use **Sync now** for an immediate update, **Pause syncing** to stop scheduled syncs, or **Resume syncing** to restart them. Successful manual syncs have a one-minute cooldown; failed syncs can be retried immediately.

## Troubleshooting

Expand Down
2 changes: 1 addition & 1 deletion apps/docs/content/docs/search/connect-your-account.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ On the main **Integrations** page, select **Reconnect** beside the integration i

Admins manage setup from **Settings → Sources**. Open an integration, then its connection to see **Documents**, **Settings**, and **Sync history**. **People** shows account contributors across integrations and supports filtering by integration. This does not grant the admin access to every document.

Syncing runs automatically. Admins can use **Sync now** when they need an update; another manual run is available 60 seconds after a successful sync finishes. Failed or partial runs can be retried immediately. The connection header also offers **Pause syncing** or **Resume syncing**, and **Remove connection**. Where supported, **Full resync** fetches and reindexes all content and asks for confirmation first.
Syncing runs automatically. Admins can use **Sync now** when they need an update; another manual run is available 60 seconds after a successful sync finishes. Failed or partial runs can be retried immediately. The connection header also offers **Pause syncing** or **Resume syncing**, and **Remove connection**.

Removing a Search connection also removes its indexed documents from Sim. The originals remain in the connected app.

Expand Down
2 changes: 1 addition & 1 deletion apps/docs/content/docs/search/github.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { Image } from '@/components/ui/image'

GitHub Search indexes repository text files and supported PDF and Office documents on `github.com`. An organization admin can install the GitHub App once and use it to index selected repositories. Each person connects their own GitHub account once to search the repositories they can access. Installing the App does not connect teammates or give them the installer's permissions.

Admin setup uses your organization's **Settings → Sources** page. Teammates connect from **Integrations** in the main sidebar. Installation indexing is available for organization Search. For workspace Search, use **Search → Add source** with member accounts or a dedicated user account.
Admin setup uses your organization's **Settings → Sources** page. Teammates connect from **Integrations** in the main sidebar. Installation indexing is available for organization Search.

## Before you start

Expand Down
4 changes: 2 additions & 2 deletions apps/docs/content/docs/search/gitlab.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { Image } from '@/components/ui/image'

Connect one GitLab project per source. Choose an **Administrator token** to refresh permissions from GitLab, or a **Non-admin token** with two CSV files to manage access in Sim. Teammates do not connect individual GitLab accounts.

Organization admins set up sources in **Settings → Sources**. For workspace Search, use **Search → Add source**. The same token paths are available when adding a GitLab connector to a regular knowledge base.
Organization admins set up sources in **Settings → Sources**. The same token paths are available when adding a GitLab connector to a regular knowledge base.

## Choose a token path

Expand Down Expand Up @@ -146,7 +146,7 @@ Open a project to use these administrator actions:
| **Settings** | Change the token, project, filters, or CSV permissions. |
| **Remove connection** | Confirm removal of the connection and its indexed documents. Documents cannot be retained without the connection that maintains their permissions. |

GitLab does not expose a separate **Full resync** action. Each sync checks the selected content. CSV grants change only when you replace the files.
Each sync checks the selected content. CSV grants change only when you replace the files.

## Troubleshooting

Expand Down
2 changes: 1 addition & 1 deletion apps/docs/content/docs/search/gmail.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { Image } from '@/components/ui/image'

Search email threads from your Gmail account. Members can connect their own accounts, or an administrator can index Google Workspace mailboxes with a service account. In either case, each mailbox stays private to its owner.

Admin setup uses your organization's **Settings → Sources** page. Teammates connect from **Integrations** in the main sidebar. For workspace Search, use **Search → Add source** instead.
Admin setup uses your organization's **Settings → Sources** page. Teammates connect from **Integrations** in the main sidebar.

## Choose your setup

Expand Down
2 changes: 1 addition & 1 deletion apps/docs/content/docs/search/google-calendar.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { Image } from '@/components/ui/image'

Search meetings and event details available to your Google account. Members can connect personal accounts, or a Google Workspace administrator can configure a central service-account crawl. Both paths keep each person's own view of events separate.

Admin setup uses your organization's **Settings → Sources** page. Teammates connect from **Integrations** in the main sidebar. For workspace Search, use **Search → Add source** instead.
Admin setup uses your organization's **Settings → Sources** page. Teammates connect from **Integrations** in the main sidebar.

## Choose your setup

Expand Down
2 changes: 1 addition & 1 deletion apps/docs/content/docs/search/google-drive.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import { Image } from '@/components/ui/image'

Search Google Docs, Sheets, Slides, and supported files in Drive. Members can connect their own accounts after an admin allows Google Drive, or an admin can configure a central service-account crawl.

Admin setup uses your organization's **Settings → Sources** page. Teammates connect from **Integrations** in the main sidebar. For workspace Search, use **Search → Add source** instead.
Admin setup uses your organization's **Settings → Sources** page. Teammates connect from **Integrations** in the main sidebar.

## Choose your setup

Expand Down
6 changes: 1 addition & 5 deletions apps/docs/content/docs/search/index.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -104,7 +104,7 @@ Edit **Settings** to change an existing connection's filters. Adding another con

**Sync using** shows the method selected when the source was created. Add a new connection to change that method. To replace a supported indexing credential, select its replacement and use **Change service account** or **Change account**, as shown.

The connection header offers **Sync now**, **Pause syncing** or **Resume syncing**, **Remove connection**, and, where supported, **Full resync**. Full resync fetches all content again and requires confirmation. Manual runs have a 60-second cooldown after a successful sync finishes; failed or partial runs can be retried immediately. **Pause syncing** becomes available when the current sync finishes.
The connection header offers **Sync now**, **Pause syncing** or **Resume syncing**, and **Remove connection**. Manual runs have a 60-second cooldown after a successful sync finishes; failed or partial runs can be retried immediately. **Pause syncing** becomes available when the current sync finishes.

To deactivate an entire integration, open it from **Settings → Sources**, select **Deactivate**, and confirm. Its content becomes unavailable in Search, Assistant, and MCP; saved connections remain. Select **Activate** on that integration to enable it again.

Expand All @@ -120,10 +120,6 @@ To deactivate an entire integration, open it from **Settings → Sources**, sele

To use these sources from Claude, Codex, Claude Code, Cursor, or another compatible app, open **Settings → Search MCP**. Each person signs in with their own Sim account. The server provides `search`, `read_document`, and `chat`; `chat` starts a new private Sim conversation. See [Search MCP](/search/mcp) for app setup, permissions, and limits.

## Existing workspace Search

Workspace Search remains separate. Workspace admins add sources through **Search → Add source**; the member-account action is **Create & Invite**. Teammates need workspace access and connect from its source list. Organization Search does not automatically include workspace sources or grant access to workspace content.

## Check that it works

1. Let the first sync finish, then search for a distinctive phrase in a document you can open in the source.
Expand Down
2 changes: 0 additions & 2 deletions apps/docs/content/docs/search/jira.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,6 @@ Each teammate follows this step. Sim reuses an existing authorized account where
</Step>
</Steps>

For workspace Search, start from **Search → Add source**; its source-creation button is **Create & Invite**. Search manages the sync schedule and hides item limits.

## Connect before a source exists

After an admin approves Jira, a teammate can select **Connect** on the Jira row in **Integrations**. To add another site or project selection later, open the Jira row's actions menu (**…**) and select **Add projects**:
Expand Down
2 changes: 0 additions & 2 deletions apps/docs/content/docs/search/slack.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -134,8 +134,6 @@ Compare **OAuth & Permissions → Scopes → User Token Scopes** with the table

Existing workflow account pools retain their configured permissions; preserve those scopes when updating the shared app.

For existing **workspace** Search, use **Search → Add source → Slack**. That flow uses the custom-bot wizard and **Connected accounts → Access → Search documents**, which requests read-only channel, DM, and identity scopes. Its bot installation is separate from the organization setup described here.

See Slack's [app manifest reference](https://docs.slack.dev/reference/app-manifest/) and [user token access model](https://docs.slack.dev/authentication/tokens/).

## Troubleshooting
Expand Down
Loading
Loading