Skip to content

Platform Tenant

One-shot scaffolder for a k8s-native nanohype Platform tenant: the k8s-app-tenant chart (which vendors tenant-chart-base and ships per-env values, an ArgoCD ApplicationSet entry, and the Platform + BudgetPolicy CRs) plus the optional AI building blocks as local packages — the LLM gateway and the vector store. The output satisfies the platform-tenant-contract: a chart with the required templates, the gitops entry, and the Platform CR, with the OTel agents.tenant / agents.platform attributes set and no inline IAM. Pair the packages with a ts-service or agentic-loop for the app's own logic.

Nameplatform-tenant
Version0.1.0
Tagskubernetes, platform, tenant, ai, nanohype
Sourcecomposites/platform-tenant.yaml

Render it

# CLI
npx @nanohype/sdk render-composite platform-tenant --out ./my-app

# SDK
import { LocalSource, renderComposite } from "@nanohype/sdk";
const result = await renderComposite(source, "platform-tenant", variables);

# MCP — from an agent
get_composite({ name: "platform-tenant" })

What it draws together

TemplateRendered atNotes
k8s-app-tenantrootthe root project
module-llm-gatewaypackages/gatewayonly when IncludeLlmGateway
module-vector-storepackages/vectorsonly when IncludeVectorStore
module-audit-ledger-tspackages/auditonly when IncludeAuditLedger

Variables

Required

AppName string
Kebab-case app name — chart name, namespace, Platform CR name, and the package prefix. Must be lowercase kebab-case starting with a letter.
Tenant string
Owning team — drives the namespace prefix, ArgoCD AppProject, and quotas. Must be lowercase kebab-case.
Image string
Container image base (no tag — pinned per-env in values-{env}.yaml).

Optional

Description string — defaults to k8s-native Platform tenant
Short app description for Chart.yaml and README.
Port string — defaults to 8080
Container port the app listens on.
IncludeLlmGateway bool — defaults to true
Include the LLM gateway package (Bedrock-first, routing + caching + cost tracking).
LlmProvider string — defaults to bedrock
Default LLM provider for the gateway.
IncludeVectorStore bool — defaults to false
Include the vector store package (embedding storage + similarity search).
VectorProvider string — defaults to memory
Default vector store backend.
IncludeAuditLedger bool — defaults to false
Include the audit ledger package (append-only event log over pluggable storage).
AuditProvider string — defaults to memory
Default audit ledger backend.