Implement ourdigital-presales-seo skill
SKILL.md orchestration (8 gated stages), references (rate_card.yaml, findings_to_service rubric, competitor sets), findings.schema.json contract, and scripts: kg_query.py (generalized KG examination), estimate.py (findings→rate-card 견적 md/xlsx/json), build_deck.py (9-slide branded PPTX), render_pdf.sh (Korean PDF via headless Chrome), plus client_brief.html template. Validated on Sono Hotels & Resorts findings: estimate OD-2026-001 (23-47M KRW) and a 9-slide deck generated cleanly. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
18
custom-skills/95-ourdigital-presales-seo/scripts/render_pdf.sh
Executable file
18
custom-skills/95-ourdigital-presales-seo/scripts/render_pdf.sh
Executable file
@@ -0,0 +1,18 @@
|
||||
#!/usr/bin/env bash
|
||||
# Render an HTML brief to PDF via headless Chrome (uses system fonts → Korean OK).
|
||||
# Part of ourdigital-presales-seo (Stage 6).
|
||||
# Usage: render_pdf.sh <input.html> [output.pdf]
|
||||
set -euo pipefail
|
||||
HTML="${1:?usage: render_pdf.sh <input.html> [output.pdf]}"
|
||||
OUT="${2:-${HTML%.html}.pdf}"
|
||||
|
||||
CHROME="/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
|
||||
if [ ! -x "$CHROME" ]; then CHROME="/Applications/Brave Browser.app/Contents/MacOS/Brave Browser"; fi
|
||||
if [ ! -x "$CHROME" ]; then CHROME="/Applications/Microsoft Edge.app/Contents/MacOS/Microsoft Edge"; fi
|
||||
if [ ! -x "$CHROME" ]; then echo "ERROR: no Chromium-based browser found for PDF rendering" >&2; exit 1; fi
|
||||
|
||||
DIR="$(cd "$(dirname "$HTML")" && pwd)"
|
||||
BASE="$(basename "$HTML")"
|
||||
"$CHROME" --headless --disable-gpu --no-pdf-header-footer \
|
||||
--print-to-pdf="$OUT" "file://$DIR/$BASE" 2>/dev/null
|
||||
echo "Wrote $OUT"
|
||||
Reference in New Issue
Block a user