8000 feat(aider): enhance tmux and screen session handling to support task… · coder/modules@a5509ac · GitHub
[go: up one dir, main page]

Skip to content
This repository was archived by the owner on May 15, 2025. It is now read-only.

Commit a5509ac

Browse files
feat(aider): enhance tmux and screen session handling to support task prompts and logging
1 parent ea6f1f7 commit a5509ac

File tree

1 file changed

+22
-22
lines changed

1 file changed

+22
-22
lines changed

aider/main.tf

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -244,33 +244,33 @@ EOL
244244
export PATH="$HOME/bin:$PATH"
245245
246246
if [ "${var.use_tmux}" = "true" ]; then
247-
# Create a new detached tmux session
248-
tmux new-session -d -s ${var.session_name} -c ${var.folder} "aider"
249-
250-
# Send the prompt to the tmux session if needed
247+
# Check if we have a task prompt
251248
if [ -n "$CODER_MCP_AIDER_TASK_PROMPT" ]; then
252-
echo "Sending initial prompt to Aider tmux session..."
253-
sleep 5 # Wait for Aider to initialize
254-
tmux send-keys -t ${var.session_name} "$CODER_MCP_AIDER_TASK_PROMPT"
255-
sleep 2
256-
tmux send-keys -t ${var.session_name} Enter
249+
echo "Running Aider with message in tmux session..."
250+
# Start aider with the message flag and yes-always to avoid confirmations
251+
tmux new-session -d -s ${var.session_name} -c ${var.folder} "aider --message \"$CODER_MCP_AIDER_TASK_PROMPT\" --yes-always | tee -a \"$HOME/.aider.log\""
252+
# Create a flag file to indicate this task was executed
253+
touch "$HOME/.aider_task_executed"
254+
echo "Aider task started in tmux session '${var.session_name}'. Check the logs for progress."
255+
else
256+
# Create a new detached tmux session for interactive use
257+
tmux new-session -d -s ${var.session_name} -c ${var.folder} "aider | tee -a \"$HOME/.aider.log\""
258+
echo "Tmux session '${var.session_name}' started. Access it by clicking the Aider button."
257259
fi
258-
259-
echo "Tmux session '${var.session_name}' started. Access it by clicking the Aider button."
260260
else
261-
# Create a new detached screen session
262-
screen -dmS ${var.session_name} bash -c "cd ${var.folder} && aider | tee -a \"$HOME/.aider.log\"; exec bash"
263-
264-
# Send the prompt to the screen session if needed
261+
# Check if we have a task prompt
265262
if [ -n "$CODER_MCP_AIDER_TASK_PROMPT" ]; then
266-
echo "Sending initial prompt to Aider screen session..."
267-
sleep 5 # Wait for Aider to initialize
268-
screen -S ${var.session_name} -X stuff "$CODER_MCP_AIDER_TASK_PROMPT"
269-
sleep 2
270-
screen -S ${var.session_name} -X stuff "^M"
263+
echo "Running Aider with message in screen session..."
264+
# Start aider with the message flag and yes-always to avoid confirmations
265+
screen -dmS ${var.session_name} bash -c "cd ${var.folder} && aider --message \"$CODER_MCP_AIDER_TASK_PROMPT\" --yes-always | tee -a \"$HOME/.aider.log\"; exec bash"
266+
# Create a flag file to indicate this task was executed
267+
touch "$HOME/.aider_task_executed"
268+
echo "Aider task started in screen session '${var.session_name}'. Check the logs for progress."
269+
else
270+
# Create a new detached screen session for interactive use
271+
screen -dmS ${var.session_name} bash -c "cd ${var.folder} && aider | tee -a \"$HOME/.aider.log\"; exec bash"
272+
echo "Screen session '${var.session_name}' started. Access it by clicking the Aider button."
271273
fi
272-
273-
echo "Screen session '${var.session_name}' started. Access it by clicking the Aider button."
274274
fi
275275
276276
echo "Aider setup complete!"

0 commit comments

Comments
 (0)
0