feat(tools): persona-driven multi-domain corpus + model routing
Generalize the family-locked legal tools into caveauAI persona profiles (client 57 chat profiles, resolved in-process via the chat_profiles bridge). Each tool accepts an optional `profile` slug that scopes the corpus package(s), search method, system prompt and synthesis model; omitting it falls back to the family-legal package so existing behaviour is unchanged. - dbnToolsResolvePersona / dbnToolsListPersonas / dbnToolsBootChatProfiles in bootstrap.php; new api/personas.php + dbn.list_personas MCP tool. - LegalTools search/ask/corpusContextForSummarize and the BvjAnalyzer / LegalAnalysis / translate paths take the persona's packages + prompt + model. - Persona <select> on ask/search/summarize (populated from api/personas.php). Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -19,6 +19,13 @@
|
||||
<input type="number" id="numSpeakersInput" name="num_speakers" min="2" max="10" placeholder="auto" class="num-speakers-input" aria-label="Expected speaker count">
|
||||
</div>
|
||||
|
||||
<div class="control-row is-hidden" id="personaControl">
|
||||
<span class="control-label">Domain</span>
|
||||
<label class="persona-select-label" for="personaSelect">
|
||||
<select id="personaSelect" name="profile" aria-label="Legal domain persona"></select>
|
||||
</label>
|
||||
</div>
|
||||
|
||||
<div class="control-row is-hidden" id="corpusScopeControl">
|
||||
<span class="control-label">Search</span>
|
||||
<label><input type="radio" name="corpusScope" value="both" checked> Legal Library + My Docs</label>
|
||||
|
||||
Reference in New Issue
Block a user