oh-my-opencode 2.7.3 → 2.8.1

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 (77) hide show
  1. package/README.ja.md +20 -10
  2. package/README.ko.md +20 -10
  3. package/README.md +16 -6
  4. package/README.zh-cn.md +20 -10
  5. package/dist/cli/ast-grep-napi.linux-x64-gnu-jfv8414z.node +0 -0
  6. package/dist/cli/ast-grep-napi.linux-x64-musl-8cj2e5cf.node +0 -0
  7. package/dist/cli/doctor/checks/auth.d.ts +7 -0
  8. package/dist/cli/doctor/checks/config.d.ts +8 -0
  9. package/dist/cli/doctor/checks/dependencies.d.ts +8 -0
  10. package/dist/cli/doctor/checks/dependencies.test.d.ts +1 -0
  11. package/dist/cli/doctor/checks/index.d.ts +10 -0
  12. package/dist/cli/doctor/checks/lsp.d.ts +8 -0
  13. package/dist/cli/doctor/checks/lsp.test.d.ts +1 -0
  14. package/dist/cli/doctor/checks/mcp.d.ts +6 -0
  15. package/dist/cli/doctor/checks/mcp.test.d.ts +1 -0
  16. package/dist/cli/doctor/checks/opencode.d.ts +10 -0
  17. package/dist/cli/doctor/checks/opencode.test.d.ts +1 -0
  18. package/dist/cli/doctor/checks/plugin.d.ts +4 -0
  19. package/dist/cli/doctor/checks/plugin.test.d.ts +1 -0
  20. package/dist/cli/doctor/checks/version.d.ts +4 -0
  21. package/dist/cli/doctor/checks/version.test.d.ts +1 -0
  22. package/dist/cli/doctor/constants.d.ts +39 -0
  23. package/dist/cli/doctor/formatter.d.ts +12 -0
  24. package/dist/cli/doctor/formatter.test.d.ts +1 -0
  25. package/dist/cli/doctor/index.d.ts +5 -0
  26. package/dist/cli/doctor/runner.d.ts +7 -0
  27. package/dist/cli/doctor/runner.test.d.ts +1 -0
  28. package/dist/cli/doctor/types.d.ts +91 -0
  29. package/dist/cli/index.js +14180 -76
  30. package/dist/config/index.d.ts +2 -2
  31. package/dist/config/schema.d.ts +98 -6
  32. package/dist/features/builtin-commands/templates/ralph-loop.d.ts +2 -0
  33. package/dist/features/builtin-commands/types.d.ts +1 -1
  34. package/dist/features/builtin-skills/index.d.ts +2 -0
  35. package/dist/features/builtin-skills/skills.d.ts +2 -0
  36. package/dist/features/builtin-skills/types.d.ts +13 -0
  37. package/dist/features/{claude-code-skill-loader → opencode-skill-loader}/index.d.ts +1 -0
  38. package/dist/features/opencode-skill-loader/loader.d.ts +41 -0
  39. package/dist/features/opencode-skill-loader/merger.d.ts +7 -0
  40. package/dist/features/opencode-skill-loader/types.d.ts +25 -0
  41. package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/executor.d.ts +1 -1
  42. package/dist/hooks/anthropic-context-window-limit-recovery/executor.test.d.ts +1 -0
  43. package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/index.d.ts +3 -2
  44. package/dist/hooks/anthropic-context-window-limit-recovery/pruning-deduplication.test.d.ts +1 -0
  45. package/dist/hooks/index.d.ts +2 -1
  46. package/dist/hooks/ralph-loop/constants.d.ts +5 -0
  47. package/dist/hooks/ralph-loop/index.d.ts +20 -0
  48. package/dist/hooks/ralph-loop/index.test.d.ts +1 -0
  49. package/dist/hooks/ralph-loop/storage.d.ts +6 -0
  50. package/dist/hooks/ralph-loop/types.d.ts +13 -0
  51. package/dist/hooks/think-mode/index.test.d.ts +1 -0
  52. package/dist/hooks/think-mode/switcher.d.ts +54 -1
  53. package/dist/hooks/think-mode/switcher.test.d.ts +1 -0
  54. package/dist/index.js +1290 -356
  55. package/dist/tools/index.d.ts +1 -0
  56. package/dist/tools/interactive-bash/constants.d.ts +1 -1
  57. package/dist/tools/look-at/constants.d.ts +1 -1
  58. package/dist/tools/lsp/utils.d.ts +1 -0
  59. package/dist/tools/skill/constants.d.ts +3 -0
  60. package/dist/tools/skill/index.d.ts +3 -0
  61. package/dist/tools/skill/tools.d.ts +10 -0
  62. package/dist/tools/skill/types.d.ts +20 -0
  63. package/dist/tools/slashcommand/types.d.ts +3 -3
  64. package/package.json +1 -1
  65. package/dist/features/claude-code-skill-loader/loader.d.ts +0 -3
  66. package/dist/features/claude-code-skill-loader/types.d.ts +0 -13
  67. /package/dist/{hooks/anthropic-auto-compact/executor.test.d.ts → cli/doctor/checks/auth.test.d.ts} +0 -0
  68. /package/dist/{hooks/anthropic-auto-compact/pruning-deduplication.test.d.ts → cli/doctor/checks/config.test.d.ts} +0 -0
  69. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/parser.d.ts +0 -0
  70. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/pruning-deduplication.d.ts +0 -0
  71. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/pruning-executor.d.ts +0 -0
  72. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/pruning-purge-errors.d.ts +0 -0
  73. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/pruning-storage.d.ts +0 -0
  74. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/pruning-supersede.d.ts +0 -0
  75. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/pruning-types.d.ts +0 -0
  76. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/storage.d.ts +0 -0
  77. /package/dist/hooks/{anthropic-auto-compact → anthropic-context-window-limit-recovery}/types.d.ts +0 -0
