pptx-cli 1.3.2__tar.gz → 1.3.4__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx-deck-builder/SKILL.md +28 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/PKG-INFO +1 -1
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/__init__.py +1 -1
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/schema.py +12 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.claude/settings.local.json +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.editorconfig +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/PULL_REQUEST_TEMPLATE.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/copilot-instructions.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/instructions/backend.instructions.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/instructions/testing.instructions.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx/SKILL.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx/references/deck-spec.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx-deck-builder/references/excal-diagrams.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx-deck-builder/references/mckinsey-style.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx-deck-builder/references/pptx-workflow.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/workflows/ci.yml +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/workflows/publish.yml +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.gitignore +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/.python-version +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/AGENTS.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/ARCHITECTURE.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/CHANGELOG.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/CLI-MANIFEST.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/CONTRIBUTING.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/DECISIONS/ADR-0001-initial-architecture.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/LICENSE +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/PRD.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/PREVIEW-FUTURE.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/PROJECT.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/README.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/SCAFFOLD.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/SECURITY.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/TESTING.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/docs/DOMAIN.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/docs/GLOSSARY.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/docs/ROADMAP.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/docs/SCAFFOLDING-NOTES.md +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/guardrails/.gitignore +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/guardrails/guardrails.jsonl +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/guardrails/links.jsonl +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/guardrails/references.jsonl +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/guardrails/taxonomy.json +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/guardrails-explorer.html +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/pyproject.toml +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/pyrightconfig.json +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/scripts/bump_version.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/__main__.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/cli.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/__init__.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/compose.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/guide.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/init.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/inspect.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/manifest_ops.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/validate.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/commands/wrapper.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/__init__.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/composition.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/ids.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/io.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/manifest_store.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/markdown.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/runtime.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/template.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/validation.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/core/versioning.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/models/__init__.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/models/envelope.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/src/pptx_cli/models/manifest.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/tests/conftest.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/tests/test_cli.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/tests/test_schema.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/tests/test_versioning.py +0 -0
- {pptx_cli-1.3.2 → pptx_cli-1.3.4}/uv.lock +0 -0
|
@@ -51,6 +51,34 @@ For consulting-style decks, write a **ghost deck** first — a title-only
|
|
|
51
51
|
outline where each slide title states the takeaway (not the topic). The titles
|
|
52
52
|
alone should tell a coherent story. See `references/mckinsey-style.md`.
|
|
53
53
|
|
|
54
|
+
### Working from a YAML input file
|
|
55
|
+
|
|
56
|
+
When the user provides a YAML (or similar structured) file that already
|
|
57
|
+
contains slide content, treat it as the authoritative source. The file
|
|
58
|
+
typically defines `slides:` with per-slide fields such as `title`, `body`,
|
|
59
|
+
`notes`, `table`, `chart`, and `image`.
|
|
60
|
+
|
|
61
|
+
**Carry over every field.** Walk through each slide in the input and map
|
|
62
|
+
every field into the deck spec. The most common mistake is silently dropping
|
|
63
|
+
fields that do not map to a placeholder — especially `notes`. Always include:
|
|
64
|
+
|
|
65
|
+
- `title` and `body` → map to the layout's `title` and `content_1`
|
|
66
|
+
- `notes` → map to the slide-level `notes:` key in the deck spec
|
|
67
|
+
- `table` → map to a `{ kind: table, ... }` content block
|
|
68
|
+
- `chart` → map to a `{ kind: chart, ... }` content block
|
|
69
|
+
- `image` → map to a `{ kind: image, ... }` content block
|
|
70
|
+
|
|
71
|
+
**Do not summarize, rewrite, or omit content** unless the user explicitly
|
|
72
|
+
asks for editing. The goal is faithful conversion from the input format to
|
|
73
|
+
a template-bound deck spec, not reinterpretation.
|
|
74
|
+
|
|
75
|
+
**Checklist before building:** after writing the deck spec, verify that:
|
|
76
|
+
|
|
77
|
+
1. The number of slides matches the input.
|
|
78
|
+
2. Every `notes:` block from the input appears in the spec.
|
|
79
|
+
3. Every table, chart, and image from the input is present.
|
|
80
|
+
4. Source attributions are preserved.
|
|
81
|
+
|
|
54
82
|
### Step 1 — Initialize the manifest (one-time setup)
|
|
55
83
|
|
|
56
84
|
Check if a manifest package already exists. If not, initialize from the
|
|
@@ -46,6 +46,18 @@ def copy_to_clipboard(text: str) -> bool:
|
|
|
46
46
|
# ---------------------------------------------------------------------------
|
|
47
47
|
|
|
48
48
|
_GENERIC_SCHEMA = """\
|
|
49
|
+
<output-format>
|
|
50
|
+
IMPORTANT: Your output MUST be a YAML deck spec, not a binary .pptx file.
|
|
51
|
+
Do NOT attempt to generate PowerPoint XML, base64 data, or any format
|
|
52
|
+
other than the YAML shown below. The `pptx deck build` CLI tool handles
|
|
53
|
+
all PowerPoint rendering — you only provide the YAML.
|
|
54
|
+
|
|
55
|
+
Preferred: offer the YAML as a downloadable file (e.g. a download link or
|
|
56
|
+
file attachment named "deck.yaml") so the user can save it directly.
|
|
57
|
+
Fallback: emit a single ```yaml code block the user can copy-paste into
|
|
58
|
+
a .yaml file and then run `pptx deck build -f deck.yaml`.
|
|
59
|
+
</output-format>
|
|
60
|
+
|
|
49
61
|
<slide-schema>
|
|
50
62
|
Use this schema to draft presentation content. Layout assignment and
|
|
51
63
|
template binding happen later, so focus on the slides themselves.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx-deck-builder/references/excal-diagrams.md
RENAMED
|
File without changes
|
{pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx-deck-builder/references/mckinsey-style.md
RENAMED
|
File without changes
|
{pptx_cli-1.3.2 → pptx_cli-1.3.4}/.github/skills/pptx-deck-builder/references/pptx-workflow.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|