Skip to content
This repository was archived by the owner on Mar 17, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 24 additions & 1 deletion astro.config.mjs
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,29 @@ export default defineConfig({
items: [
{ label: 'AI Chat', link: '/features/ai-chat/' },
{ label: 'AI Toolbox', link: '/features/ai-toolbox/' },
{ label: 'Autonomous Agent', items: [
{ label: 'Getting Started', link: '/features/autonomous-agent/getting-started/' },
{ label: 'Overview', link: '/features/autonomous-agent/overview/' },
{ label: 'Integrations', items: [
{ label: 'Overview', link: '/features/autonomous-agent/integrations/' },
// Development Tools
{ label: 'Chrome', link: '/features/autonomous-agent/integrations/chrome/' },
{ label: 'Shell Commands', link: '/features/autonomous-agent/integrations/shell-commands/' },
{ label: 'Command Line Tool', link: '/features/autonomous-agent/integrations/command-line-tool/' },
{ label: 'Command Line Service', link: '/features/autonomous-agent/integrations/command-line-service/' },
// Version Control
{ label: 'GitHub', link: '/features/autonomous-agent/integrations/github/' },
{ label: 'GitLab', link: '/features/autonomous-agent/integrations/gitlab/' },
// Container Management
{ label: 'Docker', link: '/features/autonomous-agent/integrations/docker/' },
{ label: 'Isolation', link: '/features/autonomous-agent/integrations/isolation/' },
// Databases
{ label: 'PostgreSQL', link: '/features/autonomous-agent/integrations/postgresql/' },
{ label: 'MySQL', link: '/features/autonomous-agent/integrations/mysql/' },
// Debugging
{ label: 'PDB', link: '/features/autonomous-agent/integrations/pdb/' },
] },
] },
{ label: 'Code Completion', link: '/features/code-completion/' },
{ label: 'Context', link: '/features/context/' },
{ label: 'Fine-tuning', link: '/features/finetuning/' },
Expand Down Expand Up @@ -159,4 +182,4 @@ export default defineConfig({
lastUpdated: true,
}),
],
});
});
Binary file added public/videos/Access_Context.mp4
Binary file not shown.
Binary file added public/videos/Agent_How_To_Start.mp4
Binary file not shown.
Binary file added public/videos/Auto_Apply.mp4
Binary file not shown.
Binary file added public/videos/Local_Link_Screenshot.mp4
Binary file not shown.
Binary file added public/videos/Open_Link_Screenshot.mp4
Binary file not shown.
Binary file added public/videos/Open_Refact_Chat.mp4
Binary file not shown.
Binary file added public/videos/Patch.mp4
Binary file not shown.
Binary file added public/videos/Switch_To_The_Agent.mp4
Binary file not shown.
Binary file added public/videos/Terminal_Commands.mp4
Binary file not shown.
Binary file added public/videos/Write_Prompt.mp4
Binary file not shown.
52 changes: 52 additions & 0 deletions src/content/docs/features/agent-integrations.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
title: Agent Integrations
description: Overview of available integrations for Refact.ai Agent
---

Integrations help you to manage the access of agent to the tools.

## Available Integrations

The Agent currently supports the following integrations:

- [Chrome](./integrations/chrome) - Browser automation and screenshot capabilities
- [Shell](./integrations/shell) - Execute terminal commands with user confirmation
- [Github](./integrations/github) - Interact with GitHub repositories
- [Gitlab](./integrations/gitlab) - Manage GitLab repositories and issues
- [PDB](./integrations/pdb) - Python debugger integration
- [Postgres](./integrations/postgres) - PostgreSQL database interaction
- [MySQL](./integrations/mysql) - MySQL database management
- [Command-line Tool](./integrations/cmdline-tool) - Custom command-line tool integration
- [Command-line Service](./integrations/cmdline-service) - Background service management
- [Docker](./integrations/docker) - Docker container management
- [Isolation](./integrations/isolation) - Isolated environment execution

## Configuring Integrations

You can configure the Integrations in two ways:

### 1. Through Chat Interface

Click on the integrations button in the chat:

<div class="video-frame">
<video controls width="100%">
<source src="/videos/Configure_Integrations_Chat.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>

### 2. Through Settings

Access integrations through the settings menu:

<div class="video-frame">
<video controls width="100%">
<source src="/videos/Configure_Integrations_Settings.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>

## Next Steps

