diff --git a/ROADMAP.md b/ROADMAP.md index 6ad5cf2..b4f7198 100644 --- a/ROADMAP.md +++ b/ROADMAP.md @@ -13,6 +13,8 @@ The development progress and future plans for PageAgent. - [x] **Remove ai-sdk** - Only one function is being used - [x] **Robust LLM output** - [x] **Working homepage with live LLM API** +- [x] **~~free~~ CDN** +- [x] **Free evaluation plan?** - [ ] **Hooks for Task and HITL** - [ ] **Hijacking `page_open` event** - [ ] **Custom knowledge base and instructions** @@ -20,8 +22,6 @@ The development progress and future plans for PageAgent. - [ ] **Data-masking** - [ ] **Custom actions** - [ ] **Optimize for popular UI frameworks** -- [ ] **Free evaluation plan?** -- [ ] **free CDN** - [ ] **Testing suits** - [ ] **Support custom llm fetch** - [ ] **Refactor: Separate Agent and Page-Controller** - Agent can run w/o dom diff --git a/pages/page.tsx b/pages/page.tsx index dbc3531..b1a4985 100644 --- a/pages/page.tsx +++ b/pages/page.tsx @@ -7,12 +7,12 @@ import { PageAgent } from '@/PageAgent.js' import Footer from './components/Footer' import Header from './components/Header' -const injection = encodeURI( - "javascript:(function(){var s=document.createElement('script');s.src=`https://dev.g.alicdn.com/dt/page-use.js/0.0.1/lib/page-agent.umd.cjs?t=${Math.random()}`;s.setAttribute('crossorigin', true);s.onload=()=>console.log('PageAgent ready!');document.head.appendChild(s);})();" -) +const DEMO_MODEL = 'PAGE-AGENT-FREE-TESTING-RANDOM' +const DEMO_BASE_URL = 'https://hwcxiuzfylggtcktqgij.supabase.co/functions/v1/llm-testing-proxy' +const DEMO_API_KEY = 'PAGE-AGENT-FREE-TESTING-RANDOM' -const injectionQwen = encodeURI( - "javascript:(function(){var s=document.createElement('script');s.src=`https://dev.g.alicdn.com/dt/page-use.js/0.0.1/lib/page-agent.umd.cjs?t=${Math.random()}&model=qwen-plus-latest`;s.setAttribute('crossorigin', true);s.onload=()=>console.log('PageAgent ready!');document.head.appendChild(s);})();" +const injection = encodeURI( + "javascript:(function(){var s=document.createElement('script');s.src=`https://hwcxiuzfylggtcktqgij.supabase.co/storage/v1/object/public/demo-public/v0.0.1/page-agent.js?t=${Math.random()}`;s.setAttribute('crossorigin', true);s.type=`text/javascript`;s.onload=()=>console.log('PageAgent script loaded!');document.body.appendChild(s);})();" ) const injectionA = ` @@ -20,19 +20,12 @@ const injectionA = ` href=${injection} class="inline-flex items-center text-xs px-3 py-2 bg-blue-500 text-white font-medium rounded-lg hover:shadow-md transform hover:scale-105 transition-all duration-200 cursor-move border-2 border-dashed border-green-300" draggable="true" + onclick="return false;" title="拖拽我到收藏夹栏" > ✨PageAgent -或 - - ✨PageAgent (Qwen) - + ` export default function HomePage() { @@ -58,9 +51,9 @@ export default function HomePage() { // testing server // @note: rate limit. prompt limit. - model: 'PAGE-AGENT-FREE-TESTING-RANDOM', - baseURL: 'https://hwcxiuzfylggtcktqgij.supabase.co/functions/v1/llm-testing-proxy', - apiKey: 'PAGE-AGENT-FREE-TESTING-RANDOM', + model: DEMO_MODEL, + baseURL: DEMO_BASE_URL, + apiKey: DEMO_API_KEY, }) window.pageAgent = pageAgent } @@ -190,17 +183,17 @@ export default function HomePage() { 步骤 2:{' '} 拖拽下面按钮到收藏夹栏

- {/*
*/} + > {/* Usage Instructions */}

步骤 3:{' '} - 在任何网页点击收藏夹中的按钮即可使用 + 在其他网站点击收藏夹中的按钮即可使用

@@ -213,7 +206,15 @@ export default function HomePage() { diff --git a/src/entry.ts b/src/entry.ts index 79a484b..9ea62da 100644 --- a/src/entry.ts +++ b/src/entry.ts @@ -12,18 +12,26 @@ if (window.pageAgent) { window.PageAgent = PageAgent // Export for ES module usage -export { PageAgent } +// export { PageAgent } console.log('🚀 page-agent.js loaded!') +const DEMO_MODEL = 'PAGE-AGENT-FREE-TESTING-RANDOM' +const DEMO_BASE_URL = 'https://hwcxiuzfylggtcktqgij.supabase.co/functions/v1/llm-testing-proxy' +const DEMO_API_KEY = 'PAGE-AGENT-FREE-TESTING-RANDOM' + const currentScript = document.currentScript as HTMLScriptElement | null if (currentScript) { + console.log('🚀 page-agent.js detected current script:', currentScript.src) const url = new URL(currentScript.src) - const model = url.searchParams.get('model') + const model = url.searchParams.get('model') || DEMO_MODEL + const baseURL = url.searchParams.get('baseURL') || DEMO_BASE_URL + const apiKey = url.searchParams.get('apiKey') || DEMO_API_KEY const language = (url.searchParams.get('lang') as 'zh-CN' | 'en-US') || 'zh-CN' - const config = { model, language } as PageAgentConfig + const config: PageAgentConfig = { model, baseURL, apiKey, language } window.pageAgent = new PageAgent(config) } else { + console.log('🚀 page-agent.js no current script detected, using default demo config') window.pageAgent = new PageAgent() }