oh-my-opencode 2.0.4 → 2.1.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.
@@ -1,3 +1,3 @@
1
- export declare const BACKGROUND_TASK_DESCRIPTION = "Launch a background agent task that runs asynchronously.\n\nThe task runs in a separate session while you continue with other work. The system will notify you when the task completes.\n\nUse this for:\n- Long-running research tasks\n- Complex analysis that doesn't need immediate results\n- Parallel workloads to maximize throughput\n\nArguments:\n- description: Short task description (shown in status)\n- prompt: Full detailed prompt for the agent\n- agent: Agent type to use (any agent allowed)\n\nReturns immediately with task ID and session info. Use `background_output` to check progress or retrieve results.";
2
- export declare const BACKGROUND_OUTPUT_DESCRIPTION = "Get output from a background task.\n\nArguments:\n- task_id: Required task ID to get output from\n- block: If true, wait for task completion. If false (default), return current status immediately.\n- timeout: Max wait time in ms when blocking (default: 60000, max: 600000)\n\nReturns:\n- When not blocking: Returns current status with task ID, description, agent, status, duration, and progress info\n- When blocking: Waits for completion, then returns full result\n\nIMPORTANT: The system automatically notifies the main session when background tasks complete.\nYou typically don't need block=true - just use block=false to check status, and the system will notify you when done.\n\nUse this to:\n- Check task progress (block=false) - returns full status info, NOT empty\n- Wait for and retrieve task result (block=true) - only when you explicitly need to wait\n- Set custom timeout for long tasks";
1
+ export declare const BACKGROUND_TASK_DESCRIPTION = "Launch a background agent task that runs asynchronously.\n\nThe task runs in a separate session while you continue with other work. The system will notify you when the task completes.\n\nUse this for:\n- Long-running research tasks\n- Complex analysis that doesn't need immediate results\n- Parallel workloads to maximize throughput\n\nArguments:\n- description: Short task description (shown in status)\n- prompt: Full detailed prompt for the agent (MUST be in English for optimal LLM performance)\n- agent: Agent type to use (any agent allowed)\n\nIMPORTANT: Always write prompts in English regardless of user's language. LLMs perform significantly better with English prompts.\n\nReturns immediately with task ID and session info. Use `background_output` to check progress or retrieve results.";
2
+ export declare const BACKGROUND_OUTPUT_DESCRIPTION = "Get output from a background task.\n\nArguments:\n- task_id: Required task ID to get output from\n- block: If true, wait for task completion. If false (default), return current status immediately.\n- timeout: Max wait time in ms when blocking (default: 60000, max: 600000)\n\nThe system automatically notifies when background tasks complete. You typically don't need block=true.";
3
3
  export declare const BACKGROUND_CANCEL_DESCRIPTION = "Cancel a running background task.\n\nOnly works for tasks with status \"running\". Aborts the background session and marks the task as cancelled.\n\nArguments:\n- taskId: Required task ID to cancel.";
@@ -1,2 +1,2 @@
1
1
  export declare const ALLOWED_AGENTS: readonly ["explore", "librarian"];
2
- export declare const CALL_OMO_AGENT_DESCRIPTION = "Launch a new agent to handle complex, multi-step tasks autonomously.\n\nThis is a restricted version of the Task tool that only allows spawning explore and librarian agents.\n\nAvailable agent types:\n{agents}\n\nWhen using this tool, you must specify a subagent_type parameter to select which agent type to use.\n\n**IMPORTANT: run_in_background parameter is REQUIRED**\n- `run_in_background=true`: Task runs asynchronously in background. Returns immediately with task_id.\n The system will notify you when the task completes.\n Use `background_output` tool with task_id to check progress (block=false returns full status info).\n- `run_in_background=false`: Task runs synchronously. Waits for completion and returns full result.\n\nUsage notes:\n1. Launch multiple agents concurrently whenever possible, to maximize performance\n2. When the agent is done, it will return a single message back to you\n3. Each agent invocation is stateless unless you provide a session_id\n4. Your prompt should contain a highly detailed task description for the agent to perform autonomously\n5. Clearly tell the agent whether you expect it to write code or just to do research\n6. For long-running research tasks, use run_in_background=true to avoid blocking";
2
+ export declare const CALL_OMO_AGENT_DESCRIPTION = "Launch a new agent to handle complex, multi-step tasks autonomously.\n\nThis is a restricted version of the Task tool that only allows spawning explore and librarian agents.\n\nAvailable agent types:\n{agents}\n\nWhen using this tool, you must specify a subagent_type parameter to select which agent type to use.\n\n**IMPORTANT: run_in_background parameter is REQUIRED**\n- `run_in_background=true`: Task runs asynchronously in background. Returns immediately with task_id.\n The system will notify you when the task completes.\n Use `background_output` tool with task_id to check progress (block=false returns full status info).\n- `run_in_background=false`: Task runs synchronously. Waits for completion and returns full result.\n\nUsage notes:\n1. Launch multiple agents concurrently whenever possible, to maximize performance\n2. When the agent is done, it will return a single message back to you\n3. Each agent invocation is stateless unless you provide a session_id\n4. Your prompt should contain a highly detailed task description for the agent to perform autonomously\n5. Clearly tell the agent whether you expect it to write code or just to do research\n6. For long-running research tasks, use run_in_background=true to avoid blocking\n7. **IMPORTANT**: Always write prompts in English regardless of user's language. LLMs perform significantly better with English prompts.";
@@ -1,3 +1,5 @@
1
+ export { interactive_bash, startBackgroundCheck as startTmuxCheck } from "./interactive-bash";
2
+ export { getTmuxPath } from "./interactive-bash/utils";
1
3
  import type { PluginInput } from "@opencode-ai/plugin";
