Skip to main content
Custom agents access specialized tools across twelve categories: Knowledge Graph, Code Query, Code Changes, Integration, Web, Execution, Task Management, Requirements, GitHub, Linear, Jira, and Confluence. Assign tools per task at agent creation to control what the agent can access during execution.

Tool Categories

CategoryDescription
Knowledge GraphQuery and traverse the codebase by node, tag, name, or semantic meaning
Code QueryRetrieve file contents, directory structures, and analyzed code element breakdowns
Code ChangesManage code modifications through a session-based change tracking system. Available exclusively to the Code Agent
IntegrationDetect code changes between branches and commits
GitHubRead files, manage branches, PRs, and issues in GitHub repositories
LinearFetch and update Linear issues
JiraCreate, search, and manage Jira issues and projects
ConfluenceRead and write Confluence spaces, pages, and comments
WebSearch the web and extract content from external URLs
ExecutionRun read-only shell commands against the repository
Task ManagementTrack and manage work items within the current agent session
RequirementsStore and retrieve session-level requirements and constraints

Knowledge Graph Tools

Query and traverse the knowledge graph by node name, ID, tag, or semantic meaning. These tools identify relevant nodes and map the relationships between them.
get_code_from_probable_node_nameSearch for nodes using a probable name match. Use when the exact node name is unknown. Accepts file_path:function_name or file_path:class_name format.Parameters:
  • name (string, required): Probable node name to search for
  • project_id (string, required): Project to search within
Returns: Code content and metadata for matching nodes
get_code_from_node_nameRetrieve code using the exact node name.Parameters:
  • name (string, required): Exact node name
  • project_id (string, required): Project to search within
Returns: Code content and node metadata
get_code_from_node_idFetch the exact code content for a specific node ID.Parameters:
  • node_id (string, required): The exact node ID to retrieve
Returns: Complete code content, file path, and node metadata
get_code_from_multiple_node_idsRetrieve code from multiple node IDs in a single request.Parameters:
  • node_ids (string[], required): Array of node IDs to retrieve
Returns: Array of code contents and metadata for each node
get_nodes_from_tagsRetrieve all code nodes matching one or more specified tags or labels.Parameters:
  • tags (string[], required): Tags to filter by
  • project_id (string, required): Project to search within
Returns: All nodes matching the specified tags
get_code_graph_from_node_idRetrieve the dependency graph for a specific node by its ID. Works best with Python, JavaScript, and TypeScript repositories.Parameters:
  • node_id (string, required): Node ID to retrieve the graph for
Returns: Dependency graph with related nodes and edge types
get_code_graph_from_node_nameRetrieve the dependency graph for a node by its name. Works best with .py, .js, and .ts files.Parameters:
  • name (string, required): Node name to retrieve the graph for
  • project_id (string, required): Project to search within
Returns: Dependency graph with related nodes and edge types
get_node_neighbours_from_node_idRetrieve the immediate neighboring nodes in the knowledge graph for a given node ID.Parameters:
  • node_id (string, required): Node ID to retrieve neighbors for
Returns: List of neighboring nodes with relationship types
intelligent_code_graphGenerate a filtered, context-aware code graph. Useful for reducing graph size in larger codebases while preserving the most relevant relationships.Parameters:
  • node_id (string, required): Starting node for the graph
  • project_id (string, required): Project to query
Returns: Filtered dependency graph optimized for context relevance

Code Query Tools

Retrieve file contents, directory structures, and structured code element breakdowns.
get_code_file_structureRetrieve the complete directory structure and file organization of a project.Parameters:
  • project_id (string, required): Project to retrieve structure for
  • path (string, optional): Specific path to retrieve (returns full tree if omitted)
Returns: Hierarchical file and directory structure
fetch_fileRead file contents with line numbers.Parameters:
  • file_path (string, required): Path to the file
  • project_id (string, required): Project containing the file
Returns: File contents with line numbers
analyze_code_structureExtract classes, functions, imports, and structural elements from a file.Parameters:
  • file_path (string, required): File to analyze
  • project_id (string, required): Project containing the file
Returns: Structured representation of all code elements in the file

Code Changes Management Tools

Available exclusively to the Code Agent. A Redis-backed session tracks all modifications with a 24-hour expiration. Export changes before the session expires.
add_file_to_changesCreate a new file in the current session.Parameters:
  • file_path (string, required): Path for the new file
  • content (string, required): File content
Returns: Confirmation with file path
update_file_in_changesReplace the entire content of an existing file in the session.Parameters:
  • file_path (string, required): File to update
  • new_content (string, required): Replacement content
Returns: Update confirmation
delete_file_in_changesMark a file for deletion in the current session.Parameters:
  • file_path (string, required): File to delete
Returns: Deletion confirmation
update_file_linesModify a specific line range within a file.Parameters:
  • file_path (string, required): File to modify
  • start_line (integer, required): First line of the range
  • end_line (integer, required): Last line of the range
  • new_content (string, required): Replacement content
