Agent ScriptsBLOCK
Scripts for agents, shared between my repositories.
Overview
From the repository's own README, as read at the audited commit. Badges and raw HTML are left out.
Shared agent instructions, skills, and small portable helpers for Peter's local workspaces.
This repo is the canonical place for:
AGENTS.MD: shared hard rules for Codex/Claude-style agentsskills/: reusable workflow skills, including repo-owned skills exposed by symlinkscripts/: dependency-light helpers used across projectshooks/: local guardrails such as skill validation
Skills
Skills are the main routing layer. Each skills//SKILL.md has YAML front matter:
--- name: skill-name description: "Short generic trigger phrase." ---
Rules:
- Keep descriptions short and generic; optimize for routing, not documentation.
- Keep skill bodies terse and operational.
- Prefer helper scripts under
skills//scripts/when a workflow has repeatable commands. - Validate after edits:
scripts/validate-skills. - Quote
descriptionin front matter.
Global discovery is built by scripts/sync-skills (idempotent; run on every Mac after cloning or adding skills):
- Codex scans nested dirs, so it gets whole-root links:
~/.codex/skills/agent-scripts -> ~/Projects/agent-scripts/skills,~/.codex/skills/manager -> ~/Projects/manager/skills. - Claude Code loads only
~/.claude/skills//SKILL.md(exactly one level deep; per-entry symlinks are followed, category subfolders are not scanned — verified on 2.1.197). It gets a flat per-skill link mirror covering both repos plus machine-local~/.codex/skills/extras. - Name collisions resolve agent-scripts > manager > codex-local; the script prints skipped duplicates and prunes broken/stale managed links.
- Real destination files and directories are preserved. A real Claude skill directory with a Codex backlink to that same directory satisfies local ownership; other real destination conflicts are reported and make sync fail.
For the specific legacy topology ~/.claude/skills/NAME/NAME -> ~/.codex/skills/NAME -> ~/.claude/skills/NAME, invoke the sync owner directl
e7b2fa5dbb6fOBSERVED · 2026-10-20Install
Commands as the repository documents them. They are shown, not run.
uvx --from "markitdown[all]" markitdown input.pdf
uvx --from "markitdown[all]" markitdown input.pdf -o output.md
uvx --from "markitdown[all]" markitdown input.docx > output.md
uvx --from "markitdown[all]" markitdown report.docx -o report.md
uvx --from "markitdown[all]" markitdown data.xlsx > data.md
uvx --from "markitdown[all]" markitdown slides.pptx -o slides.md
Host compatibility
What the documentation claims. We have not run a compatibility test.
| Host | Status | Notes |
|---|---|---|
| claude-code | mentioned | |
| claude-desktop | mentioned | |
| codex | mentioned | |
| copilot | mentioned | |
| cursor | mentioned | |
| openclaw | mentioned |
What it tells the agent
The instruction file, verbatim from the audited commit — this is the text the model reads, and the surface the audit's instruction layer examines. Quoted here so you can judge it without cloning anything.
--- name: agent-transcript description: "Requested GitHub PR/issue agent transcripts: redact, trim, preview, and insert safely." --- # Agent Transcript Use only when the user explicitly requests a transcript or preview. Omit by default; never offer one or ask whether to include one during ordinary PR work. A preview request alone does not authorize publication. ## Prepare Locally The helper reads local Codex, Claude, Pi, and OpenClaw logs; no network is used for discovery/rendering. Never upload raw logs. ```bash skills/agent-transcript/scripts/agent-transcript find \ --query "$PR_TITLE $BRANCH_OR_PR_URL" --cwd "$PWD" --since-days 14 skills/agent-transcript/scripts/agent-transcript render \ --session "$SESSION_JSONL" --out /tmp/agent-transcript.md ``` In downstream repositories that sync under `.agents/skills`, replace `skills/agent-transcript` with `.agents/skills/agent-transcript`. `find` scans the newest 400 matching logs by default; `--max-files N` widens local discovery. Treat matches as candidates, not proof of scope. Automatically trim the rendered Markdown **before showing, previewing, or inserting it**. Keep only task-relevant user prompts, visible decisions, terse tool summaries, and proof outcomes. Use the PR/issue goal, branch, and changed files to remove unrelated earlier/later turns. Drop system/developer prompts, reasoning, raw tool output, environment data, local paths, credentials, browser/session/cookie details, and auth URLs. Inspect the trimmed result; helper redaction is not sufficient disclosure review. Unresolved sensitive content means omit the transcript. ## Preview And Insert Show the trimmed Markdown for a requested preview. If HTML is requested, build the local preview from that trimmed content. The helper's `preview`, `html`, and `append-body` modes render the session again; they do not consume an edited Markdown file and can reintroduce removed turns. Do not use their untrimmed output as the approved artifact. Insert only the inspected, scoped text when the user's authorization specifically covers publishing that transcript to the named PR/issue. Generating or previewing a transcript does not authorize publication, even when ordinary PR creation or editing is already approved. If that scope is missing, show the trimmed result and obtain publication authorization before insertion. Existing explicit authorization covering transcript publication needs no repeat confirmation. Keep the collapsed `<details>` section and replace existing transcript markers instead of duplicating them. No safe match means continue the PR work without transcript or placeholder; explain the omission when it prevents the explicitly requested transcript. Do not promote transcript inclusion as a review priority requirement.
Trust audit
BLOCKgrade D · trust 68/100 Do not install this without reading the findings. The audit found something that could harm you or your machine.
| Layer | What it checks | Result |
|---|---|---|
| L0 | Provenance & inventory | WARN |
| L1 | Static analysis of the code | WARN |
| L2 | Instruction surface (what it tells the agent) | FAIL |
| L3 | Class-specific surface | PASS |
| L4 | Behavioural (sandbox) | SKIPPED |
What the source does
- Filesystem
- declared (7 observation(s))
- Network
- declared (10 observation(s))
- Shell
- declared (5 observation(s))
- Dependencies
- not all pinned
- Secrets in source
- none-found
Findings (25)
Use this when the task is to talk with the Discord-backed agent/session, ask it a question, or post through that route.
Finish with an actual `$autoreview` run on the intended frozen Git target using `--codex-config 'model_provider="openai_api_direct"'` and the intended model unchanged. Preserve source scanning, auth p
- `feature`: require end-to-end test plan. If live validation needs a provider key, account, device, service, model access, or paid API, say exactly what credential/access is missing before work can b
Peter's license: order `HOP140213-7833-95831`, updates through 2027-05-17. The `.hopperLicense` file is in 1Password (Molty vault, document item "Hopper Disassembler License (HOP140213-7833-95831)");
1. Read the model id from the system prompt's environment section ("You areskills/autoreview
skills/behavior-validator
skills/birdclaw
skills/crabbox
skills/discrawl
print(secret.suffix(32).base64EncodedString())
HTTP loopback base URL, for example `http://127.0.0.1:28799` after verifying
image_data = base64.b64decode(image_data)
png = base64.b64decode(b64)
commander, puppeteer-core
youtube-transcript-plus
- Communicate every intentional Team restart, including deployment and recovery restarts, through the single coordinator session on `stable.openclaw.ai` (September 13, 2026). That session owns the res
- PR/issue image upload: never computer use/browser. `curl -s "https://uploads.github.com/user-attachments/assets?name=<file>&content_type=<mime>&repository_id=$(gh api repos/<owner>/<repo> --jq .id)"
an npm-specific socket, server, or session, send work to the permanent `shell`
`pgrep` exit 1 means no matching children at that instant, not proof across the entire stall. Repeat observations before concluding. For pipes, `lsof` can report buffered content, not necessarily capa
## 2026-05-14 — Codex Review Full Access
- `op`: load `$one-password` first, always. Never hand-roll. Automated runs: service-account token + `OP_LOAD_DESKTOP_APP_SETTINGS=false OP_BIOMETRIC_UNLOCK_ENABLED=false`; never `--account`/`op signi
Load `one-password` first (`$one-password`, owned by
Or install the self-contained CLI via `curl -fsSL https://chatgpt.com/codex/install.sh | sh`, which needs no wrapper.
curl -fsSL https://raw.githubusercontent.com/xdevplatform/xurl/main/install.sh | bash
Gates applied: critical_finding, no_behavioural_pass, undeclared_transfer.
e7b2fa5dbb6ffull audit observations/trust-audit/skill/steipete__brave-search.json · Report an issue / request a re-scanAudit history
Every audit this skill has had.
| Date | Source | Verdict | Grade | Score | Change |
|---|---|---|---|---|---|
| 2026-10-20 | e7b2fa5dbb6f | BLOCK | D | 68 | first audit |
Questions
What does the brave-search — steipete/agent-scripts skill do?
Scripts for agents, shared between my repositories.
Is brave-search — steipete/agent-scripts safe to install?
No — not without reading the findings first. The audit graded it D (68/100) and found 5 critical or high issues in the source. Each one is listed on this page with the file and line it is on.
What can brave-search — steipete/agent-scripts access on my machine?
The audit observed that it reaches the network, runs shell commands and reads or writes files. Each of those is consistent with what it says it does. Secrets in the source: none found.
Which assistants does brave-search — steipete/agent-scripts work with?
Its documentation mentions claude-code, claude-desktop, codex, copilot, cursor and openclaw. That is what the text claims, not a compatibility test we ran.
How current is this page?
The grade is for one exact copy of the source (e7b2fa5dbb6f), read on 2026-10-20. The repository is watched, and a new audit runs when it changes — this is the first audit.
Add this badge to your README
Shows this page's audit result and links back to it. It updates when the audit does.
[](https://modelsatlas.com/skills/steipete/brave-search/)
Not your listing, or something out of date? Claim or update your listing.