Download the PHP package promptphp/intercept-support without Composer

On this page you can find all versions of the php package promptphp/intercept-support. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package intercept-support

promptphp/intercept-support

This package offers shared support utilities and configuration for the Intercept AI Agent middleware collection. It is used internally by Intercept middleware packages.

Most users do not need to install or use this package directly. It is installed automatically when required by an Intercept middleware package.

What this package provides

intercept-support provides shared infrastructure used across the Intercept ecosystem:

Installation

You usually do not need to install this package directly.

It is installed automatically when installing an Intercept middleware package:

If needed, it can be installed directly:

Publishing the config

Intercept uses one shared configuration file:

You may publish it with:

Publishing config is optional. Every Intercept middleware package has internal defaults and will continue to work even if its config section is missing.

Configuration

The published config file contains global defaults for Intercept middleware.

Example:

Each middleware resolves configuration in this order:

This means users can define global defaults in config/intercept.php, but still override behaviour per agent when creating a middleware instance.

Reading middleware config

Middleware packages should use InterceptConfig::middleware() to read their config safely.

The helper merges the published config section with the middleware's internal defaults.

If the section is missing, the defaults are returned.

Missing config sections

Missing config sections are safe.

For example, if a user publishes config/intercept.php while only using Injection Guard, and later installs PII Redactor, the existing config file may not contain a pii_redactor section.

That is fine. PII Redactor will still work using its internal defaults.

Users only need to add a middleware section to config/intercept.php when they want to customise its global behaviour.

Scanning tool approval decisions

When an agent pauses for tool approval and is resumed with Decisions, the prompt text is empty. The only new content is what a human supplied while resolving the pending tool calls, and it reaches the AI provider unscanned unless a middleware inspects it.

The ScansApprovalDecisions concern extracts that content:

The SDK applies approval decisions before the first step of the resumed run, so no step middleware sees them first. InterceptServiceProvider registers a listener on the SDK PromptingAgent and StreamingAgent events. The listener calls inspectApprovalDecisions() on each agent middleware that implements InspectsApprovalDecisions, before any approved or edited tool call executes. Throw from that method to stop the run.

The first step of a resumed run ends with the tool results that the decisions produced. resumedApprovalSegments($step) extracts the rejection text and the edited arguments from that step. Use it as a second check. ApprovalDecisionLedger::wasInspected($step->invocationId) tells you whether the listener already inspected the run.

The InspectsPendingSteps concern reads the step: startsNewTurn(), resumesFromApproval(), latestUserMessage(), mapUserMessages(), and stepLogContext().

Each segment is an ApprovalDecisionSegment carrying the tool call ID, a dot path to the value, and the scannable text. Edited tool arguments are flattened recursively, so a nested value is reported as arguments.filters.contact.email. Rejection results are reported as result.

Approved decisions carry no operator input and yield nothing.

The same concern extracts the other end of the approval cycle, the tool calls the model proposed before any human resolved them:

Resumed prompts cannot be rewritten, because a paused turn must replay verbatim against the provider that recorded it. Middleware can block or log on this path, but not modify.

Service provider

This package registers the shared Intercept service provider:

The provider:

Laravel package auto-discovery should register this provider automatically.

For middleware package authors

Each Intercept middleware package should:

Example:

This keeps the Intercept ecosystem consistent while allowing each middleware package to remain independently installable.

License

MIT


All versions of intercept-support with dependencies

PHP Build Version
Package Version
Requires php Version ^8.3
illuminate/support Version ^12.0|^13.0
laravel/ai Version ^1.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package promptphp/intercept-support contains the following files

Loading the files please wait ...