- Router Core with rule-based routing (1530 lines) - DevTools Backend (file ops, test execution) (393 lines) - CrewAI Orchestrator (4 workflows, 12 agents) (358 lines) - Bot Gateway (Telegram/Discord) (321 lines) - RBAC Service (role resolution) (272 lines) - Structured logging (utils/logger.py) - Docker deployment (docker-compose.yml) - Comprehensive documentation (57KB) - Test suites (41 tests, 95% coverage) - Phase 4 roadmap & ecosystem integration plans Production-ready infrastructure for DAARION microDAOs.
136 lines
4.4 KiB
Plaintext
136 lines
4.4 KiB
Plaintext
# DAGI Router Configuration
|
|
# Version: 0.3.0
|
|
|
|
node:
|
|
id: dagi-devtools-node-01
|
|
role: router
|
|
env: dev
|
|
description: "DAGI Router with DevTools Agent support"
|
|
|
|
# ============================================================================
|
|
# LLM Profiles - доступні моделі
|
|
# ============================================================================
|
|
llm_profiles:
|
|
# Локальна модель через Ollama (основна для DevTools)
|
|
local_qwen3_8b:
|
|
provider: ollama
|
|
base_url: http://localhost:11434
|
|
model: qwen3:8b
|
|
max_tokens: 1024
|
|
temperature: 0.2
|
|
top_p: 0.9
|
|
timeout_ms: 30000
|
|
description: "Локальна qwen3:8b для простих dev-задач"
|
|
|
|
# DeepSeek для складних задач (опціонально)
|
|
cloud_deepseek:
|
|
provider: deepseek
|
|
base_url: https://api.deepseek.com
|
|
api_key_env: DEEPSEEK_API_KEY
|
|
model: deepseek-chat
|
|
max_tokens: 2048
|
|
temperature: 0.2
|
|
timeout_ms: 40000
|
|
description: "DeepSeek для складних аналітичних задач"
|
|
|
|
# ============================================================================
|
|
# Agents Configuration
|
|
# ============================================================================
|
|
agents:
|
|
devtools:
|
|
description: "DevTools Agent - помічник з кодом, тестами й інфраструктурою"
|
|
default_llm: local_qwen3_8b
|
|
system_prompt: |
|
|
Ти - DevTools Agent в екосистемі DAARION.city.
|
|
Ти допомагаєш розробникам з:
|
|
- аналізом коду та пошуком багів
|
|
- рефакторингом
|
|
- написанням тестів
|
|
- git операціями
|
|
Відповідай коротко, конкретно, з прикладами коду коли потрібно.
|
|
|
|
tools:
|
|
- id: fs_read
|
|
type: builtin
|
|
description: "Читання файлів"
|
|
- id: fs_write
|
|
type: builtin
|
|
description: "Запис файлів"
|
|
- id: run_tests
|
|
type: builtin
|
|
description: "Запуск тестів"
|
|
- id: git_diff
|
|
type: builtin
|
|
description: "Git diff"
|
|
- id: git_commit
|
|
type: builtin
|
|
description: "Git commit"
|
|
|
|
# ============================================================================
|
|
# Routing Rules - правила маршрутизації
|
|
# ============================================================================
|
|
routing:
|
|
# Правило 1: DevTools + складні задачі → DeepSeek (якщо є API key)
|
|
- id: devtools_complex_cloud
|
|
priority: 10
|
|
when:
|
|
agent: devtools
|
|
and:
|
|
- task_type:
|
|
- refactor_large
|
|
- architecture_review
|
|
- security_audit
|
|
- performance_analysis
|
|
- api_key_available: DEEPSEEK_API_KEY
|
|
use_llm: cloud_deepseek
|
|
description: "Складні DevTools задачі → DeepSeek"
|
|
|
|
# Правило 2: DevTools + всі інші задачі → qwen3:8b (локально)
|
|
- id: devtools_default_local
|
|
priority: 20
|
|
when:
|
|
agent: devtools
|
|
use_llm: local_qwen3_8b
|
|
description: "Стандартні DevTools задачі → локальна qwen3:8b"
|
|
|
|
# Правило 3: Explicit override через metadata.provider
|
|
- id: explicit_provider_override
|
|
priority: 5
|
|
when:
|
|
metadata_has: provider
|
|
use_llm: metadata.provider
|
|
description: "Явне вказання провайдера в metadata"
|
|
|
|
# Правило 4: Default fallback
|
|
- id: default_fallback
|
|
priority: 100
|
|
when:
|
|
default: true
|
|
use_llm: local_qwen3_8b
|
|
description: "Дефолт для всіх інших запитів"
|
|
|
|
# ============================================================================
|
|
# Telemetry & Logging
|
|
# ============================================================================
|
|
telemetry:
|
|
enabled: true
|
|
sink: stdout
|
|
log_level: info
|
|
metrics:
|
|
- request_count
|
|
- response_time
|
|
- token_usage
|
|
- error_rate
|
|
|
|
# ============================================================================
|
|
# Policy & Quotas (for future)
|
|
# ============================================================================
|
|
policies:
|
|
rate_limiting:
|
|
enabled: false
|
|
# requests_per_minute: 60
|
|
|
|
budget:
|
|
enabled: false
|
|
# daily_token_limit: 100000
|