Tentacles Software Stack¶
Purpose¶
This document converts the Tentacles planning direction into an explicit software stack reference.
Stack Status Model¶
Use these meanings:
Required now: should exist for the first working deploymentDeferred but planned: expected architecture component, but can wait if it slows deliveryLater: not part of the first useful deployment
Shared Core Stack¶
n8n¶
Status:
Required now
Role:
- workflow orchestration
- channel routing
- queue creation and review-state updates
- notification dispatch
- controlled actions such as booking follow-up
Planned container:
cbr-sh-n8n01
PostgreSQL¶
Status:
Required now
Role:
- shared relational state
- later review queue storage
- workflow persistence
- tenant metadata and controlled audit records
Planned container:
cbr-sh-postgres01
Qdrant¶
Status:
Required now, if retrieval is used in the first pilot
Role:
- tenant-scoped knowledge retrieval
- embedding-backed document search
Planned container:
cbr-sh-qdrant01
Dify¶
Status:
Deferred but planned
Role:
- app layer for agent composition
- prompt and knowledge workflow management
Planned container:
cbr-sh-dify01
Practical note:
If n8n plus retrieval and a review queue can prove the first workflow faster, Dify should wait.
Langfuse¶
Status:
Deferred but planned
Role:
- observability
- prompt and trace review
- later hardening and evaluation
Planned container:
cbr-sh-langfuse01
Practical note:
Important, but not worth delaying the first operator-reviewed workflow.
External And Integration Components¶
LLM Provider¶
Status:
Required now
Initial model strategy:
- hosted APIs first
- keep provider choice swappable
WhatsApp Channel Integration¶
Status:
Required now
Role:
- primary customer-facing channel for v1
Current implementation path:
- temporary
WAHAQR-based adapter oncbr-sh-waha01 - live webhook target:
http://10.0.0.55:5678/webhook/tentacles/waha-inbound
Replacement path:
- move to official
WhatsApp Cloud APIonce the prototype is proven
Email Channel Integration¶
Status:
Required now
Role:
- secondary v1 channel
- customer communication
- operator notification
- future document intake
Google Calendar¶
Status:
Required for the TV Mount Australia booking workflow
Role:
- booking and appointment integration for the first pilot
First Useful Deployment¶
The smallest acceptable first deployment is:
cbr-sh-n8n01cbr-sh-postgres01cbr-sh-qdrant01cbr-sh-waha01- one hosted model provider
- one WhatsApp integration path
- one email integration path
- one Google Calendar integration path for TV Mount Australia
Current implementation status:
- infrastructure containers created
PostgreSQL,Qdrant, andn8nare now deployed on the shared-core containersWAHAis now deployed, paired, and configured to post into then8nintake webhook- the first operator review queue is now live through the local queue API on
cbr-sh-n8n01:8081 - synthetic Stage 2 webhook tests succeeded:
- webhook accepted
- queue item created
- holding reply call accepted by
WAHA - the live core currently exposes:
10.0.0.53:543210.0.0.54:633310.0.0.55:567810.0.0.55:808110.0.0.58:3000DifyandLangfuseremain created as infrastructure placeholders but should stay deferred until the first workflow is stable
Current implementation note:
- for speed, the first review queue is local to
cbr-sh-n8n01 - moving queue persistence and richer state into
PostgreSQLremains a later Stage 2 hardening step
Deferred Components¶
These remain planned, but do not block the first useful deployment:
cbr-sh-dify01cbr-sh-langfuse01- voice stack
- web chat stack
- broader tenant self-service tooling
Implementation Rule¶
The software stack should be treated as:
- a shared core platform
- not one full stack per tenant
- business-scoped only
The first active tenant remains TV Mount Australia.