Commit Graph

158 Commits

Author SHA1 Message Date
Henry Li b938f40e4c docs: update description 2026-01-22 13:46:31 +08:00
Henry Li 8ef89b3004 feat: put all options into '+' 2026-01-22 13:43:45 +08:00
hetao 2fac72601e feat: add unified development environment with nginx proxy
Add a root-level Makefile to manage frontend, backend, and nginx services:
- `make check` validates required dependencies (Node.js 22+, pnpm, uv, nginx)
- `make install` installs all project dependencies
- `make dev` starts all services with unified port 2026
- `make stop` and `make clean` for cleanup

Update nginx configuration:
- Change port from 8000 to 2026
- Add frontend upstream and routing (port 3000)
- Add /api/langgraph/* routing with path rewriting to LangGraph server
- Keep other /api/* routes to Gateway API
- Route non-API requests to frontend

Update frontend configuration:
- Use relative URLs through nginx proxy by default
- Support environment variables for direct backend access
- Construct full URL for LangGraph SDK compatibility

Clean up backend Makefile by removing nginx and serve targets.

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
2026-01-22 12:00:46 +08:00
hetao 50c25f5c4d fix: fix nginx conf 2026-01-22 12:00:46 +08:00
Henry Li 93f70893fc feat: show `in-progress` 2026-01-22 11:56:45 +08:00
Henry Li 4f712861a3 feat: adjust input background in light mode 2026-01-22 11:51:56 +08:00
Henry Li aed2f7ce67 feat: adjust styles 2026-01-22 11:42:25 +08:00
Henry Li 3774d0453c docs: remove '/' 2026-01-22 11:31:23 +08:00
Henry Li bd33f72017 fix: update summarization configuration values 2026-01-22 10:36:19 +08:00
Henry Li 9e72dc4f63 feat: add animations 2026-01-22 09:41:01 +08:00
Henry Li b630e1846a feat: update skill settings 2026-01-22 00:38:20 +08:00
Henry Li 44850d9a61 feat: add Todos 2026-01-22 00:26:11 +08:00
hetao 085dff8d29 refactor: refine skills 2026-01-21 21:22:56 +08:00
hetao 87752cafac feat: add SSE and HTTP transport support for MCP servers
- Add type, url, and headers fields to MCP server config
- Update MCP client to handle stdio, sse, and http transports
- Add todos field to ThreadState
- Add Deerflow branding requirement to frontend-design skill
- Update extensions_config.example.json with SSE/HTTP examples

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-21 16:14:00 +08:00
Henry Li 68b8083826 feat: use `resolvedTheme` instead of `systemTheme` 2026-01-21 10:48:29 +08:00
Henry Li c7a40d6a23 refactor: move 2026-01-21 10:46:43 +08:00
Henry Li f907f8ac16 docs: rewording 2026-01-21 10:46:18 +08:00
Henry Li ce4aa1e154 feat: adjust colors 2026-01-21 10:35:50 +08:00
Henry Li 1372dbefb2 feat: bring back the deer 2026-01-21 10:31:54 +08:00
Henry Li 4467b1860f feat: auto open artifact 2026-01-21 09:45:55 +08:00
Henry Li 6e024d6c8f feat: add code editor 2026-01-21 09:33:33 +08:00
Henry Li 4b7ee2bee2 feat: enlarge shadow 2026-01-21 08:52:30 +08:00
Henry Li 28d724d55a feat: make artifact "floating" 2026-01-21 08:50:15 +08:00
Henry Li adfce3c79c feat: change color themes 2026-01-21 08:37:30 +08:00
Henry Li 1b70e00642 feat: support settings 2026-01-20 23:43:21 +08:00
hetaoBackend 7ead7c93f8 feat: integrate todo middleware 2026-01-20 22:38:04 +08:00
hetaoBackend c5a2771636 fix: fix sandbox cp issue 2026-01-20 22:08:36 +08:00
hetaoBackend e58e5f1904 fix: fix skill md path 2026-01-20 21:10:05 +08:00
hetaoBackend 2d931105d5 feat: enable public skills by default 2026-01-20 20:37:51 +08:00
Henry Li dc8c1f4ed6 feat: save locale in cookies 2026-01-20 16:00:39 +08:00
Henry Li ac9ef30780 feat: implement i18n 2026-01-20 14:06:47 +08:00
hetaoBackend 33e6197f65 fix: fix config 2026-01-20 13:58:28 +08:00
hetaoBackend 66df9b5927 feat: add skills api 2026-01-20 13:57:36 +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 5c1bb675ba fix: fix backend 2026-01-20 09:58:27 +08:00
Henry Li b791b28afa docs: rewording 2026-01-20 09:26:29 +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 5d6162d006 feat: use code block to display bash commands 2026-01-19 21:59:23 +08:00
Henry Li 58b5c2fcd5 feat: support NEXT_PUBLIC_LANGGRAPH_BASE_URL 2026-01-19 21:51:40 +08:00
hetaoBackend a6fcdbf50a fix: fix proxy 2026-01-19 21:36:35 +08:00
Henry Li 24ca87d650 feat: add ToggleGroup 2026-01-19 19:41:46 +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 21f35b1d3c feat: support dynamic loading models 2026-01-19 18:54:04 +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 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 f0a2381bd5
feat: implement summarization (#14) 2026-01-19 16:17:31 +08:00
Henry Li 1352b0e0ba fix: fix getBackendBaseURL() 2026-01-19 15:42:19 +08:00
Henry Li 9d18e4e12d feat: add NEXT_PUBLIC_BACKEND_BASE_URL 2026-01-19 11:23:40 +08:00
Henry Li b431567666 feat: make `new chat` always on top 2026-01-19 00:00:35 +08:00
Henry Li c321c9293a fix: decode URL 2026-01-18 20:26:01 +08:00