Skip to content

jgleiser/ProcessAce

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

158 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

ProcessAce

Website License: Sustainable Use Docker

AI-powered process discovery and documentation engine – from raw text to BPMN 2.0, SIPOC, and RACI. Self-hosted with bring-your-own LLM.

🌐 Website & Enterprise Options: processace.com

Status: Launched in v1.3.0. ProcessAce is in launch state with the current security, privacy, and compliance hardening shipped in the 1.3.x line.


✨ Features

ProcessAce turns raw process evidence into standard, tool-agnostic process documentation in minutes.

  • Ingest Evidence:
    • Text documents (SOPs, meeting notes, emails).
    • Planned: Audio/Video recordings, Images.
  • Analyze & Normalize:
    • Uses LLMs (OpenAI, Google Gemini, Anthropic Claude) to extract steps, actors, and systems.
    • Normalizes data into a structured evidence model.
  • Generate Artifacts:
    • BPMN 2.0 Diagrams: Auto-generated with professional layout (Manhattan routing, grid system).
    • SIPOC Tables: Supplier-Input-Process-Output-Customer matrices.
    • RACI Matrices: Responsible-Accountable-Consulted-Informed matrices.
    • Narrative Docs: Markdown-based process descriptions.
  • Interactive Editing:
    • BPMN Viewer/Editor: View and modify diagrams directly in the browser (bpmn-js v18).
    • Rich Text: Edit narrative docs with a WYSIWYG Markdown editor (EasyMDE).
    • Tables: Interactive SIPOC/RACI editing with add/delete row support.
  • Export Artifacts:
    • BPMN: Export as XML (for tools) or PNG/SVG (for presentations).
    • SIPOC/RACI: Export tables as CSV.
    • Narrative: Download as Markdown or Print/Save as PDF.
  • User Authentication & Workspaces:
    • Secure Login: Email/password with JWT (HTTP-only cookies).
    • Role-Based Access: Admin, Editor, and Viewer roles. The first registered user becomes Admin; later self-registrations become pending Editors until approved by an Admin.
    • Workspaces: Create, switch, and share workspaces for organizing projects (Admin/Editor/Viewer roles).
    • User Data Isolation: Jobs and artifacts scoped per user and workspace.
  • Multi-Provider LLM Support:
    • Choose provider and model for each processing job (OpenAI, Google GenAI, Anthropic).
    • API keys are stored encrypted (AES-256-CBC) in the database.
  • Robust Architecture:
    • Dockerized: Easy deployment with Docker Compose (App + Redis).
    • Async Processing: Redis-backed job queue (BullMQ) for long-running generative tasks.
    • Persistence: SQLite (better-sqlite3 in dev/test, SQLCipher-compatible encrypted SQLite in production).

🚀 Getting Started

ProcessAce can be deployed via our automated 1-click installation script (recommended for most users) or built manually from source for development.

🛑 Prerequisites

  • Docker & Docker Compose (v2+) installed and running.
  • An LLM API key (OpenAI, Google GenAI, Anthropic) or a local Ollama instance.

⚡ Quick Start (Standard Self-Hosting)

ProcessAce is distributed as an immutable Docker artifact via the GitHub Container Registry (GHCR). You do not need to clone this repository or build from source to use the application.

Run the interactive setup script for your operating system. This wizard will download the necessary compose files, prompt you for basic configuration, automatically generate secure cryptographic keys for your database, and spin up the containers.

Linux & macOS:

curl -sL https://raw.githubusercontent.com/jgleiser/processace/main/deploy/install.sh | bash

Windows (PowerShell): (Run PowerShell as Administrator)

Invoke-Expression "& { $(Invoke-RestMethod 'https://raw.githubusercontent.com/jgleiser/processace/main/deploy/install.ps1') }"

Once running, navigate to http://localhost:3100 (or your custom origin). To update ProcessAce in the future, navigate to your installation folder and run: docker compose pull && docker compose up -d.


🛠️ Local Development & Manual Build

