Farming 2.2.5
Farming v2.2.5
This release continues the Farming Code polish after v2.2.2, focused on project/file navigation stability, mobile reading/composer details, terminal behavior, agent launch settings, and the public README.
Compared with v2.2.2, Farming Code now keeps Open Editors visible while the file tree is scrolled or auto-revealed, adds a capped Open Editors list for larger review sessions, improves mobile Markdown reading and compact sidebar labeling, tightens terminal and shell state handling, and updates the README screenshot and feature summary to match the current product.
Highlights
- Open Editors stays usable while browsing Files: Open Editors now keeps up to seven rows visible and scrolls internally after that, so file-tree reveal operations do not push it out of view.
- File navigation is closer to VS Code: file-tree reveal now accounts for project rows, agent rows, Open Editors, Files headers, and sticky folder context before scrolling.
- Project Files review is easier to scan: the sidebar includes lightweight Changes, Open Editors, file search, previews, diff, and blame in one project-scoped flow.
- Mobile reading wastes less space: Markdown preview mode on phones now removes the extra bottom padding used by composer surfaces, leaving more room for the document itself.
- Narrow sidebars keep the brand readable: the footer product label falls back from
Farming CodetoFarmingwhen the available width is too small. - Terminal and shell state are steadier: shell environment resolution, terminal busy state, prompt handling, active-state detection, and terminal link behavior were tightened.
- Agent launch controls are clearer: provider-specific Codex / Claude controls only surface options Farming can pass through to the underlying CLI.
- README is current again: the main workspace screenshot was replaced and the user-facing feature list now mentions Open Editors, Changes, provider controls, preview support, and usage/context signals.
Fixes
- Fixed Open Editors disappearing when a deep file-tree row was selected or auto-revealed.
- Fixed Open Editors overflowing long lists instead of keeping a bounded internal scroll area.
- Fixed file reveal calculations that treated the whole project sidebar as visible even when sticky project/file sections covered the top.
- Fixed excessive blank space below Markdown previews on mobile reading screens.
- Fixed the footer product label truncating as
Farming C...in narrow sidebars. - Fixed several terminal state edge cases around shell activity, prompt preservation, and link targets.
- Fixed workspace/file interaction details around changes, preview, diff, tabs, and keyboard navigation.
- Fixed README drift from the current Farming Code interface.
Features and Improvements
- Added a seven-row Open Editors cap with internal scrolling and active-editor reveal.
- Added Playwright coverage for large Open Editors lists plus deep file reveal.
- Added mobile Playwright coverage for Markdown reading bottom spacing and composer recording state.
- Added sidebar coverage for the compact
Farmingfooter label. - Updated Project Files sticky context behavior to include Open Editors in the visible file-tree boundary.
- Improved Code workspace desktop and mobile shell behavior from the post-
v2.2.2polishing commits. - Updated the README and README.zh_cn feature summaries.
- Replaced the README workspace screenshot with the current Farming Code view.
Change Map
src/components/files/OpenEditorsSection.tsx,src/components/files/ProjectFilesSection.tsx,src/components/files/useWorkspaceFileFocus.ts,src/components/files/useWorkspaceFileStickyContext.ts,src/styles/main.css: Open Editors visibility, sizing, and file reveal behavior.tests/e2e/display-flows.spec.ts,backend/tests/test-project-files-section.js: focused coverage for Open Editors and project file layout.src/components/CodeWorkspace.tsx,src/components/code/*,src/components/files/*,src/lib/workspace-*: accumulated Farming Code workspace, mobile layout, and Project Files polish.tests/e2e/additional-user-scenarios.spec.ts,tests/e2e/iphone-mobile-layout.spec.ts: compact footer label and mobile Markdown reading coverage.backend/agent-env.js,backend/agent-manager.js,backend/*session-engine*.js,backend/shell-busy-integration.js,backend/terminal-status.js: agent environment, terminal state, and native PTY lifecycle improvements.README.md,README.zh_cn.md,docs/products/code/assets/01-code-workspace.png: public README refresh.
Notes
- GitHub Release notes for this version come from
release-notes/v2.2.5.md. - The package version, Git tag
v2.2.5, and release note filename must stay aligned. - No manual configuration migration is expected.
- Existing
~/.farming/.session-tokenand~/.farming/settings.jsonshould continue to be reused across upgrades. - No intentional production dependency, native PTY asset, runtime file, or install script removal is part of this release.
- macOS CLI artifacts are still ad-hoc signed in this release. Depending on local security settings, the first run may require a manual allow step before the packaged smoke or normal launch succeeds. Developer ID signing and notarization remain follow-up release hardening work.
Install / Upgrade
Download the matching asset from GitHub Releases:
| Platform | Asset |
|---|---|
| macOS Apple Silicon | farming_2.2.5_darwin_arm64 |
| macOS Intel | farming_2.2.5_darwin_amd64 |
| Linux x64 | farming_2.2.5_linux_amd64 or farming-2.2.5.tar.gz |
| Linux ARM64 | farming_2.2.5_linux_arm64 |
On older Linux hosts that need the bundled Node modules and glibc runtime, prefer the app bundle tarball: farming-2.2.5.tar.gz.
On macOS, if the downloaded CLI is blocked on first launch, allow it once in the system security prompt/settings, then rerun the command.