{ "name": "goose-app", "productName": "Goose", "version": "1.29.0", "description": "Goose App", "engines": { "node": "^24.10.0", "pnpm": ">=10.30.0" }, "main": ".vite/build/main.js", "scripts": { "typecheck": "tsc --noEmit", "generate-api": "openapi-ts", "start-gui": "pnpm run generate-api && pnpm run i18n:compile && electron-forge start", "start-gui-debug": "pnpm run generate-api && pnpm run i18n:compile && electron-forge start -- --inspect=9229", "start": "cd ../.. && just run-ui", "start:test-error": "GOOSE_TEST_ERROR=true electron-forge start", "package": "pnpm run i18n:compile && electron-forge package", "make": "pnpm run i18n:compile && electron-forge make", "bundle:default": "node scripts/prepare-platform-binaries.js && pnpm run make && BUNDLE_NAME=\"${GOOSE_BUNDLE_NAME:-Goose}\" && APP_DIR=\"out/${BUNDLE_NAME}-darwin-arm64\" && APP_BUNDLE=\"${APP_DIR}/${BUNDLE_NAME}.app\" && (cd \"$APP_DIR\" && ditto -c -k --sequesterRsrc --keepParent \"${BUNDLE_NAME}.app\" \"${BUNDLE_NAME}.zip\") || echo \"${APP_BUNDLE} not found; either the binary is not built or you are not on macOS\"", "bundle:alpha": "ALPHA=true node scripts/prepare-platform-binaries.js && ALPHA=true pnpm run make && BUNDLE_NAME=\"${GOOSE_BUNDLE_NAME:-Goose}\" && APP_DIR=\"out/${BUNDLE_NAME}-darwin-arm64\" && APP_BUNDLE=\"${APP_DIR}/${BUNDLE_NAME}.app\" && (cd \"$APP_DIR\" && ditto -c -k --sequesterRsrc --keepParent \"${BUNDLE_NAME}.app\" \"${BUNDLE_NAME}_alpha.zip\") || echo \"${APP_BUNDLE} not found; either the binary is not built or you are not on macOS\"", "bundle:intel": "node scripts/prepare-platform-binaries.js && pnpm run make --arch=x64 && BUNDLE_NAME=\"${GOOSE_BUNDLE_NAME:-Goose}\" && APP_DIR=\"out/${BUNDLE_NAME}-darwin-x64\" && APP_BUNDLE=\"${APP_DIR}/${BUNDLE_NAME}.app\" && (cd \"$APP_DIR\" && ditto -c -k --sequesterRsrc --keepParent \"${BUNDLE_NAME}.app\" \"${BUNDLE_NAME}_intel_mac.zip\")", "debug": "echo 'run --remote-debugging-port=8315' && BUNDLE_NAME=\"${GOOSE_BUNDLE_NAME:-Goose}\" && lldb \"out/${BUNDLE_NAME}-darwin-arm64/${BUNDLE_NAME}.app\"", "test-e2e": "pnpm run generate-api && playwright test", "test-e2e:dev": "pnpm run generate-api && playwright test --reporter=list --retries=0 --max-failures=1", "test-e2e:ui": "pnpm run generate-api && playwright test --ui", "test-e2e:debug": "pnpm run generate-api && playwright test --debug", "test-e2e:report": "playwright show-report", "test-e2e:single": "pnpm run generate-api && playwright test -g", "lint": "eslint \"src/**/*.{ts,tsx}\" --fix --no-warn-ignored", "lint:check": "pnpm run typecheck && eslint \"src/**/*.{ts,tsx}\" --max-warnings 0 --no-warn-ignored && pnpm run i18n:check", "format": "prettier --write \"src/**/*.{ts,tsx,css,json}\"", "format:check": "prettier --check \"src/**/*.{ts,tsx,css,json}\"", "test": "vitest", "test:run": "vitest run", "test:ui": "vitest --ui", "test:coverage": "vitest run --coverage", "test:integration": "vitest run --config vitest.integration.config.ts", "test:integration:watch": "vitest --config vitest.integration.config.ts", "test:integration:debug": "DEBUG=1 vitest run --config vitest.integration.config.ts", "start-alpha-gui": "ALPHA=true pnpm run start-gui", "i18n:extract": "formatjs extract 'src/**/*.{ts,tsx}' --out-file src/i18n/messages/en.json --flatten && pnpm run i18n:compile", "i18n:check": "node scripts/i18n-check.js", "i18n:compile": "node scripts/i18n-compile.js" }, "dependencies": { "@aaif/goose-acp": "workspace:*", "@mcp-ui/client": "6.1.0", "@modelcontextprotocol/ext-apps": "^1.1.1", "@radix-ui/react-accordion": "^1.2.12", "@radix-ui/react-avatar": "^1.1.11", "@radix-ui/react-dialog": "^1.1.15", "@radix-ui/react-icons": "^1.3.2", "@radix-ui/react-popover": "^1.1.15", "@radix-ui/react-radio-group": "^1.3.8", "@radix-ui/react-scroll-area": "^1.2.10", "@radix-ui/react-select": "^2.2.6", "@radix-ui/react-slot": "^1.2.4", "@radix-ui/react-tabs": "^1.1.13", "@radix-ui/themes": "^3.3.0", "@tanstack/react-form": "1.28.3", "@types/react-router-dom": "^5.3.3", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "compare-versions": "^6.1.1", "cors": "^2.8.6", "cronstrue": "^3.12.0", "date-fns": "^4.1.0", "dotenv": "^17.3.1", "electron-log": "^5.4.3", "electron-squirrel-startup": "^1.0.1", "electron-updater": "^6.8.3", "electron-window-state": "^5.0.3", "express": "^5.2.1", "framer-motion": "^12.34.3", "katex": "^0.16.33", "lodash": "^4.17.23", "lucide-react": "^0.575.0", "qrcode.react": "^4.2.0", "react": "^19.2.4", "react-dom": "^19.2.4", "react-icons": "^5.5.0", "react-intl": "^10.1.0", "react-markdown": "^10.1.0", "react-router-dom": "^7.13.1", "react-select": "^5.10.2", "react-syntax-highlighter": "^16.1.0", "react-toastify": "^11.0.5", "rehype-katex": "^7.0.1", "remark-breaks": "^4.0.0", "remark-gfm": "^4.0.1", "remark-math": "^6.0.0", "shell-quote": "^1.8.3", "split-type": "^0.3.4", "swr": "^2.4.0", "tailwind-merge": "^3.5.0", "tailwindcss-animate": "^1.0.7", "tw-animate-css": "^1.4.0", "unist-util-visit": "^5.1.0", "uuid": "^13.0.0", "zod": "^3.25.76" }, "devDependencies": { "@electron-forge/cli": "^7.11.1", "@electron-forge/maker-deb": "^7.11.1", "@electron-forge/maker-flatpak": "^7.11.1", "@electron-forge/maker-rpm": "^7.11.1", "@electron-forge/maker-squirrel": "^7.11.1", "@electron-forge/maker-zip": "^7.11.1", "@electron-forge/plugin-auto-unpack-natives": "^7.11.1", "@electron-forge/plugin-fuses": "^7.11.1", "@electron-forge/plugin-vite": "^7.11.1", "@electron/fuses": "^1.8.0", "@eslint/js": "^9.39.2", "@formatjs/cli": "^6.14.0", "@hey-api/openapi-ts": "^0.93.0", "@modelcontextprotocol/sdk": "^1.27.0", "@playwright/test": "^1.58.2", "@tailwindcss/line-clamp": "^0.4.4", "@tailwindcss/typography": "^0.5.19", "@tailwindcss/vite": "^4.2.1", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", "@testing-library/user-event": "^14.6.1", "@types/cors": "^2.8.19", "@types/electron-squirrel-startup": "^1.0.2", "@types/express": "^5.0.6", "@types/lodash": "^4.17.24", "@types/node": "^25.5.0", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", "@types/react-syntax-highlighter": "^15.5.13", "@types/shell-quote": "^1.7.5", "@types/yauzl": "^2.10.3", "@typescript-eslint/eslint-plugin": "^8.56.1", "@typescript-eslint/parser": "^8.56.1", "@vitejs/plugin-react": "^5.1.4", "@vitest/coverage-v8": "^4.0.18", "@vitest/ui": "^4.0.18", "autoprefixer": "^10.4.24", "electron": "41.0.0", "electron-devtools-installer": "^4.0.0", "eslint": "^9.39.2", "eslint-plugin-react": "^7.37.5", "eslint-plugin-react-hooks": "^5.2.0", "husky": "^9.1.7", "jsdom": "^28.1.0", "knip": "^5.85.0", "lint-staged": "^16.2.7", "postcss": "^8.5.6", "prettier": "^3.8.1", "tailwindcss": "^4.2.1", "typescript": "~5.9.3", "vite": "^7.3.1", "vitest": "^4.0.18" }, "keywords": [], "license": "Apache-2.0", "lint-staged": { "src/**/*.{ts,tsx}": [ "bash -c 'pnpm run typecheck'", "eslint --fix --max-warnings 0 --no-warn-ignored", "prettier --write" ], "src/**/*.{css,json}": [ "prettier --write" ] } }