agentleFS
carlkiblercarlkibler/agent-skills/skills/status-copy-trust-audit/SKILL.md

status-copy-trust-audit

Skill6 starsChanged 4 months agoMITView on GitHub

Audit CLI and app status wording, repeated-run behavior, and client label alignment.

The file

We split this skill into the rules it gives an agent

12 rules. About 0 are common, 7 are distinctive, and 5 are very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈7

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 5

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Use trust-audit instead for broad permission/privacy/billing trust review, not wording and state semantics.

    line 26
  2. Distinctive:

    Use supplied transcripts or documented read-only checks first.

    line 40
  3. Distinctive:

    Keep exact stdout/stderr snippets in notes or tests.

    line 50
  4. Distinctive:

    Never use "updated" for both package version changes and config refreshes.

    line 65
  5. Distinctive:

    Add an actionability check: every warning/error line should answer "what now?" or point to the exact command/doc that does.

    line 67
  6. Distinctive:

    If multiple clients are shown together, make their grammar parallel:

    line 71
  7. Distinctive:

    If one client has extra concepts (scope/trust), state them explicitly rather than omitting them elsewhere.

    line 79
  8. Distinctive:

    default no-op for idempotent setup

    line 85
  9. Very specific:

    If update refreshes registrations by default, document why and provide an opt-out such as --no-setup.

    line 88
  10. Very specific:

    Use remote-host-verifier to confirm the same status semantics on remote hosts.

    line 105
  11. Very specific:

    Use empathy-audit when error copy may blame the user for system drift or tool limitations.

    line 106
  12. Very specific:

    Use release-operator before shipping, or when status text changes must be verified from the published artifact, not just the checkout.

    line 107

≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Status Copy Trust Audit

Status text is product UI. If it says "updated" when nothing updated, trust leaks out through a tiny hole and then somehow the whole boat is wet.

Third-order stance: trust is built in boring repeated runs and in failure paths. Audit whether the copy preserves user agency when things go wrong, not just whether success text sounds tidy.

When to Use

  • The user says output is odd, confusing, or "not sure what happened"
  • Repeated runs print different words for equivalent states
  • Commands like update/setup/doctor/register/install report both no-op and changed states
  • Scope, provenance, or safety status is unclear

Use trust-audit instead for broad permission/privacy/billing trust review, not wording and state semantics.

When NOT to Use

  • The output is purely internal debug logging
  • The command has no user-facing status surface
  • The issue is a real functional failure, not wording/state semantics

<process>

Phase 1: Capture Real Transcripts

Use supplied transcripts or documented read-only checks first. Repeat mutating commands only within the authorized change scope or an isolated disposable fixture. If scope flags exist, test the default and explicit scope in that fixture.

<tool> --version
# In an authorized disposable fixture only:
<tool> update
<tool> update
<tool> update --scope user

Keep exact stdout/stderr snippets in notes or tests. Also trigger at least one intentional failure when safe: missing config, stale path, bad scope, offline/network failure, or permission denied.

Phase 2: Define State Semantics

For each line, label what it means:

WordShould mean
registeredcreated a missing config entry
refreshedrewrote an existing config entry intentionally
already configuredno write happened
updatedpackage/binary version changed
already currentpackage/binary did not change
skippeduser requested no action or client missing

Never use "updated" for both package version changes and config refreshes.

Add an actionability check: every warning/error line should answer "what now?" or point to the exact command/doc that does. If no action is needed, say why it is safe to ignore.

Phase 3: Align Related Clients

If multiple clients are shown together, make their grammar parallel:

Claude Code: refreshed (scope: user)
Codex: refreshed
Gemini CLI: refreshed (scope: user, trusted)

If one client has extra concepts (scope/trust), state them explicitly rather than omitting them elsewhere. Watch for semantic decay: copy that was true before a feature flag, migration, or installer change may now be wrong even if grammar is fine.

Phase 4: Verify Idempotence

Second run should be boring and explain whether it wrote anything. Decide intentionally between:

  • default no-op for idempotent setup
  • forced refresh for update commands that must rewrite local paths after package changes

If update refreshes registrations by default, document why and provide an opt-out such as --no-setup.

Phase 5: Lock It Down

Add tests for:

  • aliases (doc -> doctor, install -> setup)
  • repeated update/setup output
  • no-op vs refresh vs version change wording
  • scope/trust label consistency
  • intentional failure output and actionable recovery text
  • stale-copy regression when feature flags or installer behavior changes
</process><interlocks>
  • Use remote-host-verifier to confirm the same status semantics on remote hosts.
  • Use empathy-audit when error copy may blame the user for system drift or tool limitations.
  • Use release-operator before shipping, or when status text changes must be verified from the published artifact, not just the checkout.
</interlocks>

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.