From 66a7978582ae1f20150d173d171fc68a615258b3 Mon Sep 17 00:00:00 2001 From: Advait Paliwal Date: Fri, 17 Apr 2026 21:44:31 -0700 Subject: [PATCH] Require multiple search terms in deepresearch --- package-lock.json | 4 ++-- package.json | 2 +- prompts/deepresearch.md | 2 ++ tests/content-policy.test.ts | 3 +++ 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2b17c05..04223d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@companion-ai/feynman", - "version": "0.2.33", + "version": "0.2.34", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@companion-ai/feynman", - "version": "0.2.33", + "version": "0.2.34", "hasInstallScript": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index 37c46e5..a1d4f1c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@companion-ai/feynman", - "version": "0.2.33", + "version": "0.2.34", "description": "Research-first CLI agent built on Pi and alphaXiv", "license": "MIT", "type": "module", diff --git a/prompts/deepresearch.md b/prompts/deepresearch.md index 2619ef8..77f4a96 100644 --- a/prompts/deepresearch.md +++ b/prompts/deepresearch.md @@ -59,6 +59,8 @@ Avoid crash-prone PDF parsing in this workflow. Do not call `alpha_get_paper` an If direct search was chosen: - Skip researcher spawning entirely. - Search and fetch sources yourself. +- Use multiple search terms/angles before drafting. Minimum: 3 distinct queries for direct-mode research, covering definition/history, mechanism/formula, and current usage/comparison when relevant. +- Record the exact search terms used in `-research-direct.md`. - Write notes to `-research-direct.md`. - Continue to synthesis. diff --git a/tests/content-policy.test.ts b/tests/content-policy.test.ts index 431bf22..57575ff 100644 --- a/tests/content-policy.test.ts +++ b/tests/content-policy.test.ts @@ -92,6 +92,9 @@ test("deepresearch keeps subagent tool calls small and skips subagents for narro assert.match(deepResearchPrompt, /MUST NOT spawn researcher subagents/i); assert.match(deepResearchPrompt, /Do not inflate a simple explainer into a multi-agent survey/i); assert.match(deepResearchPrompt, /Skip researcher spawning entirely/i); + assert.match(deepResearchPrompt, /Use multiple search terms\/angles before drafting/i); + assert.match(deepResearchPrompt, /Minimum: 3 distinct queries/i); + assert.match(deepResearchPrompt, /Record the exact search terms used/i); assert.match(deepResearchPrompt, /-research-direct\.md/i); assert.match(deepResearchPrompt, /Do not call `alpha_get_paper`/i); assert.match(deepResearchPrompt, /do not fetch `\.pdf` URLs/i);