Integrated Tools: Management and Effective Use
Hello! I will explain how you can use Jules more effectively.
Listed below are the integrated tools belonging to the Jules Interactive Plan mode. Unfortunately, these tools do not have a timeout mechanism; if they fall into an infinite loop, they will run indefinitely. This is particularly true for the pre_commit_instructions tool, which performs tasks such as build tests; if an error occurs, it can run forever or continuously regenerate the plan from scratch upon throwing an exception. Furthermore, executing a submit without user approval can clutter the commit history with unnecessary commits.
If you are facing such issues, you can define a rule in the AGENTS.md file to restrict these tools. For instance, you can intercept their execution using the request_user_input tool to provide a review opportunity. This allows you to keep these tools under control. Additionally, by examining other tools, you can develop more effective skills.
list_files
Lists files in a specified directory.
- Parameters:
path: The path of the directory to list files from. (Required)recursive: Whether to list files recursively in subdirectories. (Optional, default: false)
read_file
Reads the content of a file.
- Parameters:
filepath: The full path of the file to read. (Required)
run_in_bash_session
Runs a command in a persistent bash session.
- Parameters:
command: The bash command to run. (Required)
set_plan
Sets a plan for the task.
- Parameters:
plan: The plan content in Markdown format. (Required)
plan_step_complete
Marks a plan step as complete.
- Parameters:
message: A message describing the completed step. (Required)
request_user_input
Requests input or clarification from the user.
- Parameters:
message: The message to show to the user. (Required)
submit
Submits the changes as a new branch.
- Parameters:
branch_name: The name of the branch to submit. (Required)commit_message: The commit message for the changes. (Required)title: The title of the pull request. (Required)description: The description of the pull request. (Required)
pre_commit_instructions
Retrieves pre-commit instructions to follow before submitting.
- Workflow: Provides a sequential checklist (Tests, Frontend verification, Code review, Memory recording).
code_review
Requests a review of the changes made.
- Mechanism: It does not require parameters because it automatically analyzes the current state of the codebase and the changes made during the session (the "diff") to provide feedback.
view_text_website
Views the text content of a website.
- Parameters:
url: The URL of the website to view. (Required)
view_image
Inspects an image from a URL.
- Parameters:
url: The URL of the image to inspect. (Required)
read_media_file
Reads and displays a media file (screenshot or video).
- Parameters:
filepath: The full path of the media file to read. (Required)
frontend_verification_instructions
Provides detailed instructions and a Python template for verifying frontend changes using Playwright.
- Workflow: Guides the visual verification process.
frontend_verification_complete
Marks the frontend verification process as complete.
- Parameters:
screenshot_path: Path to the primary screenshot. (Required)additional_media_paths: List of paths to additional files. (Optional)
initiate_memory_recording
Initiates a process to record key learnings and patterns into permanent memory.
- Mechanism: It does not require parameters because it prompts the agent to reflect on the entire session's activities. The agent identifies patterns, successful solutions, or repository-specific procedures and saves them.
- Memory Access: Recorded memories are automatically injected into the agent's system prompt at the start of every new session. The agent "knows" these memories without needing to search for them explicitly.