@oh-my-pi/pi-coding-agent 8.0.1 → 8.0.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.
- package/package.json +5 -1
- package/src/cli/args.ts +2 -2
- package/src/cli/config-cli.ts +4 -4
- package/src/cli/file-processor.ts +3 -3
- package/src/cli/list-models.ts +2 -2
- package/src/cli/plugin-cli.ts +7 -3
- package/src/cli/session-picker.ts +2 -2
- package/src/cli/setup-cli.ts +2 -2
- package/src/cli/stats-cli.ts +1 -1
- package/src/cli/update-cli.ts +2 -2
- package/src/config/keybindings.ts +1 -1
- package/src/config/model-registry.ts +1 -1
- package/src/config/model-resolver.ts +1 -1
- package/src/config/prompt-templates.ts +2 -2
- package/src/config/settings-manager.ts +5 -5
- package/src/cursor.ts +1 -1
- package/src/discovery/agents-md.ts +4 -4
- package/src/discovery/builtin.ts +21 -17
- package/src/discovery/claude.ts +12 -12
- package/src/discovery/cline.ts +6 -6
- package/src/discovery/codex.ts +21 -21
- package/src/discovery/cursor.ts +9 -9
- package/src/discovery/gemini.ts +13 -9
- package/src/discovery/github.ts +6 -6
- package/src/discovery/helpers.ts +4 -4
- package/src/discovery/index.ts +16 -16
- package/src/discovery/mcp-json.ts +4 -4
- package/src/discovery/ssh.ts +4 -4
- package/src/discovery/vscode.ts +4 -4
- package/src/discovery/windsurf.ts +6 -6
- package/src/exa/company.ts +1 -1
- package/src/exa/index.ts +2 -2
- package/src/exa/linkedin.ts +1 -1
- package/src/exa/mcp-client.ts +2 -2
- package/src/exa/render.ts +6 -6
- package/src/exa/researcher.ts +1 -1
- package/src/exa/search.ts +1 -1
- package/src/exa/websets.ts +1 -1
- package/src/exec/bash-executor.ts +3 -3
- package/src/export/custom-share.ts +1 -1
- package/src/export/html/index.ts +3 -3
- package/src/export/ttsr.ts +2 -2
- package/src/extensibility/custom-commands/bundled/review/index.ts +4 -4
- package/src/extensibility/custom-commands/loader.ts +3 -3
- package/src/extensibility/custom-commands/types.ts +1 -1
- package/src/extensibility/custom-tools/loader.ts +9 -9
- package/src/extensibility/custom-tools/types.ts +6 -6
- package/src/extensibility/custom-tools/wrapper.ts +1 -1
- package/src/extensibility/extensions/loader.ts +8 -8
- package/src/extensibility/extensions/runner.ts +3 -3
- package/src/extensibility/extensions/types.ts +23 -17
- package/src/extensibility/extensions/wrapper.ts +1 -1
- package/src/extensibility/hooks/index.ts +1 -1
- package/src/extensibility/hooks/loader.ts +7 -7
- package/src/extensibility/hooks/runner.ts +4 -4
- package/src/extensibility/hooks/types.ts +16 -10
- package/src/extensibility/plugins/doctor.ts +1 -1
- package/src/extensibility/plugins/installer.ts +1 -1
- package/src/extensibility/plugins/paths.ts +1 -1
- package/src/extensibility/skills.ts +9 -6
- package/src/extensibility/slash-commands.ts +6 -6
- package/src/index.ts +7 -7
- package/src/internal-urls/rule-protocol.ts +1 -1
- package/src/internal-urls/skill-protocol.ts +1 -1
- package/src/ipy/executor.ts +3 -3
- package/src/ipy/gateway-coordinator.ts +3 -3
- package/src/ipy/kernel.ts +3 -3
- package/src/lsp/client.ts +1 -1
- package/src/lsp/clients/biome-client.ts +1 -1
- package/src/lsp/clients/index.ts +1 -1
- package/src/lsp/clients/lsp-linter-client.ts +4 -4
- package/src/lsp/config.ts +1 -1
- package/src/lsp/index.ts +6 -6
- package/src/lsp/render.ts +7 -2
- package/src/lsp/utils.ts +1 -1
- package/src/main.ts +1 -1
- package/src/mcp/config.ts +3 -3
- package/src/mcp/loader.ts +2 -2
- package/src/mcp/manager.ts +1 -1
- package/src/mcp/tool-bridge.ts +6 -2
- package/src/mcp/tool-cache.ts +1 -1
- package/src/mcp/transports/http.ts +1 -1
- package/src/mcp/transports/stdio.ts +1 -1
- package/src/migrations.ts +2 -2
- package/src/modes/components/armin.ts +1 -1
- package/src/modes/components/assistant-message.ts +1 -1
- package/src/modes/components/bash-execution.ts +3 -3
- package/src/modes/components/bordered-loader.ts +1 -1
- package/src/modes/components/branch-summary-message.ts +2 -2
- package/src/modes/components/compaction-summary-message.ts +2 -2
- package/src/modes/components/custom-message.ts +3 -3
- package/src/modes/components/diff.ts +1 -1
- package/src/modes/components/dynamic-border.ts +1 -1
- package/src/modes/components/extensions/extension-dashboard.ts +3 -3
- package/src/modes/components/extensions/extension-list.ts +2 -2
- package/src/modes/components/extensions/inspector-panel.ts +1 -1
- package/src/modes/components/extensions/state-manager.ts +17 -11
- package/src/modes/components/extensions/types.ts +1 -1
- package/src/modes/components/footer.ts +3 -3
- package/src/modes/components/history-search.ts +2 -2
- package/src/modes/components/hook-editor.ts +1 -1
- package/src/modes/components/hook-input.ts +1 -1
- package/src/modes/components/hook-message.ts +3 -3
- package/src/modes/components/hook-selector.ts +1 -1
- package/src/modes/components/keybinding-hints.ts +2 -2
- package/src/modes/components/login-dialog.ts +1 -1
- package/src/modes/components/model-selector.ts +5 -5
- package/src/modes/components/oauth-selector.ts +2 -2
- package/src/modes/components/plugin-settings.ts +3 -3
- package/src/modes/components/python-execution.ts +3 -3
- package/src/modes/components/queue-mode-selector.ts +1 -1
- package/src/modes/components/read-tool-group.ts +2 -2
- package/src/modes/components/session-selector.ts +3 -3
- package/src/modes/components/settings-defs.ts +2 -2
- package/src/modes/components/settings-selector.ts +2 -2
- package/src/modes/components/show-images-selector.ts +1 -1
- package/src/modes/components/status-line/segments.ts +2 -2
- package/src/modes/components/status-line/separators.ts +1 -1
- package/src/modes/components/status-line/types.ts +2 -2
- package/src/modes/components/status-line-segment-editor.ts +2 -2
- package/src/modes/components/status-line.ts +3 -3
- package/src/modes/components/theme-selector.ts +1 -1
- package/src/modes/components/thinking-selector.ts +1 -1
- package/src/modes/components/todo-display.ts +2 -2
- package/src/modes/components/todo-reminder.ts +2 -2
- package/src/modes/components/tool-execution.ts +11 -6
- package/src/modes/components/tree-selector.ts +3 -3
- package/src/modes/components/ttsr-notification.ts +2 -2
- package/src/modes/components/user-message-selector.ts +1 -1
- package/src/modes/components/user-message.ts +1 -1
- package/src/modes/components/welcome.ts +2 -2
- package/src/modes/controllers/command-controller.ts +15 -15
- package/src/modes/controllers/event-controller.ts +13 -9
- package/src/modes/controllers/extension-ui-controller.ts +17 -11
- package/src/modes/controllers/input-controller.ts +6 -6
- package/src/modes/controllers/selector-controller.ts +22 -16
- package/src/modes/interactive-mode.ts +12 -12
- package/src/modes/print-mode.ts +1 -1
- package/src/modes/rpc/rpc-client.ts +3 -3
- package/src/modes/rpc/rpc-mode.ts +6 -3
- package/src/modes/rpc/rpc-types.ts +3 -3
- package/src/modes/theme/theme.ts +1 -1
- package/src/modes/types.ts +8 -8
- package/src/modes/utils/ui-helpers.ts +14 -14
- package/src/patch/applicator.ts +1 -1
- package/src/patch/diff.ts +1 -1
- package/src/patch/index.ts +8 -8
- package/src/patch/shared.ts +9 -9
- package/src/sdk.ts +19 -16
- package/src/session/agent-session.ts +27 -27
- package/src/session/agent-storage.ts +2 -2
- package/src/session/auth-storage.ts +1 -1
- package/src/session/compaction/branch-summarization.ts +7 -5
- package/src/session/compaction/compaction.ts +16 -6
- package/src/session/compaction/utils.ts +5 -3
- package/src/session/history-storage.ts +1 -1
- package/src/session/messages.ts +2 -2
- package/src/session/session-manager.ts +2 -2
- package/src/session/storage-migration.ts +2 -2
- package/src/session/streaming-output.ts +1 -1
- package/src/ssh/connection-manager.ts +1 -1
- package/src/ssh/ssh-executor.ts +1 -1
- package/src/ssh/sshfs-mount.ts +1 -1
- package/src/system-prompt.ts +14 -8
- package/src/task/agents.ts +8 -8
- package/src/task/commands.ts +5 -5
- package/src/task/discovery.ts +3 -3
- package/src/task/executor.ts +11 -11
- package/src/task/index.ts +4 -4
- package/src/task/render.ts +6 -6
- package/src/task/subprocess-tool-registry.ts +1 -1
- package/src/task/worker-protocol.ts +3 -3
- package/src/task/worker.ts +18 -13
- package/src/tools/ask.ts +4 -4
- package/src/tools/bash-interceptor.ts +4 -1
- package/src/tools/bash.ts +8 -8
- package/src/tools/calculator.ts +4 -4
- package/src/tools/complete.ts +1 -1
- package/src/tools/context.ts +2 -2
- package/src/tools/fetch.ts +11 -11
- package/src/tools/find.ts +7 -7
- package/src/tools/gemini-image.ts +6 -6
- package/src/tools/grep.ts +8 -8
- package/src/tools/index.ts +19 -19
- package/src/tools/list-limit.ts +1 -1
- package/src/tools/ls.ts +4 -4
- package/src/tools/notebook.ts +3 -3
- package/src/tools/output-meta.ts +3 -3
- package/src/tools/output-utils.ts +1 -1
- package/src/tools/python.ts +10 -10
- package/src/tools/read.ts +11 -11
- package/src/tools/render-utils.ts +1 -1
- package/src/tools/renderers.ts +6 -6
- package/src/tools/review.ts +2 -2
- package/src/tools/ssh.ts +12 -12
- package/src/tools/todo-write.ts +5 -5
- package/src/tools/tool-result.ts +3 -3
- package/src/tools/write.ts +11 -11
- package/src/utils/changelog.ts +1 -1
- package/src/utils/file-mentions.ts +9 -4
- package/src/utils/image-convert.ts +1 -1
- package/src/utils/image-resize.ts +1 -1
- package/src/utils/shell.ts +1 -1
- package/src/utils/title-generator.ts +4 -4
- package/src/utils/tools-manager.ts +1 -1
- package/src/web/scrapers/choosealicense.ts +1 -1
- package/src/web/scrapers/twitter.ts +1 -1
- package/src/web/scrapers/types.ts +1 -1
- package/src/web/scrapers/utils.ts +1 -1
- package/src/web/scrapers/youtube.ts +2 -2
- package/src/web/search/auth.ts +8 -4
- package/src/web/search/index.ts +19 -10
- package/src/web/search/providers/anthropic.ts +8 -3
- package/src/web/search/providers/exa.ts +2 -2
- package/src/web/search/providers/perplexity.ts +2 -2
- package/src/web/search/render.ts +5 -5
package/src/task/worker.ts
CHANGED
|
@@ -15,21 +15,26 @@
|
|
|
15
15
|
|
|
16
16
|
import type { AgentEvent, ThinkingLevel } from "@oh-my-pi/pi-agent-core";
|
|
17
17
|
import type { Api, Model } from "@oh-my-pi/pi-ai";
|
|
18
|
+
import { ModelRegistry } from "@oh-my-pi/pi-coding-agent/config/model-registry";
|
|
19
|
+
import { parseModelPattern, parseModelString } from "@oh-my-pi/pi-coding-agent/config/model-resolver";
|
|
20
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
21
|
+
import { SettingsManager } from "@oh-my-pi/pi-coding-agent/config/settings-manager";
|
|
22
|
+
import type { CustomTool } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
23
|
+
import { type LspToolDetails, lspSchema } from "@oh-my-pi/pi-coding-agent/lsp/types";
|
|
24
|
+
import lspDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/lsp.md" with { type: "text" };
|
|
25
|
+
import { createAgentSession, discoverAuthStorage, discoverModels } from "@oh-my-pi/pi-coding-agent/sdk";
|
|
26
|
+
import type { AgentSessionEvent } from "@oh-my-pi/pi-coding-agent/session/agent-session";
|
|
27
|
+
import { AuthStorage } from "@oh-my-pi/pi-coding-agent/session/auth-storage";
|
|
28
|
+
import { SessionManager } from "@oh-my-pi/pi-coding-agent/session/session-manager";
|
|
29
|
+
import {
|
|
30
|
+
getPythonToolDescription,
|
|
31
|
+
type PythonToolDetails,
|
|
32
|
+
type PythonToolParams,
|
|
33
|
+
pythonSchema,
|
|
34
|
+
} from "@oh-my-pi/pi-coding-agent/tools/python";
|
|
35
|
+
import { ToolAbortError } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
18
36
|
import { logger, postmortem, untilAborted } from "@oh-my-pi/pi-utils";
|
|
19
37
|
import type { TSchema } from "@sinclair/typebox";
|
|
20
|
-
import { ModelRegistry } from "$c/config/model-registry";
|
|
21
|
-
import { parseModelPattern, parseModelString } from "$c/config/model-resolver";
|
|
22
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
23
|
-
import { SettingsManager } from "$c/config/settings-manager";
|
|
24
|
-
import type { CustomTool } from "$c/extensibility/custom-tools/types";
|
|
25
|
-
import { type LspToolDetails, lspSchema } from "$c/lsp/types";
|
|
26
|
-
import lspDescription from "$c/prompts/tools/lsp.md" with { type: "text" };
|
|
27
|
-
import { createAgentSession, discoverAuthStorage, discoverModels } from "$c/sdk";
|
|
28
|
-
import type { AgentSessionEvent } from "$c/session/agent-session";
|
|
29
|
-
import { AuthStorage } from "$c/session/auth-storage";
|
|
30
|
-
import { SessionManager } from "$c/session/session-manager";
|
|
31
|
-
import { getPythonToolDescription, type PythonToolDetails, type PythonToolParams, pythonSchema } from "$c/tools/python";
|
|
32
|
-
import { ToolAbortError } from "$c/tools/tool-errors";
|
|
33
38
|
import type {
|
|
34
39
|
LspToolCallResponse,
|
|
35
40
|
MCPToolCallResponse,
|
package/src/tools/ask.ts
CHANGED
|
@@ -16,13 +16,13 @@
|
|
|
16
16
|
*/
|
|
17
17
|
|
|
18
18
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
19
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
20
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
21
|
+
import { type Theme, theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
22
|
+
import askDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/ask.md" with { type: "text" };
|
|
19
23
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
20
24
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
21
25
|
import { Type } from "@sinclair/typebox";
|
|
22
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
23
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
24
|
-
import { type Theme, theme } from "$c/modes/theme/theme";
|
|
25
|
-
import askDescription from "$c/prompts/tools/ask.md" with { type: "text" };
|
|
26
26
|
import type { ToolSession } from "./index";
|
|
27
27
|
import { ToolUIKit } from "./render-utils";
|
|
28
28
|
|
|
@@ -6,7 +6,10 @@
|
|
|
6
6
|
* the specialized tools instead.
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
|
-
import {
|
|
9
|
+
import {
|
|
10
|
+
type BashInterceptorRule,
|
|
11
|
+
DEFAULT_BASH_INTERCEPTOR_RULES,
|
|
12
|
+
} from "@oh-my-pi/pi-coding-agent/config/settings-manager";
|
|
10
13
|
|
|
11
14
|
export interface InterceptionResult {
|
|
12
15
|
/** If true, the bash command should be blocked */
|
package/src/tools/bash.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { relative, resolve, sep } from "node:path";
|
|
2
2
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
3
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
4
|
+
import { type BashExecutorOptions, executeBash } from "@oh-my-pi/pi-coding-agent/exec/bash-executor";
|
|
5
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
6
|
+
import { truncateToVisualLines } from "@oh-my-pi/pi-coding-agent/modes/components/visual-truncate";
|
|
7
|
+
import type { Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
8
|
+
import bashDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/bash.md" with { type: "text" };
|
|
9
|
+
import type { OutputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
10
|
+
import { ToolError } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
3
11
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
4
12
|
import { Text, truncateToWidth } from "@oh-my-pi/pi-tui";
|
|
5
13
|
import { Type } from "@sinclair/typebox";
|
|
6
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
7
|
-
import { type BashExecutorOptions, executeBash } from "$c/exec/bash-executor";
|
|
8
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
9
|
-
import { truncateToVisualLines } from "$c/modes/components/visual-truncate";
|
|
10
|
-
import type { Theme } from "$c/modes/theme/theme";
|
|
11
|
-
import bashDescription from "$c/prompts/tools/bash.md" with { type: "text" };
|
|
12
|
-
import type { OutputMeta } from "$c/tools/output-meta";
|
|
13
|
-
import { ToolError } from "$c/tools/tool-errors";
|
|
14
14
|
|
|
15
15
|
import { checkBashInterception, checkSimpleLsInterception } from "./bash-interceptor";
|
|
16
16
|
import type { ToolSession } from "./index";
|
package/src/tools/calculator.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { AgentTool, AgentToolResult } from "@oh-my-pi/pi-agent-core";
|
|
2
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
3
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
4
|
+
import type { Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
5
|
+
import calculatorDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/calculator.md" with { type: "text" };
|
|
2
6
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
3
7
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
4
8
|
import { untilAborted } from "@oh-my-pi/pi-utils";
|
|
5
9
|
import { Type } from "@sinclair/typebox";
|
|
6
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
7
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
8
|
-
import type { Theme } from "$c/modes/theme/theme";
|
|
9
|
-
import calculatorDescription from "$c/prompts/tools/calculator.md" with { type: "text" };
|
|
10
10
|
import type { ToolSession } from "./index";
|
|
11
11
|
import {
|
|
12
12
|
formatCount,
|
package/src/tools/complete.ts
CHANGED
|
@@ -6,10 +6,10 @@
|
|
|
6
6
|
|
|
7
7
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
8
8
|
import { StringEnum } from "@oh-my-pi/pi-ai";
|
|
9
|
+
import { subprocessToolRegistry } from "@oh-my-pi/pi-coding-agent/task/subprocess-tool-registry";
|
|
9
10
|
import type { Static, TObject } from "@sinclair/typebox";
|
|
10
11
|
import { Type } from "@sinclair/typebox";
|
|
11
12
|
import Ajv, { type ErrorObject, type ValidateFunction } from "ajv";
|
|
12
|
-
import { subprocessToolRegistry } from "$c/task/subprocess-tool-registry";
|
|
13
13
|
import type { ToolSession } from "./index";
|
|
14
14
|
import { jtdToJsonSchema } from "./jtd-to-json-schema";
|
|
15
15
|
|
package/src/tools/context.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { AgentToolContext, ToolCallContext } from "@oh-my-pi/pi-agent-core";
|
|
2
|
-
import type { CustomToolContext } from "
|
|
3
|
-
import type { ExtensionUIContext } from "
|
|
2
|
+
import type { CustomToolContext } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
3
|
+
import type { ExtensionUIContext } from "@oh-my-pi/pi-coding-agent/extensibility/extensions/types";
|
|
4
4
|
|
|
5
5
|
declare module "@oh-my-pi/pi-agent-core" {
|
|
6
6
|
interface AgentToolContext extends CustomToolContext {
|
package/src/tools/fetch.ts
CHANGED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { mkdir, rm } from "node:fs/promises";
|
|
2
2
|
import * as path from "node:path";
|
|
3
3
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
4
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
5
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
6
|
+
import { type Theme, theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
7
|
+
import fetchDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/fetch.md" with { type: "text" };
|
|
8
|
+
import type { OutputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
9
|
+
import { ToolAbortError } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
10
|
+
import { ensureTool } from "@oh-my-pi/pi-coding-agent/utils/tools-manager";
|
|
11
|
+
import { specialHandlers } from "@oh-my-pi/pi-coding-agent/web/scrapers/index";
|
|
12
|
+
import type { RenderResult } from "@oh-my-pi/pi-coding-agent/web/scrapers/types";
|
|
13
|
+
import { finalizeOutput, loadPage, MAX_OUTPUT_CHARS } from "@oh-my-pi/pi-coding-agent/web/scrapers/types";
|
|
14
|
+
import { convertWithMarkitdown, fetchBinary } from "@oh-my-pi/pi-coding-agent/web/scrapers/utils";
|
|
4
15
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
5
16
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
6
17
|
import { ptree } from "@oh-my-pi/pi-utils";
|
|
7
18
|
import { type Static, Type } from "@sinclair/typebox";
|
|
8
19
|
import { nanoid } from "nanoid";
|
|
9
20
|
import { parse as parseHtml } from "node-html-parser";
|
|
10
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
11
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
12
|
-
import { type Theme, theme } from "$c/modes/theme/theme";
|
|
13
|
-
import fetchDescription from "$c/prompts/tools/fetch.md" with { type: "text" };
|
|
14
|
-
import type { OutputMeta } from "$c/tools/output-meta";
|
|
15
|
-
import { ToolAbortError } from "$c/tools/tool-errors";
|
|
16
|
-
import { ensureTool } from "$c/utils/tools-manager";
|
|
17
|
-
import { specialHandlers } from "$c/web/scrapers/index";
|
|
18
|
-
import type { RenderResult } from "$c/web/scrapers/types";
|
|
19
|
-
import { finalizeOutput, loadPage, MAX_OUTPUT_CHARS } from "$c/web/scrapers/types";
|
|
20
|
-
import { convertWithMarkitdown, fetchBinary } from "$c/web/scrapers/utils";
|
|
21
21
|
import type { ToolSession } from "./index";
|
|
22
22
|
import { applyListLimit } from "./list-limit";
|
|
23
23
|
import { formatExpandHint } from "./render-utils";
|
package/src/tools/find.ts
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
2
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
3
3
|
import { StringEnum } from "@oh-my-pi/pi-ai";
|
|
4
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
5
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
6
|
+
import { getLanguageFromPath, type Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
7
|
+
import findDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/find.md" with { type: "text" };
|
|
8
|
+
import type { OutputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
9
|
+
import { ToolAbortError, ToolError, throwIfAborted } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
10
|
+
import { ensureTool } from "@oh-my-pi/pi-coding-agent/utils/tools-manager";
|
|
4
11
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
5
12
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
6
13
|
import { ptree, untilAborted } from "@oh-my-pi/pi-utils";
|
|
7
14
|
import type { Static } from "@sinclair/typebox";
|
|
8
15
|
import { Type } from "@sinclair/typebox";
|
|
9
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
10
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
11
|
-
import { getLanguageFromPath, type Theme } from "$c/modes/theme/theme";
|
|
12
|
-
import findDescription from "$c/prompts/tools/find.md" with { type: "text" };
|
|
13
|
-
import type { OutputMeta } from "$c/tools/output-meta";
|
|
14
|
-
import { ToolAbortError, ToolError, throwIfAborted } from "$c/tools/tool-errors";
|
|
15
|
-
import { ensureTool } from "$c/utils/tools-manager";
|
|
16
16
|
|
|
17
17
|
import type { ToolSession } from "./index";
|
|
18
18
|
import { applyListLimit } from "./list-limit";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { tmpdir } from "node:os";
|
|
2
2
|
import { join } from "node:path";
|
|
3
3
|
import { StringEnum } from "@oh-my-pi/pi-ai";
|
|
4
|
+
import type { ModelRegistry } from "@oh-my-pi/pi-coding-agent/config/model-registry";
|
|
5
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
6
|
+
import type { CustomTool } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
7
|
+
import geminiImageDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/gemini-image.md" with { type: "text" };
|
|
8
|
+
import { detectSupportedImageMimeTypeFromFile } from "@oh-my-pi/pi-coding-agent/utils/mime";
|
|
9
|
+
import { getEnv } from "@oh-my-pi/pi-coding-agent/web/search/auth";
|
|
4
10
|
import { untilAborted } from "@oh-my-pi/pi-utils";
|
|
5
11
|
import { type Static, Type } from "@sinclair/typebox";
|
|
6
12
|
import { nanoid } from "nanoid";
|
|
7
|
-
import type { ModelRegistry } from "$c/config/model-registry";
|
|
8
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
9
|
-
import type { CustomTool } from "$c/extensibility/custom-tools/types";
|
|
10
|
-
import geminiImageDescription from "$c/prompts/tools/gemini-image.md" with { type: "text" };
|
|
11
|
-
import { detectSupportedImageMimeTypeFromFile } from "$c/utils/mime";
|
|
12
|
-
import { getEnv } from "$c/web/search/auth";
|
|
13
13
|
import { resolveReadPath } from "./path-utils";
|
|
14
14
|
|
|
15
15
|
const DEFAULT_MODEL = "gemini-3-pro-image-preview";
|
package/src/tools/grep.ts
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import nodePath from "node:path";
|
|
2
2
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
3
3
|
import { StringEnum } from "@oh-my-pi/pi-ai";
|
|
4
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
5
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
6
|
+
import { getLanguageFromPath, type Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
7
|
+
import grepDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/grep.md" with { type: "text" };
|
|
8
|
+
import type { OutputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
9
|
+
import { ToolAbortError, ToolError } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
10
|
+
import { ensureTool } from "@oh-my-pi/pi-coding-agent/utils/tools-manager";
|
|
11
|
+
import { untilAborted } from "@oh-my-pi/pi-coding-agent/utils/utils";
|
|
4
12
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
5
13
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
6
14
|
import { ptree, readLines } from "@oh-my-pi/pi-utils";
|
|
7
15
|
import { Type } from "@sinclair/typebox";
|
|
8
16
|
import { $ } from "bun";
|
|
9
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
10
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
11
|
-
import { getLanguageFromPath, type Theme } from "$c/modes/theme/theme";
|
|
12
|
-
import grepDescription from "$c/prompts/tools/grep.md" with { type: "text" };
|
|
13
|
-
import type { OutputMeta } from "$c/tools/output-meta";
|
|
14
|
-
import { ToolAbortError, ToolError } from "$c/tools/tool-errors";
|
|
15
|
-
import { ensureTool } from "$c/utils/tools-manager";
|
|
16
|
-
import { untilAborted } from "$c/utils/utils";
|
|
17
17
|
import type { ToolSession } from "./index";
|
|
18
18
|
import { applyListLimit } from "./list-limit";
|
|
19
19
|
import { resolveToCwd } from "./path-utils";
|
package/src/tools/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// Exa MCP tools (22 tools)
|
|
2
|
-
export { exaTools } from "
|
|
3
|
-
export type { ExaRenderDetails, ExaSearchResponse, ExaSearchResult } from "
|
|
2
|
+
export { exaTools } from "@oh-my-pi/pi-coding-agent/exa/index";
|
|
3
|
+
export type { ExaRenderDetails, ExaSearchResponse, ExaSearchResult } from "@oh-my-pi/pi-coding-agent/exa/types";
|
|
4
4
|
export {
|
|
5
5
|
type FileDiagnosticsResult,
|
|
6
6
|
type FileFormatResult,
|
|
@@ -11,9 +11,9 @@ export {
|
|
|
11
11
|
type LspWarmupOptions,
|
|
12
12
|
type LspWarmupResult,
|
|
13
13
|
warmupLspServers,
|
|
14
|
-
} from "
|
|
15
|
-
export { EditTool, type EditToolDetails } from "
|
|
16
|
-
export { BUNDLED_AGENTS, TaskTool } from "
|
|
14
|
+
} from "@oh-my-pi/pi-coding-agent/lsp/index";
|
|
15
|
+
export { EditTool, type EditToolDetails } from "@oh-my-pi/pi-coding-agent/patch";
|
|
16
|
+
export { BUNDLED_AGENTS, TaskTool } from "@oh-my-pi/pi-coding-agent/task/index";
|
|
17
17
|
export {
|
|
18
18
|
companyWebSearchTools,
|
|
19
19
|
exaWebSearchTools,
|
|
@@ -31,7 +31,7 @@ export {
|
|
|
31
31
|
webSearchCustomTool,
|
|
32
32
|
webSearchDeepTool,
|
|
33
33
|
webSearchLinkedinTool,
|
|
34
|
-
} from "
|
|
34
|
+
} from "@oh-my-pi/pi-coding-agent/web/search/index";
|
|
35
35
|
export { AskTool, type AskToolDetails } from "./ask";
|
|
36
36
|
export { BashTool, type BashToolDetails, type BashToolOptions } from "./bash";
|
|
37
37
|
export { CalculatorTool, type CalculatorToolDetails } from "./calculator";
|
|
@@ -60,17 +60,17 @@ export {
|
|
|
60
60
|
export { WriteTool, type WriteToolDetails } from "./write";
|
|
61
61
|
|
|
62
62
|
import type { AgentTool } from "@oh-my-pi/pi-agent-core";
|
|
63
|
+
import type { BashInterceptorRule } from "@oh-my-pi/pi-coding-agent/config/settings-manager";
|
|
64
|
+
import type { InternalUrlRouter } from "@oh-my-pi/pi-coding-agent/internal-urls";
|
|
65
|
+
import { getPreludeDocs, warmPythonEnvironment } from "@oh-my-pi/pi-coding-agent/ipy/executor";
|
|
66
|
+
import { checkPythonKernelAvailability } from "@oh-my-pi/pi-coding-agent/ipy/kernel";
|
|
67
|
+
import { LspTool } from "@oh-my-pi/pi-coding-agent/lsp/index";
|
|
68
|
+
import { EditTool } from "@oh-my-pi/pi-coding-agent/patch";
|
|
69
|
+
import type { ArtifactManager } from "@oh-my-pi/pi-coding-agent/session/artifacts";
|
|
70
|
+
import { TaskTool } from "@oh-my-pi/pi-coding-agent/task/index";
|
|
71
|
+
import type { EventBus } from "@oh-my-pi/pi-coding-agent/utils/event-bus";
|
|
72
|
+
import { WebSearchTool } from "@oh-my-pi/pi-coding-agent/web/search/index";
|
|
63
73
|
import { logger } from "@oh-my-pi/pi-utils";
|
|
64
|
-
import type { BashInterceptorRule } from "$c/config/settings-manager";
|
|
65
|
-
import type { InternalUrlRouter } from "$c/internal-urls";
|
|
66
|
-
import { getPreludeDocs, warmPythonEnvironment } from "$c/ipy/executor";
|
|
67
|
-
import { checkPythonKernelAvailability } from "$c/ipy/kernel";
|
|
68
|
-
import { LspTool } from "$c/lsp/index";
|
|
69
|
-
import { EditTool } from "$c/patch";
|
|
70
|
-
import type { ArtifactManager } from "$c/session/artifacts";
|
|
71
|
-
import { TaskTool } from "$c/task/index";
|
|
72
|
-
import type { EventBus } from "$c/utils/event-bus";
|
|
73
|
-
import { WebSearchTool } from "$c/web/search/index";
|
|
74
74
|
import { AskTool } from "./ask";
|
|
75
75
|
import { BashTool } from "./bash";
|
|
76
76
|
import { CalculatorTool } from "./calculator";
|
|
@@ -118,15 +118,15 @@ export interface ToolSession {
|
|
|
118
118
|
/** Get the current session model string, regardless of how it was chosen */
|
|
119
119
|
getActiveModelString?: () => string | undefined;
|
|
120
120
|
/** Auth storage for passing to subagents (avoids re-discovery) */
|
|
121
|
-
authStorage?: import("
|
|
121
|
+
authStorage?: import("@oh-my-pi/pi-coding-agent/session/auth-storage").AuthStorage;
|
|
122
122
|
/** Model registry for passing to subagents (avoids re-discovery) */
|
|
123
|
-
modelRegistry?: import("
|
|
123
|
+
modelRegistry?: import("@oh-my-pi/pi-coding-agent/config/model-registry").ModelRegistry;
|
|
124
124
|
/** MCP manager for proxying MCP calls through parent */
|
|
125
125
|
mcpManager?: import("../mcp/manager").MCPManager;
|
|
126
126
|
/** Internal URL router for agent:// and skill:// URLs */
|
|
127
127
|
internalRouter?: InternalUrlRouter;
|
|
128
128
|
/** Settings manager for passing to subagents (avoids SQLite access in workers) */
|
|
129
|
-
settingsManager?: { serialize: () => import("
|
|
129
|
+
settingsManager?: { serialize: () => import("@oh-my-pi/pi-coding-agent/config/settings-manager").Settings };
|
|
130
130
|
/** Settings manager (optional) */
|
|
131
131
|
settings?: {
|
|
132
132
|
getImageAutoResize(): boolean;
|
package/src/tools/list-limit.ts
CHANGED
package/src/tools/ls.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import nodePath from "node:path";
|
|
2
2
|
import type { AgentTool, AgentToolResult } from "@oh-my-pi/pi-agent-core";
|
|
3
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
4
|
+
import { getLanguageFromPath, type Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
5
|
+
import type { OutputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
6
|
+
import { ToolError, throwIfAborted } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
3
7
|
import { type Component, Text } from "@oh-my-pi/pi-tui";
|
|
4
8
|
import { untilAborted } from "@oh-my-pi/pi-utils";
|
|
5
9
|
import { Type } from "@sinclair/typebox";
|
|
6
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
7
|
-
import { getLanguageFromPath, type Theme } from "$c/modes/theme/theme";
|
|
8
|
-
import type { OutputMeta } from "$c/tools/output-meta";
|
|
9
|
-
import { ToolError, throwIfAborted } from "$c/tools/tool-errors";
|
|
10
10
|
import type { ToolSession } from "./index";
|
|
11
11
|
import { applyListLimit } from "./list-limit";
|
|
12
12
|
import { resolveToCwd } from "./path-utils";
|
package/src/tools/notebook.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
2
2
|
import { StringEnum } from "@oh-my-pi/pi-ai";
|
|
3
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
4
|
+
import type { Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
5
|
+
import type { ToolSession } from "@oh-my-pi/pi-coding-agent/sdk";
|
|
3
6
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
4
7
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
5
8
|
import { untilAborted } from "@oh-my-pi/pi-utils";
|
|
6
9
|
import { type Static, Type } from "@sinclair/typebox";
|
|
7
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
8
|
-
import type { Theme } from "$c/modes/theme/theme";
|
|
9
|
-
import type { ToolSession } from "$c/sdk";
|
|
10
10
|
import { resolveToCwd } from "./path-utils";
|
|
11
11
|
import {
|
|
12
12
|
formatCount,
|
package/src/tools/output-meta.ts
CHANGED
|
@@ -7,9 +7,9 @@
|
|
|
7
7
|
|
|
8
8
|
import type { AgentTool, AgentToolResult } from "@oh-my-pi/pi-agent-core";
|
|
9
9
|
import type { ImageContent, TextContent } from "@oh-my-pi/pi-ai";
|
|
10
|
-
import type { OutputSummary } from "
|
|
11
|
-
import type { TruncationResult } from "
|
|
12
|
-
import { formatSize } from "
|
|
10
|
+
import type { OutputSummary } from "@oh-my-pi/pi-coding-agent/session/streaming-output";
|
|
11
|
+
import type { TruncationResult } from "@oh-my-pi/pi-coding-agent/tools/truncate";
|
|
12
|
+
import { formatSize } from "@oh-my-pi/pi-coding-agent/tools/truncate";
|
|
13
13
|
import { renderError } from "./tool-errors";
|
|
14
14
|
|
|
15
15
|
/**
|
package/src/tools/python.ts
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import { relative, resolve, sep } from "node:path";
|
|
2
2
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
3
3
|
import type { ImageContent } from "@oh-my-pi/pi-ai";
|
|
4
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
5
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
6
|
+
import { executePython, getPreludeDocs, type PythonExecutorOptions } from "@oh-my-pi/pi-coding-agent/ipy/executor";
|
|
7
|
+
import type { PreludeHelper, PythonStatusEvent } from "@oh-my-pi/pi-coding-agent/ipy/kernel";
|
|
8
|
+
import { truncateToVisualLines } from "@oh-my-pi/pi-coding-agent/modes/components/visual-truncate";
|
|
9
|
+
import { highlightCode, type Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
10
|
+
import pythonDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/python.md" with { type: "text" };
|
|
11
|
+
import { OutputSink, type OutputSummary } from "@oh-my-pi/pi-coding-agent/session/streaming-output";
|
|
12
|
+
import type { OutputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
13
|
+
import { ToolAbortError, ToolError } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
4
14
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
5
15
|
import { Text, truncateToWidth, visibleWidth } from "@oh-my-pi/pi-tui";
|
|
6
16
|
import { type Static, Type } from "@sinclair/typebox";
|
|
7
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
8
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
9
|
-
import { executePython, getPreludeDocs, type PythonExecutorOptions } from "$c/ipy/executor";
|
|
10
|
-
import type { PreludeHelper, PythonStatusEvent } from "$c/ipy/kernel";
|
|
11
|
-
import { truncateToVisualLines } from "$c/modes/components/visual-truncate";
|
|
12
|
-
import { highlightCode, type Theme } from "$c/modes/theme/theme";
|
|
13
|
-
import pythonDescription from "$c/prompts/tools/python.md" with { type: "text" };
|
|
14
|
-
import { OutputSink, type OutputSummary } from "$c/session/streaming-output";
|
|
15
|
-
import type { OutputMeta } from "$c/tools/output-meta";
|
|
16
|
-
import { ToolAbortError, ToolError } from "$c/tools/tool-errors";
|
|
17
17
|
import type { ToolSession } from "./index";
|
|
18
18
|
import { allocateOutputArtifact, createTailBuffer } from "./output-utils";
|
|
19
19
|
import { resolveToCwd } from "./path-utils";
|
package/src/tools/read.ts
CHANGED
|
@@ -2,21 +2,21 @@ import { homedir } from "node:os";
|
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
4
4
|
import type { ImageContent, TextContent } from "@oh-my-pi/pi-ai";
|
|
5
|
+
import { CONFIG_DIR_NAME } from "@oh-my-pi/pi-coding-agent/config";
|
|
6
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
7
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
8
|
+
import type { Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
9
|
+
import readDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/read.md" with { type: "text" };
|
|
10
|
+
import type { ToolSession } from "@oh-my-pi/pi-coding-agent/sdk";
|
|
11
|
+
import type { OutputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
12
|
+
import { ToolAbortError, ToolError, throwIfAborted } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
13
|
+
import { formatDimensionNote, resizeImage } from "@oh-my-pi/pi-coding-agent/utils/image-resize";
|
|
14
|
+
import { detectSupportedImageMimeTypeFromFile } from "@oh-my-pi/pi-coding-agent/utils/mime";
|
|
15
|
+
import { ensureTool } from "@oh-my-pi/pi-coding-agent/utils/tools-manager";
|
|
5
16
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
6
17
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
7
18
|
import { ptree } from "@oh-my-pi/pi-utils";
|
|
8
19
|
import { Type } from "@sinclair/typebox";
|
|
9
|
-
import { CONFIG_DIR_NAME } from "$c/config";
|
|
10
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
11
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
12
|
-
import type { Theme } from "$c/modes/theme/theme";
|
|
13
|
-
import readDescription from "$c/prompts/tools/read.md" with { type: "text" };
|
|
14
|
-
import type { ToolSession } from "$c/sdk";
|
|
15
|
-
import type { OutputMeta } from "$c/tools/output-meta";
|
|
16
|
-
import { ToolAbortError, ToolError, throwIfAborted } from "$c/tools/tool-errors";
|
|
17
|
-
import { formatDimensionNote, resizeImage } from "$c/utils/image-resize";
|
|
18
|
-
import { detectSupportedImageMimeTypeFromFile } from "$c/utils/mime";
|
|
19
|
-
import { ensureTool } from "$c/utils/tools-manager";
|
|
20
20
|
import { runFd } from "./find";
|
|
21
21
|
import { applyListLimit } from "./list-limit";
|
|
22
22
|
import { LsTool } from "./ls";
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
8
|
import { homedir } from "node:os";
|
|
9
|
-
import type { Theme } from "
|
|
9
|
+
import type { Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
10
10
|
|
|
11
11
|
// =============================================================================
|
|
12
12
|
// Standardized Display Constants
|
package/src/tools/renderers.ts
CHANGED
|
@@ -4,13 +4,13 @@
|
|
|
4
4
|
* These provide rich visualization for tool calls and results in the TUI.
|
|
5
5
|
*/
|
|
6
6
|
|
|
7
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
8
|
+
import { lspToolRenderer } from "@oh-my-pi/pi-coding-agent/lsp/render";
|
|
9
|
+
import type { Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
10
|
+
import { editToolRenderer } from "@oh-my-pi/pi-coding-agent/patch";
|
|
11
|
+
import { taskToolRenderer } from "@oh-my-pi/pi-coding-agent/task/render";
|
|
12
|
+
import { webSearchToolRenderer } from "@oh-my-pi/pi-coding-agent/web/search/render";
|
|
7
13
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
8
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
9
|
-
import { lspToolRenderer } from "$c/lsp/render";
|
|
10
|
-
import type { Theme } from "$c/modes/theme/theme";
|
|
11
|
-
import { editToolRenderer } from "$c/patch";
|
|
12
|
-
import { taskToolRenderer } from "$c/task/render";
|
|
13
|
-
import { webSearchToolRenderer } from "$c/web/search/render";
|
|
14
14
|
import { askToolRenderer } from "./ask";
|
|
15
15
|
import { bashToolRenderer } from "./bash";
|
|
16
16
|
import { calculatorToolRenderer } from "./calculator";
|
package/src/tools/review.ts
CHANGED
|
@@ -7,10 +7,10 @@
|
|
|
7
7
|
*/
|
|
8
8
|
|
|
9
9
|
import type { AgentTool } from "@oh-my-pi/pi-agent-core";
|
|
10
|
+
import type { Theme, ThemeColor } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
10
11
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
11
12
|
import { Container, Text } from "@oh-my-pi/pi-tui";
|
|
12
13
|
import { Type } from "@sinclair/typebox";
|
|
13
|
-
import type { Theme, ThemeColor } from "$c/modes/theme/theme";
|
|
14
14
|
|
|
15
15
|
export type FindingPriority = "P0" | "P1" | "P2" | "P3";
|
|
16
16
|
|
|
@@ -151,7 +151,7 @@ export type { ReportFindingDetails };
|
|
|
151
151
|
|
|
152
152
|
import path from "node:path";
|
|
153
153
|
import { StringEnum } from "@oh-my-pi/pi-ai";
|
|
154
|
-
import { subprocessToolRegistry } from "
|
|
154
|
+
import { subprocessToolRegistry } from "@oh-my-pi/pi-coding-agent/task/subprocess-tool-registry";
|
|
155
155
|
|
|
156
156
|
// Register report_finding handler
|
|
157
157
|
subprocessToolRegistry.register<ReportFindingDetails>("report_finding", {
|
package/src/tools/ssh.ts
CHANGED
|
@@ -1,19 +1,19 @@
|
|
|
1
1
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
2
|
+
import type { SSHHost } from "@oh-my-pi/pi-coding-agent/capability/ssh";
|
|
3
|
+
import { sshCapability } from "@oh-my-pi/pi-coding-agent/capability/ssh";
|
|
4
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
5
|
+
import { loadCapability } from "@oh-my-pi/pi-coding-agent/discovery/index";
|
|
6
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
7
|
+
import type { Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
8
|
+
import sshDescriptionBase from "@oh-my-pi/pi-coding-agent/prompts/tools/ssh.md" with { type: "text" };
|
|
9
|
+
import type { SSHHostInfo } from "@oh-my-pi/pi-coding-agent/ssh/connection-manager";
|
|
10
|
+
import { ensureHostInfo, getHostInfoForHost } from "@oh-my-pi/pi-coding-agent/ssh/connection-manager";
|
|
11
|
+
import { executeSSH } from "@oh-my-pi/pi-coding-agent/ssh/ssh-executor";
|
|
12
|
+
import type { OutputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
13
|
+
import { ToolError } from "@oh-my-pi/pi-coding-agent/tools/tool-errors";
|
|
2
14
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
3
15
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
4
16
|
import { Type } from "@sinclair/typebox";
|
|
5
|
-
import type { SSHHost } from "$c/capability/ssh";
|
|
6
|
-
import { sshCapability } from "$c/capability/ssh";
|
|
7
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
8
|
-
import { loadCapability } from "$c/discovery/index";
|
|
9
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
10
|
-
import type { Theme } from "$c/modes/theme/theme";
|
|
11
|
-
import sshDescriptionBase from "$c/prompts/tools/ssh.md" with { type: "text" };
|
|
12
|
-
import type { SSHHostInfo } from "$c/ssh/connection-manager";
|
|
13
|
-
import { ensureHostInfo, getHostInfoForHost } from "$c/ssh/connection-manager";
|
|
14
|
-
import { executeSSH } from "$c/ssh/ssh-executor";
|
|
15
|
-
import type { OutputMeta } from "$c/tools/output-meta";
|
|
16
|
-
import { ToolError } from "$c/tools/tool-errors";
|
|
17
17
|
import type { ToolSession } from "./index";
|
|
18
18
|
import { allocateOutputArtifact, createTailBuffer } from "./output-utils";
|
|
19
19
|
import { ToolUIKit } from "./render-utils";
|
package/src/tools/todo-write.ts
CHANGED
|
@@ -2,16 +2,16 @@ import { randomUUID } from "node:crypto";
|
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import type { AgentTool, AgentToolContext, AgentToolResult, AgentToolUpdateCallback } from "@oh-my-pi/pi-agent-core";
|
|
4
4
|
import { StringEnum } from "@oh-my-pi/pi-ai";
|
|
5
|
+
import { renderPromptTemplate } from "@oh-my-pi/pi-coding-agent/config/prompt-templates";
|
|
6
|
+
import type { RenderResultOptions } from "@oh-my-pi/pi-coding-agent/extensibility/custom-tools/types";
|
|
7
|
+
import type { Theme } from "@oh-my-pi/pi-coding-agent/modes/theme/theme";
|
|
8
|
+
import todoWriteDescription from "@oh-my-pi/pi-coding-agent/prompts/tools/todo-write.md" with { type: "text" };
|
|
9
|
+
import type { ToolSession } from "@oh-my-pi/pi-coding-agent/sdk";
|
|
5
10
|
import type { Component } from "@oh-my-pi/pi-tui";
|
|
6
11
|
import { Text } from "@oh-my-pi/pi-tui";
|
|
7
12
|
import { logger } from "@oh-my-pi/pi-utils";
|
|
8
13
|
import { Type } from "@sinclair/typebox";
|
|
9
14
|
import chalk from "chalk";
|
|
10
|
-
import { renderPromptTemplate } from "$c/config/prompt-templates";
|
|
11
|
-
import type { RenderResultOptions } from "$c/extensibility/custom-tools/types";
|
|
12
|
-
import type { Theme } from "$c/modes/theme/theme";
|
|
13
|
-
import todoWriteDescription from "$c/prompts/tools/todo-write.md" with { type: "text" };
|
|
14
|
-
import type { ToolSession } from "$c/sdk";
|
|
15
15
|
|
|
16
16
|
const todoWriteSchema = Type.Object({
|
|
17
17
|
todos: Type.Array(
|
package/src/tools/tool-result.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import type { AgentToolResult } from "@oh-my-pi/pi-agent-core";
|
|
2
2
|
import type { ImageContent, TextContent } from "@oh-my-pi/pi-ai";
|
|
3
|
-
import type { OutputSummary } from "
|
|
3
|
+
import type { OutputSummary } from "@oh-my-pi/pi-coding-agent/session/streaming-output";
|
|
4
4
|
import type {
|
|
5
5
|
OutputMeta,
|
|
6
6
|
TruncationOptions,
|
|
7
7
|
TruncationSummaryOptions,
|
|
8
8
|
TruncationTextOptions,
|
|
9
|
-
} from "
|
|
10
|
-
import { outputMeta } from "
|
|
9
|
+
} from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
10
|
+
import { outputMeta } from "@oh-my-pi/pi-coding-agent/tools/output-meta";
|
|
11
11
|
import type { TruncationResult } from "./truncate";
|
|
12
12
|
|
|
13
13
|
type ToolContent = Array<TextContent | ImageContent>;
|