Official agent skill

Setup Local Guards

by grafana in grafana/agento11y

Help choose, configure, and test local agento11y guard packs for coding-agent tool calls.

OfficialApache-2.0Auto-check: notesDevOps & Cloud

Install Setup Local Guards

skills CLI
$ npx skills add grafana/agento11y --skill setup-local-guards -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install grafana/agento11y setup-local-guards --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/grafana/agento11y.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/agento11y/internal/skills/content/setup-local-guards .claude/skills/setup-local-guards && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
setup-local-guards
GitHub stars
127
Token cost
~2.6k tokens
SKILL.md length
1,396 words
Files
1
Skills in repo
4
Repo updated
First seen
Licence
Apache-2.0

At a glance

Help choose, configure, and test local agento11y guard packs for coding-agent tool calls.

  • Works in 5 steps: Inspect the installation → Help the user choose → Apply approved changes → …
  • The user asks to enable safety packs
  • SKILL.md covers Safety rules, 1. Inspect the installation, 2. Help the user choose and 3. Apply approved changes, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Setup Local Guards is an agent skill from grafana/agento11y, published by the product's own GitHub organization. Help choose, configure, and test local agento11y guard packs for coding-agent tool calls. Use when the user asks to enable safety packs, protect .env files, block dangerous commands, redact tool arguments, create custom local rules, or diagnose local guards. Covers local packs, not Grafana Cloud rule management or application SDK setup.

Its SKILL.md is about 2.6k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in DevOps & Cloud, covering Monitoring and alerting. It works with Grafana. The repository describes itself as: Actually Useful Agent Observability. The licence is Apache-2.0.

When your agent uses it

  • The user asks to enable safety packs
  • Protect .env files
  • Block dangerous commands
  • Redact tool arguments

Example prompts

  • “/setup-local-guards”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Inspect the installation
  2. Help the user choose
  3. Apply approved changes
  4. Test the saved rules
  5. Report what is verified

What it can do on your machine

Read from SKILL.md and the folder at commit 9ab60bc. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Setup Local Guards loads about 2.6k tokens when it runs. Until then it costs about 89 tokens; SKILL.md has 1,396 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~89
When it runs · the whole SKILL.md, loaded when a task matches
~2.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:5
    ser asks to enable safety packs, protect .env files,
  • NoteMentions a .env fileSKILL.md:67
    - File safety matches `.env` and `.env.*`, including `.env.example`. It does not protect every secret file.
  • NoteMentions a .env fileSKILL.md:144
    agento11y guards test --json 'cat .env'

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from grafana/agento11y at commit 9ab60bc, republished under its Apache-2.0 licence (© grafana). 1,396 words, ~2,586 tokens.

