oh-my-opencode 3.5.6 → 3.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/README.ja.md +6 -6
  2. package/README.ko.md +6 -6
  3. package/README.md +6 -6
  4. package/README.zh-cn.md +6 -6
  5. package/dist/agents/sisyphus-junior/gpt.d.ts +4 -14
  6. package/dist/cli/index.js +450 -116
  7. package/dist/cli/run/event-handlers.d.ts +1 -0
  8. package/dist/cli/run/opencode-bin-path.d.ts +3 -0
  9. package/dist/cli/run/opencode-binary-resolver.d.ts +5 -0
  10. package/dist/cli/run/session-resolver.d.ts +1 -0
  11. package/dist/cli/run/types.d.ts +30 -1
  12. package/dist/config/schema/browser-automation.d.ts +2 -0
  13. package/dist/config/schema/experimental.d.ts +1 -0
  14. package/dist/config/schema/hooks.d.ts +1 -0
  15. package/dist/config/schema/oh-my-opencode-config.d.ts +3 -0
  16. package/dist/create-hooks.d.ts +3 -0
  17. package/dist/create-managers.d.ts +1 -0
  18. package/dist/features/background-agent/constants.d.ts +1 -1
  19. package/dist/features/background-agent/manager.d.ts +3 -0
  20. package/dist/features/background-agent/message-dir.d.ts +1 -1
  21. package/dist/features/background-agent/result-handler.d.ts +1 -1
  22. package/dist/features/builtin-skills/skills/index.d.ts +1 -0
  23. package/dist/features/builtin-skills/skills/playwright-cli.d.ts +10 -0
  24. package/dist/features/claude-code-mcp-loader/loader.d.ts +1 -1
  25. package/dist/features/hook-message-injector/constants.d.ts +1 -3
  26. package/dist/features/hook-message-injector/index.d.ts +1 -1
  27. package/dist/features/hook-message-injector/injector.d.ts +51 -3
  28. package/dist/features/tmux-subagent/action-executor-core.d.ts +21 -0
  29. package/dist/features/tmux-subagent/action-executor.d.ts +3 -12
  30. package/dist/features/tmux-subagent/grid-planning.d.ts +2 -2
  31. package/dist/features/tmux-subagent/manager.d.ts +0 -1
  32. package/dist/features/tmux-subagent/pane-split-availability.d.ts +3 -2
  33. package/dist/features/tmux-subagent/polling-manager.d.ts +1 -0
  34. package/dist/features/tmux-subagent/spawn-target-finder.d.ts +1 -1
  35. package/dist/hooks/agent-usage-reminder/constants.d.ts +0 -1
  36. package/dist/hooks/anthropic-context-window-limit-recovery/client.d.ts +3 -34
  37. package/dist/hooks/anthropic-context-window-limit-recovery/deduplication-recovery.d.ts +4 -1
  38. package/dist/hooks/anthropic-context-window-limit-recovery/empty-content-recovery-sdk.d.ts +11 -0
  39. package/dist/hooks/anthropic-context-window-limit-recovery/message-builder.d.ts +4 -1
  40. package/dist/hooks/anthropic-context-window-limit-recovery/message-storage-directory.d.ts +5 -1
  41. package/dist/hooks/anthropic-context-window-limit-recovery/pruning-deduplication.d.ts +4 -1
  42. package/dist/hooks/anthropic-context-window-limit-recovery/pruning-tool-output-truncation.d.ts +5 -2
  43. package/dist/hooks/anthropic-context-window-limit-recovery/storage-paths.d.ts +2 -2
  44. package/dist/hooks/anthropic-context-window-limit-recovery/storage.d.ts +1 -0
  45. package/dist/hooks/anthropic-context-window-limit-recovery/target-token-truncation.d.ts +4 -1
  46. package/dist/hooks/anthropic-context-window-limit-recovery/tool-result-storage-sdk.d.ts +29 -0
  47. package/dist/hooks/atlas/session-last-agent.d.ts +4 -1
  48. package/dist/hooks/atlas/tool-execute-before.d.ts +2 -0
  49. package/dist/hooks/context-window-monitor.d.ts +5 -1
  50. package/dist/hooks/directory-agents-injector/constants.d.ts +0 -1
  51. package/dist/hooks/directory-agents-injector/hook.d.ts +3 -1
  52. package/dist/hooks/directory-readme-injector/constants.d.ts +0 -1
  53. package/dist/hooks/directory-readme-injector/hook.d.ts +3 -1
  54. package/dist/hooks/hashline-read-enhancer/hook.d.ts +18 -0
  55. package/dist/hooks/hashline-read-enhancer/index.d.ts +1 -0
  56. package/dist/hooks/index.d.ts +1 -0
  57. package/dist/hooks/interactive-bash-session/constants.d.ts +0 -1
  58. package/dist/hooks/preemptive-compaction.d.ts +4 -1
  59. package/dist/hooks/prometheus-md-only/agent-resolution.d.ts +4 -1
  60. package/dist/hooks/ralph-loop/message-storage-directory.d.ts +1 -1
  61. package/dist/hooks/rules-injector/constants.d.ts +0 -1
  62. package/dist/hooks/rules-injector/hook.d.ts +3 -1
  63. package/dist/hooks/session-recovery/constants.d.ts +1 -3
  64. package/dist/hooks/session-recovery/recover-empty-content-message-sdk.d.ts +13 -0
  65. package/dist/hooks/session-recovery/recover-empty-content-message.d.ts +1 -1
  66. package/dist/hooks/session-recovery/recover-thinking-block-order.d.ts +1 -1
  67. package/dist/hooks/session-recovery/recover-thinking-disabled-violation.d.ts +1 -1
  68. package/dist/hooks/session-recovery/storage/empty-text.d.ts +5 -0
  69. package/dist/hooks/session-recovery/storage/message-dir.d.ts +1 -1
  70. package/dist/hooks/session-recovery/storage/messages-reader.d.ts +4 -0
  71. package/dist/hooks/session-recovery/storage/parts-reader.d.ts +4 -0
  72. package/dist/hooks/session-recovery/storage/text-part-injector.d.ts +4 -0
  73. package/dist/hooks/session-recovery/storage/thinking-prepend.d.ts +4 -0
  74. package/dist/hooks/session-recovery/storage/thinking-strip.d.ts +4 -0
  75. package/dist/hooks/session-recovery/storage.d.ts +7 -0
  76. package/dist/hooks/sisyphus-junior-notepad/hook.d.ts +1 -1
  77. package/dist/hooks/think-mode/switcher.d.ts +7 -0
  78. package/dist/hooks/todo-continuation-enforcer/message-directory.d.ts +1 -1
  79. package/dist/hooks/todo-continuation-enforcer/types.d.ts +1 -1
  80. package/dist/hooks/tool-output-truncator.d.ts +3 -0
  81. package/dist/index.js +24207 -22344
  82. package/dist/plugin/hooks/create-core-hooks.d.ts +3 -0
  83. package/dist/plugin/hooks/create-session-hooks.d.ts +2 -0
  84. package/dist/plugin/hooks/create-tool-guard-hooks.d.ts +4 -1
  85. package/dist/plugin-config.d.ts +1 -1
  86. package/dist/plugin-handlers/agent-key-remapper.d.ts +1 -0
  87. package/dist/shared/agent-display-names.d.ts +5 -0
  88. package/dist/shared/dynamic-truncator.d.ts +7 -3
  89. package/dist/shared/fallback-model-availability.d.ts +9 -2
  90. package/dist/shared/git-worktree/index.d.ts +2 -0
  91. package/dist/shared/git-worktree/parse-status-porcelain-line.d.ts +6 -0
  92. package/dist/shared/index.d.ts +8 -1
  93. package/dist/shared/model-availability.d.ts +0 -5
  94. package/dist/shared/model-name-matcher.d.ts +0 -1
  95. package/dist/shared/normalize-sdk-response.d.ts +4 -0
  96. package/dist/shared/opencode-http-api.d.ts +3 -0
  97. package/dist/shared/opencode-storage-detection.d.ts +2 -0
  98. package/dist/shared/opencode-storage-paths.d.ts +4 -0
  99. package/dist/shared/opencode-version.d.ts +5 -0
  100. package/dist/shared/session-directory-resolver.d.ts +7 -0
  101. package/dist/shared/session-utils.d.ts +2 -2
  102. package/dist/shared/tmux/tmux-utils/layout.d.ts +2 -2
  103. package/dist/tools/background-task/create-background-cancel.d.ts +1 -1
  104. package/dist/tools/background-task/create-background-task.d.ts +2 -2
  105. package/dist/tools/background-task/message-dir.d.ts +1 -1
  106. package/dist/tools/background-task/modules/background-cancel.d.ts +1 -1
  107. package/dist/tools/background-task/modules/utils.d.ts +2 -1
  108. package/dist/tools/call-omo-agent/background-agent-executor.d.ts +2 -1
  109. package/dist/tools/call-omo-agent/background-executor.d.ts +2 -1
  110. package/dist/tools/call-omo-agent/message-dir.d.ts +1 -1
  111. package/dist/tools/call-omo-agent/message-storage-directory.d.ts +1 -1
  112. package/dist/tools/call-omo-agent/tools.d.ts +1 -1
  113. package/dist/tools/delegate-task/parent-context-resolver.d.ts +2 -1
  114. package/dist/tools/delegate-task/sisyphus-junior-agent.d.ts +1 -1
  115. package/dist/tools/delegate-task/sync-prompt-sender.d.ts +7 -1
  116. package/dist/tools/hashline-edit/constants.d.ts +2 -0
  117. package/dist/tools/hashline-edit/edit-operations.d.ts +6 -0
  118. package/dist/tools/hashline-edit/hash-computation.d.ts +3 -0
  119. package/dist/tools/hashline-edit/index.d.ts +7 -0
  120. package/dist/tools/hashline-edit/tools.d.ts +2 -0
  121. package/dist/tools/hashline-edit/types.d.ts +22 -0
  122. package/dist/tools/hashline-edit/validation.d.ts +6 -0
  123. package/dist/tools/index.d.ts +1 -0
  124. package/dist/tools/session-manager/constants.d.ts +1 -4
  125. package/dist/tools/session-manager/session-formatter.d.ts +1 -1
  126. package/dist/tools/session-manager/storage.d.ts +5 -2
  127. package/dist/tools/session-manager/types.d.ts +1 -1
  128. package/dist/tools/task/todo-sync.d.ts +2 -2
  129. package/package.json +8 -8
  130. package/dist/tools/task/task-action-create.d.ts +0 -4
  131. package/dist/tools/task/task-action-delete.d.ts +0 -2
  132. package/dist/tools/task/task-action-get.d.ts +0 -2
  133. package/dist/tools/task/task-action-list.d.ts +0 -2
  134. package/dist/tools/task/task-action-update.d.ts +0 -2
  135. package/dist/tools/task/task-id-validator.d.ts +0 -1
  136. package/dist/tools/task/task.d.ts +0 -3
  137. /package/dist/{features/background-agent/message-storage-locator.d.ts → shared/opencode-message-dir.d.ts} +0 -0
