---
name: document-business-artifact-production
description: Produce grounded business artifacts from uploaded PRDs, PDFs, and strategy documents — board memos, execution plans, ticket sets, and financial templates.
version: 1.0.0
author: Hermes Agent
license: MIT
platforms: [linux, macos, windows]
metadata:
  hermes:
    tags: [Documents, PRD, Board-Memo, Execution-Plan, Financial-Model, Linear]
    related_skills: [ocr-and-documents, powerpoint, documentation-and-adrs]
---

# Document Business Artifact Production

Use this skill when a user uploads or references a business document — especially a PRD, strategy memo, investment memo, board deck, or requirements document — and asks for derived artifacts such as:

- CEO/board investment memo
- execution plan
- Linear/Jira-ready tickets
- financial model or sensitivity template
- decision memo
- operating cadence / dashboard metrics
- risk and kill/continue criteria

## Core principle

Do not summarize from vibes. First ground the work in the source document, then produce durable artifacts and verify them.

For PDFs and scans, use the `ocr-and-documents` skill first for extraction. This skill governs the transformation from extracted document content into business deliverables.

## Standard workflow

1. Extract and persist source text.
   - For uploaded PDFs, use a real extractor such as local PyMuPDF via the `ocr-and-documents` workflow.
   - Save an extracted `.txt` copy near the output artifacts for traceability.
   - Capture page count and extracted character count when possible.

2. Identify the document’s decision spine.
   Pull out:
   - recommendation / decision requested
   - owner and status
   - budget, time, and operational constraints
   - gating requirements
   - success criteria
   - non-goals
   - primary and supporting KPIs
   - kill / continue criteria
   - risks and mitigations
   - open questions
   - source/evidence notes

3. Produce separate durable files for multi-deliverable requests.
   Avoid one giant chat response when the user asks for several artifacts. Recommended naming:
   - `01_investment_memo.md`
   - `02_execution_plan_linear_tickets.md`
   - `03_financial_model_sensitivity_template.xlsx`
   - optional `03_sensitivity_grid.csv`
   - optional `03_financial_model_notes.md`

4. Make the CEO/board memo decision-ready.
   Include:
   - decision requested
   - recommendation
   - strategic rationale
   - what must be true to continue
   - gates/checkpoints
   - economic frame
   - major risks and mitigations
   - hard kill criteria
   - explicit “approve / do not approve yet” scope

5. Make execution plans ticket-ready.
   For each ticket include:
   - ID
   - priority
   - owner/function
   - phase
   - estimate
   - description
   - acceptance criteria
   - dependencies

6. Encode the document’s economics into the financial template.
   - Preserve the KPI hierarchy from the source.
   - If the document distinguishes token/revenue/cost types, model them separately rather than using a blended average.
   - Include sensitivity cases exactly where the source calls for them.
   - Include downside/price-compression tests when continuation criteria depend on them.
   - Separate variable contribution from full-loaded operating profit when the document does.

7. Verify artifacts before responding.
   - Check files exist and are non-empty.
   - Validate generated XLSX files as ZIP archives when spreadsheet libraries are unavailable.
   - If packaging artifacts and the `zip` binary is missing, use Python stdlib `zipfile` rather than stopping.
   - Report real verification results in the final answer.

## Output quality bar

- Use the source document’s language for gates, KPIs, and criteria when precision matters.
- Make assumptions explicit.
- Prefer board/operator clarity over decorative formatting.
- Keep chat final concise and attach files via platform-native media links when available.
- Do not claim a document was read until extraction actually succeeded.

## Reusable reference

See `references/pdf-prd-to-executive-artifacts.md` for a concrete PRD-to-memo/plan/model pattern captured from a GetBlock inference-provider PRD session.
