Some checks failed
release-tag / Resolve release metadata (push) Successful in 30s
release-tag / Build knowledge (push) Failing after 4m51s
release-tag / Build control (push) Failing after 5m0s
release-tag / Build agent (push) Failing after 5m0s
release-tag / Build agent-data-init (push) Failing after 5m5s
release-tag / Build neuroforge-worker (push) Failing after 5m7s
release-tag / Build neuroforge (push) Failing after 5m9s
111 lines
3.6 KiB
Plaintext
111 lines
3.6 KiB
Plaintext
# -----------------------------
|
|
# Mega-project core / security
|
|
# -----------------------------
|
|
NEUROFORGE_ADMIN_TOKEN=CHANGE_ME_ADMIN
|
|
NEUROFORGE_APP_API_KEY=CHANGE_ME_APP
|
|
NEUROFORGE_WORKER_TOKEN=CHANGE_ME_WORKER
|
|
NEUROFORGE_METRICS_TOKEN=CHANGE_ME_METRICS
|
|
KB_INTEGRATION_TOKEN=CHANGE_ME_KB_INTEGRATION
|
|
CONTROL_READ_TOKEN=CHANGE_ME_CONTROL_READ
|
|
NEUROFORGE_CLUSTER_TOKEN=
|
|
OPENAI_API_KEY=
|
|
|
|
# Staged vector migration: local | dual | neuroforge
|
|
KNOWLEDGE_VECTOR_BACKEND=dual
|
|
NEUROFORGE_NAMESPACE=glpi-agent
|
|
NEUROFORGE_SEARCH_K=128
|
|
# true = keep processing with local/lexical fallback if NeuroForge is unavailable
|
|
# false = semantic backend failures are blocking
|
|
NEUROFORGE_FAIL_OPEN=true
|
|
|
|
# -----------------------------
|
|
# Shared local AI runtime
|
|
# -----------------------------
|
|
OLLAMA_MODEL=gemma3
|
|
OLLAMA_EMBEDDING_MODEL=embeddinggemma
|
|
OLLAMA_TIMEOUT=10m
|
|
OLLAMA_KEEP_ALIVE=10m
|
|
OLLAMA_NUM_PREDICT=768
|
|
OLLAMA_JSON_RETRIES=1
|
|
|
|
# -----------------------------
|
|
# GLPI Agent connection
|
|
# -----------------------------
|
|
GLPI_URL=https://glpi.example.invalid
|
|
GLPI_API_VERSION=v2.3
|
|
GLPI_CLIENT_ID=
|
|
GLPI_CLIENT_SECRET=
|
|
GLPI_USERNAME=
|
|
GLPI_PASSWORD=
|
|
GLPI_AGENT_USER_ID=0
|
|
DRY_RUN=true
|
|
AUTO_CATEGORY=false
|
|
AUTO_REPLY=false
|
|
AUTO_PRIORITY=false
|
|
AUTO_ESCALATION=false
|
|
RAG_ENABLED=true
|
|
KNOWLEDGE_INDEX_MODE=incremental
|
|
KNOWLEDGE_MIN_SCORE=0.70
|
|
KNOWLEDGE_ALLOWED_SOURCES=internal-kb
|
|
|
|
# -----------------------------
|
|
# Web access
|
|
# -----------------------------
|
|
WEB_USERNAME=admin
|
|
WEB_PASSWORD=CHANGE_ME_AGENT_WEB
|
|
WEB_ALLOW_ANONYMOUS=false
|
|
BASIC_AUTH_USER=admin
|
|
BASIC_AUTH_PASSWORD=CHANGE_ME_KB_WEB
|
|
|
|
# -----------------------------
|
|
# Optional host ports
|
|
# -----------------------------
|
|
CONTROL_HOST_PORT=8070
|
|
AGENT_HOST_PORT=8080
|
|
KNOWLEDGE_HOST_PORT=8081
|
|
NEUROFORGE_HOST_PORT=8090
|
|
OLLAMA_HOST_PORT=11434
|
|
|
|
# -----------------------------
|
|
# Controlled learning / research
|
|
# -----------------------------
|
|
# Enforces: no automatic learning from raw chat input or assistant output;
|
|
# explicit validated outcomes and research evidence keep distinct provenance.
|
|
NEUROFORGE_CONTROLLED_LEARNING=true
|
|
|
|
# Ticket -> AI proposal -> technician accept/correct -> NeuroForge learn.
|
|
OUTCOME_LEARNING_ENABLED=true
|
|
# false = technician sees an error when NeuroForge cannot persist the validated outcome.
|
|
# The local outcome audit is still retained with sync_status=failed.
|
|
OUTCOME_LEARNING_FAIL_OPEN=false
|
|
OUTCOME_LEARNING_MAX_OUTCOMES=2000
|
|
# Active accepted/corrected outcomes are secondary reply evidence only.
|
|
# They never replace the approved-KB requirement for Auto-Reply.
|
|
OUTCOME_RETRIEVAL_ENABLED=true
|
|
OUTCOME_RETRIEVAL_SEARCH_K=6
|
|
OUTCOME_RETRIEVAL_MIN_SIMILARITY=0.58
|
|
# true = continue with official KB/context if experience retrieval is unavailable.
|
|
OUTCOME_RETRIEVAL_FAIL_OPEN=true
|
|
|
|
# Research is opt-in. Starting the SearXNG profile alone does not enable learning.
|
|
NEUROFORGE_RESEARCH_ENABLED=false
|
|
NEUROFORGE_SEARXNG_ENABLED=false
|
|
NEUROFORGE_SEARXNG_URL=http://searxng:8080
|
|
NEUROFORGE_RESEARCH_GOAL_ENABLED=true
|
|
# Separate switch for scheduled self-directed goal cycles.
|
|
NEUROFORGE_AUTONOMY_ENABLED=false
|
|
NEUROFORGE_AUTONOMY_INTERVAL_MINUTES=30
|
|
NEUROFORGE_RESEARCH_MAX_QUERIES=2
|
|
NEUROFORGE_RESEARCH_MAX_PAGES=4
|
|
|
|
# Required only when the optional `research` compose profile is started.
|
|
# Pin this to a version/digest in production if reproducible images are required.
|
|
SEARXNG_IMAGE=docker.io/searxng/searxng:latest
|
|
SEARXNG_SECRET=CHANGE_ME_SEARXNG_LONG_RANDOM_SECRET
|
|
SEARXNG_HOST_PORT=8888
|
|
|
|
# Optional local developer-only Codebase Memory MCP/UI. It is not required by
|
|
# production services. For a host process reachable from Docker on Linux:
|
|
CODEBASE_MEMORY_URL=
|
|
PUBLIC_CODEBASE_MEMORY_URL=http://localhost:9749
|