Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
47 commits
Select commit Hold shift + click to select a range
7ed6e9c
fix: update message handling in NewChatPage to conditionally set auth…
AnishSarkar22 Mar 29, 2026
75fd39c
refactor: simplify author metadata handling in NewChatPage and UserMe…
AnishSarkar22 Mar 29, 2026
fec5c00
refactor: enhance button loading states in various components for imp…
AnishSarkar22 Mar 29, 2026
db26373
refactor: update styling for button and command components in ImageMo…
AnishSarkar22 Mar 29, 2026
430372a
refactor: move ImageConfigDialog to shared components and update impo…
AnishSarkar22 Mar 29, 2026
f4adfb5
refactor: update global image model and configuration messages for cl…
AnishSarkar22 Mar 29, 2026
d88236d
refactor: replace ModelConfigDialog with a shared component and updat…
AnishSarkar22 Mar 29, 2026
32ff5f0
refactor: simplify onboarding page logic by temporarily disabling aut…
AnishSarkar22 Mar 29, 2026
ba926bb
refactor: integrate global loading effect into onboarding page and st…
AnishSarkar22 Mar 29, 2026
a5f41cf
refactor: update LLM configuration terminology and enhance user feedb…
AnishSarkar22 Mar 29, 2026
4a05229
refactor: enhance image generation configuration handling and user fe…
AnishSarkar22 Mar 29, 2026
b5cc45e
refactor: streamline image and model configuration dialogs by removin…
AnishSarkar22 Mar 29, 2026
7632291
refactor: improve UI consistency by standardizing header and sidebar …
AnishSarkar22 Mar 29, 2026
b54aa51
refactor: implement chat tab removal functionality and enhance tab ti…
AnishSarkar22 Mar 29, 2026
69b8eef
refactor: enhance chat tab management by implementing fallback naviga…
AnishSarkar22 Mar 29, 2026
38b77df
refactor: update editable document types to include 'FILE' and enhanc…
AnishSarkar22 Mar 29, 2026
73016b4
refactor: enhance TabBar component with active tab highlighting and r…
AnishSarkar22 Mar 29, 2026
0e3f5d8
refactor: add OneDrive support to connector icons and types for enhan…
AnishSarkar22 Mar 29, 2026
9eab427
feat: introduce citation components from tool-ui with hover popover f…
AnishSarkar22 Mar 29, 2026
74826b3
feat: enhance web search tool integration with citation management an…
AnishSarkar22 Mar 29, 2026
04691d5
chore: ran linting
AnishSarkar22 Mar 29, 2026
cbcaa7a
feat: add mobile citation drawer and enhance citation metadata contex…
AnishSarkar22 Mar 29, 2026
411ea3e
fix: adjust DrawerHandle dimensions for improved UI consistency
AnishSarkar22 Mar 29, 2026
46f8553
feat: update MobileCitationDrawer layout and enhance DrawerHeader for…
AnishSarkar22 Mar 29, 2026
5e2283b
feat: add Dropbox connector enums to database schema for enhanced int…
AnishSarkar22 Mar 30, 2026
5482852
feat: add Dropbox integration support with configuration and connecto…
AnishSarkar22 Mar 30, 2026
1f12151
feat: implement Dropbox API client and folder management for enhanced…
AnishSarkar22 Mar 30, 2026
af115dd
feat: add Dropbox content extraction and OAuth routes for improved fi…
AnishSarkar22 Mar 30, 2026
272de1b
feat: add integration and unit tests for Dropbox indexing pipeline an…
AnishSarkar22 Mar 30, 2026
d509148
feat: implement Dropbox connector configuration and UI components for…
AnishSarkar22 Mar 30, 2026
2cd09d4
feat: add Dropbox connector support in enums, icons, and API service …
AnishSarkar22 Mar 30, 2026
7297a17
feat: implement Dropbox file creation and deletion tools for enhanced…
AnishSarkar22 Mar 30, 2026
be5685c
feat: add UI components for Dropbox file creation and deletion, enhan…
AnishSarkar22 Mar 30, 2026
27b71c0
feat: add Dropbox connector documentation and update sitemap
AnishSarkar22 Mar 30, 2026
86ce75e
feat: add Dropbox connector to display name mappings in UI and utilit…
AnishSarkar22 Mar 30, 2026
debe758
fix: update date range selector visibility logic for file-based conne…
AnishSarkar22 Mar 30, 2026
6b92296
feat: integrate Dropbox support across various components, including …
AnishSarkar22 Mar 30, 2026
0d5b902
feat: extend Dropbox support in chat event streaming and connector na…
AnishSarkar22 Mar 30, 2026
b950299
feat: add support for creating and deleting Dropbox files in chat too…
AnishSarkar22 Mar 30, 2026
d8d5102
feat: introduce incremental sync option for Dropbox indexing, enhanci…
AnishSarkar22 Mar 30, 2026
526940e
fix: improve error handling and path retrieval in Dropbox indexing fo…
AnishSarkar22 Mar 30, 2026
86dce54
refactor: simplify tool visibility logic and update UI labels in the …
AnishSarkar22 Mar 30, 2026
781984c
fix: update date range selector visibility logic for file-based conne…
AnishSarkar22 Mar 30, 2026
2327869
style: adjust header and sidebar heights for improved layout consiste…
AnishSarkar22 Mar 31, 2026
0b4336e
style: update button styling in InlineCitation component for improved…
AnishSarkar22 Mar 31, 2026
9d7b172
style: update tooltips in assistant UI
AnishSarkar22 Mar 31, 2026
8d591ce
feat: add support for exporting Dropbox Paper `.paper` documents as m…
AnishSarkar22 Mar 31, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 5 additions & 0 deletions docker/.env.example
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,11 @@ STT_SERVICE=local/base
# TEAMS_REDIRECT_URI=http://localhost:8000/api/v1/auth/teams/connector/callback
# ONEDRIVE_REDIRECT_URI=http://localhost:8000/api/v1/auth/onedrive/connector/callback

