-
Notifications
You must be signed in to change notification settings - Fork 301
fix(group-chat): pass global shell env vars to moderator/participant spawns #887
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -28,6 +28,8 @@ export interface IProcessManager { | |
| readOnlyMode?: boolean; | ||
| prompt?: string; | ||
| customEnvVars?: Record<string, string>; | ||
| /** Global shell env vars from Settings → Shell Configuration (merged by envBuilder). */ | ||
| shellEnvVars?: Record<string, string>; | ||
|
Comment on lines
+31
to
+32
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
# Find process-manager-like spawn config interfaces that may need shellEnvVars added.
rg -n -C8 'interface .*ProcessManager|spawn\(config:\s*\{' --iglob '*.ts'Repository: RunMaestro/Maestro Length of output: 5080 🏁 Script executed: #!/bin/bash
# Get full IProcessManager definition in group-chat-moderator.ts
echo "=== IProcessManager in group-chat-moderator.ts ==="
sed -n '21,40p' src/main/group-chat/group-chat-moderator.ts
echo ""
echo "=== GenericProcessManager in groupChat.ts ==="
sed -n '129,150p' src/main/ipc/handlers/groupChat.ts
echo ""
echo "=== GroomingProcessManager in context-groomer.ts ==="
sed -n '26,45p' src/main/utils/context-groomer.tsRepository: RunMaestro/Maestro Length of output: 2190 🏁 Script executed: #!/bin/bash
# Check how GenericProcessManager is used in groupChat.ts
echo "=== Search for GenericProcessManager usage ==="
rg -n "GenericProcessManager" src/main/ipc/handlers/groupChat.ts -A 3 -B 3
echo ""
echo "=== Check moderatorRunner and agentRunner types ==="
rg -n "moderatorRunner|agentRunner" src/main/ipc/handlers/groupChat.ts -A 2 -B 2
echo ""
echo "=== Check if GenericProcessManager is instantiated or casted ==="
grep -n "new\|as GenericProcessManager\|as IProcessManager" src/main/ipc/handlers/groupChat.ts || echo "No direct instantiation found"Repository: RunMaestro/Maestro Length of output: 2495 🏁 Script executed: #!/bin/bash
# Check where getProcessManager is called and what's passed to spawn()
echo "=== Find getProcessManager() calls ==="
rg -n "getProcessManager\(\)" src/main/ipc/handlers/groupChat.ts -A 5
echo ""
echo "=== Look for spawn() calls in groupChat.ts ==="
rg -n "\.spawn\(" src/main/ipc/handlers/groupChat.ts -A 8
echo ""
echo "=== Check GroupChatModerator instantiation ==="
rg -n "new GroupChatModerator\|GroupChatModerator\(" src/main/ipc/handlers/groupChat.ts -B 2 -A 5Repository: RunMaestro/Maestro Length of output: 3785 🏁 Script executed: #!/bin/bash
# Find spawnModerator and related spawn calls
echo "=== Search for spawnModerator function ==="
rg -n "function spawnModerator|const spawnModerator|export.*spawnModerator" src/main/ipc/handlers/groupChat.ts -A 20
echo ""
echo "=== Look for spawn calls within groupChat functions ==="
rg -n "processManager\.spawn\|\.spawn\(" src/main/ipc/handlers/groupChat.ts -B 3 -A 10
echo ""
echo "=== Check GroupChatModerator for spawn() calls ==="
rg -n "this\.processManager\.spawn\|processManager\.spawn" src/main/group-chat/group-chat-moderator.ts -B 2 -A 10Repository: RunMaestro/Maestro Length of output: 213 🏁 Script executed: #!/bin/bash
# Simpler search for spawnModerator
echo "=== Plain search for spawnModerator ==="
grep -rn "spawnModerator" src/main/ipc/handlers/groupChat.ts src/main/group-chat/
echo ""
echo "=== Look for spawn in group-chat directory ==="
grep -n "\.spawn(" src/main/group-chat/group-chat-moderator.ts | head -20
echo ""
echo "=== Check what functions exist in groupChat.ts before line 200 ==="
sed -n '1,200p' src/main/ipc/handlers/groupChat.ts | grep -n "^\(function\|const\|export\)" | tail -20Repository: RunMaestro/Maestro Length of output: 1781 🏁 Script executed: #!/bin/bash
# Read spawnModerator implementation
echo "=== spawnModerator function ==="
sed -n '154,250p' src/main/group-chat/group-chat-moderator.ts
echo ""
echo "=== Look for spawn calls in the entire function ==="
grep -n "\.spawn(" src/main/group-chat/group-chat-moderator.ts -B 5 -A 15Repository: RunMaestro/Maestro Length of output: 3163 🏁 Script executed: #!/bin/bash
# Find actual spawn calls in group-chat-router.ts
echo "=== Spawn calls in group-chat-router.ts ==="
grep -n "\.spawn(" src/main/group-chat/group-chat-router.ts -B 5 -A 20 | head -80
echo ""
echo "=== Also check for shell-related fields ==="
grep -n "shellEnvVars\|shell:\|runInShell" src/main/group-chat/ -rRepository: RunMaestro/Maestro Length of output: 5304 🏁 Script executed: #!/bin/bash
# Check if there's any type casting or overriding of GenericProcessManager
echo "=== Where is processManager typed as GenericProcessManager vs IProcessManager? ==="
grep -n "processManager.*GenericProcessManager\|processManager.*IProcessManager" src/main/ipc/handlers/groupChat.ts
echo ""
echo "=== Check the actual type of processManager in group-chat-router.ts ==="
head -150 src/main/group-chat/group-chat-router.ts | grep -n "import.*ProcessManager\|ProcessManager\|processManager"
echo ""
echo "=== Verify the actual spawn call parameter types ==="
sed -n '817,834p' src/main/group-chat/group-chat-router.tsRepository: RunMaestro/Maestro Length of output: 927 🏁 Script executed: #!/bin/bash
# Final check: verify what fields are used in spawn calls to ensure completeness
echo "=== All unique fields passed to spawn() in group-chat-router.ts ==="
grep -o "^\s*[a-zA-Z]*:" src/main/group-chat/group-chat-router.ts | grep -A30 "\.spawn({" | sort -u
echo ""
echo "=== Compare against GenericProcessManager definition ==="
sed -n '129,150p' src/main/ipc/handlers/groupChat.ts
echo ""
echo "=== Compare against IProcessManager definition ==="
sed -n '21,45p' src/main/group-chat/group-chat-moderator.tsRepository: RunMaestro/Maestro Length of output: 1763 Sync GenericProcessManager interface with IProcessManager spawn config. GenericProcessManager is missing 6 optional fields that actual spawn() calls in group-chat-router.ts use: 🤖 Prompt for AI Agents |
||
| contextWindow?: number; | ||
| promptArgs?: (prompt: string) => string[]; | ||
| noPromptSeparator?: boolean; | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.