Click on any integration in the list above to learn more about its specific configuration and usage.
42 changes: 42 additions & 0 deletions src/content/docs/features/autonomous-agent/getting-started.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
---
title: How to Start Using Refact.ai Agent
description: A step-by-step guide to start using the Refact.ai Agent in your IDE
---

Getting started with Refact.ai Agent is simple and straightforward. Follow these steps to begin using the autonomous agent capabilities:

## Step 1: Open Refact.ai Chat
Launch the Refact.ai Chat interface in your IDE.

<div class="video-frame">
<video controls width="100%">
<source src="/videos/Open_Refact_Chat.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>

## Step 2: Choose Agent Mode
Select the Agent Mode from the available options.

<div class="video-frame">
<video controls width="100%">
<source src="/videos/Switch_To_The_Agent.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>

## Step 3: Write Your Prompt
Start interacting with the agent by writing your prompt and watch the magic happen!

<div class="video-frame">
<video controls width="100%">
<source src="/videos/Write_Prompt.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>

## Tips for Getting Started
- Be specific in your prompts for better results
- Start with simple tasks to understand the agent's capabilities
- Experiment with different types of requests to learn what works best
- Pay attention to the agent's feedback and suggestions
101 changes: 101 additions & 0 deletions src/content/docs/features/autonomous-agent/integrations/chrome.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,101 @@
---
title: Chrome Tool
description: Configure and use the Chrome Tool for web interactions
---

The Chrome Tool enables the Refact.ai Agent to interact with browsers like Chrome, Chromium, and Edge. This integration allows the agent to open links and take screenshots to extract additional context for your tasks.

## Functionality

### Enable Toggle
- Allows you to activate or deactivate the Chrome Tool
- When toggled on, the tool is ready for use; toggling off disables its functionality

### Delete Button
- Permanently removes the Chrome Tool from your list of integrations
- Use this if you no longer need the tool

### Test
- Opens a chat interface and tests whether the Chrome Tool is correctly configured
- If successful, it confirms that the tool is ready to use

### Help Me Install Chrome for Testing
- Launches a chat to guide you through configuring the tool automatically by identifying the browser path
- ⚠️ Note: This process doesn't always work flawlessly — think of it as the model taking a stab at finding the path on your behalf (sometimes it hits the mark, sometimes it doesn't)

## Configuration Instructions

### Find the Browser Path
The process for identifying the browser path depends on your operating system. Here are typical paths:

- Windows: `C:\Program Files\Google\Chrome\Application\chrome.exe`
- MacOS: `/Applications/Google Chrome.app/Contents/MacOS/Google Chrome`
- Linux: `/usr/bin/google-chrome` or `/usr/bin/chromium`

### Inserting the Path
1. Copy the full path to your browser executable
2. Paste it into the Chrome Path field
3. Click Apply to save the configuration

## Advanced Configuration Options

### Idle Browser Timeout
- Sets the time (in seconds) the browser can remain idle before being closed automatically
- Default: 300 seconds

### Headless Mode
- When enabled, Chrome runs in "headless" mode (no visible browser window)
- Default: true (enabled)

### Window Dimensions and Scale Factors
Configure the size and scaling for different device views:

#### Desktop
- Window Width: 1280 (default)
- Window Height: 800 (default)
- Scale factor: 1 (default)

#### Mobile
- Window Width: 667 (default)
- Window Height: 375 (default)
- Scale Factor: 1 (default)

#### Tablet
- Window Width: 768 (default)
- Window Height: 1024 (default)
- Scale Factor: 1 (default)

## Usage Examples

### Opening Web Links

<div style="display: grid; grid-template-columns: 2fr 3fr; gap: 1rem; align-items: center;">
<div>
You can ask the Agent to:
- Open any URL and take a screenshot
- Navigate to specific elements on a page
- Interact with web content
</div>
<div class="video-frame">
<video controls width="100%">
<source src="/videos/Open_Link_Screenshot.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>
</div>

### Local File Access

<div style="display: grid; grid-template-columns: 2fr 3fr; gap: 1rem; align-items: center;">
<div>
The Agent can also:
- Open locally hosted websites
- Take screenshots
</div>
<div class="video-frame">
<video controls width="100%">
<source src="/videos/Local_Link_Screenshot.mp4" type="video/mp4">
Your browser does not support the video tag.
</video>
</div>
</div>
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
title: Command Line Service
description: Configure and use command-line services and background processes
---

