@@ -72,10 +72,11 @@ pub async fn claude_get_session_details(
7272 let session_id = uuid:: Uuid :: parse_str ( & session_id) . map_err ( anyhow:: Error :: from) ?;
7373 let session = but_claude:: db:: get_session_by_id ( & mut ctx, session_id) ?
7474 . context ( "Could not find session" ) ?;
75- let current_id = Transcript :: current_valid_session_id ( & project. path , & session) . await ?;
75+ let current_id =
76+ Transcript :: current_valid_session_id ( & project. worktree_dir ( ) , & session) . await ?;
7677 if let Some ( current_id) = current_id {
7778 let transcript_path =
78- but_claude:: Transcript :: get_transcript_path ( & project. path , current_id) ?;
79+ but_claude:: Transcript :: get_transcript_path ( & project. worktree_dir ( ) , current_id) ?;
7980 let transcript = but_claude:: Transcript :: from_file ( & transcript_path) ?;
8081 Ok ( but_claude:: ClaudeSessionDetails {
8182 summary : transcript. summary ( ) ,
@@ -204,8 +205,8 @@ pub fn claude_maybe_create_prompt_dir(project_id: ProjectId, path: String) -> Re
204205#[ instrument( err( Debug ) ) ]
205206pub async fn claude_get_mcp_config ( project_id : ProjectId ) -> Result < McpConfig , Error > {
206207 let project = gitbutler_project:: get ( project_id) ?;
207- let settings = ClaudeSettings :: open ( & project. path ) . await ;
208- let mcp_config = ClaudeMcpConfig :: open ( & settings, & project. path ) . await ;
208+ let settings = ClaudeSettings :: open ( & project. worktree_dir ( ) ) . await ;
209+ let mcp_config = ClaudeMcpConfig :: open ( & settings, & project. worktree_dir ( ) ) . await ;
209210 Ok ( mcp_config. mcp_servers ( ) )
210211}
211212
@@ -215,7 +216,8 @@ pub async fn claude_get_sub_agents(
215216 project_id : ProjectId ,
216217) -> Result < Vec < but_claude:: SubAgent > , Error > {
217218 let project = gitbutler_project:: get ( project_id) ?;
218- let sub_agents = but_claude:: claude_sub_agents:: read_claude_sub_agents ( & project. path ) . await ;
219+ let sub_agents =
220+ but_claude:: claude_sub_agents:: read_claude_sub_agents ( & project. worktree_dir ( ) ) . await ;
219221 Ok ( sub_agents)
220222}
221223
@@ -229,7 +231,7 @@ pub async fn claude_verify_path(project_id: ProjectId, path: String) -> Result<b
229231 std:: path:: PathBuf :: from ( & path)
230232 } else {
231233 // If relative, make it relative to project path
232- project. path . join ( & path)
234+ project. worktree_dir ( ) . join ( & path)
233235 } ;
234236
235237 // Check if the path exists and is a directory
0 commit comments