Tool permissions and approvals in Katalon AI Assistant
Tool approval is being rolled out organization by organization. Contact Katalon Support if approval controls do not appear in your project.
Katalon AI Assistant keeps a human in the loop before performing actions that create, update, delete, move, or run resources. The assistant reads freely, but it does not write on its own. Before it changes anything โ in your Katalon project or in a connected external app, it pauses and shows you exactly what it is about to do. Nothing is written until you approve.
This document explains how tool approval works in Katalon True Platform, what you see on the approval card, and how to auto-approve the tools you trust.
- Access to Katalon AI Assistant in your Katalon True Platform project.
- Permission on the entity or connected app you're acting on. Approval does not grant you access you don't already have โ the assistant acts on your behalf and is limited to what your account can do.
How tool approval worksโ
Every tool the assistant can call is classified as either a read or a write.
- Reads โ searching test cases, opening a result, reading a Jira issue, listing repositories โ run immediately with no prompt.
- Writes โ anything that creates, updates, deletes, moves, or triggers an execution โ are held. The assistant stops, shows an Approval needed card, and waits for your decision.
While an approval is pending, the message box shows Review the approval above to continue and is unavailable. Decide on the card first, then keep chatting.
Approve or deny an actionโ
When the assistant needs to write, an Approval needed card appears. Click Allow to proceed or Deny to discard โ the assistant stops without writing anything. You can then correct the request and ask again.
Check the details on the card before approving. For actions like creating a test case, the assistant fills in fields you never specified โ Priority, Precondition, Areas โ and the card is your only chance to catch them. If anything is wrong, deny and clarify.
- Delete cards show an ID, not a name โ for example
Test case id: 591714. There's no title to sanity-check against, so confirm the ID is correct before approving. If unsure, deny and ask the assistant to show you that test case first.
After you decide, the card collapses to a one-line record in the conversation โ create_test_case - approved or create_test_case - denied.
Example: creating a test caseโ
Suppose you ask:
Create a manual test case titled "Verify login fails with an incorrect password" with steps: 1. Open the login page. 2. Enter a registered email and an incorrect password. 3. Click Sign in. Expected result: an "Invalid email or password" message appears and the user stays on the login page.
The assistant holds the write and shows Approval needed ยท Create test case. Expanding Details reveals more than you asked for:
- Project and Path โ where it will be saved, resolved from your current project.
- Priority โ set to
HIGH - Precondition โ written by the assistant from the context of your request.
- Areas โ tags such as
AuthenticationandManual, inferred from the title and steps.
If the priority is wrong, deny and clarify: Same test case, but set priority to Medium and leave Areas empty.
Once you click Allow, the conversation records create_test_case - approved and the assistant reports the result - so you can verify what was actually saved.
Review several actions in one requestโ
When one request produces more than one write โ for example, Delete test cases 591721 and 591722 โ the assistant groups them into a single card that you step through.
The card shows one action at a time, with a progress bar and a counter such as 1 of 2. Moving to 2 of 2 swaps the summary line to the second action, so you can read each one before deciding.
- Use โน and โบ to move between actions.
- Use โ and โ to deny or approve the action you're currently viewing.
- Use Deny (n) or Allow (n) to apply one decision to every action in the group.
All decisions are submitted together. The conversation then records the outcome for the group, for example delete_test_case - approved ร2.
- Step through the group before deciding in bulk โ a batch can mix a harmless create with a destructive delete.
- Approve deletes one at a time rather than with Allow (n).
Always allow a toolโ
If you approve the same kind of action repeatedly, you can stop being asked for it.
On any approval card, click Always allow this tool. This does two things at once: it approves the pending action, and it adds the tool to your always-approved list.
From then on, writes through that tool run without a card. The conversation still records them, marked create_test_case - auto-approved, so nothing happens invisibly โ you just aren't asked first.
The list is per user and per browser. It is stored locally in the browser you're using, so:
- It doesn't apply to your teammates.
- It doesn't follow you to another browser, another device, or a private window.
- Clearing your browser data removes it, and every tool is gated again.
Always-allow is tool-level, not action-level. Adding a tool auto-approves every future write through it โ including on entities you weren't thinking of at the time. Don't add tools that delete, such as Delete test case.
Manage approved toolsโ
Review and revoke your always-approved tools at any time.
- In the message box toolbar, click the shield icon (Manage approved tools).
- The Always-approved tools panel lists every tool you've auto-approved, by its plain-language name โ for example Create test case. When the list is empty, it shows No tools are auto-approved yet.
- Remove entries:
- Click the bin icon next to a tool to remove just that tool.
- Click Remove all to clear the list.
Removing takes effect immediately: the very next write through that tool is held for approval again. Removing a tool does not undo anything already written.
Actions that require approvalโ
The assistant asks for approval before any of the following. Everything else โ search, list, read, and report actions โ runs without a prompt.
| Area | Actions that need approval |
|---|---|
| Test cases | Create a test case ยท Update test cases ยท Duplicate a test case ยท Move a test case ยท Delete a test case ยท Replace test case steps with a call |
| Test organization | Manage test folders (create, delete, duplicate, move, rename) ยท Manage test suites (create, rename, move, duplicate, delete, add test cases) ยท Link or unlink test cases and requirements |
| Execution | Create a test run ยท Re-run an execution ยท Open an AI-assisted manual session ยท Update a schedule's configuration |
| Defects | Create a defect in Jira or Azure DevOps and link it to a result |
| Test Execution - Cloud | Create a Cloud app ยท Get an app upload URL ยท Manage dynamic apps ยท Delete Cloud apps ยท Start a Katalon tunnel ยท Stop a Katalon tunnel |
| Connected external apps | Any write to an external app โ for example adding a comment, creating an issue or page, or creating a Drive file or folder |
| Multi-step workflows | Running an external task workflow, such as triaging Jira bugs, unless you ask for a preview run |
Preview-only calls are treated as reads and are not gated, because they don't change anything. Asking for a dry run or a preview of a workflow returns the proposed changes without writing them โ a useful way to inspect a large operation before approving it.