mirror of
https://github.com/pacnpal/Roo-Code.git
synced 2025-12-20 04:11:10 -05:00
Allow the user to send context with approval or rejection
This commit is contained in:
@@ -1085,35 +1085,23 @@ export class Cline {
|
|||||||
const askApproval = async (type: ClineAsk, partialMessage?: string) => {
|
const askApproval = async (type: ClineAsk, partialMessage?: string) => {
|
||||||
const { response, text, images } = await this.ask(type, partialMessage, false)
|
const { response, text, images } = await this.ask(type, partialMessage, false)
|
||||||
if (response !== "yesButtonClicked") {
|
if (response !== "yesButtonClicked") {
|
||||||
if (response === "messageResponse") {
|
// Handle both messageResponse and noButtonClicked with text
|
||||||
|
if (text) {
|
||||||
await this.say("user_feedback", text, images)
|
await this.say("user_feedback", text, images)
|
||||||
pushToolResult(
|
pushToolResult(
|
||||||
formatResponse.toolResult(formatResponse.toolDeniedWithFeedback(text), images),
|
formatResponse.toolResult(formatResponse.toolDeniedWithFeedback(text), images),
|
||||||
)
|
)
|
||||||
// this.userMessageContent.push({
|
} else {
|
||||||
// type: "text",
|
pushToolResult(formatResponse.toolDenied())
|
||||||
// text: `${toolDescription()}`,
|
|
||||||
// })
|
|
||||||
// this.toolResults.push({
|
|
||||||
// type: "tool_result",
|
|
||||||
// tool_use_id: toolUseId,
|
|
||||||
// content: this.formatToolResponseWithImages(
|
|
||||||
// await this.formatToolDeniedFeedback(text),
|
|
||||||
// images
|
|
||||||
// ),
|
|
||||||
// })
|
|
||||||
this.didRejectTool = true
|
|
||||||
return false
|
|
||||||
}
|
}
|
||||||
pushToolResult(formatResponse.toolDenied())
|
|
||||||
// this.toolResults.push({
|
|
||||||
// type: "tool_result",
|
|
||||||
// tool_use_id: toolUseId,
|
|
||||||
// content: await this.formatToolDenied(),
|
|
||||||
// })
|
|
||||||
this.didRejectTool = true
|
this.didRejectTool = true
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
// Handle yesButtonClicked with text
|
||||||
|
if (text) {
|
||||||
|
await this.say("user_feedback", text, images)
|
||||||
|
pushToolResult(formatResponse.toolResult(formatResponse.toolApprovedWithFeedback(text), images))
|
||||||
|
}
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,9 @@ export const formatResponse = {
|
|||||||
toolDeniedWithFeedback: (feedback?: string) =>
|
toolDeniedWithFeedback: (feedback?: string) =>
|
||||||
`The user denied this operation and provided the following feedback:\n<feedback>\n${feedback}\n</feedback>`,
|
`The user denied this operation and provided the following feedback:\n<feedback>\n${feedback}\n</feedback>`,
|
||||||
|
|
||||||
|
toolApprovedWithFeedback: (feedback?: string) =>
|
||||||
|
`The user approved this operation and provided the following context:\n<feedback>\n${feedback}\n</feedback>`,
|
||||||
|
|
||||||
toolError: (error?: string) => `The tool execution failed with the following error:\n<error>\n${error}\n</error>`,
|
toolError: (error?: string) => `The tool execution failed with the following error:\n<error>\n${error}\n</error>`,
|
||||||
|
|
||||||
noToolsUsed: () =>
|
noToolsUsed: () =>
|
||||||
|
|||||||
Reference in New Issue
Block a user