audit-logs
Skill17 starsChanged 50 days agoMITView on GitHub
Understand and analyze Shellby's agent-commands.yaml audit log format without loading the full log into context.
In this repository3 other files it gives its agents.
- wiki/AGENTS.mdAGENTS.md
- create-skillSkill
- install-shellby-mcpSkill
The file
We split this skill into the rules it gives an agent
1 rule. About 0 are common, 0 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈0
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 8
Use this skill to analyze agent-commands.yaml.
≈ “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
Agent Command Log
Use this skill to analyze agent-commands.yaml.
Do not load the whole log into context. Inspect, filter, parse, aggregate, or sample it with Python, Node, Ruby, shell tools, or another approach that fits the audit question. Choose the investigation method from the evidence you need rather than forcing every audit through one fixed workflow.
The --- # ... record header is stored as a YAML comment. Generic YAML parsers may discard the tool name, duration, token counts, status marker, and timestamp carried there. When that metadata matters, read the file as text or otherwise preserve and parse the header separately from the YAML body.
Prefer reducing the log outside model context before reading detailed records. Useful reductions may include filtering by session, task slug, tool, status marker, time range, shell/request identity, arguments, or any other feature relevant to the question; grouping, counting, sorting, sequence analysis, and targeted record inspection are all valid. Bring only the evidence needed for the current audit into context.
Source of truth for format:
src/server/audit/audit-log.ts
src/server/audit/audit-format.ts
Header
--- # [!|~] TOOL - DURATIONms - N in [/ N out] [- HTTP ...] - Mon D h:mm AM/PM!= tool/HTTP/connection failure~= call took at least 5 secondsin= tokens from full serialized arguments before log truncationout= model-facing text/structured output tokens; native image payloads are excluded- final time = local call start time
Tool calls may include session: "agent-N" or, after a successful start_here, session: "agent-N/task-slug". Shellby's shared agent context assigns each distinct X-OpenAI-Session a stable process-local identity such as agent-1, agent-2, and so on. A successful start_here adds that caller's task_id; later audit entries append it to the agent label, for example agent-1/audit-session-labels. The start_here entry itself keeps the plain agent-N label. Raw session IDs are not written to the log.
For ChatGPT sessions, start_here is normally the first successful Shellby tool call for that session.
Tool Bodies
shell_run: shell/request ID, explicitly suppliedyield_time_ms/max_output_tokens, optional cwd, and either one command or a parallel commands arrayshell_poll: shell/request ID, cursor, and explicitly suppliedyield_time_ms/max_output_tokensapply_patch: cwd + patch size; patch body retained only on failure- other tools: serialized
args
Limits
- shell command: 2,000 chars
- generic args: 600 chars
- failed patch: 32,000 chars
- failure message: 1,000 chars
Caveats
- Missing
outmeans there was no token-countable model-facing text or structured output. - Shell nonzero exit produces
!when the bounded result exposes the exit code. - Successful tool output bodies are not stored.
- Entries are written when calls complete, so file order is not guaranteed invocation order.
- One file may contain multiple caller sessions. Group a conversation by its
agent-Nprefix because entries before successfulstart_hereuseagent-Nwhile later entries may useagent-N/task-slug.
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.

