18
src/ralph-loop/prompt-tools.ts
Normal file
18
src/ralph-loop/prompt-tools.ts
Normal file
@@ -0,0 +1,18 @@
|
||||
export type PromptToolPermission = boolean | "allow" | "deny" | "ask"
|
||||
|
||||
export function normalizePromptTools(
|
||||
tools: Record<string, PromptToolPermission> | undefined,
|
||||
): Record<string, boolean> | undefined {
|
||||
if (!tools) return undefined
|
||||
const normalized: Record<string, boolean> = {}
|
||||
for (const [toolName, permission] of Object.entries(tools)) {
|
||||
if (permission === false || permission === "deny") {
|
||||
normalized[toolName] = false
|
||||
continue
|
||||
}
|
||||
if (permission === true || permission === "allow" || permission === "ask") {
|
||||
normalized[toolName] = true
|
||||
}
|
||||
}
|
||||
return Object.keys(normalized).length > 0 ? normalized : undefined
|
||||
}
|
||||
Reference in New Issue
Block a user