Prerequisites

  • Node.js 22+ - Required for running Weavr
  • npm - For installing dependencies
  • Git - For cloning the repository
Optional: For AI agent features, you'll need an API key from Anthropic or OpenAI.

Installation

Clone the repository and install dependencies:

git clone https://github.com/openweavr/Openweavr.git
cd Openweavr
npm install

Build

Build both the backend and web UI:

npm run build      # Build backend/CLI
npm run build:web  # Build web UI

Verify Installation

node weavr.mjs --version
node weavr.mjs doctor

Configuration

Weavr stores configuration in ~/.weavr/config.yaml.

Initial Setup

Run the onboard command to create your configuration:

# Interactive setup
node weavr.mjs onboard

# Non-interactive (for scripts/CI)
node weavr.mjs onboard --non-interactive --ai-provider anthropic

Manual Configuration

Or create the config file manually:

# ~/.weavr/config.yaml

# LLM Provider (for AI agents)
anthropicKey: sk-ant-...
model: claude-sonnet-4-20250514

# Or use OpenAI
# openaiKey: sk-...
# model: gpt-4o

# Server settings (optional)
port: 3847
host: localhost

# Scheduler persistence (optional)
scheduler:
  dbPath: /path/to/scheduler.db

Environment Variables

Variable Purpose
ANTHROPIC_API_KEY Anthropic API key for Claude models
OPENAI_API_KEY OpenAI API key for GPT models
BRAVE_API_KEY Brave Search API for web search
GITHUB_TOKEN GitHub personal access token
TELEGRAM_BOT_TOKEN Telegram bot token from BotFather

First Workflow

Create a simple workflow to verify everything works.

Create the Workflow

# Create workflow directory
mkdir -p ~/.weavr/workflows

# Create a simple workflow
cat > ~/.weavr/workflows/hello.yaml << 'EOF'
name: hello-world
description: A simple test workflow

steps:
  - id: greet
    action: transform
    with:
      template: "Hello from Weavr!"

  - id: log
    action: log
    needs: [greet]
    with:
      message: "{{ steps.greet }}"
EOF

Run the Workflow

node weavr.mjs run hello

You should see output indicating the workflow ran successfully.