oh-my-opencode 3.17.2 → 3.17.3

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.
@@ -14,6 +14,13 @@
14
14
  "default_run_agent": {
15
15
  "type": "string"
16
16
  },
17
+ "agent_definitions": {
18
+ "type": "array",
19
+ "items": {
20
+ "type": "string",
21
+ "minLength": 1
22
+ }
23
+ },
17
24
  "disabled_mcps": {
18
25
  "type": "array",
19
26
  "items": {
@@ -1,7 +1,2 @@
1
- /**
2
- * Agent tool restrictions for session.prompt calls.
3
- * OpenCode SDK's session.prompt `tools` parameter expects boolean values.
4
- * true = tool allowed, false = tool denied.
5
- */
6
1
  export declare function getAgentToolRestrictions(agentName: string): Record<string, boolean>;
7
2
  export declare function hasAgentToolRestrictions(agentName: string): boolean;
@@ -17,6 +17,7 @@ export * from "./claude-config-dir";
17
17
  export * from "./jsonc-parser";
18
18
  export * from "./migration";
19
19
  export * from "./opencode-config-dir";
20
+ export * from "./resolve-agent-definition-paths";
20
21
  export type { OpenCodeBinaryType, OpenCodeConfigDirOptions, OpenCodeConfigPaths, } from "./opencode-config-dir-types";
21
22
  export * from "./opencode-version";
22
23
  export * from "./opencode-storage-detection";
@@ -67,3 +68,4 @@ export { SessionCategoryRegistry } from "./session-category-registry";
67
68
  export * from "./plugin-identity";
68
69
  export * from "./log-legacy-plugin-startup-warning";
69
70
  export * from "./task-system-enabled";
71
+ export * from "./parse-tools-config";
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Parses a tools configuration value into a boolean record.
3
+ * Accepts comma-separated strings, string arrays, or unknown values from config files.
4
+ * Returns undefined when input is empty or invalid.
5
+ */
6
+ export declare function parseToolsConfig(toolsValue: unknown): Record<string, boolean> | undefined;
@@ -0,0 +1 @@
1
+ export declare function resolveAgentDefinitionPaths(paths: string[], baseDir: string, containmentDir: string | null): string[];
@@ -0,0 +1,17 @@
1
+ import type { PluginInput } from "@opencode-ai/plugin";
2
+ export declare function clearCallableAgentsCache(): void;
3
+ /**
4
+ * Resolves the set of callable agent names at execute-time by merging the
5
+ * hardcoded `ALLOWED_AGENTS` with any additional agents discovered dynamically
6
+ * via `client.app.agents()`. Custom agents loaded from registered agent
7
+ * directories appear here alongside built-ins.
8
+ *
9
+ * Results are cached per session for 30s to avoid redundant SDK IPC calls.
10
+ *
11
+ * Falls back to `ALLOWED_AGENTS` alone if the dynamic lookup fails.
12
+ *
13
+ * @param client - The plugin client with access to the agent registry
14
+ * @param sessionId - Optional session ID for cache scoping
15
+ * @returns Array of lowercase callable agent names (excludes primary-mode agents)
16
+ */
17
+ export declare function resolveCallableAgents(client: PluginInput["client"], sessionId?: string): Promise<string[]>;
@@ -1,2 +1,2 @@
1
1
  export declare const ALLOWED_AGENTS: readonly ["explore", "librarian", "oracle", "hephaestus", "metis", "momus", "multimodal-looker"];
2
- export declare const CALL_OMO_AGENT_DESCRIPTION = "Spawn explore/librarian agent. run_in_background REQUIRED (true=async with task_id, false=sync).\n\nAvailable: {agents}\n\nPass `session_id=<id>` to continue previous agent with full context. Nested subagent depth is tracked automatically and blocked past the configured limit. Prompts MUST be in English. Use `background_output` for async results.";
2
+ export declare const CALL_OMO_AGENT_DESCRIPTION = "Spawn explore/librarian agent or custom agents. run_in_background REQUIRED (true=async with task_id, false=sync).\n\nBuilt-in agents:\n{agents}\n\nCustom agents registered via user or project agent directories are also supported.\n\nPass `session_id=<id>` to continue previous agent with full context. Nested subagent depth is tracked automatically and blocked past the configured limit. Prompts MUST be in English. Use `background_output` for async results.";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-opencode",
3
- "version": "3.17.2",
3
+ "version": "3.17.3",
4
4
  "description": "The Best AI Agent Harness - Batteries-Included OpenCode Plugin with Multi-Model Orchestration, Parallel Background Agents, and Crafted LSP/AST Tools",
5
5
  "main": "./dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -79,17 +79,17 @@
79
79
  "typescript": "^5.7.3"
80
80
  },
81
81
  "optionalDependencies": {
82
- "oh-my-opencode-darwin-arm64": "3.17.2",
83
- "oh-my-opencode-darwin-x64": "3.17.2",
84
- "oh-my-opencode-darwin-x64-baseline": "3.17.2",
85
- "oh-my-opencode-linux-arm64": "3.17.2",
86
- "oh-my-opencode-linux-arm64-musl": "3.17.2",
87
- "oh-my-opencode-linux-x64": "3.17.2",
88
- "oh-my-opencode-linux-x64-baseline": "3.17.2",
89
- "oh-my-opencode-linux-x64-musl": "3.17.2",
90
- "oh-my-opencode-linux-x64-musl-baseline": "3.17.2",
91
- "oh-my-opencode-windows-x64": "3.17.2",
92
- "oh-my-opencode-windows-x64-baseline": "3.17.2"
82
+ "oh-my-opencode-darwin-arm64": "3.17.3",
83
+ "oh-my-opencode-darwin-x64": "3.17.3",
84
+ "oh-my-opencode-darwin-x64-baseline": "3.17.3",
85
+ "oh-my-opencode-linux-arm64": "3.17.3",
86
+ "oh-my-opencode-linux-arm64-musl": "3.17.3",
87
+ "oh-my-opencode-linux-x64": "3.17.3",
88
+ "oh-my-opencode-linux-x64-baseline": "3.17.3",
89
+ "oh-my-opencode-linux-x64-musl": "3.17.3",
90
+ "oh-my-opencode-linux-x64-musl-baseline": "3.17.3",
91
+ "oh-my-opencode-windows-x64": "3.17.3",
92
+ "oh-my-opencode-windows-x64-baseline": "3.17.3"
93
93
  },
94
94
  "overrides": {},
95
95
  "trustedDependencies": [