Skip to content

Quick Start

This guide will help you get a basic Greentic digital worker running locally.

Before you begin, ensure you have:

  • Rust 1.90 or later (rustup default 1.90)
  • Node.js 18+ (for frontend tools)
  • Git for cloning repositories
  1. Install the GTC CLI

    Terminal window
    cargo install greentic-cli

    Or build from source:

    Terminal window
    git clone https://github.com/greenticai/greentic.git
    cd greentic/greentic
    cargo build --release
  2. Create a new bundle

    Use the wizard to create a new bundle with your desired configuration:

    Terminal window
    gtc wizard --answers wizard-answers.yaml

    Or run interactively:

    Terminal window
    gtc wizard
  3. Configure providers

    Set up your messaging providers (e.g., Telegram, Slack):

    Terminal window
    gtc setup ./my-bundle

    For non-interactive setup, use an answers file:

    Terminal window
    gtc setup --answers answers.json ./my-bundle
  4. Start the runtime

    Launch your digital worker:

    Terminal window
    gtc start ./my-bundle

Create a simple flow that responds to messages:

flows/hello.ygtc
name: hello_world
version: "1.0"
description: A simple greeting flow
nodes:
- id: greet
type: reply
config:
message: "Hello! I'm your digital worker."
triggers:
- type: message
pattern: "hello"
target: greet

A typical Greentic bundle looks like this:

my-bundle/
├── greentic.demo.yaml # Main configuration
├── providers/
│ └── messaging/
│ └── messaging-telegram.gtpack
├── apps/
│ └── my-app/
│ └── flows/
│ └── on_message.ygtc
└── seeds.yaml # Seed data (optional)

The main configuration file (greentic.demo.yaml) defines your setup:

greentic.demo.yaml
name: my-digital-worker
version: "1.0"
providers:
messaging-telegram:
pack: "providers/messaging/messaging-telegram.gtpack"
setup_flow: "setup_default"
apps:
my-app:
path: "apps/my-app"
default_flow: "on_message"
tenants:
demo:
name: Demo Tenant
teams:
default:
channels:
telegram:
provider: messaging-telegram

Now that you have a basic setup running: