feat(v2): add Claude profile switching, skill discovery, and extended agent options

Add switcher-claude multi-account support with profile selector in AgentPane
toolbar, skill autocomplete menu (type / in prompt), and 5 new AgentQueryOptions
fields (setting_sources, system_prompt, model, claude_config_dir,
additional_directories) flowing through full stack from Rust to SDK.

New Tauri commands: claude_list_profiles, claude_list_skills, claude_read_skill,
pick_directory. New frontend adapter: claude-bridge.ts.
This commit is contained in:
Hibryda 2026-03-07 01:58:29 +01:00
parent 768db420d3
commit ff49e7e176
7 changed files with 507 additions and 18 deletions

View file

@ -12,6 +12,11 @@ export interface AgentQueryOptions {
max_budget_usd?: number;
resume_session_id?: string;
permission_mode?: string;
setting_sources?: string[];
system_prompt?: string;
model?: string;
claude_config_dir?: string;
additional_directories?: string[];
remote_machine_id?: string;
}

View file

@ -0,0 +1,28 @@
// Claude Bridge — Tauri IPC adapter for Claude profiles and skills
import { invoke } from '@tauri-apps/api/core';
export interface ClaudeProfile {
name: string;
email: string | null;
subscription_type: string | null;
display_name: string | null;
config_dir: string;
}
export interface ClaudeSkill {
name: string;
description: string;
source_path: string;
}
export async function listProfiles(): Promise<ClaudeProfile[]> {
return invoke<ClaudeProfile[]>('claude_list_profiles');
}
export async function listSkills(): Promise<ClaudeSkill[]> {
return invoke<ClaudeSkill[]>('claude_list_skills');
}
export async function readSkill(path: string): Promise<string> {
return invoke<string>('claude_read_skill', { path });
}