Let task agents use client Macs directly: bash, copy and hands
This commit is contained in:
@@ -50,6 +50,7 @@ final class Store {
|
||||
let images = ImageDrafts()
|
||||
let events = Listeners<ByreEvent>()
|
||||
let paneFocus: PaneFocus
|
||||
let remote: Remote
|
||||
|
||||
private var taskFeeds: [String: Feed] = [:]
|
||||
@ObservationIgnored private var historyLoads: Set<ObjectIdentifier> = []
|
||||
@@ -62,12 +63,14 @@ final class Store {
|
||||
self.api = api
|
||||
leadFeed = Feed(shown: { true })
|
||||
paneFocus = PaneFocus(api: api)
|
||||
remote = Remote(api: api)
|
||||
}
|
||||
|
||||
func stop() async {
|
||||
stopped = true
|
||||
globalStream?.stop()
|
||||
leadStream?.stop()
|
||||
remote.stop()
|
||||
drafts?.flush()
|
||||
await paneFocus.leave()
|
||||
}
|
||||
@@ -163,9 +166,6 @@ final class Store {
|
||||
if open.contains(where: { $0.kind == .question }) {
|
||||
return TaskState(kind: .answer, label: "Needs your answer", title: "The agent asked a question in the inbox")
|
||||
}
|
||||
if open.contains(where: { $0.kind == .clientRun }) {
|
||||
return TaskState(kind: .answer, label: "Ready to run", title: "The agent asked to run something on your Mac; see the inbox")
|
||||
}
|
||||
if task.merging {
|
||||
return TaskState(kind: .merging, label: "Merging", title: "The merge turn is running")
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user