Skip to content

Commit e302271

Browse files
committed
Handle review notes
1 parent d451973 commit e302271

2 files changed

Lines changed: 19 additions & 10 deletions

File tree

apps/twig/src/main/services/agent/service.ts

Lines changed: 9 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -22,12 +22,11 @@ import { app } from "electron";
2222
import { inject, injectable, preDestroy } from "inversify";
2323
import type { ExecutionMode } from "@/shared/types.js";
2424
import type { AcpMessage } from "../../../shared/types/session-events.js";
25-
import { container } from "../../di/container.js";
2625
import { MAIN_TOKENS } from "../../di/tokens.js";
2726
import { logger } from "../../lib/logger.js";
2827
import { TypedEventEmitter } from "../../lib/typed-event-emitter.js";
2928
import type { ProcessTrackingService } from "../process-tracking/service.js";
30-
import type { SleepService } from "../sleep/service.js";
29+
import { SleepService } from "../sleep/service.js";
3130
import {
3231
AgentServiceEvent,
3332
type AgentServiceEvents,
@@ -220,17 +219,17 @@ export class AgentService extends TypedEventEmitter<AgentServiceEvents> {
220219
private currentToken: string | null = null;
221220
private pendingPermissions = new Map<string, PendingPermission>();
222221
private processTracking: ProcessTrackingService;
222+
private sleepService: SleepService;
223223

224224
constructor(
225225
@inject(MAIN_TOKENS.ProcessTrackingService)
226226
processTracking: ProcessTrackingService,
227+
@inject(MAIN_TOKENS.SleepService)
228+
sleepService: SleepService,
227229
) {
228230
super();
229231
this.processTracking = processTracking;
230-
}
231-
232-
private get sleepService() {
233-
return container.get<SleepService>(MAIN_TOKENS.SleepService);
232+
this.sleepService = sleepService;
234233
}
235234

236235
public updateToken(newToken: string): void {
@@ -1027,7 +1026,10 @@ For git operations while detached:
10271026
},
10281027
);
10291028
} finally {
1030-
service.sleepService.acquire(taskRunId);
1029+
// Only re-acquire if session wasn't cleaned up while waiting
1030+
if (service.sessions.has(taskRunId)) {
1031+
service.sleepService.acquire(taskRunId);
1032+
}
10311033
}
10321034
}
10331035

apps/twig/src/renderer/features/settings/components/sections/ClaudeCodeSettings.tsx

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import {
1414
import { Tooltip } from "@renderer/components/ui/Tooltip";
1515
import { track } from "@renderer/lib/analytics";
1616
import { trpcReact } from "@renderer/trpc";
17-
import { useCallback, useState } from "react";
17+
import { useCallback, useEffect, useState } from "react";
1818
import { ANALYTICS_EVENTS } from "@/types/analytics";
1919

2020
function CopyableCommand({ command }: { command: string }) {
@@ -79,8 +79,15 @@ export function ClaudeCodeSettings() {
7979
setPreventSleepWhileRunning,
8080
} = useSettingsStore();
8181

82+
const { data: serverPreventSleep } = trpcReact.sleep.getEnabled.useQuery();
8283
const preventSleepMutation = trpcReact.sleep.setEnabled.useMutation();
8384

85+
useEffect(() => {
86+
if (serverPreventSleep !== undefined) {
87+
setPreventSleepWhileRunning(serverPreventSleep);
88+
}
89+
}, [serverPreventSleep, setPreventSleepWhileRunning]);
90+
8491
const [showBypassWarning, setShowBypassWarning] = useState(false);
8592

8693
const handlePreventSleepChange = useCallback(
@@ -125,8 +132,8 @@ export function ClaudeCodeSettings() {
125132
return (
126133
<Flex direction="column">
127134
<SettingRow
128-
label="Prevent sleep while running"
129-
description="Keep your computer awake while the agent is running a task"
135+
label="Keep awake while agents work"
136+
description="Prevent your computer from sleeping while the agent is running a task"
130137
>
131138
<Switch
132139
checked={preventSleepWhileRunning}

0 commit comments

Comments
 (0)