fix: register compaction todo preserver

Ultraworked with [Sisyphus](https://github.com/code-yeongyu/oh-my-opencode)

Co-authored-by: Sisyphus <clio-agent@sisyphuslabs.ai>
This commit is contained in:
YeonGyu-Kim 2026-02-07 19:15:52 +09:00
parent 3947084cc5
commit 180fcc3e5d
2 changed files with 8 additions and 0 deletions

View File

@ -87,6 +87,7 @@ export const HookNameSchema = z.enum([
"category-skill-reminder",
"compaction-context-injector",
"compaction-todo-preserver",
"claude-code-hooks",
"auto-slash-command",
"edit-error-recovery",

View File

@ -35,6 +35,7 @@ import {
createSubagentQuestionBlockerHook,
createStopContinuationGuardHook,
createCompactionContextInjector,
createCompactionTodoPreserverHook,
createUnstableAgentBabysitterHook,
createPreemptiveCompactionHook,
createTasksTodowriteDisablerHook,
@ -348,6 +349,10 @@ const OhMyOpenCodePlugin: Plugin = async (ctx) => {
? safeCreateHook("compaction-context-injector", () => createCompactionContextInjector(), { enabled: safeHookEnabled })
: null;
const compactionTodoPreserver = isHookEnabled("compaction-todo-preserver")
? safeCreateHook("compaction-todo-preserver", () => createCompactionTodoPreserverHook(ctx), { enabled: safeHookEnabled })
: null;
const todoContinuationEnforcer = isHookEnabled("todo-continuation-enforcer")
? safeCreateHook("todo-continuation-enforcer", () => createTodoContinuationEnforcer(ctx, {
backgroundManager,
@ -718,6 +723,7 @@ const OhMyOpenCodePlugin: Plugin = async (ctx) => {
await interactiveBashSession?.event(input);
await ralphLoop?.event(input);
await stopContinuationGuard?.event(input);
await compactionTodoPreserver?.event(input);
await atlasHook?.handler(input);
const { event } = input;
@ -933,6 +939,7 @@ const OhMyOpenCodePlugin: Plugin = async (ctx) => {
_input: { sessionID: string },
output: { context: string[] },
): Promise<void> => {
await compactionTodoPreserver?.capture(_input.sessionID);
if (!compactionContextInjector) {
return;
}