2
4
  import type { BackgroundManager } from "../features/background-agent";
3
5
  type OpencodeClient = PluginInput["client"];
@@ -0,0 +1,3 @@
1
+ export declare const DEFAULT_TIMEOUT_MS = 60000;
2
+ export declare const BLOCKED_TMUX_SUBCOMMANDS: string[];
3
+ export declare const INTERACTIVE_BASH_DESCRIPTION = "Execute tmux commands for interactive terminal session management.\n\nUse session names following the pattern \"omo-{name}\" for automatic tracking.\n\nBLOCKED COMMANDS (use bash tool instead):\n- capture-pane / capturep: Use bash to read output files or pipe output\n- save-buffer / saveb: Use bash to save content to files\n- show-buffer / showb: Use bash to read buffer content\n- pipe-pane / pipep: Use bash for piping output";
@@ -0,0 +1,3 @@
1
+ import { interactive_bash } from "./tools";
2
+ import { startBackgroundCheck } from "./utils";
3
+ export { interactive_bash, startBackgroundCheck };
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Quote-aware command tokenizer with escape handling
3
+ * Handles single/double quotes and backslash escapes without external dependencies
4
+ */
5
+ export declare function tokenizeCommand(cmd: string): string[];
6
+ export declare const interactive_bash: {
7
+ description: string;
8
+ args: {
9
+ tmux_command: import("zod").ZodString;
10
+ };
11
+ execute(args: {
12
+ tmux_command: string;
13
+ }, context: import("@opencode-ai/plugin").ToolContext): Promise<string>;
14
+ };
@@ -0,0 +1,3 @@
1
+ export interface InteractiveBashArgs {
2
+ tmux_command: string;
3
+ }
@@ -0,0 +1,3 @@
1
+ export declare function getTmuxPath(): Promise<string | null>;
2
+ export declare function getCachedTmuxPath(): string | null;
3
+ export declare function startBackgroundCheck(): void;
@@ -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) that require visual interpretation.\n\nUse this tool to extract specific information from files that cannot be processed as plain text:\n- PDF documents: extract text, tables, structure, specific sections\n- Images: describe layouts, UI elements, text content, diagrams\n- Charts/Graphs: explain data, trends, relationships\n- Screenshots: identify UI components, text, visual elements\n- Architecture diagrams: explain flows, connections, components\n\nParameters:\n- file_path: Absolute path to the file to analyze\n- goal: What specific information to extract (be specific for better results)\n\nExamples:\n- \"Extract all API endpoints from this OpenAPI spec PDF\"\n- \"Describe the UI layout and components in this screenshot\"\n- \"Explain the data flow in this architecture diagram\"\n- \"List all table data from page 3 of this PDF\"\n\nThis tool uses a separate context window with Gemini 2.5 Flash for multimodal analysis,\nsaving tokens in the main conversation while providing accurate visual interpretation.";
2
+ export declare const LOOK_AT_DESCRIPTION = "Analyze media files (PDFs, images, diagrams) that require visual interpretation.\n\nParameters:\n- file_path: Absolute path to the file to analyze\n- goal: What specific information to extract (be specific for better results)\n\nThis tool uses a separate context window with Gemini 2.5 Flash for multimodal analysis,\nsaving tokens in the main conversation while providing accurate visual interpretation.";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-opencode",
3
- "version": "2.0.4",
3
+ "version": "2.1.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",