skills: Google ADK JS + Python Strands Agents Guard - #55
Conversation
Until-published adapters on one skills branch. Google ADK uses guardPlugin + googleAdkContext only (no guardTool). Python Strands uses guard_tool + guard_hooks + strands_agent_context. ADAPTER_SHA placeholders; no merge SHA pins yet. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Until-published install uses arcjet[strands-agents] at a630806169b92757192f3f5cce2e305827b26567. Floor is strands-agents>=1.11.0,<2. Google ADK stays ADAPTER_SHA. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Until-published install uses @arcjet/guard at 41ef36816e7174f1b0288d28217e63fa14114307. Surfaces stay guardPlugin + googleAdkContext only. Python Strands pin unchanged. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Point Python Strands teaching at examples/fastapi-strands-agents-guard (main-tree URL). The example pins unpublished arcjet[strands-agents] at a6308061. Google ADK pin stays 41ef3681. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Point the Google ADK skill at examples/google-adk-agent (main-tree URL). Example branch david/cursor/google-adk-agent-guardrails @ 312cb80c; vendor pin 41ef3681. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
There was a problem hiding this comment.
Arcjet Review — 🔴 High Risk
Decision: Cannot Assess
Rationale: Review failed due to an internal error: unknown error. Escalating to human reviewers.
Review: b4f461cd | Powered by Arcjet Review
There was a problem hiding this comment.
Arcjet Review — 🟢 Low Risk
Decision: Approved
Rationale: Documentation-only change to the arcjet skill files (SKILL.md and two reference markdown files). Adds teaching for the JS Google ADK Guard adapter (@arcjet/guard/google-adk/v2) and Python Strands Agents Guard (arcjet.guard.strands_agents), with pinned git SHAs while both are until-published. No code, no secrets, no infra, no dependency manifests, no auth logic. The changes are internally consistent — SHA pins, package versions, docs URLs, and example references are cross-referenced correctly across the three files. Previous review failed for an internal error unrelated to the diff; the current diff is a straightforward docs addition.
Summary of Changes
Adds skill teaching for two until-published Arcjet Guard adapters: JS Google ADK (@arcjet/guard/google-adk/v2, pinned to SHA 41ef3681) and Python Strands Agents (arcjet.guard.strands_agents via arcjet[strands-agents], pinned to SHA a6308061). Updates SKILL.md bullet list of framework wrappers, the JS references file with a new section, denial-envelope table row and integrations table row, and the Python references file with a new guard_tool + guard_hooks section plus framework-helpers table row and gotchas.
Review: d5b845d3 | Model: anthropic/claude-opus-4-7 | Powered by Arcjet Review
Confirm arcjet[strands-agents] exists at a6308061 (unlike CrewAI). Say "any of them" now that LangChain, CrewAI, and Strands are listed. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Keep CMA teaching and fold in Google ADK JS + Python Strands from #55. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
… Python OpenAI Agents) (#57) * skills: unpublished Guard adapters (TanStack, JS Strands, Python CAS, Python OpenAI Agents) Fold remaining unpublished Guard teaching onto main: TanStack AI JS, JS Strands Agents, Python Claude Agent SDK, and Python OpenAI Agents. Leave CMA (#56) and client IP (#54) on their own PRs. Do not retread #55 (Google ADK JS + Python Strands). Co-authored-by: David Mytton <davidmytton@users.noreply.github.com> * docs(arcjet): split Python pin banner and wrapper helper list Address review nits: teaching pins as a scanable list (like JS) and a nested pick-the-helper list in SKILL.md instead of one long sentence. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com> --------- Co-authored-by: Cursor Agent <cursoragent@cursor.com> Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Rebase CMA teaching onto main after #55, #54, and #57. Keep hosted Claude Managed Agents wrappers (JS + Python) without dropping TanStack AI, JS Strands, Python Claude Agent SDK, Python OpenAI Agents, Google ADK, Python Strands, or client-IP provenance. No plugin vendoring. Co-authored-by: David Mytton <davidmytton@users.noreply.github.com>
Teach both until-published Guard adapters on one skills branch.
@arcjet/guard/google-adk/v2):guardPlugin+googleAdkContextonly (noguardTool). Pin@arcjet/guardto41ef36816e7174f1b0288d28217e63fa14114307. Peer@google/adk>=2 <3. Docs/guards/google-adk/. Example:examples/google-adk-agent(example commit312cb80c; pins41ef3681; no verify fixture).arcjet[strands-agents]→arcjet.guard.strands_agents):guard_tool+guard_hooks+strands_agent_context. Pinarcjettoa630806169b92757192f3f5cce2e305827b26567. Floorstrands-agents>=1.11.0,<2. Docs/guards/strands-agents-py/. Example:examples/fastapi-strands-agents-guard(example commitb132a510; pinsa6308061; no verify fixture).Does not overwrite JS Strands teaching (
@arcjet/guard/strands-agents/v1). Does not include TanStack AI, Python Claude Agent SDK, or plugin vendoring.