Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion caipe/base/ai-platform-engineering.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ spec:
# Main chart from GHCR
- chart: ai-platform-engineering
repoURL: ghcr.io/cnoe-io/helm-charts
targetRevision: 0.3.3
targetRevision: 0.4.14
helm:
parameters:
- name: tags.basic
Expand Down
94 changes: 69 additions & 25 deletions caipe/base/ai-platform-engineering/values.yaml
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
# Override values for idpbuilder local deployment - Base configuration
# Global configuration shared across all subcharts
global:
# Disable graph RAG for now
rag:
enableGraphRag: false

slim:
enabled: false

Expand Down Expand Up @@ -108,24 +112,52 @@ global:
key: secret/ai-platform-engineering/global
property: AWS_BEDROCK_PROVIDER

promptConfigType: "deep_agent"

supervisor-agent:
nameOverride: "supervisor-agent"
image:
repository: "ghcr.io/cnoe-io/ai-platform-engineering"
tag: "0.1.19"
tag: "0.2.4"
env:
EXTERNAL_URL: "https://cnoe.localtest.me:8443/ai-platform-engineering"
RAG_AGENT_PORT: 8099

# Agent Connectivity Configuration
AGENT_CONNECTIVITY_ENABLE_BACKGROUND: "true" # Routinely checks each subagent connectivity to add or remove any from existing tools list
SKIP_AGENT_CONNECTIVITY_CHECK: "false" # Do not skip the connectivity check; supervisor agent will check each subagent is reachable

# Orchestration and Streaming Configuration
ENABLE_ENHANCED_STREAMING: "false" # Enable enhanced streaming with intelligent routing (DIRECT/PARALLEL/COMPLEX modes)
FORCE_DEEP_AGENT_ORCHESTRATION: "true" # Force all queries through Deep Agent with parallel orchestration hints (DEFAULT - best performance)
ENABLE_ENHANCED_ORCHESTRATION: "false" # EXPERIMENTAL: Smart routing + orchestration hints (4th mode for comparison)
STREAM_SUB_AGENT_TOOL_OUTPUT: "true" # Stream intermediate tool outputs (📄) from sub-agents to end user

# Response Format Configuration
ENABLE_STRUCTURED_OUTPUT: "false" # Set to "true" to enforce execution plans with Pydantic validation
ENABLE_ARTIFACT_STREAMING: "true"

# # OAuth2 Configuration
A2A_AUTH_OAUTH2: true
# Backstage authentication
# JWKS_URI and TOKEN_ENDPOINT use internal cluster service to avoid SSL issues
# ISSUER must match the external URL because that's what's in the JWT tokens
JWKS_URI: "http://backstage.backstage.svc.cluster.local:7007/api/auth/.well-known/jwks.json"
AUDIENCE: "backstage"
ISSUER: "https://cnoe.localtest.me:8443/api/auth"
OAUTH2_CLIENT_ID: "backstage"
TOKEN_ENDPOINT: "http://backstage.backstage.svc.cluster.local:7007/api/auth/oauth2/token"

agent-argocd:
nameOverride: "agent-argocd"
image:
repository: "ghcr.io/cnoe-io/agent-argocd"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-argocd"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand All @@ -151,7 +183,7 @@ agent-aws:
image:
repository: "ghcr.io/cnoe-io/agent-aws"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
mode: "stdio" # AWS currently does not support HTTP mode
agentSecrets:
Expand All @@ -176,11 +208,11 @@ agent-backstage:
image:
repository: "ghcr.io/cnoe-io/agent-backstage"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-backstage"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand All @@ -202,11 +234,11 @@ agent-confluence:
image:
repository: "ghcr.io/cnoe-io/agent-confluence"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-confluence"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand All @@ -232,7 +264,7 @@ agent-github:
image:
repository: "ghcr.io/cnoe-io/agent-github"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
useRemoteMcpServer: true
agentSecrets:
Expand All @@ -249,11 +281,11 @@ agent-jira:
image:
repository: "ghcr.io/cnoe-io/agent-jira"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-jira"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand All @@ -280,11 +312,11 @@ agent-komodor:
image:
repository: "ghcr.io/cnoe-io/agent-komodor"
pullPolicy: "Always"
tag: "0.1.19"
tag: "41c4392" # Use the latest fix that includes https://github.com/cnoe-io/ai-platform-engineering/pull/507. This is a temporary fix until the next release of the agent-komodor chart.
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-komodor"
tag: "0.1.19"
tag: "41c4392" # Use the latest fix that includes https://github.com/cnoe-io/ai-platform-engineering/pull/507. This is a temporary fix until the next release of the mcp-komodor chart.
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand All @@ -306,11 +338,11 @@ agent-pagerduty:
image:
repository: "ghcr.io/cnoe-io/agent-pagerduty"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-pagerduty"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand All @@ -332,11 +364,11 @@ agent-slack:
image:
repository: "ghcr.io/cnoe-io/agent-slack"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-slack"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand Down Expand Up @@ -371,11 +403,11 @@ agent-splunk:
image:
repository: "ghcr.io/cnoe-io/agent-splunk"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-splunk"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand All @@ -397,11 +429,11 @@ agent-webex:
image:
repository: "ghcr.io/cnoe-io/agent-webex"
pullPolicy: "Always"
tag: "0.1.19"
tag: "0.2.4"
mcp:
image:
repository: "ghcr.io/cnoe-io/mcp-webex"
tag: "0.1.19"
tag: "0.2.4"
pullPolicy: "Always"
mode: "http" # Options: stdio, http
port: 8000
Expand All @@ -415,7 +447,23 @@ agent-webex:
property: WEBEX_TOKEN

