refactor(startup): simplify stack to Tauri-managed OpenFang + optional ChromeDriver
- Remove OpenFang CLI dependency from startup scripts - OpenFang now bundled with Tauri and managed via gateway_start/gateway_status commands - Add bootstrap screen in App.tsx to auto-start local gateway before UI loads - Update Makefile: replace start-no-gateway with start-desktop-only - Fix gateway config endpoints: use /api/config instead of /api/config/quick - Add Playwright dependencies for future E2E testing
This commit is contained in:
@@ -1086,7 +1086,28 @@ export class GatewayClient {
|
||||
}
|
||||
async getQuickConfig(): Promise<any> {
|
||||
try {
|
||||
return await this.restGet('/api/config/quick');
|
||||
// Use /api/config endpoint (OpenFang's actual config endpoint)
|
||||
const config = await this.restGet('/api/config');
|
||||
// Map OpenFang config to frontend expected format
|
||||
return {
|
||||
quickConfig: {
|
||||
agentName: 'ZCLAW',
|
||||
agentRole: 'AI 助手',
|
||||
userName: '用户',
|
||||
userRole: '用户',
|
||||
agentNickname: 'ZCLAW',
|
||||
scenarios: ['通用对话', '代码助手', '文档编写'],
|
||||
workspaceDir: config.data_dir || config.home_dir,
|
||||
gatewayUrl: this.baseUrl,
|
||||
defaultModel: config.default_model?.model,
|
||||
defaultProvider: config.default_model?.provider,
|
||||
theme: 'dark',
|
||||
showToolCalls: true,
|
||||
autoSaveContext: true,
|
||||
fileWatching: true,
|
||||
privacyOptIn: false,
|
||||
}
|
||||
};
|
||||
} catch (error) {
|
||||
// Return structured fallback if API not available (404)
|
||||
if (isNotFoundError(error)) {
|
||||
@@ -1096,7 +1117,16 @@ export class GatewayClient {
|
||||
}
|
||||
}
|
||||
async saveQuickConfig(config: Record<string, any>): Promise<any> {
|
||||
return this.restPut('/api/config/quick', config);
|
||||
// Use /api/config endpoint for saving config
|
||||
// Map frontend config back to OpenFang format
|
||||
const openfangConfig = {
|
||||
data_dir: config.workspaceDir,
|
||||
default_model: config.defaultModel ? {
|
||||
model: config.defaultModel,
|
||||
provider: config.defaultProvider || 'bailian',
|
||||
} : undefined,
|
||||
};
|
||||
return this.restPut('/api/config', openfangConfig);
|
||||
}
|
||||
async listSkills(): Promise<any> {
|
||||
return this.restGet('/api/skills');
|
||||
|
||||
Reference in New Issue
Block a user