import type { CodingFileContentResponse, CodingFileFindResponse, CodingFileStatusResponse, CodingTextSearchResponse, CodingChangesResponse, CodingCommandsResponse, CodingSkillsResponse, } from '../../shared/coding-product-tools'; import { hostApiFetch } from './host-api'; export async function getCodingFileStatus(): Promise { return await hostApiFetch('/api/coding/files/status'); } export async function findCodingFiles( query: string, limit?: number, ): Promise { const params = new URLSearchParams({ query }); if (limit !== undefined) params.set('limit', String(limit)); return await hostApiFetch(`/api/coding/files/find?${params.toString()}`); } export async function getCodingFileContent(path: string): Promise { const params = new URLSearchParams({ path }); return await hostApiFetch(`/api/coding/files/content?${params.toString()}`); } export async function searchCodingText(pattern: string): Promise { const params = new URLSearchParams({ pattern }); return await hostApiFetch(`/api/coding/search?${params.toString()}`); } export async function getCodingSkills(agentId?: string): Promise { const params = new URLSearchParams(); if (agentId) params.set('agentId', agentId); const query = params.toString(); return await hostApiFetch(`/api/coding/skills${query ? `?${query}` : ''}`); } export async function getCodingConversationCommands( conversationId: string, ): Promise { return await hostApiFetch( `/api/coding/conversations/${encodeURIComponent(conversationId)}/commands`, ); } export async function getCodingConversationChanges( conversationId: string, ): Promise { return await hostApiFetch( `/api/coding/conversations/${encodeURIComponent(conversationId)}/changes`, ); }