# -- Dropbox --
# DROPBOX_APP_KEY=
# DROPBOX_APP_SECRET=
# DROPBOX_REDIRECT_URI=http://localhost:8000/api/v1/auth/dropbox/connector/callback

# -- Composio --
# COMPOSIO_API_KEY=
# COMPOSIO_ENABLED=TRUE
Expand Down
2 changes: 1 addition & 1 deletion docs/chinese-llm-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ SurfSense 现已支持以下国产 LLM:

1. 登录 SurfSense Dashboard
2. 进入 **Settings****API Keys** (或 **LLM Configurations**)
3. 点击 **Add New Configuration**
3. 点击 **Add LLM Model**
4.**Provider** 下拉菜单中选择你的国产 LLM 提供商
5. 填写必填字段(见下方各提供商详细配置)
6. 点击 **Save**
Expand Down
5 changes: 5 additions & 0 deletions surfsense_backend/.env.example
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,11 @@ MICROSOFT_CLIENT_SECRET=your_microsoft_client_secret_here
TEAMS_REDIRECT_URI=http://localhost:8000/api/v1/auth/teams/connector/callback
ONEDRIVE_REDIRECT_URI=http://localhost:8000/api/v1/auth/onedrive/connector/callback

# Dropbox Connector
DROPBOX_APP_KEY=your_dropbox_app_key_here
DROPBOX_APP_SECRET=your_dropbox_app_secret_here
DROPBOX_REDIRECT_URI=http://localhost:8000/api/v1/auth/dropbox/connector/callback

# Composio Connector
# NOTE: Disable "Mask Connected Account Secrets" in Composio dashboard (Settings → Project Settings) for Google indexing to work.
COMPOSIO_API_KEY=your_api_key_here
Expand Down
4 changes: 3 additions & 1 deletion surfsense_backend/alembic/versions/111_add_prompts_table.py
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,9 @@ def upgrade() -> None:
)
""")
op.execute("CREATE INDEX ix_prompts_user_id ON prompts (user_id)")
op.execute("CREATE INDEX ix_prompts_search_space_id ON prompts (search_space_id)")
op.execute(
"CREATE INDEX ix_prompts_search_space_id ON prompts (search_space_id)"
)


def downgrade() -> None:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
"""Add Dropbox connector enums

Revision ID: 112
Revises: 111
Create Date: 2026-03-30 00:00:00.000000

"""

from collections.abc import Sequence

from alembic import op

revision: str = "112"
down_revision: str | None = "111"
branch_labels: str | Sequence[str] | None = None
depends_on: str | Sequence[str] | None = None


def upgrade() -> None:
op.execute(
"""
DO $$
BEGIN
IF NOT EXISTS (
SELECT 1 FROM pg_type t
JOIN pg_enum e ON t.oid = e.enumtypid
WHERE t.typname = 'searchsourceconnectortype' AND e.enumlabel = 'DROPBOX_CONNECTOR'
) THEN
ALTER TYPE searchsourceconnectortype ADD VALUE 'DROPBOX_CONNECTOR';
END IF;
END
$$;
"""
)

op.execute(
"""
DO $$
BEGIN
IF NOT EXISTS (
SELECT 1 FROM pg_type t
JOIN pg_enum e ON t.oid = e.enumtypid
WHERE t.typname = 'documenttype' AND e.enumlabel = 'DROPBOX_FILE'
) THEN
ALTER TYPE documenttype ADD VALUE 'DROPBOX_FILE';
END IF;
END
$$;
"""
)


def downgrade() -> None:
pass
7 changes: 7 additions & 0 deletions surfsense_backend/app/agents/new_chat/chat_deepagent.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,7 @@
"BOOKSTACK_CONNECTOR": "BOOKSTACK_CONNECTOR",
"CIRCLEBACK_CONNECTOR": "CIRCLEBACK", # Connector type differs from document type
"OBSIDIAN_CONNECTOR": "OBSIDIAN_CONNECTOR",
"DROPBOX_CONNECTOR": "DROPBOX_FILE", # Connector type differs from document type
"ONEDRIVE_CONNECTOR": "ONEDRIVE_FILE", # Connector type differs from document type
# Composio connectors (unified to native document types).
# Reverse of NATIVE_TO_LEGACY_DOCTYPE in app.db.
Expand Down Expand Up @@ -317,6 +318,12 @@ async def create_surfsense_deep_agent(
]
modified_disabled_tools.extend(google_drive_tools)

has_dropbox_connector = (
available_connectors is not None and "DROPBOX_FILE" in available_connectors
)
if not has_dropbox_connector:
modified_disabled_tools.extend(["create_dropbox_file", "delete_dropbox_file"])

has_onedrive_connector = (
available_connectors is not None and "ONEDRIVE_FILE" in available_connectors
)
Expand Down
11 changes: 11 additions & 0 deletions surfsense_backend/app/agents/new_chat/tools/dropbox/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
from app.agents.new_chat.tools.dropbox.create_file import (
create_create_dropbox_file_tool,
)
from app.agents.new_chat.tools.dropbox.trash_file import (
create_delete_dropbox_file_tool,
)

__all__ = [
"create_create_dropbox_file_tool",
"create_delete_dropbox_file_tool",
]
Loading
Loading