@@ -184,6 +184,14 @@ pub async fn run_interactive(
184184
185185 session. print_banner ( ) ;
186186
187+ // Display platform context if a project is selected
188+ if session. platform_session . is_project_selected ( ) {
189+ println ! (
190+ "{}" ,
191+ format!( "Platform context: {}" , session. platform_session. display_context( ) ) . dimmed( )
192+ ) ;
193+ }
194+
187195 // NOTE: Terminal layout with ANSI scroll regions is disabled for now.
188196 // The scroll region approach conflicts with the existing input/output flow.
189197 // TODO: Implement proper scroll region support that integrates with the input handler.
@@ -577,7 +585,23 @@ pub async fn run_interactive(
577585 . tool( PrometheusConnectTool :: new( bg_manager. clone( ) ) )
578586 // RAG retrieval tools for compressed tool outputs
579587 . tool( RetrieveOutputTool :: new( ) )
580- . tool( ListOutputsTool :: new( ) ) ;
588+ . tool( ListOutputsTool :: new( ) )
589+ // Platform tools for project management
590+ . tool( ListOrganizationsTool :: new( ) )
591+ . tool( ListProjectsTool :: new( ) )
592+ . tool( SelectProjectTool :: new( ) )
593+ . tool( CurrentContextTool :: new( ) )
594+ . tool( OpenProviderSettingsTool :: new( ) )
595+ . tool( CheckProviderConnectionTool :: new( ) )
596+ . tool( ListDeploymentCapabilitiesTool :: new( ) )
597+ // Deployment tools for service management
598+ . tool( CreateDeploymentConfigTool :: new( ) )
599+ . tool( DeployServiceTool :: new( project_path_buf. clone( ) ) )
600+ . tool( ListDeploymentConfigsTool :: new( ) )
601+ . tool( TriggerDeploymentTool :: new( ) )
602+ . tool( GetDeploymentStatusTool :: new( ) )
603+ . tool( ListDeploymentsTool :: new( ) )
604+ . tool( GetServiceLogsTool :: new( ) ) ;
581605
582606 // Add tools based on mode
583607 if is_planning {
@@ -678,7 +702,23 @@ pub async fn run_interactive(
678702 . tool( PrometheusConnectTool :: new( bg_manager. clone( ) ) )
679703 // RAG retrieval tools for compressed tool outputs
680704 . tool( RetrieveOutputTool :: new( ) )
681- . tool( ListOutputsTool :: new( ) ) ;
705+ . tool( ListOutputsTool :: new( ) )
706+ // Platform tools for project management
707+ . tool( ListOrganizationsTool :: new( ) )
708+ . tool( ListProjectsTool :: new( ) )
709+ . tool( SelectProjectTool :: new( ) )
710+ . tool( CurrentContextTool :: new( ) )
711+ . tool( OpenProviderSettingsTool :: new( ) )
712+ . tool( CheckProviderConnectionTool :: new( ) )
713+ . tool( ListDeploymentCapabilitiesTool :: new( ) )
714+ // Deployment tools for service management
715+ . tool( CreateDeploymentConfigTool :: new( ) )
716+ . tool( DeployServiceTool :: new( project_path_buf. clone( ) ) )
717+ . tool( ListDeploymentConfigsTool :: new( ) )
718+ . tool( TriggerDeploymentTool :: new( ) )
719+ . tool( GetDeploymentStatusTool :: new( ) )
720+ . tool( ListDeploymentsTool :: new( ) )
721+ . tool( GetServiceLogsTool :: new( ) ) ;
682722
683723 // Add tools based on mode
684724 if is_planning {
@@ -770,7 +810,23 @@ pub async fn run_interactive(
770810 . tool( PrometheusConnectTool :: new( bg_manager. clone( ) ) )
771811 // RAG retrieval tools for compressed tool outputs
772812 . tool( RetrieveOutputTool :: new( ) )
773- . tool( ListOutputsTool :: new( ) ) ;
813+ . tool( ListOutputsTool :: new( ) )
814+ // Platform tools for project management
815+ . tool( ListOrganizationsTool :: new( ) )
816+ . tool( ListProjectsTool :: new( ) )
817+ . tool( SelectProjectTool :: new( ) )
818+ . tool( CurrentContextTool :: new( ) )
819+ . tool( OpenProviderSettingsTool :: new( ) )
820+ . tool( CheckProviderConnectionTool :: new( ) )
821+ . tool( ListDeploymentCapabilitiesTool :: new( ) )
822+ // Deployment tools for service management
823+ . tool( CreateDeploymentConfigTool :: new( ) )
824+ . tool( DeployServiceTool :: new( project_path_buf. clone( ) ) )
825+ . tool( ListDeploymentConfigsTool :: new( ) )
826+ . tool( TriggerDeploymentTool :: new( ) )
827+ . tool( GetDeploymentStatusTool :: new( ) )
828+ . tool( ListDeploymentsTool :: new( ) )
829+ . tool( GetServiceLogsTool :: new( ) ) ;
774830
775831 // Add tools based on mode
776832 if is_planning {
@@ -2210,7 +2266,23 @@ pub async fn run_query(
22102266 . tool ( PrometheusConnectTool :: new ( bg_manager. clone ( ) ) )
22112267 // RAG retrieval tools for compressed tool outputs
22122268 . tool ( RetrieveOutputTool :: new ( ) )
2213- . tool ( ListOutputsTool :: new ( ) ) ;
2269+ . tool ( ListOutputsTool :: new ( ) )
2270+ // Platform tools for project management
2271+ . tool ( ListOrganizationsTool :: new ( ) )
2272+ . tool ( ListProjectsTool :: new ( ) )
2273+ . tool ( SelectProjectTool :: new ( ) )
2274+ . tool ( CurrentContextTool :: new ( ) )
2275+ . tool ( OpenProviderSettingsTool :: new ( ) )
2276+ . tool ( CheckProviderConnectionTool :: new ( ) )
2277+ . tool ( ListDeploymentCapabilitiesTool :: new ( ) )
2278+ // Deployment tools for service management
2279+ . tool ( CreateDeploymentConfigTool :: new ( ) )
2280+ . tool ( DeployServiceTool :: new ( project_path_buf. clone ( ) ) )
2281+ . tool ( ListDeploymentConfigsTool :: new ( ) )
2282+ . tool ( TriggerDeploymentTool :: new ( ) )
2283+ . tool ( GetDeploymentStatusTool :: new ( ) )
2284+ . tool ( ListDeploymentsTool :: new ( ) )
2285+ . tool ( GetServiceLogsTool :: new ( ) ) ;
22142286
22152287 // Add generation tools if this is a generation query
22162288 if is_generation {
@@ -2279,7 +2351,23 @@ pub async fn run_query(
22792351 . tool ( PrometheusConnectTool :: new ( bg_manager. clone ( ) ) )
22802352 // RAG retrieval tools for compressed tool outputs
22812353 . tool ( RetrieveOutputTool :: new ( ) )
2282- . tool ( ListOutputsTool :: new ( ) ) ;
2354+ . tool ( ListOutputsTool :: new ( ) )
2355+ // Platform tools for project management
2356+ . tool ( ListOrganizationsTool :: new ( ) )
2357+ . tool ( ListProjectsTool :: new ( ) )
2358+ . tool ( SelectProjectTool :: new ( ) )
2359+ . tool ( CurrentContextTool :: new ( ) )
2360+ . tool ( OpenProviderSettingsTool :: new ( ) )
2361+ . tool ( CheckProviderConnectionTool :: new ( ) )
2362+ . tool ( ListDeploymentCapabilitiesTool :: new ( ) )
2363+ // Deployment tools for service management
2364+ . tool ( CreateDeploymentConfigTool :: new ( ) )
2365+ . tool ( DeployServiceTool :: new ( project_path_buf. clone ( ) ) )
2366+ . tool ( ListDeploymentConfigsTool :: new ( ) )
2367+ . tool ( TriggerDeploymentTool :: new ( ) )
2368+ . tool ( GetDeploymentStatusTool :: new ( ) )
2369+ . tool ( ListDeploymentsTool :: new ( ) )
2370+ . tool ( GetServiceLogsTool :: new ( ) ) ;
22832371
22842372 // Add generation tools if this is a generation query
22852373 if is_generation {
@@ -2337,7 +2425,23 @@ pub async fn run_query(
23372425 . tool ( PrometheusConnectTool :: new ( bg_manager. clone ( ) ) )
23382426 // RAG retrieval tools for compressed tool outputs
23392427 . tool ( RetrieveOutputTool :: new ( ) )
2340- . tool ( ListOutputsTool :: new ( ) ) ;
2428+ . tool ( ListOutputsTool :: new ( ) )
2429+ // Platform tools for project management
2430+ . tool ( ListOrganizationsTool :: new ( ) )
2431+ . tool ( ListProjectsTool :: new ( ) )
2432+ . tool ( SelectProjectTool :: new ( ) )
2433+ . tool ( CurrentContextTool :: new ( ) )
2434+ . tool ( OpenProviderSettingsTool :: new ( ) )
2435+ . tool ( CheckProviderConnectionTool :: new ( ) )
2436+ . tool ( ListDeploymentCapabilitiesTool :: new ( ) )
2437+ // Deployment tools for service management
2438+ . tool ( CreateDeploymentConfigTool :: new ( ) )
2439+ . tool ( DeployServiceTool :: new ( project_path_buf. clone ( ) ) )
2440+ . tool ( ListDeploymentConfigsTool :: new ( ) )
2441+ . tool ( TriggerDeploymentTool :: new ( ) )
2442+ . tool ( GetDeploymentStatusTool :: new ( ) )
2443+ . tool ( ListDeploymentsTool :: new ( ) )
2444+ . tool ( GetServiceLogsTool :: new ( ) ) ;
23412445
23422446 // Add generation tools if this is a generation query
23432447 if is_generation {
0 commit comments