Skip to content

Releases: companion-inc/feynman

v0.3.5

Choose a tag to compare

@github-actions github-actions released this 29 Jun 01:43

v0.3.5 - 2026-06-28

Pi Runtime

  • Refreshed the bundled Pi runtime from 0.79.10 to 0.80.2 across all four packages (pi-coding-agent, pi-agent-core, pi-ai, pi-tui). This restores the @earendil-works/pi-ai/compat entrypoint and loader aliases used by optional packages such as pi-web-access, fixing the extension-load failure reported in #183.
  • Feynman's package installer now derives legacy @mariozechner/* alias versions from the current canonical @earendil-works/* runtime packages first, so stale legacy package roots cannot seed old Pi peer versions during feynman update.
  • Updated the Pi TUI patcher for the current upstream overflow-check layout so overwide rendered lines are clipped instead of crashing the session renderer.

Validation

  • Added regression coverage for the current Pi TUI overflow block, the @earendil-works/pi-ai/compat release-note boundary, and legacy Pi alias derivation from current runtime metadata.
  • Rebuilt and inspected the vendored runtime workspace so the packaged archive includes Pi 0.80.2, @earendil-works/pi-ai/dist/compat.js, and the current/legacy /compat extension-loader aliases.

v0.3.4

Choose a tag to compare

@github-actions github-actions released this 23 Jun 12:46

v0.3.4 - 2026-06-12

Research

  • Added feynman paper <id-or-title> for single-paper access resolution. It writes Markdown and JSON access reports, records legal candidates from OpenAlex, DOI, PMID/PMCID, arXiv/alphaXiv, and Europe PMC, and can fetch source-specific text with --fetch-full-text while keeping raw full-text bodies out of artifacts.
  • Added feynman rank <topic>, the first PaperRank workflow. It fetches OpenAlex paper metadata, ranks candidates for read-first triage with transparent scores for topical fit, citation influence, graph prestige, citation velocity, methodology evidence, and reproducibility evidence, then writes auditable artifacts under outputs/.
  • PaperRank's core user job is read-order triage: answer "what should I read first, and why?" with a ranked brief, per-paper score audit, JSONL data, local citation/field structure, and provenance.
  • Added research-loop artifacts that stay tied to that job: a ranked brief, score audit, JSONL score/data, rank-sensitivity checks, local citation graph/explorer, field map, and provenance by default. Optional flags add citation-neighborhood expansion, source-specific full-text enrichment, research critique, empirical preference calibration templates, reproduction-evidence ledgers/templates/replication plans, or bounded model synthesis.
  • PaperRank does not claim completed replication or peer review. It keeps raw full-text bodies out of generated artifacts, records model-selection provenance for synthesis, and labels uncalibrated or missing evidence explicitly.

Model Catalog

  • Fixed research model selection so recommended/default model paths, stale settings, model lists, and explicit CLI overrides reject Pro-class model IDs and keep OpenAI-only installs on the newest available non-Pro GPT model exposed by Pi. Updated LiteLLM setup fallback and setup/configuration docs to avoid GPT-4-era, stale, and premium-tier defaults.
  • Added model-selection provenance to PaperRank synthesis so normal CLI output, JSON output, generated synthesis Markdown, and rank provenance name the actual model and whether it came from the current recommendation path or an explicit override.

AlphaXiv

  • Hardened shell-based alphaXiv access through feynman alpha ... so Feynman uses its bundled patched alphaXiv client instead of stale global alpha or feynman binaries inside agent bash sessions.

Pi Runtime

  • Refreshed the bundled Pi runtime from 0.79.1 to 0.79.10 across all four packages (pi-coding-agent, pi-agent-core, pi-ai, pi-tui) and aligned Feynman's packaged fallback/runtime-peer seeding to the same version, so clean installs and bundled runtime rebuilds no longer lag behind the latest published Pi patch line. This inherits Pi's compaction-event context, safer exact-version update flow, nested-repo find fix, and OpenAI-compatible reasoning_details streaming fix.
  • Updated the production dependency overrides for hono, protobufjs, undici, and ws so npm audit --omit=dev is clean after the Pi refresh.
  • Fixed session rename crashes when long slash-workflow names overflowed the custom header. Header workflow names are now clipped to their column in both wide and narrow layouts before descriptions are rendered.
  • Removed the old generative-ui, ui, and all-extras optional package/update targets. Optional packages now stay one-by-one and research-continuity focused.

Website

  • Updated the website's in-range stale package set (@tailwindcss/vite, tailwindcss, lucide-react, and eslint) after the dependency freshness sweep.