@@ -1,4 +1,5 @@
1
1
  export { interactive_bash, startBackgroundCheck as startTmuxCheck } from "./interactive-bash";
2
+ export { createSkillTool } from "./skill";
2
3
  export { getTmuxPath } from "./interactive-bash/utils";
3
4
  import type { PluginInput, ToolDefinition } from "@opencode-ai/plugin";
4
5
  import type { BackgroundManager } from "../features/background-agent";
@@ -1,3 +1,3 @@
1
1
  export declare const DEFAULT_TIMEOUT_MS = 60000;
2
2
  export declare const BLOCKED_TMUX_SUBCOMMANDS: string[];
3
- export declare const INTERACTIVE_BASH_DESCRIPTION = "Execute tmux commands. Use \"omo-{name}\" session pattern.\n\nBlocked (use bash instead): capture-pane, save-buffer, show-buffer, pipe-pane.";
3
+ export declare const INTERACTIVE_BASH_DESCRIPTION = "Execute tmux commands. Use \"omo-{name}\" session pattern.\n\nFor: server processes, long-running tasks, background jobs, interactive CLI tools.\n\nBlocked (use bash instead): capture-pane, save-buffer, show-buffer, pipe-pane.";
@@ -1,2 +1,2 @@
1
1
  export declare const MULTIMODAL_LOOKER_AGENT: "multimodal-looker";
2
- export declare const LOOK_AT_DESCRIPTION = "Analyze media files (PDFs, images, diagrams) via Gemini 2.5 Flash in separate context. Saves main context tokens.";
2
+ export declare const LOOK_AT_DESCRIPTION = "Analyze media files (PDFs, images, diagrams) that require interpretation beyond raw text. Extracts specific information or summaries from documents, describes visual content. Use when you need analyzed/extracted data rather than literal file contents.";
@@ -1,6 +1,7 @@
1
1
  import { LSPClient } from "./client";
2
2
  import type { HoverResult, DocumentSymbol, SymbolInfo, Location, LocationLink, Diagnostic, PrepareRenameResult, PrepareRenameDefaultBehavior, Range, WorkspaceEdit, TextEdit, CodeAction, Command, ServerLookupResult } from "./types";
