October 2026 source updates

This refresh covers changes after v20260728 through OpenAF commit a5181af6. The local JAR identifies itself as 20261014 nightly; the committed version is 20261011 with a pending version bump. These pages document that source snapshot, without claiming a new stable release or historical compatibility for the new APIs. Check your installed version with openaf -c 'print(getVersion());'.

AI and MCP

  • Stateless LLM decisions add decide, rawDecide, decideWithStats, and getCapabilities to $llm/$gpt and ow.ai.gpt. Named choice, boolean, and ordinal score questions return validated results. Native and structured strategies have different probability capabilities; failed requests never cause an automatic provider or strategy fallback.
  • Native adapters include Ollama System One and explicit OpenAI, OpenRouter, and Microsoft Foundry contracts. Adapter records distinguish synthetic fixtures from live inference. Foundry System One requires decisionApi: "microsoft"; deployment names and endpoints remain caller configuration.
  • JSON Schema output now includes Gemini’s provider-specific schema hook. Provider wrappers describe transport and usage reporting. Anthropic prompt caching uses cache-control markers without the previous beta header.
  • Localhost OAuth2 supports PKCE browser callbacks, credential refresh, and protected token storage. $mcp persistence remains opt-in. The MCP reference adds stdio working-directory/environment controls and opt-in modern protocol negotiation with protocolVersion: "auto"; existing callers keep the legacy handshake default.

Queries, files, and interactive tools

  • $jq evaluates jq 1.6 syntax in the JVM, with variable binding and explicit zero/one/multiple-output handling. It collects results in memory and is independent of $path and $from.
  • $path now defaults to a Java engine, preserving OpenAF extension functions and custom callbacks. Set __flags.ALTERNATIVES.path = false to use the bundled JavaScript backend. Evaluation failures are propagated without retrying another backend.
  • joniRegExp provides reusable Oniguruma patterns, named captures, replacement, and splitting alongside existing regex helpers.
  • JSON extraction and independent-terminal prompts introduce io.scanJSON, io.copyJSONRange, io.extractJSON, and askConsole. Stream extraction has explicit ownership, cancellation, and partial-output semantics.
  • oafp decisions and interactive JSON exploration cover decision input/enrichment and loaded or file-backed browsing. See the refreshed oafp reference for the wider processing pipeline.

Authoring and operations

  • Follow From an OpenAF script to an oJob, then authoring recipes and testing and troubleshooting. Downloadable examples cover files, local HTTP, processes, bounded workers, scheduling, and cleanup.
  • The oJob reference clarifies argument sharing, interpolation, built-in jobs, language processes, and -exportcode/-importcode. Inspection commands load dependencies and are not plain YAML parsers.
  • Python integration documents subprocess/fork behavior, exception propagation, Python argv, and bidirectional bridge lifecycle. Updated reference signatures retain earlier calling forms.
  • JSON Schema validation covers draft selection, references, schema generation, and migration from bundled Ajv v6. $ helpers cover synchronization, process handling, and cleanup. Updated concurrency references document timeouts and worker options.
  • Instrumentation is opt-in: loading the module alone enables no capture. Providers can collect spans, logs, and metrics through bounded channels or forwarding.
  • Console and CLI documentation covers JLine-backed interaction and terminal sizing with piped input. CDS repacking validates archives before replacement and provides coverage fallbacks. JavaScript compilation handles large scripts with generated shards while preserving the existing loading interfaces.

The API refresh also covers channel destruction, server locks, ANSI width helpers, DB statement options, ZIP resource cleanup, and offline help/Markdown docstrings. Start from the reference navigation for exact signatures.

Verification boundaries

Examples requiring provider accounts, model downloads, optional oPacks, a real interactive terminal, or platform-specific behavior require their own environment. Source contracts and local fixture checks do not establish live provider access, Windows behavior, or production deployment results.


This site uses Just the Docs, a documentation theme for Jekyll.