Validation

  • Re-ran the full local validation sweep after the version refresh: tests, typecheck, build, package dry-run, CLI version smoke, production audits, and website build.

v0.3.3

Choose a tag to compare

@github-actions github-actions released this 12 Jun 04:05

v0.3.3 - 2026-06-12

Windows

  • Fixed the remaining Windows subagent launch failure where Pi loaded pi-subagents from its own <agentDir>/npm/node_modules package root. The 0.3.2 fix patched Feynman's bundled workspace and npm-global copy, but Pi 0.79 can self-install configured packages under the active agent directory after FEYNMAN_HOME is set; that fresh copy was still unpatched and could spawn Feynman's wrapper with --mode in the main-module slot.

Validation

  • Added regression coverage for both Feynman's user npm-global package root and Pi's agent-local npm package root, so launch-time patching now checks the exact Windows copy that failed in e2e run 27392984208.

v0.3.2

Choose a tag to compare

@github-actions github-actions released this 12 Jun 03:31

v0.3.2 - 2026-06-11

Subagents

  • Fixed subagent launches failing with userDir is not defined. Upstream pi-subagents moved its directory handling behind getAgentDir() (which natively honors PI_CODING_AGENT_DIR), so Feynman's launch-time patch partially applied — rewriting usages whose declarations no longer matched. The patcher now applies grouped edits transactionally (a usage rewrite only lands with its paired declaration), repairs already-broken installs in place, and stops rewriting what upstream now handles itself.
  • Fixed the persistent Windows Cannot find module '...\--mode' subagent failure (#172) at its true root: Pi resolves user-scope packages from Feynman's pinned npm prefix (~/.feynman/npm-global/lib/node_modules). When that copy is a real directory instead of a link into the bundled workspace — junction-creation fallback or a feynman update reinstall — it was never patched, so unpatched spawn code executed regardless of the fixes shipped in 0.2.59–0.3.1. That package root is now a first-class patch target in both launch-time patchers.

Validation

  • The end-to-end workflow's subagent smoke now requires the child's actual relayed output (RESULT=PONG), not just the parent's completion marker — earlier passes could be vacuous when the tool call failed and the model narrated past it. Verified by driving the interactive TUI in conversation on a clean Linux machine.

v0.3.1

Choose a tag to compare

@github-actions github-actions released this 12 Jun 02:42

v0.3.1 - 2026-06-11

Windows

  • Fixed a recurrence of subagent launches failing with Cannot find module '...\--mode' (#172). When FEYNMAN_PI_CLI_PATH is missing or unusable inside the subagent-spawning process, the Pi CLI resolver could fall through to re-selecting Feynman's wrapper without the Pi main-module argument. The resolver now derives the real Pi CLI from the wrapper's own launch arguments, and the wrapper self-heals the environment variable for its children, so the spawn no longer depends on env propagation at all.

Validation

  • Regression tests cover fresh and previously-patched resolver shapes, double-application idempotency, and the wrapper's env self-heal; verified by the multi-OS end-to-end workflow including the Windows subagent smoke.

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 11 Jun 22:26

v0.3.0 - 2026-06-11

Pi Runtime 0.79 (breaking: Node floor)

  • Upgraded the Pi runtime from 0.74.2 to 0.79.1 across all four packages (pi-coding-agent, pi-agent-core, pi-ai, pi-tui). Highlights inherited from Pi 0.75–0.79: project trust prompts for .pi resources (headless runs default to untrusted, so nothing blocks), --session-id / --exclude-tools / --approve CLI flags, supply-chain-hardened publishes with shrinkwrapped exact deps, new built-in models (Claude Fable 5 with adaptive thinking, Claude Opus 4.8, MiniMax-M3, NVIDIA NIM providers), and IME cursor fixes.
  • Supported Node is now 22.19.0 through 25.x (Pi 0.79 requires ≥22.19; Node 20 reached end-of-life in April 2026). The installer-bundled runtime is unaffected; npm installs on Node 20/21 keep working on the 0.2.x line.
  • Updated the OAuth login flow for Pi's new device-code and selector callbacks, and rebuilt the editor render patch for pi-tui's Unicode rework — including a guard that leaves the editor untouched on unknown future layouts instead of producing a broken render.
  • Model recommendations now surface the newest catalog entries (Claude Opus 4.8 on OpenCode Zen, MiniMax-M3).

Removed

  • Deleted the npm --legacy-peer-deps runtime patch — Pi 0.79 ships that behavior upstream.
  • Dropped the unused dotenv dependency; undici and @earendil-works/pi-agent-core/pi-tui are now declared directly instead of relying on transitive resolution.

Validation

  • 192 tests, typecheck, build, and pack on Node 22/24/25; live smokes on Pi 0.79.1 for alpha search (10 results), parallel web_search with includeContent, subagent launches, and direct render-harness checks of the patched editor (placeholder, text, narrow, unfocused). The end-to-end install workflow now also covers Node 22.

v0.2.61

Choose a tag to compare

@github-actions github-actions released this 11 Jun 21:44

v0.2.61 - 2026-06-11

Windows

  • Fixed bundled-package setup failing on every launch (#177, #170). Two root causes found by running the published package on real Windows runners: GNU tar (Git for Windows) treats the workspace archive's absolute C:\... path as a remote host spec ("Cannot connect ... resolve failed"), and the npm fallback spawned bare npm without a shell, which Windows rejects with EINVAL. The archive now extracts with relative paths, and npm is invoked through npm-cli.js with the running Node executable.

Runtime Reliability

  • The bundled workspace's alpha-hub copy now receives the same launch-time patches as the package-local copy, so the #167 search fix applies regardless of which copy resolves.

Validation

  • The multi-OS end-to-end workflow now verifies install, update, patch application, and live model + subagent smokes on Windows, Linux, and macOS at Node 24 and 25.

v0.2.60

Choose a tag to compare

@github-actions github-actions released this 11 Jun 21:25

v0.2.60 - 2026-06-11

Node Support

  • Feynman now supports Node.js 25 (#177). The full test suite and live CLI flows (launch, update, alpha search, parallel web search) were validated on Node 20, 24, and 25; the supported range is now 20.19.0 through 25.x.

Runtime Reliability

  • Fixed the cryptic Cannot convert argument to a ByteString because the character at index N has a value of M crash (#171). It fires when a custom provider in models.json has a header value or API key containing characters above U+00FF (e.g. Chinese text) — HTTP headers cannot carry them. Feynman now reports exactly which provider and header is at fault and how to fix it, instead of an unattributed undici error.

Validation

  • Added a multi-OS end-to-end install workflow that exercises the published package on Windows, Linux, and macOS runners (Node 24 and 25): global install, version/update/package flows, launch-time patch assertions for the subagent spawn (#172) and structured search parser (#167) fixes, plus live model and subagent smokes.

v0.2.59

Choose a tag to compare

@github-actions github-actions released this 11 Jun 20:03

v0.2.59 - 2026-06-11

Research Tools

  • Fixed alpha_search returning empty results in every mode (#167). alphaXiv search tools now return structured JSON instead of the old numbered-text format; the result parser understands both, so semantic/keyword/both/agentic/all searches return real papers again.

Runtime Reliability

  • Fixed parallel web_search calls hanging the session forever (#169). A parallel call could silently clobber a sibling's pending curator session, leaving its promise unresolved and blocking every toolResult in the batch; the loser is now cancelled cleanly. Each search query is also bounded by a 90s deadline that surfaces as a per-query error instead of an indefinite "Working" state, and a curator page that never connects times out after 2 minutes instead of waiting forever.
  • Relaunching feynman now continues your most recent session instead of starting from scratch (#168). --new-session, one-shot prompts, and RPC/JSON launches still start fresh.

Windows

  • Fixed subagent launches failing with Cannot find module '...\--mode' (#172). The runtime patch that points pi-subagents at Feynman's Pi CLI now applies to the package's current src/ layout.
  • Fixed feynman update failing with spawn EINVAL (#170). Package installs now invoke npm through npm-cli.js with the running Node executable instead of spawning npm.cmd.

Updates

  • Installing a new Feynman release on an unsupported (too new) Node version no longer aborts the install and silently pins you to the old version (#177). The version gate still refuses to run and explains what to install, but the package itself updates so the fix is in place once you switch Node versions.
  • feynman update now tells you when a newer Feynman CLI release exists and prints the exact upgrade command for your install type (npm or standalone).

Validation

  • Added regression coverage for the structured alphaXiv search parser, the web_search hang patches, and the self-update notice. Verified live: all five alpha_search modes return results, and two parallel web_search calls with includeContent: true complete with toolResults.

v0.2.58

Choose a tag to compare

@github-actions github-actions released this 17 May 00:53

v0.2.58 - 2026-05-16

Optional Packages

  • Added a hindsight optional preset that installs @luxusai/pi-hindsight, giving users a first-class path to Hindsight-backed long-term memory without adding it to the default install.
  • Added hindsight and pi-hindsight update aliases so feynman update hindsight resolves to the same package source.
  • Updated the package-stack and setup docs to show Hindsight as an optional memory surface and note that it requires a Hindsight server or Hindsight Cloud account.

Validation

  • Added regression coverage for the new optional preset, all-extras expansion, and update aliases.