mirror of
https://gitee.com/mateos/mateclaw.git
synced 2026-09-13 11:13:43 +08:00
Add GET /api/v1/channels/webchat/wiki/pages mirroring /skills, so downstream integrators can build a [[slug]] picker UI that points the LLM at specific wiki pages. The picker token format is the universal Obsidian/Wikipedia wikilink convention; the LLM consumes [[slug]] via the existing wiki_read_page(slug=...) tool, so no agent-runtime changes are needed. - AgentBindingResolver.getBoundKbIds(agentId): three-state mirror of getBoundSkillIds. null = no rows (fall through to workspace-wide KBs), Set.of() = explicitly scoped to zero KBs, non-empty = explicit scope. - WebChatController.listWikiPages: API Key + visitorToken auth chain, agentId workspace anti-escalation, visibility excludes pageType= synthesis (LLM intermediate artifacts), 100-page cap forces keyword filter, response carries only display-level metadata. - WebChatWikiPageView DTO: kbId/kbName/slug/title/summary/pageType; content/embedding/sourceRawIds deliberately stay admin-console-only. - WikiTool.wiki_read_page @Tool description: document the [[slug]] convention so the LLM treats each token as a wiki-page reference. - WebChatWikiPageListTest: 8 cases covering happy path, keyword filter, synthesis exclusion, anti-escalation, auth failures, cap behavior, and the no-binding → workspace-wide fallback. Closes #381. |
||
|---|---|---|
| .. | ||
| binding | ||
| context | ||
| controller | ||
| delegation | ||
| event | ||
| graph | ||
| model | ||
| progress | ||
| prompt | ||
| repository | ||
| runtime | ||
| service | ||
| vo | ||
| AgentAuthoringTool.java | ||
| AgentGraphBuilder.java | ||
| AgentService.java | ||
| AgentState.java | ||
| AgentToolSet.java | ||
| BaseAgent.java | ||
| GraphEventPublisher.java | ||
| StructuredStreamCapable.java | ||