Censhare AI: Release information


📦 v0.1.3

Parameter Naming & Backwards Compatibility

The single-letter parameter a was renamed to enableAlphaMatting for better readability and maintainability with no breaking changes.

  • Renamed a → enableAlphaMatting

  • Legacy field names remain fully supported via fallback logic

  • New resolveRuntimeAlphaMatting() function handles multiple field name variants

  • Updated all bindings: HTML form inputs, TypeScript interfaces, and state persistence logic

ℹ️ Existing configurations continue to work seamlessly — no migration required.


📦 v0.1.2

Full-featured asynchronous job handling with intelligent polling, queueing, and live status monitoring.

Asynchronous Job Polling

  • Automatically polls the server's /queue/:id endpoint when the API returns a queued job

  • Waits for completion and returns the final result — no separate polling flow needed

Configurable Polling Controls

  • Enable/disable auto-polling

  • Set poll interval (default: 2 seconds)

  • Set poll timeout (default: 5 minutes)

  • Configurable in the editor or overridden per message

Queue & Concurrency Control

  • Polling toggle: when disabled, immediately returns the queue ticket (msg.payload.id) for downstream manual polling

  • Local queueing: the "Queue?" option strictly sequences incoming messages — preventing Node-RED memory flooding and protecting the remote API from concurrent request overload

Live Status Indicator

  • Node badge shows aggregated active + queued requests plus live job progress

  • Examples: 3/10 in queue or 2 ahead

Lifecycle & Reliability

  • Safe abort on close/redeploy: aborts in-flight requests and clears pending polling intervals to prevent memory leaks

  • Smarter result decoding: extracts image buffers from raw buffers, data URLs, base64 strings, serialized buffers, byte arrays, and common wrapper objects

  • Richer job metadata: successful async jobs attach the full job status object to msg.job (id, runtime, duration, etc.)

Configuration & Docs

  • Default API URL now sources from an environment variable instead of a plain string

  • Editor help updated to cover polling, queueing/concurrency, the status indicator, and safe-abort behavior


📦 v0.0.8

Google GCP / Vertex AI Integration

  • New configuration files add full Vertex AI support as an LLM backend

  • Configuration UI provides all fields needed to connect to a GCP project and use Vertex AI-hosted models

  • New dependency @langchain/google-vertexai powers the integration

LLM Node — UI & Logic Overhaul

  • HTML template substantially reworked to accommodate new provider options and improve UX

  • Backend updated with new routing logic, provider selection handling, and GCP/Vertex AI support

AWS Bedrock Refinements

  • Minor fixes and adjustments to align with the broader configuration interface improvements


📦 v0.0.4

Google Vertex AI (GCP) Support

  • Replaced & unified google package - supports both Google AI Studio and Vertex AI via ChatGoogle

  • New Platform selector: choose Google AI Studio (API key auth) or Vertex AI (service account auth)

  • Full GCP service account credentials form: Project ID, Private Key ID, Private Key, Client Email, Client ID, Cert URL

  • Region/Location, Endpoint, and API Version fields added

  • Model instantiation explicitly sets responseModalities (TEXT, IMAGE, or AUDIO)

Image Output as Binary Buffer

  • New Image (Binary Buffer) output format for Google and OpenAI providers

  • Google uses responseModalities: ["IMAGE"]; OpenAI uses ChatOpenAITools.imageGeneration()

  • msg.payload contains the binary buffer; msg.filename is set automatically (e.g. generated-image-1.png)

Censhare Private Server Model Type

  • Added as a dedicated model type and set as the new default, routing through ChatOllama

Keep Alive Control (Ollama)

Mode

Value

Description

Unload

0

Immediately unloads model from memory after response

Indefinite

-1

Keeps model loaded until manually unloaded or Ollama restarts

Timed

custom

Duration string (e.g. 5m, 1h)

Request Queue

  • New Queue toggle in the Advanced tab — processes messages sequentially via an in-memory promise queue

  • Node status shows live queue depth (e.g. processing request (2 in queue)...)

Multimodal Content Blocks (msg.content)

Type

Description

Sources Supported

text

Plain text part

text field

image

Image input

URL, base64 + mimeType, File API ID

audio

Audio clip

URL, base64 + mimeType

video

Video clip

URL, base64 + mimeType

file

Document (e.g. PDF)

base64 + mimeType, optional extras.filename

📝 For Ollama/Censhare, image URLs are automatically fetched and converted to base64 via the new fetchImageAsBase64() helper — Ollama does not support direct URLs for binary inputs.

Structured Output (JSON Schema)

  • Schema-based output now uses standard JSON Schema (replaces the previous Zod string approach)

  • Built-in default schema ships with the node

  • Format JSON button validates and prettifies the schema; editor switched to JSON mode

UI & Configuration Changes

  • New dedicated Output tab — format options (Raw / Structured / Image) moved out of the Advanced tab

  • Removed: API Type radio (Public/Private) and confirmation dialog, Streaming and Memory toggles, isTracing

  • ollama-gen model type deprecated/hidden (standard Ollama covers both use cases)

  • Conditional fields: API URL/Key hidden for Vertex AI; HTTP Headers hidden for Google

  • Node label shows the model name only when it's a static string

Backend Refactoring

  • handleMessage() extracted as a standalone async function consolidating model rebuild, status updates, and output routing

  • buildConversation() and toLangChainBlock() now async to support URL-to-base64 fetching

  • buildModelInstance() refactored to accept the full node object

  • Processing queue initialised at startup and reset on close

  • Unused imports removed; all var declarations replaced with const/let

Build & Documentation

  • README.md created from scratch — setup guide, prerequisites, environment variables, build/deploy instructions, and Confluence links

  • Build script updated: cpx replaced with copyfiles, nodemon added, unused watch scripts removed

  • Node entry paths in package.json corrected to include the dist/ prefix


📦 v0.0.3

Generative AI

  • LLM node (Private/Public AI models)

  • Image Background (Private/Public AI service)

Agentic AI

  • Agent node (Private/Public AI models)

  • Tool calls with low-code (trigger & response handling)

  • Tracing

  • Ollama models