Returns: Update confirmation
replace_in_fileFind and replace text within a file, with regex support.Parameters:
  • file_path (string, required): File to search in
  • pattern (string, required): Search pattern (supports regex)
  • replacement (string, required): Replacement text
Returns: Count of replacements made
insert_linesInsert lines at a specific position within a file.Parameters:
  • file_path (string, required): File to modify
  • line_number (integer, required): Position to insert at
  • content (string, required): Content to insert
Returns: Insertion confirmation
delete_linesRemove a specific line range from a file.Parameters:
  • file_path (string, required): File to modify
  • start_line (integer, required): First line to delete
  • end_line (integer, required): Last line to delete
Returns: Deletion confirmation
get_file_from_changesRetrieve the current content of a file from the session, including all pending changes.Parameters:
  • file_path (string, required): File to retrieve
Returns: Current file content with all pending changes applied
list_files_in_changesList all files modified in the current session.Returns: List of file paths with their change types (added, modified, deleted)
search_content_in_changesSearch across all modified files in the session.Parameters:
  • query (string, required): Search query
  • regex (boolean, optional): Enable regex matching
Returns: Matching results with file paths and line numbers
clear_file_from_changesRevert all pending changes for a specific file.Parameters:
  • file_path (string, required): File to revert
Returns: Revert confirmation
clear_all_changesDiscard all changes tracked in the current session.Returns: Clear confirmation
get_changes_summaryGet an overview of all modifications tracked in the current session.Returns: Summary including file count, line changes, and change types
export_changesGenerate a patch file or changeset for applying all session modifications.Parameters:
  • format (string, default: dict): Export format: dict, list, json, or diff
Returns: Formatted changeset ready for application
show_updated_fileView a file with all pending changes applied.Parameters:
  • file_path (string, required): File to view
Returns: Complete file content with all changes applied
show_diffDisplay a unified diff of pending changes in the session.Parameters:
  • file_path (string, optional): Specific file to diff. Shows all pending changes if omitted.
Returns: Unified diff output
get_file_diffGet a line-by-line diff for a specific file.Parameters:
  • file_path (string, required): File to diff
Returns: Line-by-line diff for the specified file
get_session_metadataRetrieve session information and statistics.Returns: Session ID, conversation ID, file count, and created/updated timestamps. All session data expires after 24 hours.

Integration Tools

change_detectionDetect code changes in the current branch compared to the default branch and retrieve updated function details.Parameters:
  • base_branch (string, default: main): Branch to compare against
  • target_branch (string, optional): Branch or commit to compare (defaults to current)
  • project_id (string, required): Project to analyze
Returns: Changed files with diff information and impact analysis

GitHub Tools

github_toolFetch GitHub issues and pull requests with full details including diffs.Parameters:
  • repo (string, required): Repository in owner/repo format
  • issue_or_pr_number (integer, required): Issue or PR number to fetch
Returns: Title, description, status, assignee, labels, and diff (for PRs)
code_provider_toolRead file contents from a repository.Parameters:
  • repo (string, required): Repository in owner/repo format
  • file_path (string, required): Path to the file
Returns: File contents
code_provider_create_branchCreate a new branch from an existing branch or commit.Parameters:
  • repo (string, required): Repository in owner/repo format
  • branch_name (string, required): Name for the new branch
  • source_branch (string, required): Branch or commit to create from
Returns: Branch creation confirmation
code_provider_update_fileModify file contents and commit the change.Parameters:
  • repo (string, required): Repository in owner/repo format
  • file_path (string, required): Path to the file
  • content (string, required): New file content
  • commit_message (string, required): Commit message
Returns: Commit SHA and update confirmation
code_provider_create_prCreate a pull request with a title, description, and reviewers.Parameters:
  • repo (string, required): Repository in owner/repo format
  • title (string, required): PR title
  • head (string, required): Source branch
  • base (string, required): Target branch
  • body (string, optional): PR description
Returns: PR URL and number
code_provider_add_pr_commentAdd a comment to a pull request or a specific line within it.Parameters:
  • repo (string, required): Repository in owner/repo format
  • pr_number (integer, required): PR number
  • body (string, required): Comment content
  • file_path (string, optional): File path for inline comment
  • line (integer, optional): Line number for inline comment
Returns: Comment URL and ID

Linear Tools

get_linear_issueFetch detailed information about a Linear issue.Parameters:
  • issue_id (string, required): Issue ID or key (e.g. ABC-123)
Returns: Title, description, status, assignee, team, priority, URL, and timestamps
update_linear_issueUpdate properties of a Linear issue.Parameters:
  • issue_id (string, required): Issue ID or key
  • input (object, required): Fields to update — title, description, status, priority, assignee, team, or labels
Returns: Updated issue confirmation

Jira Tools

