DEV Community

Indu Das
Indu Das

Posted on

FreshCtx 0.7.0: One freshness boundary across Agno, LangGraph, and OpenAI Agents

AI agents can make a sound decision from information that was accurate when read, then execute after that information has changed.

That is not primarily a model-quality problem. It is an action-boundary problem.

FreshCtx 0.7.0 is now available on PyPI. This release adds a native integration for custom function tools in the OpenAI Agents SDK, alongside the existing Agno and LangGraph integrations.

What the OpenAI Agents SDK integration does

FreshCtx runs as an input guardrail immediately before a custom function tool executes.

The application declares the evidence that influenced the agent's decision. At the action boundary, FreshCtx checks that evidence again.

  • If the evidence is still current, the tool can run.
  • If it has changed, the action is stopped.
  • If the evidence cannot be verified under a blocking policy, the action is also stopped.
  • The SDK receives its native input-tool tripwire instead of a FreshCtx-specific exception.
  • Tool name and call ID can be recorded for audit evidence, while raw tool arguments are not persisted by FreshCtx.

This keeps the decision boundary explicit: FreshCtx does not decide whether the reasoning is correct. It checks whether the declared evidence is still valid when the application is about to act.

Why this release matters

FreshCtx now demonstrates the same invariant across three different agent runtimes:

  • Agno
  • LangGraph
  • OpenAI Agents SDK

The framework changes. The model changes. The tool system changes.

The freshness boundary does not.

That is the architectural point of the project. FreshCtx is not trying to become another workflow engine. It provides a small, framework-neutral control that applications can place immediately before consequential actions.

Install

python -m pip install 'freshctx[openai-agents]==0.7.0'
Enter fullscreen mode Exit fullscreen mode

The package and integration were verified through protected CI across Python 3.10 through 3.13, package validation, and a clean installation from public PyPI.

A bounded example

Consider an agent that reads a subscription record, decides to grant access, and then calls a function tool.

Between reasoning and execution, the subscription status changes.

Without an action-boundary check, the tool may still grant access based on the old state. With FreshCtx, the declared subscription dependency is revalidated immediately before the tool body runs. If it changed, the tripwire fires and the action does not execute.

The same pattern applies to:

  • inventory and pricing changes
  • approvals that have been revoked or replaced
  • files and database records that changed mid-workflow
  • tool outputs that are no longer current
  • research sources that moved after a claim was prepared

Deliberate scope

The 0.7.0 integration covers custom function tools in the OpenAI Agents SDK. Hosted tools, built-in execution tools, handoffs, and Agent.as_tool() are not presented as covered by this release.

That boundary is intentional. A reliability control should state exactly where it runs and what it protects.

Try one concrete test

If you use the OpenAI Agents SDK, change one declared dependency after the agent reasons but before a consequential function tool executes. Then check whether the stop happens at the point your workflow expects.

FreshCtx is open source and Apache-2.0 licensed.

Top comments (0)