google / google/adk-python-community
Add SidClaw Governance Service integration
- Lenguaje dominante
- Python
- Estrellas
- 182
- Forks
- 75
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Descripción
## 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).
Guía de contribución
Línea de trabajo
Comienza en src/google/adk_community/governance/ y revisa los puntos de integración before_tool_callback y after_tool_callback de ADK. Usa el paquete sidclaw para cubrir las decisiones de políticas, las aprobaciones y el registro de auditorías; después, verifica las clasificaciones configurables, el comportamiento fail-closed y los 20 casos de pruebas unitarias indicados.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- authorization, security
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Tranquilo
- Claridad
- Bastante claro
- Aptitud para principiantes
- 58/100