feat: enhance ClawHub integration with new CLI paths and IPC handlers for config and skills directories (#41)

This commit is contained in:
Felix
2026-02-11 11:32:03 +08:00
committed by GitHub
Unverified
parent 177cf4c1ea
commit a0505490cd
6 changed files with 129 additions and 25 deletions

View File

@@ -39,6 +39,7 @@ interface SkillsState {
searchResults: MarketplaceSkill[];
loading: boolean;
searching: boolean;
searchError: string | null;
installing: Record<string, boolean>; // slug -> boolean
error: string | null;
@@ -58,6 +59,7 @@ export const useSkillsStore = create<SkillsState>((set, get) => ({
searchResults: [],
loading: false,
searching: false,
searchError: null,
installing: {},
error: null,
@@ -145,7 +147,7 @@ export const useSkillsStore = create<SkillsState>((set, get) => ({
},
searchSkills: async (query: string) => {
set({ searching: true, error: null });
set({ searching: true, searchError: null });
try {
const result = await window.electron.ipcRenderer.invoke('clawhub:search', { query }) as { success: boolean; results?: MarketplaceSkill[]; error?: string };
if (result.success) {
@@ -154,7 +156,7 @@ export const useSkillsStore = create<SkillsState>((set, get) => ({
throw new Error(result.error || 'Search failed');
}
} catch (error) {
set({ error: String(error) });
set({ searchError: String(error) });
} finally {
set({ searching: false });
}