Download packages/coding-agent/src/core/tools/index.ts from SaylorTwift/pi: direct link, hf CLI and curl.
- Browser
- Download file 6.78 kB
-
https://huggingface.co/SaylorTwift/pi/resolve/main/packages/coding-agent/src/core/tools/index.ts
- Command line
-
hf download hf://SaylorTwift/pi/packages/coding-agent/src/core/tools/index.ts
-
curl -L -o index.ts https://huggingface.co/SaylorTwift/pi/resolve/main/packages/coding-agent/src/core/tools/index.ts
6.78 kB
| export { | |
| type BashOperations, | |
| type BashSpawnContext, | |
| type BashSpawnHook, | |
| type BashToolDetails, | |
| type BashToolInput, | |
| type BashToolOptions, | |
| createBashTool, | |
| createBashToolDefinition, | |
| createLocalBashOperations, | |
| } from "./bash.ts"; | |
| export { | |
| createEditTool, | |
| createEditToolDefinition, | |
| type EditOperations, | |
| type EditToolDetails, | |
| type EditToolInput, | |
| type EditToolOptions, | |
| } from "./edit.ts"; | |
| export { withFileMutationQueue } from "./file-mutation-queue.ts"; | |
| export { | |
| createFindTool, | |
| createFindToolDefinition, | |
| type FindOperations, | |
| type FindToolDetails, | |
| type FindToolInput, | |
| type FindToolOptions, | |
| } from "./find.ts"; | |
| export { | |
| createGrepTool, | |
| createGrepToolDefinition, | |
| type GrepOperations, | |
| type GrepToolDetails, | |
| type GrepToolInput, | |
| type GrepToolOptions, | |
| } from "./grep.ts"; | |
| export { | |
| createLsTool, | |
| createLsToolDefinition, | |
| type LsOperations, | |
| type LsToolDetails, | |
| type LsToolInput, | |
| type LsToolOptions, | |
| } from "./ls.ts"; | |
| export { | |
| createLocalPowerShellOperations, | |
| createPowerShellTool, | |
| createPowerShellToolDefinition, | |
| type PowerShellOperations, | |
| type PowerShellSpawnContext, | |
| type PowerShellSpawnHook, | |
| type PowerShellToolDetails, | |
| type PowerShellToolInput, | |
| type PowerShellToolOptions, | |
| } from "./powershell.ts"; | |
| export { | |
| createReadTool, | |
| createReadToolDefinition, | |
| type ReadOperations, | |
| type ReadToolDetails, | |
| type ReadToolInput, | |
| type ReadToolOptions, | |
| } from "./read.ts"; | |
| export { | |
| DEFAULT_MAX_BYTES, | |
| DEFAULT_MAX_LINES, | |
| formatSize, | |
| type TruncationOptions, | |
| type TruncationResult, | |
| truncateHead, | |
| truncateLine, | |
| truncateTail, | |
| } from "./truncate.ts"; | |
| export { | |
| createWriteTool, | |
| createWriteToolDefinition, | |
| type WriteOperations, | |
| type WriteToolInput, | |
| type WriteToolOptions, | |
| } from "./write.ts"; | |
| import type { AgentTool } from "@earendil-works/pi-agent-core"; | |
| import type { ToolDefinition } from "../extensions/types.ts"; | |
| import { type BashToolOptions, createBashTool, createBashToolDefinition } from "./bash.ts"; | |
| import { createEditTool, createEditToolDefinition, type EditToolOptions } from "./edit.ts"; | |
| import { createFindTool, createFindToolDefinition, type FindToolOptions } from "./find.ts"; | |
| import { createGrepTool, createGrepToolDefinition, type GrepToolOptions } from "./grep.ts"; | |
| import { createLsTool, createLsToolDefinition, type LsToolOptions } from "./ls.ts"; | |
| import { createPowerShellTool, createPowerShellToolDefinition, type PowerShellToolOptions } from "./powershell.ts"; | |
| import { createReadTool, createReadToolDefinition, type ReadToolOptions } from "./read.ts"; | |
| import { createWriteTool, createWriteToolDefinition, type WriteToolOptions } from "./write.ts"; | |
| export type Tool = AgentTool<any>; | |
| export type ToolDef = ToolDefinition<any, any>; | |
| export type ToolName = "read" | "bash" | "powershell" | "edit" | "write" | "grep" | "find" | "ls"; | |
| export const allToolNames: Set<ToolName> = new Set([ | |
| "read", | |
| "bash", | |
| "powershell", | |
| "edit", | |
| "write", | |
| "grep", | |
| "find", | |
| "ls", | |
| ]); | |
| export interface ToolsOptions { | |
| read?: ReadToolOptions; | |
| bash?: BashToolOptions; | |
| powershell?: PowerShellToolOptions; | |
| write?: WriteToolOptions; | |
| edit?: EditToolOptions; | |
| grep?: GrepToolOptions; | |
| find?: FindToolOptions; | |
| ls?: LsToolOptions; | |
| } | |
| export function createToolDefinition(toolName: ToolName, cwd: string, options?: ToolsOptions): ToolDef { | |
| switch (toolName) { | |
| case "read": | |
| return createReadToolDefinition(cwd, options?.read); | |
| case "bash": | |
| return createBashToolDefinition(cwd, options?.bash); | |
| case "powershell": | |
| return createPowerShellToolDefinition(cwd, options?.powershell); | |
| case "edit": | |
| return createEditToolDefinition(cwd, options?.edit); | |
| case "write": | |
| return createWriteToolDefinition(cwd, options?.write); | |
| case "grep": | |
| return createGrepToolDefinition(cwd, options?.grep); | |
| case "find": | |
| return createFindToolDefinition(cwd, options?.find); | |
| case "ls": | |
| return createLsToolDefinition(cwd, options?.ls); | |
| default: | |
| throw new Error(`Unknown tool name: ${toolName}`); | |
| } | |
| } | |
| export function createTool(toolName: ToolName, cwd: string, options?: ToolsOptions): Tool { | |
| switch (toolName) { | |
| case "read": | |
| return createReadTool(cwd, options?.read); | |
| case "bash": | |
| return createBashTool(cwd, options?.bash); | |
| case "powershell": | |
| return createPowerShellTool(cwd, options?.powershell); | |
| case "edit": | |
| return createEditTool(cwd, options?.edit); | |
| case "write": | |
| return createWriteTool(cwd, options?.write); | |
| case "grep": | |
| return createGrepTool(cwd, options?.grep); | |
| case "find": | |
| return createFindTool(cwd, options?.find); | |
| case "ls": | |
| return createLsTool(cwd, options?.ls); | |
| default: | |
| throw new Error(`Unknown tool name: ${toolName}`); | |
| } | |
| } | |
| export function createCodingToolDefinitions(cwd: string, options?: ToolsOptions): ToolDef[] { | |
| return [ | |
| createReadToolDefinition(cwd, options?.read), | |
| createBashToolDefinition(cwd, options?.bash), | |
| createEditToolDefinition(cwd, options?.edit), | |
| createWriteToolDefinition(cwd, options?.write), | |
| ]; | |
| } | |
| export function createReadOnlyToolDefinitions(cwd: string, options?: ToolsOptions): ToolDef[] { | |
| return [ | |
| createReadToolDefinition(cwd, options?.read), | |
| createGrepToolDefinition(cwd, options?.grep), | |
| createFindToolDefinition(cwd, options?.find), | |
| createLsToolDefinition(cwd, options?.ls), | |
| ]; | |
| } | |
| export function createAllToolDefinitions(cwd: string, options?: ToolsOptions): Record<ToolName, ToolDef> { | |
| return { | |
| read: createReadToolDefinition(cwd, options?.read), | |
| bash: createBashToolDefinition(cwd, options?.bash), | |
| powershell: createPowerShellToolDefinition(cwd, options?.powershell), | |
| edit: createEditToolDefinition(cwd, options?.edit), | |
| write: createWriteToolDefinition(cwd, options?.write), | |
| grep: createGrepToolDefinition(cwd, options?.grep), | |
| find: createFindToolDefinition(cwd, options?.find), | |
| ls: createLsToolDefinition(cwd, options?.ls), | |
| }; | |
| } | |
| export function createCodingTools(cwd: string, options?: ToolsOptions): Tool[] { | |
| return [ | |
| createReadTool(cwd, options?.read), | |
| createBashTool(cwd, options?.bash), | |
| createEditTool(cwd, options?.edit), | |
| createWriteTool(cwd, options?.write), | |
| ]; | |
| } | |
| export function createReadOnlyTools(cwd: string, options?: ToolsOptions): Tool[] { | |
| return [ | |
| createReadTool(cwd, options?.read), | |
| createGrepTool(cwd, options?.grep), | |
| createFindTool(cwd, options?.find), | |
| createLsTool(cwd, options?.ls), | |
| ]; | |
| } | |
| export function createAllTools(cwd: string, options?: ToolsOptions): Record<ToolName, Tool> { | |
| return { | |
| read: createReadTool(cwd, options?.read), | |
| bash: createBashTool(cwd, options?.bash), | |
| powershell: createPowerShellTool(cwd, options?.powershell), | |
| edit: createEditTool(cwd, options?.edit), | |
| write: createWriteTool(cwd, options?.write), | |
| grep: createGrepTool(cwd, options?.grep), | |
| find: createFindTool(cwd, options?.find), | |
| ls: createLsTool(cwd, options?.ls), | |
| }; | |
| } | |