- {
- /* Local state only */
- }}
- onCustomPathClear={() => setCustomPath('')}
- customArgs={customArgs}
- onCustomArgsChange={setCustomArgs}
- onCustomArgsBlur={() => {
- /* Local state only */
- }}
- onCustomArgsClear={() => setCustomArgs('')}
- customEnvVars={customEnvVars}
- onEnvVarKeyChange={(oldKey, newKey, value) => {
- const newVars = { ...customEnvVars };
- delete newVars[oldKey];
- newVars[newKey] = value;
- setCustomEnvVars(newVars);
- }}
- onEnvVarValueChange={(key, value) => {
- setCustomEnvVars({ ...customEnvVars, [key]: value });
- }}
- onEnvVarRemove={(key) => {
- const newVars = { ...customEnvVars };
- delete newVars[key];
- setCustomEnvVars(newVars);
- }}
- onEnvVarAdd={() => {
- let newKey = 'NEW_VAR';
- let counter = 1;
- while (customEnvVars[newKey]) {
- newKey = `NEW_VAR_${counter}`;
- counter++;
- }
- setCustomEnvVars({ ...customEnvVars, [newKey]: '' });
- }}
- onEnvVarsBlur={() => {
- /* Local state only */
- }}
- agentConfig={agentConfig}
- onConfigChange={(key, value) => {
- const newConfig = { ...agentConfig, [key]: value };
- setAgentConfig(newConfig);
- agentConfigRef.current = newConfig;
- }}
- onConfigBlur={async () => {
- if (selectedAgent) {
- // Use ref to get latest config (state may be stale in async callback)
- await window.maestro.agents.setConfig(selectedAgent, agentConfigRef.current);
- }
- }}
- availableModels={availableModels}
- loadingModels={loadingModels}
- onRefreshModels={handleRefreshModels}
- onRefreshAgent={handleRefreshAgent}
- refreshingAgent={refreshingAgent}
- compact
- showBuiltInEnvVars
- />
-
-
- );
- }
-
- // Render grid view
return (
}
>
-
+
{/* Description */}
A Group Chat lets you collaborate with multiple AI agents in a single conversation. The{' '}
@@ -422,98 +311,170 @@ export function NewGroupChatModal({
Claude appears to be the best performing moderator.
- {/* Agent Selection */}
+ {/* Moderator Selection - Dropdown with Customize button */}
{isDetecting ? (
-
+
+
+ Detecting agents...
+
) : availableTiles.length === 0 ? (
-
- No agents available. Please install Claude Code, OpenCode, or Codex.
+
+ No agents available. Please install Claude Code, OpenCode, Codex, or Factory Droid.