cli-tool-secrets

cli-tool-secrets is a skill for Claude Code, Codex from adbertram/cli-tools. It costs 103 tokens per session (1,442 once invoked), scanned A, original, MIT.

MANDATORY: Use this skill for ALL CLI-tools secret-manager work: checking, storing, retrieving, deleting, naming, documenting, or troubleshooting reusable CLI-tool credentials. DO NOT put reusable CLI-tool secrets in .env files, LastPass, source files, general agent instructions, or non-CLI project workflows.…

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Install with agentmods
npx agentmods add skills/adbertram/cli-tools/cli-tool-secrets
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add adbertram/cli-tools --skill cli-tool-secrets
Clone the repo
git clone --depth 1 https://github.com/adbertram/cli-tools

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for cli-tool-secrets

README.md
[![agentmods](https://agentmods.dev/badge/skills/adbertram/cli-tools/cli-tool-secrets/github.svg)](https://agentmods.dev/skills/adbertram/cli-tools/cli-tool-secrets)
Your own site
<a href="https://agentmods.dev/skills/adbertram/cli-tools/cli-tool-secrets"><img src="https://agentmods.dev/badge/skills/adbertram/cli-tools/cli-tool-secrets/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for cli-tool-secrets

Your own site · 80×15
<a href="https://agentmods.dev/skills/adbertram/cli-tools/cli-tool-secrets"><img src="https://agentmods.dev/badge/skills/adbertram/cli-tools/cli-tool-secrets.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 103 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,442 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00103 $0.01442
Opus 5.5 $0.00041 $0.00577
Sonnet 5.5 $0.00021 $0.00288
Haiku 4.5 $0.00010 $0.00144

Measured today against content hash eca7d1e7e321, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

cli-tool-secrets scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured today.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

_repo/skills/cli-tool-secrets/SKILL.md · 140 lines

How it starts

The opening of the file, as written. The whole thing — 140 lines — stays where its author put it; the contents beside it link to each section on GitHub.

<source_of_truth> The canonical helper is:

<cli-tools-root>/_repo/_secret-manager/secrets.sh

It is backed by the macOS Keychain service namespace cli-tools. The default Keychain file is ~/.local/share/cli-tools/cli-tools.keychain-db, alongside the CLI-tools user profile directories.

For full lifecycle policy, read <cli-tools-root>/_repo/skills/cli-tool/references/secrets.md. If the task is broader CLI creation, update, testing, or auth implementation, also load the repo-owned cli-tool skill and follow its agent-routing rules. </source_of_truth>

Do not use it for CourseCraft, generic project automation, non-CLI workflows, or service runtime state owned by a CLI's auth system.

<quick_start>

  1. Choose the CLI tool name and the secret type. The canonical naming schema is <cli-tool>-<type>, where both parts are lowercase hyphenated strings and <cli-tool> is the CLI command name.
  2. Check for an existing name before asking Adam for a credential:
    <cli-tools-root>/_repo/_secret-manager/secrets.sh list
    <cli-tools-root>/_repo/_secret-manager/secrets.sh has <name>
    
    When a missing secret is an expected diagnostic result, shape has so the non-zero status is consumed and reported explicitly:
    if output="$(<cli-tools-root>/_repo/_secret-manager/secrets.sh has <name> 2>&1)"; then
      printf 'SECRET_PRESENT:%s\n' '<name>'
    else
      rc=$?
      if [ "$rc" -eq 1 ]; then
        printf 'EXPECTED_MISSING_SECRET:%s\n' '<name>'
        exit 0
      fi
      printf '%s\n' "$output" >&2
      exit "$rc"
    fi
    
  3. If the secret exists, retrieve it with get <name> and use it without printing the value.
  4. Ask Adam only for missing reusable credentials.
  5. Store new values immediately through stdin or SECRET_VALUE, not inline in command examples or .env files:
    printf '%s' "$SECRET_VALUE" | <cli-tools-root>/_repo/_secret-manager/secrets.sh set --tool <cli-tool> --type <type>
    SECRET_VALUE="$SECRET_VALUE" <cli-tools-root>/_repo/_secret-manager/secrets.sh set --tool <cli-tool> --type <type>
    
  6. Verify storage with has <name>. Do not verify by echoing the secret value. </quick_start>

Remote host form:

<cli-tools-root>/_repo/_secret-manager/secrets.sh --remote-host <host> <command> [args]

For set, prefer stdin or SECRET_VALUE so the secret does not appear in shell history. Remote set copies the value through a private temporary file on the remote host.

Never store or document reusable credentials in repo-local .env files, profile .env files, .env.example, source files, final answers, screenshots, logs, or general instructions.

Read the full file on GitHub · 140 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. today First seen · 140 lines · 103 tokens per session scan A eca7d1e7e321

Subscribe to this mod's changes

cli-tool-secrets is a skill published in the GitHub repository adbertram/cli-tools (6 stars, last pushed today), licensed MIT. It adds 103 tokens to every session and 1,442 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-11-07.

Related

cli-tool-secrets compared with skills from other repositories

cli-tool-secrets next to 6 skills from other repositories
ModTypeStarsLast pushLicenceScanTokensWorks with
cli-tool-secretsadbertram/cli-toolsSkill6todayMITA103Claude Code, Codex
opencli-autofixjackwener/OpenCLISkill31kyesterdayApache-2.0A61Claude Code
surfnicobailon/surf-cliSkill684yesterdayMITA53Claude Code, Codex
rdc-cliBANANASJIM/rdc-cliSkill19314d agoMITA82Claude Code, Codex
pixiv-cli-ciFlanChanXwO/pixiv-cliSkill132yesterdayMITA61Codex
acrawl-mcpMingye-Lu/AgenticCrawlerSkill15yesterdayMITA200Claude Code, Codex
debug-hubrexleimo/aiosSkill62yesterdayMITB66Claude Code, Codex