Agent governance, put into practice

Give your AI agents boundaries.

Decide what business agents can do. See what coding agents actually do. Bring policies, human review and decision evidence together with DriftGard.

Your agents. Your tools.Your rules.
DriftGard Refund agentINTERACTIVE EXAMPLE

One tool. Clear boundaries.

Try an amount ↓
PROPOSED TOOL CALLNot executed
issue_refund
Agent
refund_agent_01
Amount
AUD 250.00
Currency
AUD
Agent proposesDriftGard evaluatesApp enforces
Within authority.ALLOW

AUD 250 is below the AUD 500 automatic limit. The application may execute this refund.

Policy: refund_demo · v1Decision evidence recorded

Your agent proposes. DriftGard evaluates.
Your application enforces.

Illustrative policy. Local simulation only. No refund is executed.

Fits the tools your team
already builds with.

LangChainCrewAIStrandsPythonNode.jsREST API
Authority before action

A useful agent can still take the wrong action.
Give every consequential action an explicit decision.

Two ways to start

Built around what
your agents do.

Two starting points. One place to manage policies and investigate decisions. Start with the workflow you need to govern.

01 / BUSINESS AGENTSBefore execution

Set the limits.
Keep people in control.

For agents that approve payments, assign contractors, update records, send data externally or call other business tools.

  • Define who can call each tool, with which values.
  • Stop calls that violate your policy.
  • Route eligible exceptions for human approval.
Explore business-agent control
02 / CODING AGENTSObserve & investigate

See the activity.
Understand the risk.

For engineering teams using coding assistants across repositories and development workspaces.

  • Collect supported coding-agent activity.
  • Evaluate captured actions against your policy.
  • Investigate findings with the recorded context.
Explore coding-agent monitoring
Business agents / Runtime control

A tool call is a decision.
Make it accountable.

Manage the rules beyond your application code. Define agent permissions, version policies, review eligible exceptions and investigate decisions in one place. Your application keeps a consistent check before each tool runs.

  1. 01

    Give each agent explicit authority

    Set allowed tools, agent identities, required fields and parameter limits in a versioned Control Pack.

  2. 02

    Make exceptions a human decision

    Hold eligible calls for approval. Keep invalid identities and parameters blocked. Choose what happens on timeout.

  3. 03

    Know why the decision happened

    Inspect the proposed call, matched rules, policy version and final review outcome.

Bring a business workflow

The refund agent’s authority

EXAMPLE POLICY

ALLOWED TOOL

issue_refund
AUD 0.01–499.99Within automatic authority
ALLOW
AUD 500–749.99Outside automatic authority
BLOCK
AUD 750 or moreEligible for a manager exception
REVIEW

Wrong agents, invalid currencies and unlisted tools stay blocked—even when the amount qualifies for review.

Example thresholds, not a prescribed refund policy. You define the rules.

ENGINEERING / AGENT ACTIVITYOBSERVATION MODE
$ driftgard-agent-observer
↳ Multiple workspaces. One project.
/work/backend/work/frontend
Read project files

Workspace: /work/frontend

Recorded
Run a terminal command

Finding: destructive command pattern

Investigate
Review a tool response

Finding: potential secret exposure

Investigate
Captured activity → Policy findings → Investigation

Illustrative activity. A finding does not mean an action was prevented.

Coding agents / Visibility first

Your coding agent
moves fast.
Stay in the picture.

Connect the local observer to supported coding-agent sessions. Review captured tool calls and policy findings across the workspaces your team uses.

  1. 01

    Connect your development workspaces

    Map multiple folders to one DriftGard project and use a Software Development Control Pack.

  2. 02

    Go from finding to context

    Investigate recorded activity by agent, developer, tool and workspace. See the policy evidence behind each finding.

  3. 03

    Keep observation honest

    The passive observer evaluates recorded activity. It does not interrupt commands or wait for human approval.

Start with your coding agents

Codex · Claude Code · Cursor · Kiro · GitHub Copilot
Capture coverage depends on the host and local session format.

From setup to useful evidence

One agent.
A clear place to start.

Guided setup brings the configuration, connection and verification steps into your agent’s workspace.

01 — DEFINE

Choose your agent

Select business or coding. Add its identity and tools, or the workspaces you want to monitor.

02 — CONFIGURE

Make the rules yours

Define your rules in a versioned Control Pack. Test expected allow, block and review-threshold outcomes before activating a policy version.

03 — CONNECT

Send your first event

Create a project key. Connect your application or observer and verify captured activity.

04 — OPERATE

Investigate and improve

Review activity, handle eligible approvals and use the evidence to refine your controls.

Evidence you can follow

The decision.
The reason.
The record.

