91 lines
2.2 KiB
TOML
91 lines
2.2 KiB
TOML
|
|
[workspace]
|
||
|
|
name = "vapora"
|
||
|
|
version = "0.2.0"
|
||
|
|
description = "Multi-agent multi-IA software development platform"
|
||
|
|
|
||
|
|
[cluster]
|
||
|
|
name = "vapora-cluster"
|
||
|
|
cloud_provider = "auto" # auto-detect or specify: aws, gcp, azure, local
|
||
|
|
kcl_schema = "kcl/cluster.k"
|
||
|
|
min_nodes = 5
|
||
|
|
max_nodes = 50
|
||
|
|
|
||
|
|
[taskservs]
|
||
|
|
backend = "taskservs/vapora-backend.toml"
|
||
|
|
frontend = "taskservs/vapora-frontend.toml"
|
||
|
|
agents = "taskservs/vapora-agents.toml"
|
||
|
|
mcp_gateway = "taskservs/vapora-mcp-gateway.toml"
|
||
|
|
llm_router = "taskservs/vapora-llm-router.toml"
|
||
|
|
|
||
|
|
[storage]
|
||
|
|
surrealdb = {
|
||
|
|
namespace = "vapora-system"
|
||
|
|
replicas = 3
|
||
|
|
storage_size = "50Gi"
|
||
|
|
storage_class = "rook-ceph"
|
||
|
|
}
|
||
|
|
|
||
|
|
redis = {
|
||
|
|
namespace = "vapora-system"
|
||
|
|
storage_size = "20Gi"
|
||
|
|
storage_class = "ssd"
|
||
|
|
}
|
||
|
|
|
||
|
|
nats = {
|
||
|
|
namespace = "vapora-system"
|
||
|
|
replicas = 3
|
||
|
|
storage_size = "30Gi"
|
||
|
|
storage_class = "rook-ceph"
|
||
|
|
}
|
||
|
|
|
||
|
|
[monitoring]
|
||
|
|
prometheus = true
|
||
|
|
grafana = true
|
||
|
|
loki = true
|
||
|
|
|
||
|
|
[security]
|
||
|
|
mtls_enabled = true
|
||
|
|
network_policies = true
|
||
|
|
rbac = true
|
||
|
|
vault_integration = true
|
||
|
|
|
||
|
|
[ingress]
|
||
|
|
gateway = "istio"
|
||
|
|
domain = "vapora.example.com"
|
||
|
|
tls = true
|
||
|
|
rate_limit = 1000 # req/sec
|
||
|
|
|
||
|
|
[scaling]
|
||
|
|
enable_hpa = true
|
||
|
|
cpu_target = 70
|
||
|
|
memory_target = 80
|
||
|
|
|
||
|
|
[agents]
|
||
|
|
# Initial agent pool sizes
|
||
|
|
architect = { min = 2, max = 5, model = "claude-opus-4" }
|
||
|
|
developer = { min = 5, max = 20, model = "claude-sonnet-4" }
|
||
|
|
code_reviewer = { min = 3, max = 10, model = "claude-sonnet-4" }
|
||
|
|
tester = { min = 3, max = 10, model = "claude-sonnet-4" }
|
||
|
|
documenter = { min = 2, max = 5, model = "gpt-4" }
|
||
|
|
marketer = { min = 1, max = 3, model = "claude-sonnet-4" }
|
||
|
|
presenter = { min = 1, max = 3, model = "claude-sonnet-4" }
|
||
|
|
devops = { min = 2, max = 5, model = "claude-sonnet-4" }
|
||
|
|
monitor = { min = 2, max = 5, model = "gemini-pro" }
|
||
|
|
security = { min = 2, max = 5, model = "claude-opus-4" }
|
||
|
|
project_manager = { min = 1, max = 2, model = "claude-sonnet-4" }
|
||
|
|
decision_maker = { min = 1, max = 1, model = "claude-opus-4" }
|
||
|
|
orchestrator = { min = 2, max = 5, model = "claude-opus-4" }
|
||
|
|
|
||
|
|
[llm_router]
|
||
|
|
default_fallback_order = ["claude", "openai", "gemini", "ollama"]
|
||
|
|
cost_tracking = true
|
||
|
|
warn_threshold_daily = 1000 # cents ($10)
|
||
|
|
|
||
|
|
[environment]
|
||
|
|
RUST_LOG = "debug,vapora=trace"
|
||
|
|
|
||
|
|
[backup]
|
||
|
|
enabled = true
|
||
|
|
schedule = "daily"
|
||
|
|
retention_days = 30
|