29155ec7bc
- Split 25+ index.ts files into hook.ts + extracted modules - Rename all catch-all utils.ts/helpers.ts to domain-specific names - Split src/tools/lsp/ into ~15 focused modules - Split src/tools/delegate-task/ into ~18 focused modules - Separate shared types from implementation - 155 files changed, 60+ new files created - All typecheck clean, 61 tests pass
22 lines
670 B
TypeScript
22 lines
670 B
TypeScript
import type { PluginInput } from "@opencode-ai/plugin"
|
|
|
|
import { buildRetryGuidance } from "./guidance"
|
|
import { detectDelegateTaskError } from "./patterns"
|
|
|
|
export function createDelegateTaskRetryHook(_ctx: PluginInput) {
|
|
return {
|
|
"tool.execute.after": async (
|
|
input: { tool: string; sessionID: string; callID: string },
|
|
output: { title: string; output: string; metadata: unknown }
|
|
) => {
|
|
if (input.tool.toLowerCase() !== "task") return
|
|
|
|
const errorInfo = detectDelegateTaskError(output.output)
|
|
if (errorInfo) {
|
|
const guidance = buildRetryGuidance(errorInfo)
|
|
output.output += `\n${guidance}`
|
|
}
|
|
},
|
|
}
|
|
}
|