fix: fix desktop recipe url generation (#3209)

Co-authored-by: Alice Hau <ahau@squareup.com>
This commit is contained in:
Alice Hau
2025-07-02 09:09:45 -07:00
committed by GitHub
parent cac8159a1c
commit 5eeac1cd0d
4 changed files with 11 additions and 5 deletions
+2 -1
View File
@@ -21,7 +21,8 @@ interface RecipeEditorProps {
// Function to generate a deep link from a recipe
function generateDeepLink(recipe: Recipe): string {
const configBase64 = Buffer.from(JSON.stringify(recipe)).toString('base64');
return `goose://recipe?config=${configBase64}`;
const urlSafe = encodeURIComponent(configBase64);
return `goose://recipe?config=${urlSafe}`;
}
export default function RecipeEditor({ config }: RecipeEditorProps) {
@@ -119,7 +119,7 @@ function parseDeepLink(deepLink: string): Recipe | null {
return null;
}
const configJson = Buffer.from(configParam, 'base64').toString('utf-8');
const configJson = Buffer.from(decodeURIComponent(configParam), 'base64').toString('utf-8');
return JSON.parse(configJson) as Recipe;
} catch (error) {
console.error('Failed to parse deep link:', error);
@@ -17,7 +17,8 @@ interface DeepLinkModalProps {
// Function to generate a deep link from a bot config
export function generateDeepLink(recipeConfig: RecipeConfig): string {
const configBase64 = Buffer.from(JSON.stringify(recipeConfig)).toString('base64');
return `goose://bot?config=${configBase64}`;
const urlSafe = encodeURIComponent(configBase64);
return `goose://bot?config=${urlSafe}`;
}
export function DeepLinkModal({ recipeConfig: initialRecipeConfig, onClose }: DeepLinkModalProps) {