google / google/adk-python-community

Add SidClaw Governance Service integration

Ouverte
#113 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Python
Étoiles
182
Forks
75
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

## Summary

Add a governance service integration for Google ADK agents using [SidClaw](https://sidclaw.com) — policy evaluation, human-in-the-loop approval, and tamper-proof audit trails for tool calls.

## Background

This was invited by @rohityan in [google/adk-python#5081](https://github.com/google/adk-python/pull/5081):

> "Hi @VladUZH, Closing this PR here as it belongs to adk-python-community repo. We highly recommend releasing the feature as a standalone package that we will then share through: https://google.github.io/adk-docs/integrations/"

## What It Does

The `SidClawGovernanceService` integrates with ADK's `before_tool_callback` and `after_tool_callback` hooks:

1. **Before tool execution** — evaluates the action against SidClaw policies (allow / deny / require approval)
2. **After tool execution** — records the outcome in SidClaw's hash-chain audit trail

## Implementation

- New module: `src/google/adk_community/governance/`
- Uses the `sidclaw` PyPI package (Apache 2.0, published)
- Async-only (matches ADK callback pattern)
- Configurable per-tool data classifications and approval behavior
- Fail-closed by default when SidClaw is unreachable
- Comprehensive unit tests (20 test cases)

## CLA

Already signed — see [google/adk-python#5081](https://github.com/google/adk-python/pull/5081).

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Commencez dans src/google/adk_community/governance/ et examinez les points d’intégration before_tool_callback et after_tool_callback de l’ADK. Utilisez le package sidclaw pour couvrir les décisions de politique, les approbations et l’enregistrement des audits, puis vérifiez les classifications configurables, le comportement fail-closed et les 20 cas de tests unitaires indiqués.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
python
Domaine
authorization, security
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
Calme
Clarté
Plutôt claire
Accessibilité débutants
58/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.