Follow the proposed action from the original policy decision through any human review to the final authorization. Keep the reason for an exception alongside the rule that first blocked it.

Agent & toolPolicy versionMatched rulesReview outcome

An allowed decision authorizes an action; it does not confirm execution. Confirming what happened requires evidence from your connected application. Use audit history, integrity checks and exports to support investigations.

See the evidence workflow
Product component preview with fictional data, captured September 2026. Click to enlarge. Interface may vary.
Keep your stack

Your agents keep running.
Your rules join the flow.

Connect at the tool boundary for business agents, or collect supported local activity with the coding observer.

Application & framework integrations

Evaluate proposed tool calls through the Python or Node.js SDK, a framework adapter, or the REST API.

LangChainCrewAIStrands
LangChain: Python & Node.js. CrewAI and Strands: Python. Your integration applies the returned decision.

Local coding-agent observer

Run the observer on your development machine. Map folders to projects and send captured activity for policy evaluation.

CodexClaude CodeCursorKiroCopilot
Observation is retrospective. Submitted content is sent to DriftGard; redaction and retention depend on configuration.

A check before the tool runs.

Keep your agent and tools. Add a policy decision at the execution boundary.

def guarded_refund(parameters, issue_refund):
    result = dg.evaluate(
        project_id=os.environ["DRIFTGARD_PROJECT_ID"],
        model_id="agent-runtime", eval_mode="tool_call",
        agent_id="refund_agent_01", agent_role="refund_agent",
        tool_call={"tool_name": "issue_refund",
                   "parameters": parameters},
    )
    if result.get("evaluation", {}).get("allowed") is not True:
        raise RuntimeError("Refund not authorized")
    return issue_refund(**parameters)
Installation & client setup
# pip install driftgard
import os
from driftgard import Driftgard

dg = Driftgard(
    api_key=os.environ["DRIFTGARD_API_KEY"],
    failure_mode="closed", timeout=90, max_retries=0,
)

Server-side example. Set your project ID and API key in the environment, activate matching identity and tool rules, and pass your proposed parameters and existing refund function. Live approval requires separate configuration; this example allows 90 seconds for a 60-second review window. Unavailable checks fail closed, and exceptions stop execution. Never expose the key in browser code.

A few useful answers

Know what you’re
putting in place.

Talk to the team
Can we keep our existing agent framework?

Yes. Connect the proposed tool call to DriftGard through an SDK, a supported framework adapter or the REST API. Keep the authorization check in the application’s execution path so the tool only runs after an allowed decision.

How much latency does a policy check add?

Measure it with your own policies, traffic and deployment. Network time and enabled checks affect response time; human review deliberately holds eligible requests. During a trial, measure typical and slow-request latency, test failures, and align application and proxy timeouts with your approval window.

Does DriftGard run or replace our agents?

No. Your agent chooses what to do; your application still runs the tools. DriftGard evaluates the connected calls against policy. The integration must enforce the final decision before executing a tool.

How do blocking and human approval work?

A connected business-agent application sends the proposed call to DriftGard before execution. Policy can allow or block it. A blocked call that meets your live-review criteria can be held for a reviewer. Excluded categories remain blocked, and your timeout setting determines what happens if nobody responds.

Does the coding observer stop risky commands?

The passive observer reads recorded activity and evaluates it. A blocked policy result in this mode does not mean the command was stopped. Preventing execution requires a supported inline integration that checks and enforces the decision before the action runs.

What data leaves our environment?

Hosted evaluation receives the content your integration submits. The coding observer can submit captured content, with secret redaction enabled in the setup example. Redaction is not a guarantee that all sensitive data is removed. SDK local evaluation offers a different data path for supported checks. We will confirm the data flow and retention settings for your workflow.

Can we start with one agent? What does it cost?

Yes. Start with one business workflow or a set of coding workspaces. We agree trial scope, duration, evaluation volume, retention, support and pricing before activation. Tell us what you want to connect.

What happens when a policy check is unavailable?

Failure handling depends on your integration and configuration. For a workflow that must not proceed without authorization, use fail-closed handling and test API failures, timeouts and malformed responses before rollout.

Does an allowed decision prove successful execution?

No. Authorization, execution and business outcome are different events. A decision record shows what DriftGard evaluated and decided. Execution confirmation requires evidence from the connected application. Policy checks and audit evidence also do not, by themselves, certify regulatory compliance.

Start with the agent
you need to trust.

Bring one workflow, one tool or one coding workspace.
We’ll help you put the right controls and evidence around it.

Let’s map it out
Decision evidence in DriftGard
DriftGard evaluation-detail component with fictional refund-policy evidence.

Product component preview, September 2026. Fictional demonstration data, not a live customer workflow.