@@ -1,5 +1,8 @@
1
1
  import type { PluginInput } from "@opencode-ai/plugin";
2
- export declare function createContextWindowMonitorHook(ctx: PluginInput): {
2
+ type ModelCacheStateLike = {
3
+ anthropicContext1MEnabled: boolean;
4
+ };
5
+ export declare function createContextWindowMonitorHook(_ctx: PluginInput, modelCacheState?: ModelCacheStateLike): {
3
6
  "tool.execute.after": (input: {
4
7
  tool: string;
5
8
  sessionID: string;
@@ -16,3 +19,4 @@ export declare function createContextWindowMonitorHook(ctx: PluginInput): {
16
19
  };
17
20
  }) => Promise<void>;
18
21
  };
22
+ export {};
@@ -1,3 +1,2 @@
1
- export declare const OPENCODE_STORAGE: string;
2
1
  export declare const AGENTS_INJECTOR_STORAGE: string;
3
2
  export declare const AGENTS_FILENAME = "AGENTS.md";
@@ -18,7 +18,9 @@ interface EventInput {
18
18
  properties?: unknown;
19
19
  };
20
20
  }
21
- export declare function createDirectoryAgentsInjectorHook(ctx: PluginInput): {
21
+ export declare function createDirectoryAgentsInjectorHook(ctx: PluginInput, modelCacheState?: {
22
+ anthropicContext1MEnabled: boolean;
23
+ }): {
22
24
  "tool.execute.before": (input: ToolExecuteInput, output: ToolExecuteBeforeOutput) => Promise<void>;
23
25
  "tool.execute.after": (input: ToolExecuteInput, output: ToolExecuteOutput) => Promise<void>;
24
26
  event: ({ event }: EventInput) => Promise<void>;
@@ -1,3 +1,2 @@
1
- export declare const OPENCODE_STORAGE: string;
2
1
  export declare const README_INJECTOR_STORAGE: string;
3
2
  export declare const README_FILENAME = "README.md";
@@ -18,7 +18,9 @@ interface EventInput {
18
18
  properties?: unknown;
19
19
  };
20
20
  }
21
- export declare function createDirectoryReadmeInjectorHook(ctx: PluginInput): {
21
+ export declare function createDirectoryReadmeInjectorHook(ctx: PluginInput, modelCacheState?: {
22
+ anthropicContext1MEnabled: boolean;
23
+ }): {
22
24
  "tool.execute.before": (input: ToolExecuteInput, output: ToolExecuteBeforeOutput) => Promise<void>;
23
25
  "tool.execute.after": (input: ToolExecuteInput, output: ToolExecuteOutput) => Promise<void>;
24
26
  event: ({ event }: EventInput) => Promise<void>;
@@ -0,0 +1,18 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ interface HashlineReadEnhancerConfig {
3
+ hashline_edit?: {
4
+ enabled: boolean;
5
+ };
6
+ }
7
+ export declare function createHashlineReadEnhancerHook(_ctx: PluginInput, config: HashlineReadEnhancerConfig): {
8
+ "tool.execute.after": (input: {
9
+ tool: string;
10
+ sessionID: string;
11
+ callID: string;
12
+ }, output: {
13
+ title: string;
14
+ output: string;
15
+ metadata: unknown;
16
+ }) => Promise<void>;
17
+ };
18
+ export {};
@@ -0,0 +1 @@
1
+ export { createHashlineReadEnhancerHook } from "./hook";
@@ -40,3 +40,4 @@ export { createUnstableAgentBabysitterHook } from "./unstable-agent-babysitter";
40
40
  export { createPreemptiveCompactionHook } from "./preemptive-compaction";
41
41
  export { createTasksTodowriteDisablerHook } from "./tasks-todowrite-disabler";
42
42
  export { createWriteExistingFileGuardHook } from "./write-existing-file-guard";
43
+ export { createHashlineReadEnhancerHook } from "./hashline-read-enhancer";
@@ -1,4 +1,3 @@
1
- export declare const OPENCODE_STORAGE: string;
2
1
  export declare const INTERACTIVE_BASH_SESSION_STORAGE: string;
3
2
  export declare const OMO_SESSION_PREFIX = "omo-";
4
3
  export declare function buildSessionReminderMessage(sessions: string[]): string;
@@ -1,3 +1,6 @@
1
+ type ModelCacheStateLike = {
2
+ anthropicContext1MEnabled: boolean;
3
+ };
1
4
  type PluginInput = {
2
5
  client: {
3
6
  session: {
@@ -10,7 +13,7 @@ type PluginInput = {
10
13
  };
11
14
  directory: string;
12
15
  };
13
- export declare function createPreemptiveCompactionHook(ctx: PluginInput): {
16
+ export declare function createPreemptiveCompactionHook(ctx: PluginInput, modelCacheState?: ModelCacheStateLike): {
14
17
  "tool.execute.after": (input: {
15
18
  tool: string;
16
19
  sessionID: string;
@@ -1,3 +1,5 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ type OpencodeClient = PluginInput["client"];
1
3
  /**
2
4
  * Get the effective agent for the session.
3
5
  * Priority order:
@@ -10,4 +12,5 @@
10
12
  * - Message files return "prometheus" (oldest message from /plan)
11
13
  * - But boulder.json has agent: "atlas" (set by /start-work)
12
14
  */
13
- export declare function getAgentFromSession(sessionID: string, directory: string): string | undefined;
15
+ export declare function getAgentFromSession(sessionID: string, directory: string, client?: OpencodeClient): Promise<string | undefined>;
16
+ export {};
@@ -1 +1 @@
1
- export declare function getMessageDir(sessionID: string): string | null;
1
+ export { getMessageDir } from "../../shared/opencode-message-dir";
@@ -1,4 +1,3 @@
1
- export declare const OPENCODE_STORAGE: string;
2
1
  export declare const RULES_INJECTOR_STORAGE: string;
3
2
  export declare const PROJECT_MARKERS: string[];
4
3
  export declare const PROJECT_RULE_SUBDIRS: [string, string][];
@@ -18,7 +18,9 @@ interface EventInput {
18
18
  properties?: unknown;
19
19
  };
20
20
  }
21
- export declare function createRulesInjectorHook(ctx: PluginInput): {
21
+ export declare function createRulesInjectorHook(ctx: PluginInput, modelCacheState?: {
22
+ anthropicContext1MEnabled: boolean;
23
+ }): {
22
24
  "tool.execute.before": (input: ToolExecuteInput, output: ToolExecuteBeforeOutput) => Promise<void>;
23
25
  "tool.execute.after": (input: ToolExecuteInput, output: ToolExecuteOutput) => Promise<void>;
24
26
  event: ({ event }: EventInput) => Promise<void>;
@@ -1,6 +1,4 @@
1
- export declare const OPENCODE_STORAGE: string;
2
- export declare const MESSAGE_STORAGE: string;
3
- export declare const PART_STORAGE: string;
1
+ export { OPENCODE_STORAGE, MESSAGE_STORAGE, PART_STORAGE } from "../../shared";
4
2
  export declare const THINKING_TYPES: Set<string>;
5
3
  export declare const META_TYPES: Set<string>;
6
4
  export declare const CONTENT_TYPES: Set<string>;
@@ -0,0 +1,13 @@
1
+ import type { createOpencodeClient } from "@opencode-ai/sdk";
2
+ import type { MessageData } from "./types";
3
+ type Client = ReturnType<typeof createOpencodeClient>;
4
+ type ReplaceEmptyTextPartsAsync = (client: Client, sessionID: string, messageID: string, replacementText: string) => Promise<boolean>;
5
+ type InjectTextPartAsync = (client: Client, sessionID: string, messageID: string, text: string) => Promise<boolean>;
6
+ type FindMessagesWithEmptyTextPartsFromSDK = (client: Client, sessionID: string) => Promise<string[]>;
7
+ export declare function recoverEmptyContentMessageFromSDK(client: Client, sessionID: string, failedAssistantMsg: MessageData, error: unknown, dependencies: {
8
+ placeholderText: string;
9
+ replaceEmptyTextPartsAsync: ReplaceEmptyTextPartsAsync;
10
+ injectTextPartAsync: InjectTextPartAsync;
11
+ findMessagesWithEmptyTextPartsFromSDK: FindMessagesWithEmptyTextPartsFromSDK;
12
+ }): Promise<boolean>;
13
+ export {};
@@ -1,5 +1,5 @@
1
1
  import type { createOpencodeClient } from "@opencode-ai/sdk";
2
2
  import type { MessageData } from "./types";
3
3
  type Client = ReturnType<typeof createOpencodeClient>;
4
- export declare function recoverEmptyContentMessage(_client: Client, sessionID: string, failedAssistantMsg: MessageData, _directory: string, error: unknown): Promise<boolean>;
4
+ export declare function recoverEmptyContentMessage(client: Client, sessionID: string, failedAssistantMsg: MessageData, _directory: string, error: unknown): Promise<boolean>;
5
5
  export {};
@@ -1,5 +1,5 @@
1
1
  import type { createOpencodeClient } from "@opencode-ai/sdk";
2
2
  import type { MessageData } from "./types";
3
3
  type Client = ReturnType<typeof createOpencodeClient>;
4
- export declare function recoverThinkingBlockOrder(_client: Client, sessionID: string, _failedAssistantMsg: MessageData, _directory: string, error: unknown): Promise<boolean>;
4
+ export declare function recoverThinkingBlockOrder(client: Client, sessionID: string, _failedAssistantMsg: MessageData, _directory: string, error: unknown): Promise<boolean>;
5
5
  export {};
@@ -1,5 +1,5 @@
1
1
  import type { createOpencodeClient } from "@opencode-ai/sdk";
2
2
  import type { MessageData } from "./types";
3
3
  type Client = ReturnType<typeof createOpencodeClient>;
4
- export declare function recoverThinkingDisabledViolation(_client: Client, sessionID: string, _failedAssistantMsg: MessageData): Promise<boolean>;
4
+ export declare function recoverThinkingDisabledViolation(client: Client, sessionID: string, _failedAssistantMsg: MessageData): Promise<boolean>;
5
5
  export {};
@@ -1,2 +1,7 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ type OpencodeClient = PluginInput["client"];
1
3
  export declare function replaceEmptyTextParts(messageID: string, replacementText: string): boolean;
4
+ export declare function replaceEmptyTextPartsAsync(client: OpencodeClient, sessionID: string, messageID: string, replacementText: string): Promise<boolean>;
2
5
  export declare function findMessagesWithEmptyTextParts(sessionID: string): string[];
6
+ export declare function findMessagesWithEmptyTextPartsFromSDK(client: OpencodeClient, sessionID: string): Promise<string[]>;
7
+ export {};
@@ -1 +1 @@
1
- export declare function getMessageDir(sessionID: string): string;
1
+ export { getMessageDir } from "../../../shared/opencode-message-dir";
@@ -1,2 +1,6 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
1
2
  import type { StoredMessageMeta } from "../types";
3
+ type OpencodeClient = PluginInput["client"];
2
4
  export declare function readMessages(sessionID: string): StoredMessageMeta[];
5
+ export declare function readMessagesFromSDK(client: OpencodeClient, sessionID: string): Promise<StoredMessageMeta[]>;
6
+ export {};
@@ -1,2 +1,6 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
1
2
  import type { StoredPart } from "../types";
3
+ type OpencodeClient = PluginInput["client"];
2
4
  export declare function readParts(messageID: string): StoredPart[];
5
+ export declare function readPartsFromSDK(client: OpencodeClient, sessionID: string, messageID: string): Promise<StoredPart[]>;
6
+ export {};
@@ -1 +1,5 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ type OpencodeClient = PluginInput["client"];
1
3
  export declare function injectTextPart(sessionID: string, messageID: string, text: string): boolean;
4
+ export declare function injectTextPartAsync(client: OpencodeClient, sessionID: string, messageID: string, text: string): Promise<boolean>;
5
+ export {};
@@ -1 +1,5 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ type OpencodeClient = PluginInput["client"];
1
3
  export declare function prependThinkingPart(sessionID: string, messageID: string): boolean;
4
+ export declare function prependThinkingPartAsync(client: OpencodeClient, sessionID: string, messageID: string): Promise<boolean>;
5
+ export {};
@@ -1 +1,5 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ type OpencodeClient = PluginInput["client"];
1
3
  export declare function stripThinkingParts(messageID: string): boolean;
4
+ export declare function stripThinkingPartsAsync(client: OpencodeClient, sessionID: string, messageID: string): Promise<boolean>;
5
+ export {};
@@ -1,13 +1,20 @@
1
1
  export { generatePartId } from "./storage/part-id";
2
2
  export { getMessageDir } from "./storage/message-dir";
3
3
  export { readMessages } from "./storage/messages-reader";
4
+ export { readMessagesFromSDK } from "./storage/messages-reader";
4
5
  export { readParts } from "./storage/parts-reader";
6
+ export { readPartsFromSDK } from "./storage/parts-reader";
5
7
  export { hasContent, messageHasContent } from "./storage/part-content";
6
8
  export { injectTextPart } from "./storage/text-part-injector";
9
+ export { injectTextPartAsync } from "./storage/text-part-injector";
7
10
  export { findEmptyMessages, findEmptyMessageByIndex, findFirstEmptyMessage, } from "./storage/empty-messages";
8
11
  export { findMessagesWithEmptyTextParts } from "./storage/empty-text";
12
+ export { findMessagesWithEmptyTextPartsFromSDK } from "./storage/empty-text";
9
13
  export { findMessagesWithThinkingBlocks, findMessagesWithThinkingOnly, } from "./storage/thinking-block-search";
10
14
  export { findMessagesWithOrphanThinking, findMessageByIndexNeedingThinking, } from "./storage/orphan-thinking-search";
11
15
  export { prependThinkingPart } from "./storage/thinking-prepend";
12
16
  export { stripThinkingParts } from "./storage/thinking-strip";
13
17
  export { replaceEmptyTextParts } from "./storage/empty-text";
18
+ export { prependThinkingPartAsync } from "./storage/thinking-prepend";
19
+ export { stripThinkingPartsAsync } from "./storage/thinking-strip";
20
+ export { replaceEmptyTextPartsAsync } from "./storage/empty-text";
@@ -1,5 +1,5 @@
1
1
  import type { PluginInput } from "@opencode-ai/plugin";
2
- export declare function createSisyphusJuniorNotepadHook(_ctx: PluginInput): {
2
+ export declare function createSisyphusJuniorNotepadHook(ctx: PluginInput): {
3
3
  "tool.execute.before": (input: {
4
4
  tool: string;
5
5
  sessionID: string;
@@ -23,6 +23,13 @@ export declare const THINKING_CONFIGS: {
23
23
  };
24
24
  readonly maxTokens: 128000;
25
25
  };
26
+ readonly "google-vertex-anthropic": {
27
+ readonly thinking: {
28
+ readonly type: "enabled";
29
+ readonly budgetTokens: 64000;
30
+ };
31
+ readonly maxTokens: 128000;
32
+ };
26
33
  readonly "amazon-bedrock": {
27
34
  readonly reasoningConfig: {
28
35
  readonly type: "enabled";
@@ -1 +1 @@
1
- export declare function getMessageDir(sessionID: string): string | null;
1
+ export { getMessageDir } from "../../shared/opencode-message-dir";
@@ -20,7 +20,7 @@ export interface Todo {
20
20
  content: string;
21
21
  status: string;
22
22
  priority: string;
23
- id: string;
23
+ id?: string;
24
24
  }
25
25
  export interface SessionState {
26
26
  countdownTimer?: ReturnType<typeof setTimeout>;
@@ -1,6 +1,9 @@
1
1
  import type { PluginInput } from "@opencode-ai/plugin";
2
2
  import type { ExperimentalConfig } from "../config/schema";
3
3
  interface ToolOutputTruncatorOptions {
4
+ modelCacheState?: {
5
+ anthropicContext1MEnabled: boolean;
6
+ };
4
7
  experimental?: ExperimentalConfig;
5
8
  }
6
9
  export declare function createToolOutputTruncatorHook(ctx: PluginInput, options?: ToolOutputTruncatorOptions): {