Skip to content

Python: Add ACGS to the Python community projects - #9618

Merged
Eduard van Valkenburg (eavanvalkenburg) merged 1 commit into
microsoft:mainfrom
dislovelhl:docs/community-agent-framework-acgs
Oct 23, 2026
Merged

Eduard van Valkenburg (eavanvalkenburg) merged 1 commit into
microsoft:mainfrom
dislovelhl:docs/community-agent-framework-acgs

Conversation

@dislovelhl

Copy link
Copy Markdown
Contributor

Motivation & Context

I maintain agent-framework-acgs (Apache-2.0, https://github.com/acgs-ai/agent-framework-acgs). This PR adds it to the Python catalog's Middleware section.

The integration is published for the Python SDK. agent-framework-acgs 0.1.0 is on PyPI (https://pypi.org/project/agent-framework-acgs/) and implements Agent Framework middleware:

  • ACGSFunctionMiddleware subclasses FunctionMiddleware. Before a function runs, it checks the call's name and arguments against rules from the open-source acgs-lite engine. A blocked call never reaches call_next: the reason becomes the call's result, so the model reads it.
  • When a rule calls for review, the middleware returns a function_approval_request, so the run pauses in the framework's tool approval flow (user_input_requests). The call is checked again when the approved call is replayed.
  • ACGSToolCheck subclasses ChatMiddleware and stops a run before the model is called if it offers tools the function middleware cannot check (hosted tools, declaration-only tools, additional_tools).

The row links to the repository, and issues go to https://github.com/acgs-ai/agent-framework-acgs/issues/new.

The package's own CI runs its tests on Python 3.10 to 3.14 against agent-framework-core 1.20.0 and 1.23.0, using a scripted chat client built on FunctionInvocationLayer and ChatMiddlewareLayer. To check it offline with no API key: pip install agent-framework-acgs, then run examples/quickstart.py from the repository. It blocks an email that leaks a password, runs a weather lookup, and pauses a refund for approval, then runs it once approved.

Description & Review Guide

  • What are the major changes? One row in the Middleware section of python/samples/community-projects.md, in alphabetical order above Tracekit.
  • What is the impact of these changes? Documentation only.
  • What do you want reviewers to focus on? The wording of the row. I'm happy to change it.

Related Issue

N/A - trivial change: one catalog row in the format the catalog criteria define, no code.

AI Assistance

  • No material AI assistance was used.
  • This is an AI-assisted contribution. I reviewed, understood, and verified all submitted content and accept responsibility for it.

AI assistance details: the catalog row and this description were drafted with AI assistance, and the package was built and tested with AI assistance; I reviewed it.

Contribution Checklist

  • The code builds clean without any errors or warnings
  • All unit tests pass, and I have added new tests where possible
  • The PR follows the Contribution Guidelines
  • This PR links to an agreed issue with no competing open PR, or the Related Issue section documents a trivial-change or repository-automation exception.
  • This is not a breaking change. If it is a breaking change, add the breaking change label (or add "[BREAKING]" to the title prefix, before or after any language prefix) — a workflow keeps the label and title prefix in sync automatically.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@agent-framework-automation agent-framework-automation Bot added documentation Usage: [Issues, PRs], Target: documentation in the code base and learn docs python Usage: [Issues, PRs], Target: Python labels Oct 23, 2026
@github-actions github-actions Bot changed the title Add ACGS to the Python community projects Python: Add ACGS to the Python community projects Oct 23, 2026
Merged via the queue into microsoft:main with commit c3b9f22 Oct 23, 2026
52 of 55 checks passed

This branch was successfully deployed

1 active deployment
github-app-auth — 21506921 Deployed Oct 23, 2026 by dislovelhl via team_check #7301
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Usage: [Issues, PRs], Target: documentation in the code base and learn docs python Usage: [Issues, PRs], Target: Python

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants