Improve harness reliability, cancellation, and session persistence
8 months ago
Authored
mweinbach- propagate abort signals through agent, tools, and spawned subagents
- add streamText error/abort handlers and configurable retry/timeout model settings
- harden tool behavior: MCP name-collision remap, streaming read tool, bounded glob output, and skill cache invalidation
- serialize backup/checkpoint operations, add prompt timeouts, throttle auto-checkpoints, and compact/prune closed session backups
- support websocket session reattach via resumeSessionId and merge startup provider options with config
- tighten protocol validation and expand observability/session tests and docs
Parentaedd80a
31 files changed
- apps/desktop/bun.lock+480−1
- apps/desktop/package.json+17−0
- apps/desktop/src/components/ui/button.tsx+44−0
- apps/desktop/src/lib/designTokens.ts+25−0
- apps/desktop/src/lib/utils.ts+6−0
- docs/harness/index.md+1−0
- docs/websocket-protocol.md+2−2
- src/agent.ts+53−1
- src/config.ts
+64
−0
src/observability/runtime.ts+6−5src/server/protocol.ts+2−1src/server/session.ts+361−89src/server/sessionBackup.ts+49−0src/server/startServer.ts+104−20src/tools/bash.ts+53−7src/tools/context.ts+6−0src/tools/glob.ts+33−6src/tools/memory.ts+16−3src/tools/read.ts+26−5src/tools/skill.ts+21−12src/tools/spawnAgent.ts+28−1src/types.ts+17−0test/agent.test.ts+69−0test/config.test.ts+78−0test/observability.runtime.test.ts+28−53test/protocol.test.ts+26−0test/server.test.ts+17−0test/session-backup.test.ts+25−1test/session.test.ts+12−0test/spawnAgent.tool.test.ts+21−2test/tools.test.ts+26−3