Files

16 lines
532 B
TypeScript
Raw Permalink Normal View History

2025-12-13 16:34:17 +02:00
import type { ToolsAPI } from '@openchamber/ui/lib/api/types';
import { opencodeClient } from '@openchamber/ui/lib/opencode/client';
2025-12-13 16:34:17 +02:00
export const createVSCodeToolsAPI = (): ToolsAPI => ({
async getAvailableTools(): Promise<string[]> {
const data = await opencodeClient.listToolIds();
2025-12-13 16:34:17 +02:00
if (!Array.isArray(data)) {
throw new Error('Tools API returned invalid data format');
}
return data
.filter((tool: unknown): tool is string => typeof tool === 'string' && tool !== 'invalid')
.sort();
},
});