跳到主要内容
知仓学习社ZHICANG

agent-transcript

Requested GitHub PR/issue agent transcripts: redact, trim, preview, and insert safely.

执行命令读凭据写文件联网严重 0 · 高危 4openclaw/agent-skills

它会碰到什么

扫了多少3 个文本文件,22 KB
它会碰到什么执行命令读凭据写文件联网
命中总数20 处
命中统计严重 0 · 高 4 · 中 13 · 低 3
逐条看命中(4 条严重或高危)
  • scripts/agent-transcript.test.mjs:2exec-spawn
    import { execFileSync } from "node:child_process";
  • scripts/agent-transcript.test.mjs:32cred-envread
    if (typeof file === "string" && path.resolve(file) === path.resolve(process.env.TEST_SESSION)) owned.add(fd);
  • scripts/agent-transcript.test.mjs:38cred-envread
    if (process.env.TEST_EOF === "1" && calls++ > 0) return 0;
  • scripts/agent-transcript.test.mjs:39cred-envread
    length = Math.min(length, Number(process.env.TEST_CHUNK));

这一栏是扫描器报的事实,不是结论。命中多不等于有毒(安全工具、规则库、示例脚本本来就会包含危险写法),命中少也不等于干净。它和你手上的凭据、文件、网络有什么关系,需要你自己看。

技能内容

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.

For a session hosted at *.openclaw.ai, use native session sharing when sharing

is requested; export a separate transcript only when the user explicitly asks

for that copy. Identify hosting from the current session URL, not a repository

URL or deployment/test target. Do not offer separate exports.

Prepare Locally

Default file discovery/rendering reads local Codex, Claude, Pi, and OpenClaw

logs without network calls. Never upload raw logs.

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.

find and html count up to 20,000 JSONL files across all roots, including old

files, and fail when another exceeds the cap. --max-discovery-files N accepts

a positive integer override; prefer narrowing roots before raising it.

File rendering reads at most 8 MiB per session from its head and tail and parses

at most 12,000 lines. --max-read-bytes N changes the byte limit. Preserve the

visible partial-transcript notice and sourceTruncated stats through trimming,

preview, and insertion; omitted source must never be described as complete.

These are file-read limits, not limits on the separate app-server rendering mode.

Short filesystem reads are retried. Unexpected EOF stops rendering or discovery

instead of treating incomplete input as a complete session.

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.

Validate Helper Changes

node --test skills/agent-transcript/scripts/agent-transcript.test.mjs

For a downstream .agents/skills copy, run that test command from .agents/

so the test's relative helper path resolves. Use synthetic logs and isolated

discovery roots; never discover real user logs just to validate this skill.

想直接用这个技能?

本站把开放许可(MIT / Apache 等)的技能按仓库打包整理到网盘,点一下转存到你自己的网盘,不用一个个从 GitHub 拉。许可未声明的技能只给原始仓库链接,不打包。

它属于哪个仓库

星标★ 1,087
本站分层T1
该仓技能数8
原文件路径skills/agent-transcript/SKILL.md

同一个仓库里的其他技能

看这个仓库的全部 8 个技能