Commit Graph

1519 Commits

Author SHA1 Message Date
Henry Li
4b7ee2bee2 feat: enlarge shadow 2026-01-21 08:52:30 +08:00
Henry Li
d77b9922a6 feat: make artifact "floating" 2026-01-21 08:50:15 +08:00
Henry Li
28d724d55a feat: make artifact "floating" 2026-01-21 08:50:15 +08:00
Henry Li
a2ca682b0c feat: change color themes 2026-01-21 08:37:30 +08:00
Henry Li
adfce3c79c feat: change color themes 2026-01-21 08:37:30 +08:00
Henry Li
10d253f461 feat: support settings 2026-01-20 23:43:21 +08:00
Henry Li
1b70e00642 feat: support settings 2026-01-20 23:43:21 +08:00
hetaoBackend
3191a3845f feat: integrate todo middleware 2026-01-20 22:38:04 +08:00
hetaoBackend
7ead7c93f8 feat: integrate todo middleware 2026-01-20 22:38:04 +08:00
hetaoBackend
adbb03fc26 fix: fix sandbox cp issue 2026-01-20 22:08:36 +08:00
hetaoBackend
c5a2771636 fix: fix sandbox cp issue 2026-01-20 22:08:36 +08:00
hetaoBackend
5888a5ba16 fix: fix skill md path 2026-01-20 21:10:05 +08:00
hetaoBackend
e58e5f1904 fix: fix skill md path 2026-01-20 21:10:05 +08:00
hetaoBackend
abc6c21b11 feat: enable public skills by default 2026-01-20 20:37:51 +08:00
hetaoBackend
2d931105d5 feat: enable public skills by default 2026-01-20 20:37:51 +08:00
Xun
0e64c52975 refactor: Refactors the retriever function to use async/await (#821)
* refactor: Refactors the retriever function to use async/await
2026-01-20 19:56:26 +08:00
Henry Li
faba2784e1 feat: save locale in cookies 2026-01-20 16:00:39 +08:00
Henry Li
dc8c1f4ed6 feat: save locale in cookies 2026-01-20 16:00:39 +08:00
Henry Li
32a45eb043 feat: implement i18n 2026-01-20 14:06:47 +08:00
Henry Li
ac9ef30780 feat: implement i18n 2026-01-20 14:06:47 +08:00
hetaoBackend
6ec023de8b fix: fix config 2026-01-20 13:58:28 +08:00
hetaoBackend
33e6197f65 fix: fix config 2026-01-20 13:58:28 +08:00
hetaoBackend
50810c8212 feat: add skills api 2026-01-20 13:57:36 +08:00
hetaoBackend
66df9b5927 feat: add skills api 2026-01-20 13:57:36 +08:00
hetaoBackend
8434cf4c60 feat: add MCP API endpoint and enhance API documentation
Add new MCP configuration management endpoint and enhance API documentation
with detailed descriptions, examples, and OpenAPI support for better
developer experience.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-20 13:20:50 +08:00
hetaoBackend
411d9d57c3 feat: add MCP API endpoint and enhance API documentation
Add new MCP configuration management endpoint and enhance API documentation
with detailed descriptions, examples, and OpenAPI support for better
developer experience.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-20 13:20:50 +08:00
hetaoBackend
d11763dcc8 fix: fix backend 2026-01-20 09:58:27 +08:00
hetaoBackend
5c1bb675ba fix: fix backend 2026-01-20 09:58:27 +08:00
Henry Li
a18f37779e docs: rewording 2026-01-20 09:26:29 +08:00
Henry Li
b791b28afa docs: rewording 2026-01-20 09:26:29 +08:00
DanielWalnut
513332b746 feat: add nginx reversed proxy (#15)
* docs: add nginx reverse proxy documentation

Add comprehensive nginx configuration documentation to README including:
- Production deployment instructions with step-by-step setup
- Architecture diagram showing traffic routing between services
- Nginx features: unified entry point, CORS handling, SSE support
- Updated project structure with nginx.conf and service ports

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* feat: implement nginx

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 23:23:38 +08:00
DanielWalnut
7978e05dc1 feat: add nginx reversed proxy (#15)
* docs: add nginx reverse proxy documentation

Add comprehensive nginx configuration documentation to README including:
- Production deployment instructions with step-by-step setup
- Architecture diagram showing traffic routing between services
- Nginx features: unified entry point, CORS handling, SSE support
- Updated project structure with nginx.conf and service ports

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>

* feat: implement nginx

---------

Co-authored-by: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 23:23:38 +08:00
Henry Li
b8f9678d07 feat: use code block to display bash commands 2026-01-19 21:59:23 +08:00
Henry Li
5d6162d006 feat: use code block to display bash commands 2026-01-19 21:59:23 +08:00
Henry Li
fb265f2b1f feat: support NEXT_PUBLIC_LANGGRAPH_BASE_URL 2026-01-19 21:51:40 +08:00
Henry Li
58b5c2fcd5 feat: support NEXT_PUBLIC_LANGGRAPH_BASE_URL 2026-01-19 21:51:40 +08:00
hetaoBackend
d6c1e5868d fix: fix proxy 2026-01-19 21:36:35 +08:00
hetaoBackend
a6fcdbf50a fix: fix proxy 2026-01-19 21:36:35 +08:00
Henry Li
d7dfffad90 feat: add ToggleGroup 2026-01-19 19:41:46 +08:00
Henry Li
24ca87d650 feat: add ToggleGroup 2026-01-19 19:41:46 +08:00
hetaoBackend
1171598b2f feat: add MCP (Model Context Protocol) support
Add comprehensive MCP integration using langchain-mcp-adapters to enable
pluggable external tools from MCP servers.

Features:
- MCP server configuration via mcp_config.json
- Automatic lazy initialization for seamless use in both FastAPI and LangGraph Studio
- Support for multiple MCP servers (filesystem, postgres, github, brave-search, etc.)
- Environment variable resolution in configuration
- Tool caching mechanism for optimal performance
- Complete documentation and setup guide

Implementation:
- Add src/mcp module with client, tools, and cache components
- Integrate MCP config loading in AppConfig
- Update tool system to include MCP tools automatically
- Add eager initialization in FastAPI lifespan handler
- Add lazy initialization fallback for LangGraph Studio

Dependencies:
- Add langchain-mcp-adapters>=0.1.0

Documentation:
- Add MCP_SETUP.md with comprehensive setup guide
- Update CLAUDE.md with MCP system architecture
- Update config.example.yaml with MCP configuration notes
- Update README.md with MCP setup instructions

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 18:58:13 +08:00
hetaoBackend
74d4a16492 feat: add MCP (Model Context Protocol) support
Add comprehensive MCP integration using langchain-mcp-adapters to enable
pluggable external tools from MCP servers.

Features:
- MCP server configuration via mcp_config.json
- Automatic lazy initialization for seamless use in both FastAPI and LangGraph Studio
- Support for multiple MCP servers (filesystem, postgres, github, brave-search, etc.)
- Environment variable resolution in configuration
- Tool caching mechanism for optimal performance
- Complete documentation and setup guide

Implementation:
- Add src/mcp module with client, tools, and cache components
- Integrate MCP config loading in AppConfig
- Update tool system to include MCP tools automatically
- Add eager initialization in FastAPI lifespan handler
- Add lazy initialization fallback for LangGraph Studio

Dependencies:
- Add langchain-mcp-adapters>=0.1.0

Documentation:
- Add MCP_SETUP.md with comprehensive setup guide
- Update CLAUDE.md with MCP system architecture
- Update config.example.yaml with MCP configuration notes
- Update README.md with MCP setup instructions

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 18:58:13 +08:00
Henry Li
541586dc66 feat: support dynamic loading models 2026-01-19 18:54:04 +08:00
Henry Li
21f35b1d3c feat: support dynamic loading models 2026-01-19 18:54:04 +08:00
hetaoBackend
1a7c853811 fix: use shared httpx client to prevent premature closure in SSE streaming
The proxy was creating a temporary httpx.AsyncClient within an async context manager.
When returning StreamingResponse for SSE endpoints, the client was being closed before
the streaming generator could use it, causing "client has been closed" errors.

This change introduces a shared httpx.AsyncClient that persists for the application
lifecycle, properly cleaned up during shutdown. This also improves performance by
reusing TCP connections across requests.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 16:52:30 +08:00
hetaoBackend
ffb9ed3198 fix: use shared httpx client to prevent premature closure in SSE streaming
The proxy was creating a temporary httpx.AsyncClient within an async context manager.
When returning StreamingResponse for SSE endpoints, the client was being closed before
the streaming generator could use it, causing "client has been closed" errors.

This change introduces a shared httpx.AsyncClient that persists for the application
lifecycle, properly cleaned up during shutdown. This also improves performance by
reusing TCP connections across requests.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 16:52:30 +08:00
hetaoBackend
8ea530e221 fix: stop tracking .claude/settings.local.json
Remove .claude/settings.local.json from git tracking and add it to .gitignore to prevent future accidental commits of local settings.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 16:28:03 +08:00
hetaoBackend
3a4149c437 fix: stop tracking .claude/settings.local.json
Remove .claude/settings.local.json from git tracking and add it to .gitignore to prevent future accidental commits of local settings.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-19 16:28:03 +08:00
DanielWalnut
9a3eaea54e feat: implement summarization (#14) 2026-01-19 16:17:31 +08:00
DanielWalnut
f0a2381bd5 feat: implement summarization (#14) 2026-01-19 16:17:31 +08:00