rag-stack:
rag-server:
image:
repository: "ghcr.io/cnoe-io/caipe-rag-server"
tag: "0.2.4"
pullPolicy: "Always"

agent-rag:
image:
repository: "ghcr.io/cnoe-io/caipe-rag-agent-rag"
tag: "0.2.4"
pullPolicy: "Always"

rag-webui:
image:
repository: "ghcr.io/cnoe-io/caipe-rag-webui"
tag: "0.2.4"
pullPolicy: "Always"
ingress:
enabled: true
className: "nginx"
Expand Down Expand Up @@ -451,7 +499,3 @@ rag-stack:
enabled: false # Default is true, we need false
woodpecker:
enabled: true # Default is false, we need true

# Jarvis node scheduling

# Performance overrides only for compute nodes
35 changes: 24 additions & 11 deletions caipe/base/backstage/manifests/install.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -178,8 +178,13 @@ data:
entityFilename: catalog-info.yaml
pullRequestBranchName: backstage-integration
rules:
- allow: [Component, System, API, Resource, Location, Template]
- allow: [Component, System, API, Resource, Location, Template, User, Group, Domain]
locations:
# Mock catalog data for testing MCP tools
- type: file
target: /app/mock-catalog/all.yaml
rules:
- allow: [Component, System, API, Resource, Location, Template, User, Group, Domain]
# Examples from a public GitHub repository.
- type: url
target: https://cnoe.localtest.me/gitea/giteaAdmin/idpbuilder-localdev-backstage-templates-entities/raw/branch/main/catalog-info.yaml
Expand Down Expand Up @@ -207,19 +212,21 @@ data:
botName: CAIPE
infoPage: https://cnoe-io.github.io/ai-platform-engineering/
showOptions: true
useOpenIDToken: true # Set to true to use OpenIdConnectApi.getIdToken(), false to use IdentityApi.getCredentials()
enableStreaming: false # Set to true to enable streaming responses, false for non-streaming
useOpenIDToken: false # use backstage auth instead of custom auth e.g. keycloak
enableStreaming: true # Set to true to enable streaming responses, false for non-streaming
requestTimeout: 300
headerTitle: CAIPE
autoReloadOnTokenExpiry: false
userEmailMode: "none" # Options: "none", "message" (prepends user email to every user message), "metadata" (adds user email to metadata)
headerTitle: CAIPE Distributed Multi-Agentic System
headerSubtitle: AI Platform Engineer Assistant
inputPlaceholder: Ask CAIPE anything...
initialSuggestions:
- Create GitHub Repository
- Deploy ArgoCD Application
- Create AWS Resources
- Get LLM keys
- Add MyID Groups
- Invite users to Github Organization
- What can you do?
- What ArgoCD Applications are deployed?
- List all users and groups in Backstage
- Who is on the platform-team?
- Show me all teams in the catalog
- Get my Github profile details
thinkingMessagesInterval: 7000 # Interval in milliseconds (default: 7000)
thinkingMessages:
- "⚙️ Processing query — even great thoughts start with a single thread."
Expand Down Expand Up @@ -320,7 +327,7 @@ spec:
name: argocd-credentials
- secretRef:
name: backstage-api-token
image: ghcr.io/sriaradhyula/backstage-app:35e30d165584e583b205c365d44cb938864896c7
image: ghcr.io/suwhang-cisco/backstage-app:608f93ad3fc75cd3161d7163ba677e9ccc9caeff
name: backstage
ports:
- containerPort: 7007
Expand All @@ -329,6 +336,9 @@ spec:
- mountPath: /app/config
name: backstage-config
readOnly: true
- mountPath: /app/mock-catalog
name: mock-catalog
readOnly: true
serviceAccountName: backstage
volumes:
- name: backstage-config
Expand All @@ -344,6 +354,9 @@ spec:
- key: k8s-config.yaml
path: k8s-config.yaml
name: k8s-config
- name: mock-catalog
configMap:
name: backstage-mock-catalog
---
apiVersion: apps/v1
kind: StatefulSet
Expand Down
Loading
Loading