@companion-ai/feynman 0.5.47 → 0.5.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/.env.example CHANGED
@@ -37,6 +37,9 @@ RUNPOD_API_KEY=
37
37
  MODAL_TOKEN_ID=
38
38
  MODAL_TOKEN_SECRET=
39
39
 
40
+ # Raises OpenAlex rate limits and unlocks usage stats. Free key from https://openalex.org/settings/api
41
+ OPENALEX_API_KEY=
42
+
40
43
  # Raises the NCBI E-utilities limit from 3 to 10 requests/sec.
41
44
  NCBI_API_KEY=
42
45
  # Optional minimum delay between NCBI request starts (500ms anonymous, 125ms keyed).
package/RELEASES.md CHANGED
@@ -6,6 +6,23 @@ GitHub release notes are generated from the matching `## vX.Y.Z` section in this
6
6
 
7
7
  ## Unreleased
8
8
 
9
+ ## v0.5.49 - 2026-10-17
10
+
11
+ - **pi-subagents 0.79.0.**
12
+ - Forked research subagents reuse the parent's prompt cache, and `/subagent-cost` reports no longer ride along in every later request, so parallel runs cost fewer tokens.
13
+ - When a provider stops a subagent with an error such as a content-filter refusal, the error now includes the provider's reply, so a refusal can be told apart from an outage.
14
+ - `subagent` stays available after an update or `/reload` mid-session.
15
+ - **pi-web-access 0.42.0.** DeepSeek's Search API is available as a search provider: `feynman search set deepseek <key>`. It bills each search, so `auto` never picks it.
16
+ - `.env.example` lists `OPENALEX_API_KEY`, which raises the OpenAlex rate limit for long literature runs (thanks @fanfyh).
17
+
18
+ ## v0.5.48 - 2026-10-16
19
+
20
+ - **Pi 1.3.0.**
21
+ - Tool calls whose arguments contain a backslash sequence like `\usepackage` no longer lose fields, which mattered for LaTeX in drafts and papers.
22
+ - Gateway errors such as "Unable to forward upstream stream" and "service is temporarily unavailable" are retried instead of ending the turn.
23
+ - Anthropic requests no longer fail with a 400 when a failed tool result contains images.
24
+ - A tool call with malformed arguments now fails instead of running with partial ones.
25
+
9
26
  ## v0.5.47 - 2026-10-15
10
27
 
11
28
  - **pi-web-access 0.41.0.** Sites that turn away AI fetchers can be read by setting your own User-Agent: add `"fetchContent": { "userAgent": "..." }` to `~/.feynman/agent/web-search.json`. A SearXNG instance on your own machine now works without opening every local service to page fetches.
@@ -8,7 +8,7 @@ export const PI_WEB_SEARCH_PROVIDERS = [
8
8
  "auto", "all", "openai", "brave", "parallel", "parallel-mcp", "tinyfish", "search1api", "searchinfinity", "querit",
9
9
  "tavily", "you", "firecrawl", "jina", "searxng", "degoog", "duckduckgo", "perplexity", "gemini", "kimi", "exa",
10
10
  "serpdive", "kagi", "ollama", "anysearch", "xai", "mistral", "brightdata", "serpbase", "serpapi", "serper", "serply",
11
- "valyu", "bocha", "xcrawl", "baizhi", "zai", "keenable", "ceramic",
11
+ "valyu", "bocha", "xcrawl", "baizhi", "zai", "keenable", "ceramic", "deepseek",
12
12
  ];
13
13
  // The web-search.json field holding a provider's key (searxng takes its base URL);
14
14
  // undefined for providers with nothing to set.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@companion-ai/feynman",
3
- "version": "0.5.47",
3
+ "version": "0.5.49",
4
4
  "description": "The open source AI research agent.",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -79,20 +79,20 @@
79
79
  "dependencies": {
80
80
  "@clack/prompts": "^1.8.1",
81
81
  "@companion-ai/alpha-hub": "0.1.7",
82
- "@earendil-works/pi-codemode": "1.2.0",
83
- "@earendil-works/pi-mcp": "1.2.0",
84
- "@earendil-works/pi-telemetry": "1.2.0",
82
+ "@earendil-works/pi-codemode": "1.3.0",
83
+ "@earendil-works/pi-mcp": "1.3.0",
84
+ "@earendil-works/pi-telemetry": "1.3.0",
85
85
  "fast-xml-parser": "5.11.2",
86
86
  "pi-btw": "0.8.0",
87
87
  "pi-docparser": "4.0.0",
88
- "pi-subagents": "0.78.0",
89
- "pi-web-access": "0.41.0",
88
+ "pi-subagents": "0.79.0",
89
+ "pi-web-access": "0.42.0",
90
90
  "posthog-node": "^5.53.0"
91
91
  },
92
92
  "peerDependencies": {
93
- "@earendil-works/pi-agent-core": "1.2.0",
94
- "@earendil-works/pi-ai": "1.2.0",
95
- "@earendil-works/pi-coding-agent": "1.2.0",
93
+ "@earendil-works/pi-agent-core": "1.3.0",
94
+ "@earendil-works/pi-ai": "1.3.0",
95
+ "@earendil-works/pi-coding-agent": "1.3.0",
96
96
  "@earendil-works/pi-tui": "*",
97
97
  "typebox": "*"
98
98
  },