Download Latest Version apfel-1.0.1-arm64-macos.tar.gz (5.4 MB)
Email in envelope

Get an email when there's a new version of apfel

Home / v0.9.17
Name Modified Size InfoDownloads / Week
Parent folder
apfel-0.9.17-arm64-macos.tar.gz 2026-04-12 5.4 MB
README.md 2026-04-12 1.5 kB
v0.9.17 source code.tar.gz 2026-04-12 1.2 MB
v0.9.17 source code.zip 2026-04-12 1.3 MB
Totals: 4 Items   7.9 MB 0

What's new

OpenAPI conformance tests

8 new integration tests that validate apfel's HTTP responses against the official OpenAI API spec (vendored from openai/openai-openapi). Uses openapi-core for runtime schema validation — no manual schema maintenance. Covers: non-streaming completions, streaming chunks, models list, tool-call responses, error responses, and JSON mode.

Fixed: missing nullable fields in API responses

The conformance tests immediately caught 3 spec-required fields apfel was omitting:

  • choices[].logprobs: null — OpenAI spec requires it even when not populated
  • message.refusal: null — OpenAI spec requires it in all assistant messages
  • message.content: null — OpenAI spec requires it even in tool-call responses where content is absent

These fields are now always emitted as null via custom Swift encode(to:) implementations that call encodeNil explicitly (Swift's synthesized Encodable omits nil optionals by default).

README: "The free AI already on your Mac."

The HN-winning, landing-page-proven framing is now the canonical opener in the README, the GitHub repo description, and CLAUDE.md. Also restored the full Demos section, rich MCP walkthrough, and OpenAI API compatibility table that were lost in the previous slim pass. New "The apfel tree" section listing the full ecosystem. #agentswelcome badge with probot logo.

Stats

  • 362 unit + 216 integration = 578 tests, all green
  • 0 regressions
Source: README.md, updated 2026-04-12