google / google/adk-python-community

Integration proposal: HOL Guard pre-tool security plugin

Ouverte
#178 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

## Context

`google/adk-python#6886` was closed with an explicit redirect here because the core ADK repository does not plan to support third-party tools directly.

I’m proposing a small community plugin for HOL Guard in this repository’s existing `src/google/adk_community/plugins` surface, rather than a core ADK change.

## Proposed integration

A `HolGuardPlugin(BasePlugin)` would use ADK’s existing `before_tool_callback` boundary for command-bearing tools on supported local execution paths.

The intended contract is deliberately fail-closed:

- inspect the validated tool name/arguments with HOL Guard before downstream execution;
- proceed only for an explicitly benign HOL Guard result;
- review/risky/unknown/error paths short-circuit before the protected tool executes;
- allow paths delegate exactly once;
- no Guard Cloud dependency is required for the local enforcement path.

The implementation would stay scoped to tools whose arguments can be represented as a command/action HOL Guard actually understands. It would not claim interception of unrelated hosted/control-plane operations.

## Validation

If maintainers are comfortable with this placement, I’d include focused unit tests covering:

- deny/review/error -> zero downstream executions;
- allow -> exactly one downstream execution;
- unsupported/non-command tools -> explicit, documented behavior;
- a small reproducible E2E example using the ADK runner/plugin path.

I did not find an existing HOL Guard issue or PR in this repository. Per `CONTRIBUTING.md`, I’m opening the issue first and will wait for maintainer direction before implementing.

Affiliation: I’m contributing on behalf of Hashgraph Online / HOL Guard.

Guide de contribution

Ouvrir le guide de contribution

Piste de recherche

Start by reading CONTRIBUTING.md and the existing plugins under src/google/adk_community/plugins, then trace ADK’s before_tool_callback and runner/plugin path. The proposal is ready for maintainer direction rather than implementation; completion would require an approved scope, focused unit tests for deny/review/error and allow behavior, documented unsupported-tool behavior, and a small reproducible E2E example.

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

Évaluation

Stack technique
python
Domaine
security, tooling
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
Active
Clarté
Plutôt claire
Accessibilité débutants
35/100

Recevez les nouvelles issues par e-mail

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