3
3
  export declare function findWorkspaceRoot(filePath: string): string;
4
+ export declare function uriToPath(uri: string): string;
4
5
  export declare function formatServerLookupError(result: Exclude<ServerLookupResult, {
5
6
  status: "found";
6
7
  }>): string;
@@ -0,0 +1,3 @@
1
+ export declare const TOOL_NAME: "skill";
2
+ export declare const TOOL_DESCRIPTION_NO_SKILLS = "Load a skill to get detailed instructions for a specific task. No skills are currently available.";
3
+ export declare const TOOL_DESCRIPTION_PREFIX = "Load a skill to get detailed instructions for a specific task.\n\nSkills provide specialized knowledge and step-by-step guidance.\nUse this when a task matches an available skill's description.";
@@ -0,0 +1,3 @@
1
+ export * from "./constants";
2
+ export * from "./types";
3
+ export { skill, createSkillTool } from "./tools";
@@ -0,0 +1,10 @@
1
+ import { type ToolDefinition } from "@opencode-ai/plugin";
2
+ import type { SkillLoadOptions } from "./types";
3
+ export declare function createSkillTool(options?: SkillLoadOptions): ToolDefinition;
4
+ export declare const skill: {
5
+ description: string;
6
+ args: Readonly<{
7
+ [k: string]: import("zod/v4/core").$ZodType<unknown, unknown, import("zod/v4/core").$ZodTypeInternals<unknown, unknown>>;
8
+ }>;
9
+ execute(args: Record<string, unknown>, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
10
+ };
@@ -0,0 +1,20 @@
1
+ import type { SkillScope, LoadedSkill } from "../../features/opencode-skill-loader/types";
2
+ export interface SkillArgs {
3
+ name: string;
4
+ }
5
+ export interface SkillInfo {
6
+ name: string;
7
+ description: string;
8
+ location?: string;
9
+ scope: SkillScope;
10
+ license?: string;
11
+ compatibility?: string;
12
+ metadata?: Record<string, string>;
13
+ allowedTools?: string[];
14
+ }
15
+ export interface SkillLoadOptions {
16
+ /** When true, only load from OpenCode paths (.opencode/skill/, ~/.config/opencode/skill/) */
17
+ opencodeOnly?: boolean;
18
+ /** Pre-merged skills to use instead of discovering */
19
+ skills?: LoadedSkill[];
20
+ }
@@ -1,4 +1,4 @@
1
- export type CommandScope = "user" | "project" | "opencode" | "opencode-project";
1
+ export type CommandScope = "builtin" | "config" | "user" | "project" | "opencode" | "opencode-project";
2
2
  export interface CommandMetadata {
3
3
  name: string;
4
4
  description: string;
@@ -9,8 +9,8 @@ export interface CommandMetadata {
9
9
  }
10
10
  export interface CommandInfo {
11
11
  name: string;
12
- path: string;
12
+ path?: string;
13
13
  metadata: CommandMetadata;
14
- content: string;
14
+ content?: string;
15
15
  scope: CommandScope;
16
16
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-opencode",
3
- "version": "2.7.3",
3
+ "version": "2.8.1",
4
4
  "description": "OpenCode plugin - custom agents (oracle, librarian) and enhanced features",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,3 +0,0 @@
1
- import type { CommandDefinition } from "../claude-code-command-loader/types";
2
- export declare function loadUserSkillsAsCommands(): Record<string, CommandDefinition>;
3
- export declare function loadProjectSkillsAsCommands(): Record<string, CommandDefinition>;
@@ -1,13 +0,0 @@
1
- import type { CommandDefinition } from "../claude-code-command-loader/types";
2
- export type SkillScope = "user" | "project";
3
- export interface SkillMetadata {
4
- name: string;
5
- description: string;
6
- model?: string;
7
- }
8
- export interface LoadedSkillAsCommand {
9
- name: string;
10
- path: string;
11
- definition: CommandDefinition;
12
- scope: SkillScope;
13
- }