- Add /api/chat/stream endpoint with Server-Sent Events (SSE) for real-time message streaming * Implement StreamEvent types (thought, tool_call, tool_result, final, error) * Add StreamEventCallback mechanism for event propagation * Create StreamChatHandler in webui/bot with proper HTTP headers and flushing - Implement LLM-based skill router for intelligent capability selection * Add optional routerLLM client for semantic routing * Implement routeSkillsWithLLM() to match user intent to available skills * Add matchSkillsByName() for fuzzy skill matching * Update buildUnifiedSystemPrompt() to use routed skills - Add streaming support to ReAct pipeline * Implement runUnifiedReActStream() for streaming thought/action/observation * Emit StreamEvent at each ReAct step * Support callback error handling in streaming mode - Integrate three new DevOps tools * tools/filedoc: Extract document content from file_id via OpenAI * tools/giteaticket: Create Gitea issues from PI plan items with SAFe metadata * tools/piplan: Publish PI planning blueprints with dependency tracking - Add SAFe PI Planning skill * Implement PM/SA/RTE (iron triangle) workflow * Support for Feature, Enabler, and Dependency definition * Automatic task decomposition and Gitea integration - Create frontend integration documentation * Complete SSE protocol specification * TypeScript fetch + ReadableStream example * LLM-ready refactoring template for other projects - Simplify file handling * Remove legacy file context structures and dual-mode processing * Consolidate file operations into UploadAndCacheFiles() * Remove FilePromptMode configuration and related complexity - Update configuration * Add Router model support (LLM_ROUTER_MODEL) * Add Gitea configuration (BaseURL, Token, Owner, Repo) * WebSearch and additional tool infrastructure Tests: All 22 test packages passing, 8/8 webui tests including 3 new stream tests
43 lines
922 B
Plaintext
43 lines
922 B
Plaintext
MESSAGE_CHANNEL=telegram
|
|
LOG_LEVEL=info
|
|
AGENT_WORKSPACE_DIR=./workspace/agent_runtime
|
|
SOUL_PATH=./bot_context/soul.md
|
|
SKILLS_DIR=./skills
|
|
REACT_MAX_STEPS=4
|
|
TOOL_CALL_TIMEOUT_SEC=15
|
|
TOOL_OUTPUT_MAX_CHARS=4000
|
|
ENABLE_CAPABILITY_GAP=true
|
|
AUTO_SKILL_DIR=./skills
|
|
GAP_DRAFT_TRIGGER_COUNT=3
|
|
GAP_CLUSTER_LOOKBACK_HOURS=168
|
|
|
|
TELEGRAM_BOT_TOKEN=
|
|
TELEGRAM_POLL_TIMEOUT_SECONDS=30
|
|
|
|
FEISHU_APP_ID=
|
|
FEISHU_APP_SECRET=
|
|
FEISHU_VERIFY_TOKEN=
|
|
FEISHU_LISTEN_ADDR=:8080
|
|
FEISHU_EVENT_PATH=/feishu/events
|
|
WEBUI_LISTEN_ADDR=:8090
|
|
WEBUI_MAX_UPLOAD_MB=20
|
|
|
|
LLM_BASE_URL=https://api.openai.com/v1
|
|
LLM_API_KEY=
|
|
LLM_MODEL=gpt-4o-mini
|
|
LLM_FILE_MODEL=gpt-4o-mini
|
|
LLM_ROUTER_MODEL=
|
|
|
|
WEB_SEARCH_ENGINE=duckduckgo
|
|
WEB_SEARCH_API_KEY=
|
|
|
|
GITEA_BASE_URL=
|
|
GITEA_TOKEN=
|
|
GITEA_OWNER=
|
|
GITEA_REPO=
|
|
|
|
SQLITE_PATH=./data/laodingbot.db
|
|
ALLOWED_DIRS=./workspace,./data,./skills
|
|
ALLOWED_COMMANDS=pwd,ls,cat,echo,grep,find,head,tail,go,curl,curl.exe
|
|
WORK_DIR=./workspace
|