Download SKILL.mdSave it as .claude/skills/setup-local-guards/SKILL.md (or your agent's skills folder).
name
setup-local-guards
description
Help choose, configure, and test local agento11y guard packs for coding-agent tool calls. Use when the user asks to enable safety packs, protect .env files, block dangerous commands, redact tool arguments, create custom local rules, or diagnose local guards. Covers local packs, not Grafana Cloud rule management or application SDK setup.

Set up local guard packs

Inspect the installed configuration, explain the relevant packs, ask for approval, then configure and test only the user's choices. For a question about existing behavior, stop after explaining it; do not change settings.

Safety rules

  • Ask before enabling or disabling guards, changing packs, editing rules, or changing the session destination.
  • Preserve custom rules, credentials, capture settings, and the user's Cloud forwarding choice.
  • Never execute a dangerous command to test a guard. Pass quoted command text only to agento11y guards test.
  • Never test with real secrets or print config.env; it can contain credentials.
  • Explain that guards cover only tool calls submitted through the integration. They are not an operating-system sandbox.
  • Do not claim live protection from an offline dry run. A matching rule and a working host hook are separate checks.

1. Inspect the installation

Run:

sh
agento11y --version
agento11y guards test --help
agento11y local status

If the binary or local guard commands are missing, explain what is missing. Offer agento11y skills show setup-coding-agent for installation or host integration setup. Do not assume an older binary includes this skill or every pack. Local mode requires macOS or Linux.

Identify the target coding agent, its installed agento11y integration, and whether its sessions use the local daemon or go directly to Cloud. Opening the local app does not route a running agent through it. For Codex, ask the user to open /hooks and trust the agento11y hooks after installation.

Use the running app's Security > Guards to inspect the saved enablement, rules path, pack selections, and compilation errors. If the app is stopped, ask before running agento11y local open to start it. Use the displayed rules path rather than assuming ~/.config/agento11y/guards.toml. Read an existing rules file before proposing edits; do not replace it with a template.

Use agento11y doctor --json if installation or routing needs further diagnosis. Explain that doctor probes configured endpoints and obtain approval before those requests.

2. Help the user choose

Use the installed app's pack descriptions and view previews to explain available packs. For blocked and allowed examples, refer to the local guard pack guide. The online guide can describe a different binary version; prefer the installed catalog and dry-run results when they differ. Do not require a network lookup to proceed with the installed catalog.

Before recommending Secret redaction, check whether the target host applies argument rewrites. Copilot CLI applies them; Copilot Chat in VS Code and unidentified Copilot surfaces drop them and run the original arguments. Do not present an offline redaction result as tool-argument protection on those surfaces.

Explain the trade-offs relevant to the user's request:

  • Secret redaction rewrites recognized secrets in tool arguments. It can change what the tool receives and break commands that need those values.
  • File safety matches .env and .env.*, including .env.example. It does not protect every secret file.
  • Git safety allows --force-with-lease; it does not block every history rewrite.
  • Destructive commands blocks recursive force deletion even for temporary build output, but does not block every deletion.
  • Permissions targets selected root and home spellings, not every directory.
  • Disk wipe uses broad command-name patterns that can also block read-only inspection.
  • High-risk prompt triage blocks explicit high-impact decisions about people in specified domains. It cannot judge discrimination, explanation quality, legality, or real human oversight, and it only works where the host submits prompt preflight checks.
  • PHI-like data egress blocks a narrow set of recognizable outbound tools and shell network commands carrying high-confidence health identifiers. It cannot identify every egress path or determine authorization, permitted purpose, or minimum necessary scope.

State that text matching can miss indirect operations and can block harmless mentions. Unknown tools, unsupported hooks, and scripts that perform dangerous operations internally can escape these checks.

Explain any destination change before asking for approval. Local mode stores full session content locally. With Cloud forwarding, guard payloads can leave the machine even when generation capture is metadata_only. Never enable forwarding just to make local guards work.

Ask which packs to enable or disable, then confirm the exact changes. Do not select every pack by default. Before changing packs in a hand-edited file, offer a backup: pack updates remove TOML comments and formatting.

3. Apply approved changes

Configure bundled packs in the app or custom rules in guards.toml.

Bundled packs

Use Security > Guards to enable guards and toggle only the approved packs. If you cannot operate the app, give the user those steps and wait for confirmation. There is no agento11y guards enable or agento11y guards install command; do not invent one or reconstruct shipped pack regexes.

The switches save immediately: enablement goes in config.env, and pack rules go in the adjacent guards.toml. Turning off the main switch removes all known pack rules when the file can be parsed. Turning it back on does not restore the selection; custom rules remain. Those custom rules still apply to requests from agents that have not picked up the disabled setting. A broken file stays unchanged when the main switch is disabled.

Disabling a pack removes edits to that pack; re-enabling creates the shipped definition. Stop on save or compilation errors rather than claiming the pack is active.

For launcher-based sessions, use agento11y <agent> --local after approval, replacing <agent> with the target launcher name. For hook-based setup, follow setup-coding-agent rather than guessing host configuration. Restart the coding agent after changing enablement or destination, and inspect explicit environment overrides if saved settings do not take effect. Pack-rule edits apply on the next daemon check without a daemon restart.

Show full SKILL.md (493 more words)Show less
Custom rules

Custom rules are [[rules]] entries in guards.toml; preserve existing rules and pack definitions. Refer to the custom-rule example for TOML syntax.

FieldMeaning
rule_idUnique identifier shown in results. Keep custom IDs outside pack.*.
enabledDefaults to true; false disables the rule. Custom rules have no pack switch.
phasepostflight checks tool calls before execution and is the default.
priorityLower values run first; defaults to 0.
action_on_faildeny blocks, warn continues, and allow ends local evaluation, skipping later rules. Defaults to deny.
evaluatorsChecks attached to the rule, each written as [[rules.evaluators]].
kindregex runs locally. Cloud-only evaluator kinds do not.
config.targetshell_command selects decoded arguments from recognized shell tools.
config.rejecttrue fails on any pattern match; false (the default) fails when none match.
config.patternsGo regular expressions. Use TOML single-quoted strings to preserve backslashes.

Use agento11y guards test '<command>' for a local dry run.

4. Test the saved rules

Choose dry runs for the selected packs, including a denied case and an allowed case. If your own tool calls pass through guards, ask the user to run the complete dry-run commands directly in a terminal. The outer tool call can match the dangerous text inside the quoted argument and be blocked before guards test starts. Do not disable guards or disguise the command to get past that check. A host-hook rejection is not a completed dry run. Remind the user to run the full agento11y guards test command, never the inner command alone.

sh
agento11y guards test 'git reset --hard'
agento11y guards test 'git push --force-with-lease'
agento11y guards test 'rm -rf /tmp/agento11y-guard-example'
agento11y guards test --json 'cat .env'

With unmodified Git safety alone, the first command denies and the second allows. Destructive commands denies the third; File safety denies the fourth. Other rules can change those results. Use --rules before the quoted command when testing an explicit file. Use only synthetic, non-secret values for redaction tests.

The command executes none of the submitted text, contacts no endpoints, and changes no files. It evaluates saved rules even when host guards are disabled. Exit 0 means allow, 1 means deny, and 2 means an error, including compilation errors. Read notices and errors: a missing default file or no enforceable rules can return allow. --tool changes the synthetic tool name, not its {"command": ...} argument shape; it does not replay arbitrary file-tool calls.

For unexpected results, compare the rules path, enabled rules, tool name, and exact input before changing policy. A malformed or unreadable file can leave no local rules enforcing. AGENTO11Y_GUARDS_FAIL_OPEN=false does not make such a file fail closed. Do not disable unrelated packs or broaden exceptions to make a test pass.

5. Report what is verified

List the resolved file path, selected packs, changes made, dry-run results, and any remaining errors. Separate these conclusions:

  • Saved policy: which examples the local evaluator allowed, denied, or redacted.
  • Host integration: whether the target session uses local routing with guards enabled, and what evidence confirms it.

If no live host check was observed, say that host enforcement remains unverified. Do not attempt a destructive live test to close that gap.

© grafana, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in plugins/agento11y/internal/skills/content/setup-local-guards of grafana/agento11y.

Open the folder on GitHubat commit 9ab60bc

Compare with similar skills

Setup Local Guards next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Setup Local Guards compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Setup Local Guards this skillgrafana/agento11y127—~2.6kAutomated safety check: NotesApache-2.0
Mz Release SignoffMaterializeInc/materialize6.4k—~7.2kAutomated safety check: PassCustom licence
Axiom Dashboard Builderopenclaw/clawhub9.5k—~4.9kAutomated safety check: PassMIT
Happy Infra Metrics and Grafanaslopus/happy24k—~2kAutomated safety check: NotesMIT
Syncmetapawurb/hotpath-rs1.9k—~1.2kAutomated safety check: NotesMIT
Optimize Slurm TopologyNVlabs/alpasim1.3k—~1.6kAutomated safety check: PassApache-2.0

Similar skills

  • Mz Release Signoff

    MaterializeInc/materialize

    Verify a release candidate on the Grafana dashboards and sign off in release.

    6.4k GitHub stars~7.2k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Axiom Dashboard Builder

    openclaw/clawhub

    Designs and deploys Axiom dashboards through the API, choosing chart types and writing APL or metrics queries, with templates and migration notes for Splunk and Grafana.

    9.5k GitHub stars~4.9k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Queries live Prometheus metrics and manages Grafana dashboards as code for Happy's infrastructure, using the grafanactl CLI and the Grafana datasource proxy API.

    24k GitHub stars~2k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes
  • Syncmeta

    pawurb/hotpath-rs

    Sync changes from the hotpath, hotpath-macros and hotpath-drain crates to their meta counterparts (hotpath-meta, hotpath-macros-meta and hotpath-drain-meta).

    1.9k GitHub stars~1.2k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes
  • Optimize AlpaSim Slurm topology throughput using persistent local Prometheus/Grafana telemetry and run artifacts.

    1.3k GitHub stars~1.6k tokensUpdated 20 days ago
    DevOps & CloudAuto-check passed
  • Specifies how to instrument an opik-backend pipeline with per-stage OpenTelemetry metrics for throughput, latency, errors and queue delay by workspace.

    22k GitHub stars~3.2k tokensUpdated today
    DevOps & CloudAuto-check passed

More from grafana/agento11y

  • E2E Test

    grafana/agento11y

    Official

    Optional credential-free Hermes integration checks using an explicit loopback model provider and local telemetry receivers.

    127 GitHub stars~1.7k tokensUpdated today
    Auto-check: notes
  • Agento11y Experiments

    grafana/agento11y

    Official

    Run any Python LLM agent as an Agent Observability experiment using the public agento11y.experiments package: define a test suite, run an existing agent through typed trials, bind or record…

    127 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Agento11y Eval Starter

    grafana/agento11y

    Official

    Use early in an AI-agent project — before ship, before real traffic — to decide which evaluations to set up and to scaffold a starter experiment.

    127 GitHub stars~6.4k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Setup Local Guards

What does Setup Local Guards do?

Help choose, configure, and test local agento11y guard packs for coding-agent tool calls. Setup Local Guards is an agent skill from grafana/agento11y, published by the product's own GitHub organization. Help choose, configure, and test local agento11y guard packs for coding-agent tool calls.

When should I use Setup Local Guards?

Setup Local Guards fits situations like: the user asks to enable safety packs; protect .env files; block dangerous commands; redact tool arguments.

How do I install Setup Local Guards in Claude Code?

Run `npx skills add grafana/agento11y --skill setup-local-guards -a claude-code`. Or copy the skill folder (plugins/agento11y/internal/skills/content/setup-local-guards in grafana/agento11y) into .claude/skills/setup-local-guards in your project. Claude Code loads it when a task matches its description.

How do I install Setup Local Guards in Codex?

Run `npx skills add grafana/agento11y --skill setup-local-guards -a codex`. Or copy the skill folder (plugins/agento11y/internal/skills/content/setup-local-guards in grafana/agento11y) into .agents/skills/setup-local-guards in your project. Codex loads it when a task matches its description.

Can I use Setup Local Guards in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add grafana/agento11y --skill setup-local-guards -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/setup-local-guards, .gemini/skills/setup-local-guards, .github/skills/setup-local-guards and .opencode/skills/setup-local-guards in your project.

What does Setup Local Guards need to run?

SKILL.md names no scripts, command-line tools or credentials: Setup Local Guards is instructions for the agent only.

Does Setup Local Guards access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Setup Local Guards safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Setup Local Guards use?

Setup Local Guards is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Setup Local Guards use?

About 2.6k tokens (SKILL.md is roughly 10k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Setup Local Guards?

Skills that share tags, products or a category with Setup Local Guards: Mz Release Signoff (MaterializeInc/materialize, 6.4k stars), Axiom Dashboard Builder (openclaw/clawhub, 9.5k stars), Happy Infra Metrics and Grafana (slopus/happy, 24k stars) and Syncmeta (pawurb/hotpath-rs, 1.9k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Setup Local Guards?

grafana (a GitHub organization, an official publisher) maintains it in grafana/agento11y, which has 127 GitHub stars. The repository holds 4 skills in this directory. The repository was last updated on October 8, 2026.

Source: grafana/agento11y on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.