status-copy-trust-audit
Skill6 starsChanged 4 months agoMITView on GitHub
Audit CLI and app status wording, repeated-run behavior, and client label alignment.
In this repository27 other files it gives its agents.
- agent-skills-agentsAGENTS.md
- agent-skills-claudeCLAUDE.md
- agent-log-forensicsSkill
- changelog-writerSkill
- chezmoi-driftSkill
- contacts-unifySkill
- decision-logSkill
- dependency-pinningSkill
- django-smoke-alarmSkill
- empathy-auditSkill
- first-contactSkill
- handle-prSkill
- launch-sequenceSkill
- parallel-isolated-app-testingSkill
- post-mortemSkill
- pre-mortemSkill
- profile-meSkill
- ralph-loopSkill
- release-operatorSkill
- remote-host-verifierSkill
- research-personSkill
- scope-hammerSkill
- second-opinionsSkill
- support-stormSkill
- trust-auditSkill
- visual-qa-loopSkill
- wide-open-brainstormSkill
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
- Very specific: line 26
Use trust-audit instead for broad permission/privacy/billing trust review, not wording and state semantics.
- Distinctive: line 40
Use supplied transcripts or documented read-only checks first.
- Distinctive: line 50
Keep exact stdout/stderr snippets in notes or tests.
- Distinctive: line 65
Never use "updated" for both package version changes and config refreshes.
- Distinctive: line 67
Add an actionability check: every warning/error line should answer "what now?" or point to the exact command/doc that does.
- Distinctive: line 71
If multiple clients are shown together, make their grammar parallel:
- Distinctive: line 79
If one client has extra concepts (scope/trust), state them explicitly rather than omitting them elsewhere.
- Distinctive: line 85
default no-op for idempotent setup
- Very specific: line 88
If update refreshes registrations by default, document why and provide an opt-out such as --no-setup.
- Very specific: line 105
Use remote-host-verifier to confirm the same status semantics on remote hosts.
- Very specific: line 106
Use empathy-audit when error copy may blame the user for system drift or tool limitations.
- Very specific: line 107
Use release-operator before shipping, or when status text changes must be verified from the published artifact, not just the checkout.
≈ “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.
Files
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 userKeep 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:
| Word | Should mean |
| registered | created a missing config entry |
| refreshed | rewrote an existing config entry intentionally |
| already configured | no write happened |
| updated | package/binary version changed |
| already current | package/binary did not change |
| skipped | user 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-verifierto confirm the same status semantics on remote hosts. - Use
empathy-auditwhen error copy may blame the user for system drift or tool limitations. - Use
release-operatorbefore shipping, or when status text changes must be verified from the published artifact, not just the checkout.
</interlocks>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
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.

