Material to Deliverable
Transform real materials in 00_input/ into verifiable, traceable, and deliverable text files.
Activation Conditions
Execute only when all of the following conditions are met:
- The user provides or specifies a local project directory.
00_input/contains at least one real material file.- The user desires one of: report, proposal, review, research, or course presentation.
If the directory is unclear, only ask for the project directory. If the deliverable type is unclear, only ask for the deliverable type. Stop if no real materials exist—do not generate examples or substitute materials.
Always Read Before Starting
Before processing, read the full contents of:
After confirming the deliverable type, read the corresponding section of Deliverable Type Rules.
Workflow
1. Confirm Project and Initialize
If the project has not been initialized, call the script from the skill's installation directory with the explicit project path:
python3 <skill-directory>/scripts/init_project.py /absolute/path/to/project
Do not assume a scripts/ directory exists in the user's current working directory. First resolve <skill-directory> based on the location of this file, then execute the script.
If 01_working/ already exists, read its existing state and continue—do not reinitialize or overwrite files.
2. Check Input and Sensitive Information
List all files in 00_input/. Record any files that cannot be read or have unknown origins. Do not modify, move, or rename the original materials.
Perform a sensitive information check. If you find personal names, contact details, account information, client data, contracts, financial data, health records, educational records, credentials, internal paths, or any other potentially restricted information:
- Only record the risk type and file location in
02_material-index.md; do not copy the sensitive values. - Pause immediately.
- Ask the user to confirm they have the right to process these materials, or ask them to provide a desensitized copy.
Do not proceed with outlining, writing, or delivery until the user has confirmed.
3. Clarify the Task
Ask only one question at a time that would change the final product, up to a maximum of seven. Prioritize: recipient, usage scenario, desired decision to facilitate, deadline, deliverable type, content that must be included, and content that must be excluded.
If the user answers "I don't know," write it down as a pending confirmation item—do not guess on their behalf. Record the results in 01_task-brief.md, show a summary, and wait for user confirmation.
4. Build Material Index and Identify Gaps
For each material, fill in 02_material-index.md, distinguishing clearly between:
- Facts directly supported by the source
- Self-reports from individuals or organizations
- Interview notes, feedback, or localized observations
- The user's own judgment
- Pending confirmation information
Record conflicts, missing information, unreadable files, items needing desensitization, and evidence gaps in 03_gaps-and-conflicts.md. Do not generalize limited material into broad conclusions.
If blocking gaps still exist, continue asking questions or stop; do not generate the main deliverable.
5. Create a Source-Backed Outline
Create 04_source-backed-outline.md based on the deliverable type. For each section, clearly list: the question to be answered, the materials used, the conclusions that can be drawn, the user's judgment, pending confirmation items, and the acceptance criteria.
Show a summary of the outline and source coverage, then wait for user confirmation. Do not write the main deliverable until the outline is confirmed.
6. Generate the Deliverable and Source Index
Based on the confirmed outline, generate:
05_main-deliverable.md06_one-page-summary.md07_source-index.md
Every key fact must be mapped to the specific file and location in the source index. Do not fabricate numbers, people, cases, quotes, or results that are not present in the materials. Personal judgment must be clearly separated from source facts.
7. Re-audit Against Original Materials
Re-read 00_input/; do not rely solely on the just-generated deliverable. Record issues with facts, scope, logic, privacy, task consistency, and expression in 08_audit-report.md.
Only fix issues that can be definitively corrected using existing materials. Leave items requiring user judgment as pending confirmation.
8. Package the Delivery
Only after the audit reveals no blocking issues, write the audited content into:
02_delivery/
main-deliverable.md
one-page-summary.md
source-index.md
readme.md
02_delivery/ must not contain any original materials, prompts, chat logs, internal drafts, or sensitive values. Finally, run from the skill's installation directory:
python3 <skill-directory>/scripts/validate_project.py /absolute/path/to/project --stage delivery
After the validation script passes, still remind the user to perform a final manual review. The script only checks file structure and obvious remnants; it cannot verify factual correctness.
Stopping Conditions
Stop immediately (and explain what is missing) if any of the following occur:
00_input/is empty or materials cannot be read.- The user has not confirmed that sensitive materials can be processed.
- The recipient, deliverable type, or core objective remains unclear.
- The current materials cannot support the main conclusion.
- The user has not yet confirmed the task brief or outline.
Do not bypass stopping conditions with fabricated materials, web searches, or common-sense inference, unless the user explicitly authorizes a new source of information.
Output Language
By default, follow the user's current language. Keep file names in English for cross-environment compatibility; write file content in the user's language.