Skip to content

AI-powered computer control for automated testing in your CI/CD pipelines. Factifai agent uses vision models (Claude, GPT-4o) to interact with applications naturally - clicking, typing, and verifying results just like a human would.

License

Notifications You must be signed in to change notification settings

presidio-oss/factifai-agent-suite

Repository files navigation

License pnpm Issues Stars Forks

HAI Logo

Automate testing through AI-powered computer control.
From manual steps to automated tests in minutes.

Factifai Agent Suite

AI-powered testing tools for modern development workflows

The Factifai Agent Suite provides a collection of AI-powered tools designed to accelerate and enhance testing processes across various development workflows. By leveraging Large Language Models (LLMs), the suite enables developers and QA teams to create, execute, and maintain tests using natural language, making testing more accessible, maintainable, and efficient.

Demo

πŸ“‘ Table of Contents

πŸ” Overview

Software testing has traditionally required specialized expertise and considerable time investment. The Factifai Agent Suite reimagines this process by allowing tests to be defined in plain English, automatically executed with precision, and seamlessly integrated into modern CI/CD pipelines.

Our tools are designed for developers, QA engineers, and teams who want to:

  • Accelerate testing workflows without sacrificing quality or coverage
  • Reduce the complexity of maintaining test suites
  • Make testing accessible to team members without specialized testing expertise
  • Integrate AI-powered testing into existing development processes and pipelines

✨ Features in Action

🧠 From Plain English to Executable Steps

Watch the magic happen as your natural language transforms into a structured test plan! The AI breaks down complex instructions into precise, organized steps that are ready for execution.

Test Parsing

πŸ”„ Real-Time Test Execution Visualization

Experience the satisfaction of seeing your tests run live! The intuitive CLI interface shows you exactly what's happening at each moment, making debugging and monitoring a breeze.

Live Test Progress

πŸ“Š Instant, Detailed Test Results

No more digging through logs! Get comprehensive, beautifully formatted test results right in your terminal the moment execution completes.

CLI Test Reports

πŸ“‘ Professional Reports for Teams & CI/CD

Seamlessly integrate with your workflow! Generate polished HTML reports for team sharing and structured XML outputs for your CI/CD pipelines.

HTML & XML Reports

🧰 Tools

Currently Available

Tool Package Description
Factifai Agent @presidio-dev/factifai-agent CLI tool for AI-driven browser automation testing using natural language instructions (documentation)
Playwright Core @presidio-dev/playwright-core LLM-optimized wrapper around Playwright providing coordinate-based browser control (documentation)
Factif-AI Web Version Browser-based version of Factifai that provides the same AI-powered testing capabilities through a web interface

Factifai Agent

A CLI-first automation tool that allows you to write browser tests in plain English. It translates natural language instructions into precise browser actions using LLMs, executes them through a structured LangGraph workflow, and provides rich terminal visualization of test progress. The agent supports multiple LLM providers (OpenAI, Azure OpenAI and AWS Bedrock), cross-browser testing, and seamless CI/CD integration, making automated testing more accessible to team members without specialized testing expertise.

πŸ“š View Full Documentation for detailed usage instructions, configuration options, and best practices.

Playwright Core

A specialized wrapper around Playwright designed specifically for LLMs to control web browsers through a coordinate-based interaction system. Unlike traditional browser automation that relies on complex DOM selectors, this package enables AI models to work with visual coordinates, automatically identifying interactive elements and providing enhanced debugging capabilities. It offers features like session management, automatic element detection, visual element highlighting, and a simplified API that abstracts away Playwright complexity.

πŸ“š View Full Documentation for detailed API reference, integration options, and advanced usage examples.

Factif-AI (Web)

The web-based counterpart to Factifai Agent that runs entirely in the browser. It provides the same AI-powered testing capabilities but with a graphical interface, making it accessible without CLI installation. Perfect for teams looking for a quick testing option or those who prefer a visual interface for test creation and execution.

πŸ“š View on GitHub for more information and to try it online.

What's Next?

  • factifai-quest: A CLI tool that intelligently crawls websites and explores them autonomously, navigating through links and pages to build a comprehensive map of the site. It captures screenshots of each discovered page and leverages LLMs to generate detailed documentation, providing valuable insights for test planning and coverage analysis.

  • factifai-test-curator: A web-based interface that combines the capabilities of factifai-agent and factifai-quest to create a complete test management solution. It offers targeted website exploration, visual test case editing with before/after screenshots, and an interactive test creation environment where users can refine AI-suggested test suites or create tests from scratch with live browser previews.

Interested in contributing to these tools? Check out our Contributing Guidelines or open an issue to discuss your ideas!

πŸš€ Getting Started

