google / google/adk-python-community
Add SidClaw Governance Service integration
- Dominant language
- Python
- Stars
- 184
- Forks
- 76
- PR merge metrics
- No merged PRs in 30d
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).
Contributor guide
Research direction
Start in src/google/adk_community/governance/ and review the ADK before_tool_callback and after_tool_callback integration points. Use the sidclaw package to cover policy decisions, approvals, and audit recording, then verify the configurable classifications, fail-closed behavior, and the 20 stated unit-test cases.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- authorization, security
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 58/100