diff --git a/src/app/api/workspaces/route.ts b/src/app/api/workspaces/route.ts index da0f275..69f3b96 100644 --- a/src/app/api/workspaces/route.ts +++ b/src/app/api/workspaces/route.ts @@ -285,10 +285,12 @@ export async function GET() { // Get workspace name let workspaceName = `Project ${entry.name.slice(0, 8)}` + let projectPath: string = "(unknown path)" try { const workspaceData = JSON.parse(await fs.readFile(entry.workspaceJsonPath, 'utf-8')) if (workspaceData.folder) { - const folderName = workspaceData.folder.split('/').pop() || workspaceData.folder.split('\\').pop() + projectPath = String(workspaceData.folder).replace('file://', '') + const folderName = projectPath.split('/').pop() || projectPath.split('\\').pop() workspaceName = folderName || workspaceName } } catch (error) { @@ -303,7 +305,7 @@ export async function GET() { projects.push({ id: entry.name, name: workspaceName, - path: entry.workspaceJsonPath, + path: projectPath, conversationCount: conversationCount, lastModified: stats.mtime.toISOString() }) @@ -317,4 +319,4 @@ export async function GET() { console.error('Failed to get workspaces:', error) return NextResponse.json({ error: 'Failed to get workspaces' }, { status: 500 }) } -} \ No newline at end of file +} diff --git a/src/components/workspace-list.tsx b/src/components/workspace-list.tsx index cc9af5d..b2db6a6 100644 --- a/src/components/workspace-list.tsx +++ b/src/components/workspace-list.tsx @@ -14,6 +14,7 @@ import { import { Loading } from "@/components/ui/loading" import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" import { Alert, AlertDescription } from "@/components/ui/alert" +import { Tooltip, TooltipContent, TooltipTrigger } from "@/components/ui/tooltip" import { Info } from "lucide-react" interface Project { @@ -75,12 +76,19 @@ export function WorkspaceList() { {projectsWithConversations.map((project) => ( - - {project.name} - + + + + {project.name} + + + + {project.path} + + @@ -111,7 +119,7 @@ export function WorkspaceList() { - These projects may appear empty due to folder relocation, Cursor updates, or conversations being stored in a different location. + These projects may appear empty due to folder relocation, Cursor updates, or conversations being stored in a different location. You can still click on a project to check if there are any legacy conversations available. @@ -127,12 +135,19 @@ export function WorkspaceList() { {projectsWithoutConversations.map((project) => ( - - {project.name} - + + + + {project.name} + + + + {project.path} + + 0 @@ -161,7 +176,7 @@ export function WorkspaceList() { - This could be due to an incorrect workspace path configuration or no Cursor projects being available. + This could be due to an incorrect workspace path configuration or no Cursor projects being available. Check the configuration page to verify your Cursor workspace storage location. @@ -170,4 +185,4 @@ export function WorkspaceList() { )} ) -} \ No newline at end of file +} \ No newline at end of file