Releases: Companion-Inc/feynman
Releases · Companion-Inc/feynman
Release list
v0.5.26
v0.5.26 - 2026-10-05
- GitHub Copilot users get a research model by default. Copilot names Claude models with dots (
claude-opus-5.5), which Feynman did not recognize, so a new Copilot login fell back to alphabetical order and setclaude-haiku-4.5as the default; Copilot then rejected it with "The requested model is not supported" for several users. Feynman now picks Copilot's newest Claude Opus, then Sonnet, then GPT. Iffeynman statusshowsgithub-copilot/claude-haiku-4.5and you did not choose it, runfeynman model setto pick another. alpha_ask_paperanswers with the arXiv metadata and abstract, marked as a fallback, when alphaXiv does not answer (for example after the login expires), likealpha_searchandalpha_get_paperalready did.-pis short for--prompt, as in Pi.--setup,--list-models,--new,feynman setup model, andfeynman model <provider/model>now say which command was meant.- pi-web-access 0.36.0:
web_searchaccepts lists that a model sent as a JSON string (nicobailon/pi-web-access#491),fetch_contentasks docs sites for markdown first, Brave prepaid keys keep working, and afetch_contentcall whose only URL failed is reported as an error.
v0.5.25
v0.5.25 - 2026-10-05
- Pi 1.0.2 and pi-subagents 0.76.0. Pi now uses the patched brace-expansion 5.0.12 (GHSA-q2hr-2g5m-vwhr, GHSA-qhr7-859c-m2p7, GHSA-6j4f-fj2g-mc7p), so Feynman's npm audit has no exceptions left, and an npm install pulls about 120 fewer packages. Pi also retries "model at capacity" errors instead of ending the turn, and Sign in with ChatGPT reports a busy callback port instead of "OAuth state mismatch". pi-subagents frees async slots held by abandoned workflows.
- A timed-out paper search no longer ends a research step. A Semantic Scholar or OpenAlex topic search that hits the 25 s timeout is answered from the other index, and other sources say which one did not respond instead of "This operation was aborted".
- arXiv batch versions. Looking up a bare arXiv ID alongside an older version now returns the latest version for the bare ID regardless of feed order. An unavailable explicit version is reported in
not_foundinstead of resolving to a different version. Thanks to Kunyanli230 (#322).
v0.5.24
v0.5.24 - 2026-10-03
- Pi 1.0. Feynman now runs on Pi 1.0.0, with pi-subagents 0.75.0 (background subagents start on Pi 1.0) and pi-btw 0.7.1 (allows Pi 1.x). The terminal UI is fullscreen by default and keeps its own scrollback; run
feynman --tui-mode regular, or set"tuiMode": "regular"in~/.feynman/agent/settings.json, to use the terminal's normal scrollback. Launch warnings show inside the fullscreen UI. Pi 1.0 also adds MCP OAuth hardening, a copy-code Anthropic login for headless machines, and lower codemode token use.
v0.5.23
v0.5.23 - 2026-10-02
- arXiv and PubMed rate limits. arXiv asks for one request every three seconds, and parallel lookups got
429; arXiv requests now run at that pace and a 429 is retried once. A PubMed429, which a subagent in another process or a shared IP can still trigger, is retried once after a pause. - Running several subagents at once from any workflow no longer fails with "workflow: true requires exactly one ```js workflow fenced block": Feynman now always writes the workflow script to a file and runs it by path, as
/deepresearchalready did. - Pi 1.0 is not in this release: pi-subagents 0.74.0 cannot start background subagents on it. The fix is merged upstream (nicobailon/pi-subagents#2634) and Feynman will move to Pi 1.0 once it is released.
v0.5.22
v0.5.22 - 2026-10-01
- Launch warnings and the first-run telemetry notice show inside the session. Feynman printed them to the terminal just before starting Pi, where Pi 1.0's fullscreen interface (coming in a later Feynman release) hides them for the whole session. They now appear in Pi's own interface: the Windows "No Bash found" warning, the small-local-model warning for research workflows, and the one-time telemetry disclosure. A one-shot
--promptrun still prints them to stderr. feynman doctorreports Pi's newquietStartup: "header"setting as "header only" instead of "disabled".
v0.5.21
v0.5.21 - 2026-10-01
- LiteLLM and custom providers that read their key from an environment variable work again. Since Pi 0.99,
models.jsonresolves an environment variable only when written as$NAME; a bare name is sent as the key itself. Feynman's LiteLLM setup wroteLITELLM_MASTER_KEY, so requests went out asAuthorization: Bearer LITELLM_MASTER_KEYand the proxy rejected them, and custom providers set up with a variable name broke the same way. Feynman now writes$NAME, and on start rewrites anyapiKeyinmodels.jsonthat is a bare all-caps variable name, such asLITELLM_MASTER_KEY, to$LITELLM_MASTER_KEY. Literal keys, placeholders such aslocal, and!commandvalues are left alone.
v0.5.20
v0.5.20 - 2026-10-01
- Settings saved by Windows Notepad or PowerShell no longer stop Feynman. Both can save UTF-8 with a byte-order mark, which JSON parsing rejects, so Feynman refused to start with "Invalid Feynman settings ... expected a JSON object", and other commands read the file as empty. Feynman now ignores the mark in
settings.json,auth.json, andweb-search.json, as Pi does. A settings file with a real JSON error now names the error, for example a trailing comma, instead of the generic message.
v0.5.19
v0.5.19 - 2026-10-01
- Word drafts open without LibreOffice.
document_parseneeds LibreOffice for.docxfiles, which most machines lack, so reviewing a thesis or draft in Word format failed. When LibreOffice is missing, Feynman now reads the document's paragraph text directly from the.docxand says so; install LibreOffice for page layout, tables, footnotes, and images. feynman_science_database_searchaccepts the"null"some models send for an omittedsortorlimit, which failed validation before the search ran.- Pi 0.99.2 (faster prompt submission in long sessions; saved default models with extension providers load reliably), pi-subagents 0.74.0, and pi-btw 0.7.0. pi-subagents now ships the patched undici 8.10.2, so the undici security exceptions and Feynman's own undici pin are gone. It removed the
workflowScriptparameter;/deepresearchand/summarizenow write the workflow script tooutputs/.plans/<slug>-workflow.jsand run it by path. Its other new form, an inline```js workflowblock, failed in testing when Claude put the block in its hidden reasoning, while a script file worked with every model, and the file stays next to the plan as a record of the run. Subagent children also follow the project's trust setting, and/reloadno longer stops running background workflows. - Security: Pi 0.99.2 still locks brace-expansion 5.0.9; the exception for it stays until Pi ships 5.0.12.
v0.5.18
v0.5.18 - 2026-09-30
- A rate-limited paper index no longer ends a research step. When Semantic Scholar is rate-limited or down, a search is answered from OpenAlex, and an OpenAlex topic search that hits OpenAlex's anonymous rate limit or an outage is answered from Semantic Scholar. The result says first which index answered and why. Lookups by OpenAlex ID, DOI, author, venue, or citation still report the error, since the other index has no equivalent.
- alphaXiv tools answer when alphaXiv cannot. If your alphaXiv login expired or alphaXiv does not respond,
alpha_searchreturns OpenAlex semantic search results andalpha_get_paperreturns the arXiv metadata and abstract for an arXiv ID, each marked as a fallback. Runfeynman alpha loginto get alphaXiv's reports back. - pi-web-access 0.35.0: OpenAI web search works when you signed in with ChatGPT (
feynman model login openai), and Brave search keeps to its rate limits. The researcher is told to pass a search provider as a plain string, since some models sentprovider: "[\"parallel-mcp\"]", whichweb_searchrejects; nicobailon/pi-web-access#491 makesweb_searchaccept that form too.
v0.5.17
v0.5.17 - 2026-09-30
feynman model login openaiworks again. Since Pi 0.99, Sign in with ChatGPT needs a stable ID for the installation, which Feynman did not pass, so the login failed at once with "requires a device ID (UUID)". Feynman now shares thedeviceIdPi's own/loginkeeps in~/.feynman/agent/settings.json.- Windows finds per-user Git Bash. Pi looks for Git Bash only under Program Files and on PATH, but a per-user Git for Windows install puts only
Git\cmdon PATH, so shell commands failed with "No bash shell found" (about one in five Windows installs that run tools). Feynman now finds that Git Bash and gives it to Pi. When there is no Bash at all, Feynman says so before the session starts, andfeynman doctorreports thebashit found. - Pressing Enter at the "paste the authorization code / redirect URL" login prompt no longer ends the login with "Missing authorization code"; Feynman asks again, and finishing in the browser still works.
- API keys are now masked as you paste them during setup, and a key with non-ASCII characters (for example typed with a non-Latin keyboard layout) is rejected with an explanation instead of failing every request with "Cannot convert argument to a ByteString".
- A rejected
SEMANTIC_SCHOLAR_API_KEYnow says so instead ofrequest failed: 403 Forbidden.