LofiSu
5d8c08d3ba
fix(citations): only render citation badges for links in citationMap
...
Project URLs and regular links should be rendered as plain underlined
links, not as citation badges. Only links that are actual citations
(present in citationMap) should be rendered as badges.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 15:15:45 +08:00
LofiSu
49f7cf1662
fix(citations): use markdown link text as fallback for display
...
When citation data is not available, use the markdown link text
(children) as display text instead of just the domain. This ensures
that links like [OpenJudge](github.com/...) show 'OpenJudge' instead
of just 'github.com'.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 15:06:51 +08:00
LofiSu
738b71be47
fix(messages): prevent URL autolink bleeding into adjacent text
...
For human messages, disable remark-gfm autolink feature to prevent
URLs from incorrectly including adjacent text (especially Chinese
characters) as part of the link. This ensures that when users input
"https://example.com 帮我分析", only the URL becomes a link.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:30:57 +08:00
LofiSu
6f968242d6
fix(citations): only render CitationLink badges for AI messages
...
Human messages should display links as plain underlined text,
not as citation badges. This preserves the original user input
appearance when users paste URLs in their messages.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-06 14:28:28 +08:00
Henry Li
b74cf65275
feat: update surprise-me functionality with localization support
2026-02-06 14:21:03 +08:00
Henry Li
22dea3fd43
feat: add surprise-me
2026-02-06 14:04:15 +08:00
Henry Li
43ebce3b37
feat: remove demo
2026-02-05 09:46:05 +08:00
LofiSu
2debcf421c
fix(citations): improve citation link rendering and copy behavior
...
- Use citation.title for display text in CitationLink to ensure correct
titles show during streaming (instead of generic "Source" text)
- Render all external links as CitationLink badges for consistent styling
during streaming output
- Add removeAllCitations when copying message content to clipboard
- Simplify citations_format prompt for cleaner AI output
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-04 16:34:12 +08:00
LofiSu
644229f968
feat(citations): add shared citation components and optimize code
...
## New Features
- Add `CitationLink` shared component for rendering citation hover cards
- Add `CitationsLoadingIndicator` component for showing loading state
- Add `removeAllCitations` utility to strip all citations from content
- Add backend support for removing citations when downloading markdown files
- Add i18n support for citation loading messages (en-US, zh-CN)
## Code Optimizations
- Remove duplicate `ExternalLinkBadge` component, reuse `CitationLink` instead
- Consolidate `remarkPlugins` config in `streamdownPlugins` to avoid duplication
- Remove unused imports: `Citation`, `buildCitationMap`, `extractDomainFromUrl`, etc.
- Remove unused `messages` parameter from `ToolCall` component
- Remove unused `isWriteFile` parameter from `ArtifactFilePreview` component
- Remove unused `useI18n` hook from `MessageContent` component
## Bug Fixes
- Fix `remarkGfm` plugin configuration that prevented table rendering
- Fix React Hooks rule violation: move `useMemo` to component top level
- Replace `||` with `??` for nullish coalescing in clipboard data
## Code Cleanup
- Remove debug console.log/info statements from:
- `threads/hooks.ts`
- `notification/hooks.ts`
- `memory-settings-page.tsx`
- Fix import order in `message-group.tsx`
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-04 11:56:10 +08:00
LofiSu
3b411fe499
fix: 修复用户消息中上传文件的右对齐显示
...
在 UploadedFilesList 组件中添加 justify-end 类,确保上传的文件卡片在用户消息中保持右对齐显示,与消息气泡对齐一致。
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-03 19:13:17 +08:00
Henry Li
6b53456b39
feat: add memory settings page
2026-02-03 18:18:56 +08:00
Henry Li
f4f16bfa5c
feat: enhance welcome component and input box with skill mode handling and localization updates
2026-02-02 14:44:23 +08:00
Henry Li
ccf21238af
feat: update button in skill settings to include icon
2026-02-02 14:31:44 +08:00
Henry Li
3067f8dd03
feat: add suggestions
2026-02-02 11:21:30 +08:00
Henry Li
867749d7a3
feat: add file icons
2026-02-02 10:02:31 +08:00
Henry Li
37dcee41c0
feat: add file icon
2026-02-02 09:49:44 +08:00
Henry Li
51b4ed3124
feat: adjust tooltips
2026-02-02 09:32:18 +08:00
Henry Li
6d31c1c5cf
feat: wrap path and command in Tooltip for enhanced user experience
2026-02-02 09:23:36 +08:00
Henry Li
a66f76f43d
fix: update TooltipContent component to handle sideOffset correctly and add shadow styling
2026-02-02 09:23:24 +08:00
Henry Li
90104291ae
docs: add comments
2026-02-02 09:11:05 +08:00
Henry Li
54277b9d9e
feat: add skeleton
2026-02-02 09:05:33 +08:00
Henry Li
b540ad4505
feat: use `create skill` as title
2026-02-02 08:43:37 +08:00
Henry Li
e1ecf62afa
feat: add tooltip for installation
2026-02-01 10:55:08 +08:00
Henry Li
f5b1412ac0
fix: add translations
2026-01-31 22:49:59 +08:00
Henry Li
bdd2e25e14
feat: implement create skill
2026-01-31 22:31:25 +08:00
hetaoBackend
06511f38e1
feat: add .skill file preview support
...
Enable previewing .skill files (ZIP archives) by extracting and displaying
their SKILL.md content. Add caching to avoid repeated ZIP extraction.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 22:27:06 +08:00
hetaoBackend
a9e11f6341
feat: add skill installation API endpoint
...
Add POST /api/skills/install endpoint to install .skill files from
thread's user-data directory. The endpoint extracts the ZIP archive,
validates SKILL.md frontmatter, and installs to skills/custom/.
Frontend Install buttons now call the API instead of downloading.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-31 22:10:05 +08:00
Henry Li
d3ff5f9d3c
fix: fix eslint errors and warnings
2026-01-31 21:46:31 +08:00
Henry Li
5295f5b5b9
feat: add notification
2026-01-31 11:08:27 +08:00
Henry Li
835fd4d0c7
feat: change email
2026-01-30 22:32:47 +08:00
Henry Li
c1182c680c
feat: support Github Flavored Markdown
2026-01-30 16:41:18 +08:00
Henry Li
4dffad89ca
feat: re-arrange icons
2026-01-29 16:17:41 +08:00
Henry Li
a4f749f939
fix: add max width
2026-01-29 16:12:30 +08:00
Henry Li
a135ddfa48
feat: display mode
2026-01-29 15:57:08 +08:00
Henry Li
62ac3b6b03
feat: use "mode" instead of "thinking_enabled" and "is_plan_mode"
2026-01-29 15:48:50 +08:00
Henry Li
9d889434c4
feat: add placeholder for image
2026-01-29 15:01:18 +08:00
LofiSu
588673d043
merge: upstream/experimental with citations feature
...
- Merge upstream changes including image search, tooltips, and UI improvements
- Keep citations feature with inline hover cards
- Resolve conflict in message-list-item.tsx: use upstream img max-width (90%) while preserving citations logic
- Maintain file upload improvements with citations support
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-01-29 12:55:43 +08:00
LofiSu
849cc4d771
feat: improve file upload message handling and UI
...
Backend:
- Handle both string and list format for message content in uploads middleware
- Extract text content from structured message blocks
- Add logging for debugging file upload flow
Frontend:
- Separate file display from message bubble for human messages
- Show uploaded files outside the message bubble for cleaner layout
- Improve file card border styling with subtle border color
- Add debug logging for message submission with files
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-01-29 12:51:21 +08:00
Henry Li
eff241f9f2
feat: enable images in content
2026-01-29 12:51:04 +08:00
LofiSu
c14378a312
feat: refine citations format and improve content presentation
...
Backend:
- Simplify citations prompt format and rules
- Add clear distinction between chat responses and file content
- Enforce full URL usage in markdown links, prohibit [cite-1] format
- Require content-first approach: write full content, then add citations at end
Frontend:
- Hide <citations> block in both chat messages and markdown preview
- Remove top-level Citations/Sources list for cleaner UI
- Auto-remove <citations> block in code editor view for markdown files
- Keep inline citation hover cards for reference details
This ensures citations are presented like Claude: clean content with inline reference badges.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-01-29 12:29:13 +08:00
Henry Li
6b030d7589
feat: add tooltips
2026-01-29 09:23:06 +08:00
Henry Li
c700bd6841
feat: enhance search_image
2026-01-29 09:19:43 +08:00
Henry Li
8359d842b5
feat: support image_search
2026-01-29 08:59:55 +08:00
hetaoBackend
d4bfed271b
feat: display ask_clarification tool messages directly in frontend
...
Simplify clarification message handling by having the frontend detect and
display ask_clarification tool messages directly, instead of relying on
backend to add an extra AIMessage.
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-29 01:25:31 +08:00
LofiSu
ad85b72064
feat: add inline citations and thread management features
...
Citations:
- Add citations parsing utilities for extracting source references from AI responses
- Render inline citations as hover card badges in message content
- Display citation cards with title, URL, and description on hover
- Add citation badge rendering in artifact markdown preview
- Update prompt to guide AI to output citations in correct format
Thread Management:
- Add rename functionality for chat threads with dialog UI
- Add share functionality to copy thread link to clipboard
- Share links use Vercel URL for production accessibility
- Add useRenameThread hook for thread title updates
i18n:
- Add translations for rename, share, cancel, save, and linkCopied
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-01-28 19:15:11 +08:00
Henry Li
dab4093103
feat: fallback to textarea when loading
2026-01-28 10:13:17 +08:00
Henry Li
28361ca03c
feat: add scroll indicator
2026-01-27 13:15:49 +08:00
Henry Li
ed31dc6aab
fix: hide chats when sidebar is not open
2026-01-27 10:41:08 +08:00
Henry Li
cc1fe4e50e
fix: eslint
2026-01-27 10:39:44 +08:00
Henry Li
eca2b139cc
fix: bugfix
2026-01-27 09:50:42 +08:00
Henry Li
3ce4968e95
feat: auto select the first model as default model
2026-01-26 17:13:34 +08:00
Henry Li
f629e134d4
feat: adjust button
2026-01-25 22:10:50 +08:00
Henry Li
598fed797f
fix: many minor fixes
2026-01-25 21:57:57 +08:00
Henry Li
87200d1ad1
feat: update translations
2026-01-25 11:54:49 +08:00
Henry Li
78bba47769
feat: add Titanic ADA demo
2026-01-25 00:35:42 +08:00
Henry Li
3ac6e58d4f
fix: remove tooltip
2026-01-25 00:06:49 +08:00
Henry Li
a83e5e238d
feat: auto expand in demo mode
2026-01-24 23:51:11 +08:00
Henry Li
869af570c9
feat: add i18n
2026-01-24 22:19:37 +08:00
Henry Li
5a27a3beeb
feat: expand by default in demo mode
2026-01-24 22:03:38 +08:00
Henry Li
08f1af00b6
feat: support absolute path as image src
2026-01-24 20:58:56 +08:00
Henry Li
cdcadc3fe3
style: update tooltip background class for consistency
2026-01-24 20:58:36 +08:00
Henry Li
584c88f0dd
feat: add more links
2026-01-24 18:21:50 +08:00
Henry Li
cd63f41b4c
feat: support static website
2026-01-24 18:01:27 +08:00
Henry Li
3f4bcd9433
feat: implement the first version of landing page
2026-01-23 13:24:03 +08:00
Henry Li
307972f93e
feat: implement the first section of landing page
2026-01-23 00:15:21 +08:00
Henry Li
459d9d0287
fix: fix menu item in side bar collapsed mode
2026-01-22 15:18:42 +08:00
Henry Li
e9ab427326
feat: adjust styles
2026-01-22 14:28:10 +08:00
Henry Li
e0f491dcdb
feat: add main menu
2026-01-22 14:19:54 +08:00
Henry Li
7d4d706738
feat: put all options into '+'
2026-01-22 13:43:45 +08:00
Henry Li
16a499190b
feat: show `in-progress`
2026-01-22 11:56:45 +08:00
Henry Li
aa7436db2f
feat: adjust input background in light mode
2026-01-22 11:51:56 +08:00
Henry Li
93842e81a4
feat: adjust styles
2026-01-22 11:42:25 +08:00
Henry Li
54710960cb
docs: remove '/'
2026-01-22 11:31:23 +08:00
Henry Li
e8e522c2fe
feat: add animations
2026-01-22 09:41:01 +08:00
Henry Li
37e2c3d3c9
feat: update skill settings
2026-01-22 00:38:20 +08:00
Henry Li
1e4e51a80c
feat: add Todos
2026-01-22 00:26:11 +08:00
Henry Li
fbe4d27ddd
feat: use `resolvedTheme` instead of `systemTheme`
2026-01-21 10:48:29 +08:00
Henry Li
11c562eb98
refactor: move
2026-01-21 10:46:43 +08:00
Henry Li
26587ee970
feat: bring back the deer
2026-01-21 10:31:54 +08:00
Henry Li
220fc1c489
feat: auto open artifact
2026-01-21 09:45:55 +08:00
Henry Li
48742d1b59
feat: add code editor
2026-01-21 09:33:33 +08:00
Henry Li
7c6eb4cc8b
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
a2ca682b0c
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
faba2784e1
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
a18f37779e
docs: rewording
2026-01-20 09:26:29 +08:00
Henry Li
b8f9678d07
feat: use code block to display bash commands
2026-01-19 21:59:23 +08:00
Henry Li
d7dfffad90
feat: add ToggleGroup
2026-01-19 19:41:46 +08:00
Henry Li
541586dc66
feat: support dynamic loading models
2026-01-19 18:54:04 +08:00
Henry Li
d8391ca3ea
feat: make `new chat` always on top
2026-01-19 00:00:35 +08:00
Henry Li
63fa500716
fix: decode URL
2026-01-18 20:26:01 +08:00
Henry Li
dc04042b53
feat: support clarification tool
2026-01-18 20:17:32 +08:00
Henry Li
69b225082b
feat: re-implement message group
2026-01-18 19:56:07 +08:00
Henry Li
dd80348b76
feat: support SSE write_file(0
2026-01-18 17:13:15 +08:00
Henry Li
6bf187c1c2
fix: fix message grouping issues
2026-01-18 13:07:56 +08:00
Henry Li
23dc64fab1
feat: enhance message display
2026-01-18 11:25:46 +08:00
Henry Li
59683fc12e
feat: dim the placeholder
2026-01-18 09:57:30 +08:00
Henry Li
92fc19a3aa
feat: remove model icon
2026-01-18 09:55:17 +08:00
Henry Li
3f1f6af30c
feat: change back to 60px height
2026-01-17 22:01:17 +08:00
Henry Li
5cda2b90fc
feat: refine theme
2026-01-17 21:24:49 +08:00
Henry Li
094553ea42
feat: change light theme
2026-01-17 20:32:27 +08:00
Henry Li
df65010e5f
fix: remove unused imports
2026-01-17 19:47:51 +08:00
Henry Li
2bc5f30c4d
feat: welcome, again
2026-01-17 19:46:02 +08:00
Henry Li
06068dd07b
feat: add reasoning check to message list item rendering
2026-01-17 18:02:19 +08:00
Henry Li
85d9baf2b1
feat:enhance focus status
2026-01-17 17:52:15 +08:00
Henry Li
a64b0d226b
feat: redesign step counter
2026-01-17 17:45:13 +08:00
Henry Li
97dbcc4bd6
fix: remove unused imports
2026-01-17 17:37:36 +08:00
Henry Li
d8f0f91238
feat: extract ThreadTitle component
2026-01-17 17:37:12 +08:00
Henry Li
f1c6991194
feat: integrated with artifacts in states
2026-01-17 17:21:37 +08:00
Henry Li
a663bcc37b
feat: merge the last thinking with the previous group
2026-01-17 16:10:58 +08:00
Henry Li
0e8fdf6234
feat: shrink card size
2026-01-17 15:22:00 +08:00
Henry Li
5dc40a9ade
feat: add `open in new window`
2026-01-17 15:19:53 +08:00
Henry Li
962d8f04ec
feat: support artifact preview
2026-01-17 15:09:44 +08:00
Henry Li
ec5bbf6b51
feat: set artifacts layout
2026-01-17 11:02:33 +08:00
Henry Li
9d1cf89532
chore: remove unused components
2026-01-17 10:09:43 +08:00
Henry Li
4613d6e16e
refactor: rename
2026-01-17 00:05:19 +08:00
Henry Li
9d64c7e076
feat: integrated with artifacts
2026-01-17 00:02:03 +08:00
Henry Li
34ca58ed1b
fix: fix broken when SSE
2026-01-16 23:15:53 +08:00
Henry Li
f9853f037c
feat: support basic file presenting
2026-01-16 22:35:20 +08:00
Henry Li
93a231cfb1
feat: integrated with artifact resizable
2026-01-16 21:55:31 +08:00
Henry Li
68fbf53fb2
chore: add resizable
2026-01-16 21:54:54 +08:00
Henry Li
91eff99f01
feat: add flip display effect
2026-01-16 20:40:09 +08:00
Henry Li
c265734c6e
feat: adjust layout
2026-01-16 20:06:30 +08:00
Henry Li
03f0e3f0c7
refactor: move biz logic to core
2026-01-16 19:51:39 +08:00
Henry Li
7066a3b691
feat: adjust layout and style of tooltip
2026-01-16 19:51:14 +08:00
Henry Li
df396fc246
feat: add copy button
2026-01-16 19:50:23 +08:00
Henry Li
f19e3ae8ac
fix: lastStep could be empty
2026-01-16 14:38:49 +08:00
Henry Li
52b9d0cffc
feat: remove scroll button
2026-01-16 14:38:33 +08:00
Henry Li
faf80bb429
feat: rename 'model' to 'model_name'
2026-01-16 14:03:34 +08:00
Henry Li
1f03fb3749
fix: navigate to home only in open-mode
2026-01-16 09:58:16 +08:00
Henry Li
7c6189668c
feat: link to home page
2026-01-16 09:56:30 +08:00
Henry Li
028f402ff5
feat: store the local settings
2026-01-16 09:55:02 +08:00
Henry Li
3f2bfded41
feat: enable edit context options
2026-01-16 09:37:04 +08:00
Henry Li
e9846c1dda
refactor: refine folder structure and rename
2026-01-16 09:13:02 +08:00
Henry Li
61499624a0
feat: adjust message group layout
2026-01-15 23:56:42 +08:00
Henry Li
00ad4206c4
feat: enhance label
2026-01-15 23:47:36 +08:00
Henry Li
c3cb4c348d
feat: remove max-w-
2026-01-15 23:47:28 +08:00
Henry Li
9f2b94ed52
feat: implement basic web app
2026-01-15 23:40:21 +08:00
Henry Li
c628c7f8db
chore: create frontend project from boilerplate
2026-01-14 09:50:26 +08:00