The Command-Line Service integration allows you to adapt command-line tools that run as background processes, such as web servers or daemons. This tool provides options to monitor the service's startup, specify parameters, and manage interactions with the Refact.ai Agent.

## Basic Configurations

### Command Settings
- **Command**: Specify the command to execute
- Use `%param_name%` notation to allow dynamic parameter substitution by the model
- Example: `python -m http.server %port%`
- **Command Workdir**: Define the working directory for the command
- If left empty, the workspace directory will be used by default
- **Description**: Provide a description to explain the purpose of this service

### Parameters
- Add parameters the model should fill out when using the tool
- Define a Name and Description for each parameter to guide the model

### Startup Configuration
- **Startup Wait Port**: Specify a port for the tool to monitor during startup
- The service will wait for the port to become active as an indication that the process has started successfully
- **Startup Wait**: Set the maximum time (in seconds) the tool should wait for the service to start
- If the process doesn't start within this time, it will be terminated
- **Startup Wait Keyword**: Define a keyword to monitor in the service's output
- The service will wait until the keyword appears to confirm the startup

### Actions
- **Test**: Runs the command to verify its functionality
- **Auto Configure**: Assists in setting up the service by analyzing the context

### Confirmation Rules
Define rules to control execution:
- **Ask User**: Commands matching these patterns will prompt the user for confirmation
- **Deny**: Commands matching these patterns are automatically blocked
- Example: `sudo*`: Blocks commands requiring elevated privileges
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
---
title: Command Line Tool
description: Configure and use custom command-line tools
---

The Command-Line Tool integration allows you to add and adapt any command-line tool for use by the Refact.ai Agent. This tool can be configured with specific parameters, commands, and restrictions, enabling tailored functionality for your workflows.

## Basic Configurations

### Command Settings
- **Command**: Specify the command to execute
- Use `%param_name%` notation to allow dynamic parameter substitution by the model
- Example: `echo %message%`
- **Command Workdir**: Define the working directory for the command
- If left empty, the workspace directory will be used by default
- **Description**: Provide a description to explain the purpose of this command
- This helps the Refact.ai Agent understand when and why to use the tool

### Parameters
- Add parameters the model should fill out when using the tool
- Define a Name and Description for each parameter to guide the model

### Timeout
- Set the maximum time (in seconds) the command is allowed to run
- If the command exceeds this duration, it will be terminated, and its output (stdout/stderr) will be returned

### Actions
- **Test**: Runs the command to verify its functionality
- **Auto Configure**: Assists in setting up the command by analyzing the context and suggesting configurations

## Advanced Configuration

### Output Filter
Manage how the command's output is processed and displayed:
- Limit the number of lines or characters in the output
- Prioritize output from the start (top) or end (bottom)
- Use regular expressions (regex) to extract relevant portions of the output
- Remove unwanted parts of the output for cleaner results

### Confirmation Rules
Define rules to control execution:
- **Ask User**: Commands matching these patterns will prompt the user for confirmation before execution
- **Deny**: Commands matching these patterns are automatically blocked
- Example: `sudo*`: Blocks commands requiring elevated privileges
38 changes: 38 additions & 0 deletions src/content/docs/features/autonomous-agent/integrations/docker.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
title: Docker Tool
description: Configure and use Docker integration
---

The Docker Tool integration enables interaction with Docker containers, allowing the Refact.ai Agent to manage, query, and modify Docker environments. This tool supports local and remote Docker configurations.

## Basic Configurations

### Docker Settings
- **Docker CLI Path**: Specify the path to the Docker CLI executable
- Default: `docker`
- **Label**: Define a label to identify the Docker containers managed by the tool
- Example: `refact`

### Actions
- **Test**: Verifies the connection and functionality of the Docker integration

## Advanced Configuration

### Docker Connection
- **Docker Daemon Address**: Specify the address for connecting to the Docker daemon
- Leave blank to use the default local daemon

### Remote Docker
Enable this option to connect to a remote Docker host using SSH:
- **SSH Host**: Specify the hostname or IP address of the remote Docker host
- **SSH User**: Define the user for the SSH connection
- **SSH Port**: Default: 22
- **SSH Identity File**: Provide the path to the SSH identity file for authentication

### Confirmation Rules
Define rules to control execution:
- **Ask User**: Commands matching these patterns will prompt the user for confirmation
- **Deny**: Commands matching these patterns are automatically blocked
- Examples:
- `docker* rm *`: Blocks removal of containers
- `docker* stop *`: Blocks stopping containers
Loading
Loading