Prerequisites

  • Node.js 18+
  • pnpm 10.11.0+
  • OpenAI API key or AWS Bedrock credentials or Azure OpenAI credentials

Installation

# Install factifai-agent globally
npm install -g @presidio-dev/factifai-agent

# Install Playwright globally (required)
npm install -g playwright

# Install Playwright dependencies (required)
npx playwright install --with-deps

# Install playwright-core (if using separately)
npm install @presidio-dev/playwright-core

Quick Start Examples

Factifai Agent with AWS Bedrock

# Configure AWS credentials (only needed once)
factifai-agent config --set AWS_ACCESS_KEY_ID=your-access-key-id
factifai-agent config --set AWS_SECRET_ACCESS_KEY=your-secret-access-key
factifai-agent config --set AWS_DEFAULT_REGION=us-west-2

# Run a test using natural language
factifai-agent --model bedrock run "Navigate to saucedemo.com, login with standard_user/secret_sauce, and add the first product to cart"

Factifai Agent with OpenAI

# Configure OpenAI API key (only needed once)
factifai-agent config --set OPENAI_API_KEY=your-api-key-here

# Run a test using natural language
factifai-agent --model openai run "Navigate to duckduckgo.com and search for 'testing automation'"

Factifai Agent with Azure OpenAI

# Configure Azure OpenAI API key, instance name, deployment name and API version (only needed once)
factifai-agent config --set AZURE_OPENAI_API_KEY=your-api-key-here
factifai-agent config --set AZURE_OPENAI_API_INSTANCE_NAME=your-instance-name
factifai-agent config --set AZURE_OPENAI_API_DEPLOYMENT_NAME=your-deployment-name
factifai-agent config --set AZURE_OPENAI_API_VERSION=your-api-version

# Run a test using natural language
factifai-agent --model azure-openai run "Navigate to duckduckgo.com and search for 'testing automation'"

Development Setup

# Clone the repository
git clone https://github.com/presidio-oss/factifai-agent-suite.git
cd factifai-agent-suite

# Install dependencies
pnpm i

# Build all packages
pnpm -r build

# Install Playwright globally (required)
npm install -g playwright

# Install Playwright dependencies (required)
npx playwright install --with-deps

# Create a global symlink for factifai-agent
cd packages/factifai-agent
pnpm link --global

πŸ”§ Use Cases

CI/CD Integration

Automate testing in CI/CD pipelines with natural language test suites that non-technical team members can create and maintain. Run multiple tests in parallel during deployment, with the AI handling browser navigation and verification steps, providing comprehensive test coverage without complex scripting.

Cross-Browser Compatibility Testing

Verify that your application works consistently across different browsers with identical natural language test cases. Run the same test instructions on Chrome, Firefox, and Safari simultaneously, leveraging parallel execution to dramatically reduce testing time while catching browser-specific inconsistencies.

End-to-End Testing

Validate complete user journeys using natural language instructions - simply describe what you want to test in plain English. The AI autonomously navigates through complex flows like checkout processes or user registration, handling UI interactions and validations without needing to write selectors or code.

Regression Testing

Maintain a library of human-readable test files that anyone on the team can understand and update. When code changes, the AI intelligently adapts to UI changes and new elements, reducing maintenance overhead while still reliably catching regressions in functionality.

πŸ—οΈ Architecture

The Factifai Agent Suite follows a modular, pipeline-based architecture that transforms natural language test instructions into precise browser interactions:

Key Components

  • Factifai Agent: Orchestrates the end-to-end testing process

    • LLM Orchestration Layer (LangGraph): Manages the AI workflow for parsing instructions
    • Node Pipeline: Preprocessing β†’ Parsing β†’ Execution β†’ Tracking β†’ Reporting
    • Configuration System: Handles API keys and settings with persistent storage
  • Playwright Core: Provides the browser automation foundation for factifai-agent

    • Browser Service: Manages browser sessions and page interactions
    • Visual Element Detection: Identifies clickable elements without requiring selectors
    • Coordinate-Based Interaction: Uses spatial positioning instead of DOM selectors

The architecture decouples natural language understanding from browser automation, allowing each component to evolve independently while maintaining compatibility. This also enables the tools to be used separately or together, depending on the specific testing needs.

🀝 Contributing

We welcome contributions to the Factifai Agent Suite! See our Contributing Guidelines for more information on how to get involved.

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ“œ Code of Conduct

Please read our Code of Conduct to keep our community approachable and respectable.

πŸ“§ Contact

For questions or feedback, please contact us at hai-feedback@presidio.com.

About

AI-powered computer control for automated testing in your CI/CD pipelines. Factifai agent uses vision models (Claude, GPT-4o) to interact with applications naturally - clicking, typing, and verifying results just like a human would.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Contributors 5