diff --git a/packages/extension/src/entrypoints/sidepanel/components/ConfigPanel.tsx b/packages/extension/src/entrypoints/sidepanel/components/ConfigPanel.tsx
index 59ad54c..22b4aaa 100644
--- a/packages/extension/src/entrypoints/sidepanel/components/ConfigPanel.tsx
+++ b/packages/extension/src/entrypoints/sidepanel/components/ConfigPanel.tsx
@@ -7,9 +7,8 @@ import { DEMO_API_KEY, DEMO_BASE_URL, DEMO_MODEL } from '@/agent/constants'
import { Button } from '@/components/ui/button'
import { Input } from '@/components/ui/input'
-import extPkg from '../../../../package.json'
-
-const CORE_VERSION = extPkg.dependencies['@page-agent/core']
+declare const __EXT_VERSION__: string
+declare const __CORE_VERSION__: string
interface ConfigPanelProps {
config: LLMConfig | null
@@ -220,10 +219,10 @@ export function ConfigPanel({ config, onSave, onClose }: ConfigPanelProps) {
- Extension v{extPkg.version}
+ Extension v{__EXT_VERSION__}
- PageAgent v{CORE_VERSION}
+ PageAgent v{__CORE_VERSION__}
diff --git a/packages/extension/wxt.config.js b/packages/extension/wxt.config.js
index 9c9b592..0184277 100644
--- a/packages/extension/wxt.config.js
+++ b/packages/extension/wxt.config.js
@@ -1,10 +1,12 @@
import tailwindcss from '@tailwindcss/vite'
-import { mkdirSync } from 'node:fs'
+import { mkdirSync, readFileSync } from 'node:fs'
import { defineConfig } from 'wxt'
const chromeProfile = '.wxt/chrome-data'
mkdirSync(chromeProfile, { recursive: true })
+const pkg = JSON.parse(readFileSync('./package.json', 'utf-8'))
+
// See https://wxt.dev/api/config.html
export default defineConfig({
srcDir: 'src',
@@ -16,6 +18,10 @@ export default defineConfig({
},
vite: () => ({
plugins: [tailwindcss()],
+ define: {
+ __EXT_VERSION__: JSON.stringify(pkg.version),
+ __CORE_VERSION__: JSON.stringify(pkg.dependencies['@page-agent/core']),
+ },
optimizeDeps: {
force: true,
},