other
- Location
assets/SUMMARIZE.md:3- Finding
Untrusted Distilled Entries Can Inject Instructions into the Summary Prompt
- Content
View full analysis
-->` header; treat that id as the citation anchor for anything you carry into the summary. 3. Produce a structured summary following the format described below. ## Entries {{ENTRIES}} ## Summary structure ``` `SKILL.md:318-338`: ```markdown Invoke `claude -p` with the substituted prompt. The prompt already contains every entry's full text, so Claude does not need filesystem access — do **not** pass `--add-dir` and do **not** grant read tools. - `--model claude-sonnet-4-6` - No `--add-dir` (content is inline) - No `--allowedTools` (prompt is self-contained) - The substituted prompt passed via stdin `claude -p` will use whatever credentials `claude` already has — either an OAuth session from `claude login` or `ANTHROPIC_API_KEY` from the shell that launched OpenClaw (see Prerequisites § 1). Wrap the invocation in `timeout 600` (10 minutes) — this matches the timeout used by `pkg/sessionsummary/claude.go` in the `ox` repo for comparable Claude synthesis work and gives the model enough headroom for cross-team summaries that inline many daily entries: ```bash timeout 600 claude -p \ --model claude-sonnet-4-6 <<< "$PROMPT" ``` ``` ### Technical Analysis The complete text of distilled entries is substituted directly into the same prompt that contains the model's workflow and output ...[truncated 2404 chars]- Remediation
View remediation
