diff --git a/packages/core/src/PageAgentCore.ts b/packages/core/src/PageAgentCore.ts index 2077544..583da8f 100644 --- a/packages/core/src/PageAgentCore.ts +++ b/packages/core/src/PageAgentCore.ts @@ -413,6 +413,10 @@ export class PageAgentCore extends EventTarget { * Get system prompt, dynamically replace language settings based on configured language */ #getSystemPrompt(): string { + if (this.config.customSystemPrompt) { + return this.config.customSystemPrompt + } + let systemPrompt = SYSTEM_PROMPT const targetLanguage = this.config.language === 'zh-CN' ? '中文' : 'English' diff --git a/packages/core/src/config/index.ts b/packages/core/src/config/index.ts index 9c75267..9db66b1 100644 --- a/packages/core/src/config/index.ts +++ b/packages/core/src/config/index.ts @@ -141,6 +141,12 @@ export interface AgentConfig { * } */ transformPageContent?: (content: string) => Promise | string + + /** + * Completely override the default system prompt. + * @experimental Use with caution - incorrect prompts may break agent behavior. + */ + customSystemPrompt?: string } export type PageAgentConfig = LLMConfig & AgentConfig & PageControllerConfig