Skip to content

FrontAgent v2.2.0

Latest

Choose a tag to compare

@ceilf6 ceilf6 released this 30 Jul 14:34
· 167 commits to develop since this release
db42301

FrontAgent v2.2.0

FrontAgent v2.2.0 is a minor release after v2.1.1. It ships the new Electron desktop client, headless non-interactive CLI mode, session resume, lifecycle hooks, declarative permission rules, context zone budgets, the @frontagent/mcp-web-fetch adapter, a reproducible SDD ablation evaluation framework, and a set of correctness and security fixes across the CLI entry path, the hallucination guard, and the LLM provider layer.

Highlights

  • New Electron desktop client with a typed IPC contract, Task Console + Settings UI, accessibility semantics, and multi-platform zip archives attached to GitHub Releases.
  • Headless non-interactive CLI mode with a validated JSON output contract exposing artifacts and security denials.
  • Session resume with schema-validated session records and cross-step file context hydration.
  • Lifecycle hooks with explicit project-hook opt-in and hardened hook plumbing.
  • Declarative permission rules and context zone budgets on the core execution path.
  • Reproducible SDD ablation benchmark: frozen 30-task set, two-arm orchestrator, machine-checkable acceptance, published negative findings with reproduction guide.
  • Global fa bin invocations work again (symlinked entry-path fix), and hallucinationGuard.checks is genuinely honored on the executor path without weakening the project-root security boundary.

Added

  • Desktop client: typed IPC contract + execution reducer, Task Console and Settings renderer (React + Vite), main-process runtime bridge + settings store, IPC-failure degraded states, ARIA live regions and navigation semantics, electron-builder packaging publishing multi-platform zips to GitHub Releases, and desktop documentation.
  • Headless CLI: --output validation, artifacts and security denials in the JSON payload, stdout interception during JSON runs, top-level error classification.
  • Session resume: full step schema, order-independent resume unlock, cross-step file context hydration, session records validated on load.
  • Lifecycle hooks: explicit opt-in for project hooks, per-tool outcome observation in postToolUse, log-callback failure isolation.
  • Permissions: declarative permission rules; in-session derived allow rules with literal-wildcard escaping; bare tool rules never derived from always-allow approvals.
  • Context: zone budgets with guaranteed postconditions and a single compaction summary; AGENTS.md project instructions with byte-capped reads.
  • MCP: @frontagent/mcp-web-fetch adapter package wired into the agent registry and planner.
  • Prompts: external-knowledge, security-engineering, and code-minimalism disciplines in codegen/planner; security review dimension in the code-quality sub-agent.
  • Evaluation: frozen 30-task ablation set, typecheck-clean fixture project, two-arm orchestrator with resume, acceptance check runner, results report and reproduction guide.
  • Docs: verifiable npm downloads counter with daily refresh.

Fixed

  • CLI entry: global bin symlinks (fa via npm/pnpm/homebrew) no longer exit silently; the direct-entry guard resolves the symlinked argv path. (#396)
  • Hallucination guard: hallucinationGuard.checks is honored by validateFilePath / validateCode on the executor path; project-root containment remains enforced when fileExistence is disabled. (#386)
  • LLM provider: AI SDK migrated to the v5 line (clears GHSA-rwvc-j5jr-mgvh); OpenAI provider pinned to Chat Completions for OpenAI-compatible base URLs.
  • Planner: web_fetch actions preserved in generated plans.
  • Agent: dependency recovery uses the project package manager.
  • Desktop: default-workspace setting takes effect; telemetry auto-scroll only at bottom; no demo content in TaskComposer; settings saves announced to assistive tech.
  • Runtime: session ids constrained to the sessions dir with atomic writes; real taskId on failed taskComplete hooks; win32 process-tree kill.
  • Workflow gates: workflow-rules test accepts the vars-based self-hosted Repo Guard runner. (#397)

Changed

  • CI: Repo Guard on a self-hosted Claude Code engine with allowlisted fork actors under pull_request_target; catch-all CODEOWNERS; OpenRouter provider order passthrough.
  • Dependencies: ts-morph ^28; AI SDK v5 line.

Known Issues

  • hallucinationGuard.enabled is still dead config on the agent path; only checks is consulted. Tracked in #400.

Verification

  • pnpm quality:precommit (lint, typecheck, workspace tests, workflow rules) green at release.
  • CLI symlink invocation verified against the packaged bundle (fa --version via a bin symlink).

Compatibility

  • CLI package version: frontagent@2.2.0.
  • VS Code extension version: frontagent@2.2.0.
  • Node.js requirement: >=20.0.0.
  • VS Code requirement: ^1.120.0.