If you are contributing to the source code, want to use the TLS overlay, or need advanced bundled Ollama deployments, you should clone the repository and build the image locally.

  1. Clone the repository:

    git clone https://github.com/jgleiser/ProcessAce.git
    cd ProcessAce
  2. Configure Environment:

    cp .env.example .env
    # Edit .env and set JWT_SECRET, ENCRYPTION_KEY, SQLITE_ENCRYPTION_KEY, CORS_ALLOWED_ORIGINS, and REDIS_PASSWORD

    (Note: You must manually generate 32-byte hex strings for the encryption keys if not using the automated install script above).

  3. Run with Docker Compose:

    docker compose up -d --build

    Note (Windows/Mac/WSL2): If you encounter SQLITE_IOERR_SHMOPEN errors, ensure DISABLE_SQLITE_WAL=true is set in docker-compose.yml. Note (encrypted DB build in Docker): You do not need to install SQLCipher manually. The image builds the production encrypted SQLite module inside the container natively.


🔒 Production HTTPS (Caddy Overlay)

Use the TLS overlay for manual production deployments so ProcessAce is served behind Caddy with automatic HTTPS:

docker compose -f docker-compose.yml -f docker-compose.tls.yml up -d --build

Set these additional variables in .env before using the overlay:

  • CADDY_HOST: public hostname for the ProcessAce instance
  • CADDY_EMAIL: email address Caddy uses for ACME notifications

When the TLS overlay is enabled, only Caddy publishes 80/443; the app and Redis stay on the internal Compose network. See docs/tls-setup.md for the full setup.


🦙 Ollama Deployment Modes

The base Docker stack is cloud-only by default. Bundled Ollama is now opt-in through a Compose override, and host-native Ollama remains supported through environment variables. For the full setup, see docs/ollama_guide.md.

Bundled CPU Ollama

Use the dedicated Ollama override:

docker compose -f docker-compose.yml -f docker-compose.ollama.yml up -d --build

In this mode, the app container uses OLLAMA_BASE_URL_DEFAULT=http://ollama:11434/v1.

Windows + AMD GPU Fallback

Docker Desktop on Windows does not currently provide a stable AMD passthrough path. Run Ollama on the host and point the app container to it:

  1. Install and start Ollama on Windows.

  2. Set the following in .env:

    CORS_ALLOWED_ORIGINS="http://localhost:3100"
    OLLAMA_BASE_URL_DEFAULT="http://host.docker.internal:11434/v1"
    OLLAMA_PULL_HOST="http://host.docker.internal:11434"
  3. Start the stack normally.

Linux AMD GPU Docker Mode

For Linux hosts with ROCm-capable AMD GPUs, use both the Ollama override and the AMD override:

docker compose -f docker-compose.yml -f docker-compose.ollama.yml -f docker-compose.ollama-amd.yml up -d --build

This override switches the Ollama image to ollama/ollama:rocm and passes through /dev/kfd and /dev/dri.


🔑 Bring Your Own LLM

ProcessAce does not bundle or resell any LLM. You configure your own provider and keys via the App Settings page. The application natively supports:

  • OpenAI (default: gpt-5-nano-2025-08-07)
  • Google GenAI (default: gemini-3.1-flash-lite-preview)
  • Anthropic (default: claude-haiku-4-5-20251001)

🧱 Architecture & Auditability

ProcessAce is built for reliability and process mining readiness:

  • Frontend: Vanilla HTML5/JS/CSS Single Page Application.
  • Backend: Node.js Express API.
  • Database: SQLite (better-sqlite3).
  • Queue & Workers: Redis (BullMQ) for background job processing.
  • Audit Trails: Structured, event-style logging (Pino) for events like job_queued, llm_call, and artifact_version_created.

See docs/architecture.md for a deep dive.


🗺️ Documentation


📄 License

ProcessAce is source-available under the ProcessAce Sustainable Use License.

  • Free to use internally, self-host, and modify for internal use.
  • You may not run ProcessAce as a multi-tenant SaaS/platform or resell it without a commercial license.

See LICENSE.md for the full terms. For commercial/enterprise licensing, visit processace.com or see COMMERCIAL_LICENSE.md.


🤝 Contributing

Contributions are welcome! Please check CONTRIBUTING.md and CODE_OF_CONDUCT.md. By contributing, you agree that your contributions may be used in both the Sustainable Use edition and any future commercial editions of ProcessAce.

About

AI-powered process discovery and documentation engine – from recordings and docs to BPMN 2.0, SIPOC and RACI. Self-hosted with bring-your-own LLM.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors