Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
22 changes: 22 additions & 0 deletions .claude/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
{
"version": "0.0.1",
"configurations": [
{
"name": "McpServer.Web",
"runtimeExecutable": "dotnet",
"runtimeArgs": ["run", "--project", "src/McpServer.Web"],
"port": 39984
},
{
"name": "McpServer.Director",
"runtimeExecutable": "dotnet",
"runtimeArgs": ["run", "--project", "src/McpServer.Director"]
},
{
"name": "McpServerManager.Desktop",
"runtimeExecutable": "dotnet",
"runtimeArgs": ["run", "--project", "src/McpServerManager.Desktop"],
"autoPort": true
}
]
}
35 changes: 35 additions & 0 deletions .claude/settings.local.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"permissions": {
"allow": [
"Bash(find /f/GitHub/McpServerManager/.claude/worktrees/magical-ritchie -type f -name *auth* -o -name *Auth*)",
"mcp__Claude_Preview__preview_start",
"Bash(curl -s http://localhost:7147/auth/config)",
"Bash(curl -s http://localhost:39984/auth/config)",
"Bash(find F:GitHubMcpServerManagersrc F:GitHubMcpServerManagertests -name *.cs -type f)",
"Bash(xargs grep:*)",
"Bash(find F:GitHubMcpServerManagertests -name *.cs -type f)",
"Bash(find F:GitHubMcpServerManager -name *.json -o -name *.xml -o -name *.yaml -o -name *.yml)",
"Bash(grep -r '^namespace McpServer\\\\.' F:GitHubMcpServerManagertests --include=*.cs)",
"Bash(find F:GitHubMcpServerManagersrc -name *.csproj -exec grep -H McpServer. {})",
"Bash(2)",
"Bash(find F:GitHubMcpServerManagersrc -name *.csproj)",
"Bash(find F:GitHubMcpServerManagertests -name *.csproj)",
"Bash(xargs -0 sed -i -e s/McpServer.Director/McpServerManager.Director/g -e s/McpServer.UI/McpServerManager.UI/g -e s/McpServer.Web/McpServerManager.Web/g -e s/McpServer.VsExtension/McpServerManager.VsExtension/g echo 'Done. Checking for double-renames...' grep -r McpServerManagerManager src tests --include=*.cs -l)",
"Bash(echo \"Exit: $?\")",
"Bash(dotnet build:*)",
"Bash(while read:*)",
"Bash(do grep:*)",
"Bash(done)",
"Bash(xargs -0 sed -i -e 's/McpServer\\\\.Director/McpServerManager.Director/g' -e 's/McpServer\\\\.UI/McpServerManager.UI/g' -e 's/McpServer\\\\.Web/McpServerManager.Web/g' -e 's/McpServer\\\\.VsExtension/McpServerManager.VsExtension/g' echo \"AXAML files updated\")",
"Bash(do echo:*)",
"Read(//f/GitHub/McpServerManager/.claude/worktrees/magical-ritchie/**)",
"Bash(find /f/GitHub/McpServerManager -type f -name Build.cs -o -name Build.csproj -o -name *.nuke)",
"Bash(grep -n \"void RunDeploy\\\\|void RunPackDirector\\\\|void RunUpdateDirector\\\\|void RunUpdateWebUi\\\\|void RunBuildDesktop\\\\|void RunDeployAll\" /f/GitHub/McpServerManager/build/*.cs)",
"Bash(grep -n \"private.*DeployDirectorCore\\\\|private.*DeployWebUiCore\\\\|private.*DeployDesktopMsixCore\\\\|private.*DeployDesktopDebCore\" /f/GitHub/McpServerManager/build/*.cs)",
"Bash(grep -n \"BuildDesktopDebCore\" /f/GitHub/McpServerManager/build/*.cs)",
"Bash(grep -n \"BuildDesktopMsixCore\" /f/GitHub/McpServerManager/build/*.cs)",
"Bash(dotnet run:*)",
"Bash(find F:GitHubMcpServerManager -type f -name *.yaml -o -name *.yml)"
]
}
}
4 changes: 2 additions & 2 deletions nupkg/SharpNinja.McpServer.Director.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>SharpNinja.McpServer.Director</id>
<version>0.5.1-42</version>
<version>0.5.1</version>
<authors>SharpNinja</authors>
<description>CLI management tool for McpServer. Provides workspace management, agent orchestration, compliance policy editing, Keycloak OIDC auth, and an interactive Terminal.Gui TUI with 7 tabbed screens. 18 CLI commands via System.CommandLine.</description>
<packageTypes>
<packageType name="DotnetTool" />
</packageTypes>
</metadata>
<files>
<file src="E:\github\RequestTracker\src\McpServer.Director\bin\Release\net9.0\publish\**" target="tools/net9.0/any" />
<file src="F:\GitHub\McpServerManager\.claude\worktrees\magical-ritchie\src\McpServer.Director\bin\Release\net9.0\publish\**" target="tools/net9.0/any" />
</files>
</package>
4 changes: 2 additions & 2 deletions nupkg/SharpNinja.McpServer.Web.nuspec
Original file line number Diff line number Diff line change
Expand Up @@ -2,14 +2,14 @@
<package xmlns="http://schemas.microsoft.com/packaging/2012/06/nuspec.xsd">
<metadata>
<id>SharpNinja.McpServer.Web</id>
<version>0.5.1-37</version>
<version>0.5.1</version>
<authors>SharpNinja</authors>
<description>SharpNinja.McpServer.Web</description>
<packageTypes>
<packageType name="DotnetTool" />
</packageTypes>
</metadata>
<files>
<file src="E:\github\RequestTracker\src\McpServer.Web\bin\Release\net9.0\publish\**" target="tools/net9.0/any" />
<file src="F:\GitHub\McpServerManager\.claude\worktrees\magical-ritchie\src\McpServer.Web\bin\Release\net9.0\publish\**" target="tools/net9.0/any" />
</files>
</package>
6 changes: 3 additions & 3 deletions src/McpServer.Director/AgentApiClientAdapter.cs
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
using McpServer.Client;
using McpServer.Client.Models;
using McpServer.UI.Core.Messages;
using McpServer.UI.Core.Services;
using McpServerManager.UI.Core.Messages;
using McpServerManager.UI.Core.Services;
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Abstractions;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// Director adapter for <see cref="IAgentApiClient"/> backed by <see cref="McpServerClient"/>.
Expand Down
6 changes: 3 additions & 3 deletions src/McpServer.Director/AgentPoolApiClientAdapter.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
using McpServer.Client;
using McpServer.Client.Models;
using McpServer.UI.Core.Messages;
using McpServer.UI.Core.Services;
using McpServerManager.UI.Core.Messages;
using McpServerManager.UI.Core.Services;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// Director adapter for <see cref="IAgentPoolApiClient"/> backed by <see cref="McpServerClient"/>.
Expand Down
2 changes: 1 addition & 1 deletion src/McpServer.Director/Auth/DirectorAuthOptions.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
namespace McpServer.Director.Auth;
namespace McpServerManager.Director.Auth;

/// <summary>
/// Configuration options for Director CLI Keycloak OIDC authentication.
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using McpServer.UI.Core.Authorization;
using McpServerManager.UI.Core.Authorization;

namespace McpServer.Director.Auth;
namespace McpServerManager.Director.Auth;

/// <summary>
/// Director RBAC policy implementation for tab visibility and command authorization.
Expand Down
4 changes: 2 additions & 2 deletions src/McpServer.Director/Auth/DirectorHostIdentityProvider.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using McpServer.UI.Core.Auth;
using McpServerManager.UI.Core.Auth;

namespace McpServer.Director.Auth;
namespace McpServerManager.Director.Auth;

internal sealed class DirectorHostIdentityProvider : IHostIdentityProvider
{
Expand Down
4 changes: 2 additions & 2 deletions src/McpServer.Director/Auth/DirectorRoleContext.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using McpServer.UI.Core.Authorization;
using McpServerManager.UI.Core.Authorization;

namespace McpServer.Director.Auth;
namespace McpServerManager.Director.Auth;

/// <summary>
/// Director implementation of <see cref="IRoleContext"/>, sourced from the cached OIDC token.
Expand Down
2 changes: 1 addition & 1 deletion src/McpServer.Director/Auth/OidcAuthService.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
using Microsoft.Extensions.Logging;
using Microsoft.Extensions.Logging.Abstractions;

namespace McpServer.Director.Auth;
namespace McpServerManager.Director.Auth;

/// <summary>
/// Result of a login attempt via the Device Authorization Flow.
Expand Down
2 changes: 1 addition & 1 deletion src/McpServer.Director/Auth/TokenCache.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using System.Text.Json;

namespace McpServer.Director.Auth;
namespace McpServerManager.Director.Auth;

/// <summary>
/// Cached OAuth token data, persisted to <c>~/.mcpserver/tokens.json</c>.
Expand Down
6 changes: 3 additions & 3 deletions src/McpServer.Director/AuthConfigApiClientAdapter.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
using McpServer.UI.Core.Messages;
using McpServer.UI.Core.Services;
using McpServerManager.UI.Core.Messages;
using McpServerManager.UI.Core.Services;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>Director adapter for <see cref="IAuthConfigApiClient"/>.</summary>
internal sealed class AuthConfigApiClientAdapter : IAuthConfigApiClient
Expand Down
4 changes: 2 additions & 2 deletions src/McpServer.Director/Commands/AgentHostCommand.cs
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
using System.Text.Json;
using McpServer.Client;
using McpServer.Client.Models;
using McpServer.Director.Auth;
using McpServerManager.Director.Auth;
using McpServer.McpAgent;
using McpServer.McpAgent.Hosting;
using McpServer.McpAgent.PowerShellSessions;
Expand All @@ -16,7 +16,7 @@
using OpenAIChatClient = OpenAI.Chat.ChatClient;
using OpenAIClientOptions = OpenAI.OpenAIClientOptions;

namespace McpServer.Director.Commands;
namespace McpServerManager.Director.Commands;

internal static class AgentHostCommand
{
Expand Down
10 changes: 5 additions & 5 deletions src/McpServer.Director/Commands/AuthCommands.cs
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
using System.CommandLine;
using McpServer.Director.Auth;
using McpServer.Director.Helpers;
using McpServer.UI.Core.Messages;
using McpServerManager.Director.Auth;
using McpServerManager.Director.Helpers;
using McpServerManager.UI.Core.Messages;
using Microsoft.Extensions.DependencyInjection;
using Spectre.Console;
using static McpServer.Director.Commands.CommandHelpers;
using static McpServerManager.Director.Commands.CommandHelpers;

namespace McpServer.Director.Commands;
namespace McpServerManager.Director.Commands;

/// <summary>
/// FR-MCP-030: Authentication commands for the Director CLI.
Expand Down
2 changes: 1 addition & 1 deletion src/McpServer.Director/Commands/CommandHelpers.cs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
using Microsoft.Extensions.DependencyInjection;
using Spectre.Console;

namespace McpServer.Director.Commands;
namespace McpServerManager.Director.Commands;

/// <summary>Shared helpers for Director CLI commands.</summary>
internal static class CommandHelpers
Expand Down
4 changes: 2 additions & 2 deletions src/McpServer.Director/Commands/ConfigCommands.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
using System.CommandLine;
using Spectre.Console;
using static McpServer.Director.Commands.CommandHelpers;
using static McpServerManager.Director.Commands.CommandHelpers;

namespace McpServer.Director.Commands;
namespace McpServerManager.Director.Commands;

/// <summary>
/// CLI configuration commands for Director defaults (e.g., default MCP server URL).
Expand Down
6 changes: 3 additions & 3 deletions src/McpServer.Director/Commands/DirectorCommands.cs
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
using System.CommandLine;
using McpServer.Cqrs;
using McpServer.UI.Core.Messages;
using McpServerManager.UI.Core.Messages;
using Spectre.Console;
using static McpServer.Director.Commands.CommandHelpers;
using static McpServerManager.Director.Commands.CommandHelpers;

namespace McpServer.Director.Commands;
namespace McpServerManager.Director.Commands;

/// <summary>
/// FR-MCP-030: Director CLI commands for health, workspace/agent operations, TODO, and session logs.
Expand Down
12 changes: 6 additions & 6 deletions src/McpServer.Director/Commands/InteractiveCommand.cs
Original file line number Diff line number Diff line change
@@ -1,15 +1,15 @@
using System.CommandLine;
using McpServer.Cqrs;
using McpServer.Cqrs.Mvvm;
using McpServer.Director.Helpers;
using McpServer.Director.Screens;
using McpServer.UI.Core.Authorization;
using McpServer.UI.Core.Navigation;
using McpServer.UI.Core.ViewModels;
using McpServerManager.Director.Helpers;
using McpServerManager.Director.Screens;
using McpServerManager.UI.Core.Authorization;
using McpServerManager.UI.Core.Navigation;
using McpServerManager.UI.Core.ViewModels;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.Logging;

namespace McpServer.Director.Commands;
namespace McpServerManager.Director.Commands;

/// <summary>
/// FR-MCP-030: Interactive TUI command that launches Terminal.Gui with ViewModel-bound screens.
Expand Down
4 changes: 2 additions & 2 deletions src/McpServer.Director/ConfigurationApiClientAdapter.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using McpServer.UI.Core.Services;
using McpServerManager.UI.Core.Services;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>Director adapter for <see cref="IConfigurationApiClient"/>.</summary>
internal sealed class ConfigurationApiClientAdapter : IConfigurationApiClient
Expand Down
6 changes: 3 additions & 3 deletions src/McpServer.Director/ContextApiClientAdapter.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
using McpServer.Client;
using McpServer.Client.Models;
using McpServer.UI.Core.Messages;
using McpServer.UI.Core.Services;
using McpServerManager.UI.Core.Messages;
using McpServerManager.UI.Core.Services;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>Director adapter for <see cref="IContextApiClient"/>.</summary>
internal sealed class ContextApiClientAdapter : IContextApiClient
Expand Down
6 changes: 3 additions & 3 deletions src/McpServer.Director/DiagnosticApiClientAdapter.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
using McpServer.UI.Core.Messages;
using McpServer.UI.Core.Services;
using McpServerManager.UI.Core.Messages;
using McpServerManager.UI.Core.Services;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>Director adapter for <see cref="IDiagnosticApiClient"/>.</summary>
internal sealed class DiagnosticApiClientAdapter : IDiagnosticApiClient
Expand Down
2 changes: 1 addition & 1 deletion src/McpServer.Director/DirectorCliConfigStore.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using System.Text.Json;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// Persists Director CLI defaults (for non-workspace usage) under the user's profile.
Expand Down
2 changes: 1 addition & 1 deletion src/McpServer.Director/DirectorHost.cs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
using Microsoft.Extensions.DependencyInjection;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// Shared Director composition root for all short-lived provider entry points.
Expand Down
2 changes: 1 addition & 1 deletion src/McpServer.Director/DirectorLogging.cs
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@
using Serilog;
using Serilog.Extensions.Logging;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// TR-MCP-LOG-001: Configures Serilog file-based logging for the Director CLI.
Expand Down
6 changes: 3 additions & 3 deletions src/McpServer.Director/DirectorMcpContext.cs
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
using McpServer.Client;
using McpServer.Director.Auth;
using McpServer.UI.Core.Hosting;
using McpServerManager.Director.Auth;
using McpServerManager.UI.Core.Hosting;
using System.Text.Json;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// Director runtime connection context:
Expand Down
18 changes: 9 additions & 9 deletions src/McpServer.Director/DirectorServiceRegistration.cs
Original file line number Diff line number Diff line change
@@ -1,18 +1,18 @@
using McpServer.Client;
using McpServer.Cqrs;
using McpServer.Director.Auth;
using McpServer.Director.Helpers;
using McpServer.UI.Core;
using McpServer.UI.Core.Auth;
using McpServer.UI.Core.Authorization;
using McpServer.UI.Core.Navigation;
using McpServer.UI.Core.Hosting;
using McpServer.UI.Core.Services;
using McpServerManager.Director.Auth;
using McpServerManager.Director.Helpers;
using McpServerManager.UI.Core;
using McpServerManager.UI.Core.Auth;
using McpServerManager.UI.Core.Authorization;
using McpServerManager.UI.Core.Navigation;
using McpServerManager.UI.Core.Hosting;
using McpServerManager.UI.Core.Services;
using Microsoft.Extensions.DependencyInjection;
using Microsoft.Extensions.DependencyInjection.Extensions;
using Microsoft.Extensions.Logging;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// TR-MCP-DRY-001: Shared DI registration for all Director entry points.
Expand Down
6 changes: 3 additions & 3 deletions src/McpServer.Director/DirectorTabRegistry.cs
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
using McpServer.UI.Core.Authorization;
using McpServer.UI.Core.Navigation;
using McpServerManager.UI.Core.Authorization;
using McpServerManager.UI.Core.Navigation;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// In-memory tab registry used by Director to declaratively build tab navigation.
Expand Down
6 changes: 3 additions & 3 deletions src/McpServer.Director/EventStreamApiClientAdapter.cs
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
using McpServer.Client;
using McpServer.UI.Core.Messages;
using McpServer.UI.Core.Services;
using McpServerManager.UI.Core.Messages;
using McpServerManager.UI.Core.Services;

namespace McpServer.Director;
namespace McpServerManager.Director;

/// <summary>
/// Director adapter for <see cref="IEventStreamApiClient"/> backed by <see cref="McpServerClient"/>.
Expand Down
Loading