create_jira_issue_toolCreate a new Jira issue in a project.Parameters:
  • project_key (string, required): Project key (e.g. ENG)
  • summary (string, required): Issue title
  • description (string, optional): Issue description
  • issue_type (string, optional): Issue type (Bug, Task, Story)
  • priority (string, optional): Priority level
Returns: Issue key and URL
get_jira_issue_toolFetch details for a Jira issue.Parameters:
  • issue_key (string, required): Issue key (e.g. ENG-123)
Returns: Title, description, status, assignee, priority, comments, and attachments
update_jira_issue_toolUpdate fields on a Jira issue.Parameters:
  • issue_key (string, required): Issue key
  • fields (object, required): Fields to update — description, assignee, priority, etc.
Returns: Update confirmation
add_jira_comment_toolAdd a comment to a Jira issue.Parameters:
  • issue_key (string, required): Issue key
  • body (string, required): Comment content
Returns: Comment ID and URL
transition_jira_issue_toolMove a Jira issue to a new status.Parameters:
  • issue_key (string, required): Issue key
  • transition (string, required): Target status name (e.g. In Progress, Done)
Returns: Transition confirmation
link_jira_issues_toolCreate a link between two Jira issues.Parameters:
  • inward_issue (string, required): Source issue key
  • outward_issue (string, required): Target issue key
  • link_type (string, required): Link type — blocks, relates to, duplicates, clones
Returns: Link creation confirmation
get_jira_projects_toolList all accessible Jira projects.Returns: Project keys, names, and types
get_jira_project_details_toolGet metadata for a specific Jira project.Parameters:
  • project_key (string, required): Project key
Returns: Project name, description, lead, issue types, and statuses
get_jira_project_users_toolList members of a Jira project.Parameters:
  • project_key (string, required): Project key
Returns: User list with names and account IDs

Confluence Tools

get_confluence_spaces_toolList all accessible Confluence spaces.Returns: Space keys, names, and types (global/personal)
get_confluence_page_toolRetrieve a Confluence page by ID.Parameters:
  • page_id (string, required): Confluence page ID
Returns: Title, body content, version, space, and creator
get_confluence_space_pages_toolList all pages in a Confluence space.Parameters:
  • space_key (string, required): Space key (e.g. DOCS)
Returns: Page list with titles, IDs, and creation dates
create_confluence_page_toolCreate a new Confluence page.Parameters:
  • space_key (string, required): Space to create the page in
  • title (string, required): Page title
  • content (string, required): Page content (Markdown auto-converted to storage format)
  • parent_id (string, optional): Parent page ID
Returns: Page ID and URL
update_confluence_page_toolUpdate an existing Confluence page. Automatically increments version number.Parameters:
  • page_id (string, required): Page ID to update
  • title (string, optional): New title
  • content (string, optional): New content
Returns: Update confirmation with new version number
add_confluence_comment_toolAdd a comment to a Confluence page.Parameters:
  • page_id (string, required): Page ID
  • body (string, required): Comment content
Returns: Comment ID and confirmation

Web Tools

webpage_extractorExtract text content from a specific URL.Parameters:
  • url (string, required): URL to extract content from
Returns: Extracted text content and page metadata

Execution Tools

bash_commandExecute read-only shell commands. Available only when the repository manager is active in the deployment. Agents cannot run commands that modify files or perform destructive operations.Parameters:
  • command (string, required): Shell command to execute
Returns: Command outputPermitted use cases: git status, directory listings, system information queries, read-only diagnostics.

Task Management Tools

Track and manage work items within the current agent session. Agents use these tools to plan, sequence, and record progress across multi-step tasks.
create_todoCreate a todo item to track work in the current session.Parameters:
  • title (string, required): Title of the todo item
  • description (string, optional): Additional detail about the task
Returns: Todo ID and creation confirmation
update_todo_statusUpdate the completion status of an existing todo item.Parameters:
  • todo_id (string, required): ID of the todo to update
  • status (string, required): New status: pending, in_progress, or done
Returns: Updated todo with new status
get_todoRetrieve a specific todo item by ID.Parameters:
  • todo_id (string, required): ID of the todo to retrieve
Returns: Todo details including title, description, status, and notes
list_todosList all todo items tracked in the current session.Returns: All todo items with their statuses and notes
add_todo_noteAppend a note to an existing todo item.Parameters:
  • todo_id (string, required): ID of the todo to update
  • note (string, required): Note content to append
Returns: Updated todo with the new note
get_todo_summaryGet an overview of all todo items and their statuses in the current session.Returns: Todo counts by status and a summary of pending and completed work

Requirement Tools

Store and retrieve session-level requirements and constraints that guide agent behavior throughout a task.
add_requirementsStore requirements or constraints for the current agent session.Parameters:
  • requirements (string, required): Requirements content to store
Returns: Confirmation of stored requirements
get_requirementsRetrieve requirements from the current session.Returns: Stored requirements content
delete_requirementsRemove requirements from the current session. Available exclusively to the Code Agent.Returns: Deletion confirmation