Skip to content

feat: add Agent Skills for AIPPT generation - #12

Open
lucasxing1 wants to merge 2 commits into
LRriver:mainfrom
lucasxing1:codex/add-agent-skills
Open

feat: add Agent Skills for AIPPT generation#12
lucasxing1 wants to merge 2 commits into
LRriver:mainfrom
lucasxing1:codex/add-agent-skills

Conversation

@lucasxing1

Copy link
Copy Markdown

Summary

  • add a universal AIPPT Agent Skill with a structured input contract, three execution modes, preflight checks, and output validation
  • add dedicated Claude Code and Codex Skill formats that use the existing main.py workflow
  • document installation and usage in both English and Chinese
  • keep credentials in the ignored local config.yaml and explicitly exclude them from prompts, commands, diffs, and logs

Validation

  • python main.py --help
  • Skill validation for all three new Skill directories
  • ruff format --check api src tests main.py
  • pytest --cov=api --cov=src --cov-report=term-missing (583 passed, 5 skipped; 82.27% coverage)
  • staged-diff secret, privacy, and sensitive-file scan

Closes #11

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟡 Changes recommended

The new skill docs include a misleading credential preflight requirement for --from-prompt runs and the Universal skill “Input Contract” isn’t presented as a consistently machine-parseable contract.

Once you've addressed the issues Copilot identified, you can request another Copilot review.

Pull request overview

Adds three Agent Skill definitions (Universal, Claude Code, Codex) to drive AIPPT’s existing main.py CLI workflow from agent environments, plus README/README_zh documentation for installing and using those skills while keeping credentials in local ignored config.yaml.

Changes:

  • Added Universal/Codex/Claude Code SKILL.md definitions for running AIPPT via the CLI with preflight checks and output validation guidance.
  • Documented skill installation/usage in English and Chinese READMEs.
  • Codified credential-handling guidance (keep secrets in ignored config.yaml, avoid exposing keys).
File summaries
File Description
skills/universal/aippt/SKILL.md Universal skill contract + execution/validation guidance for main.py.
skills/codex/aippt/SKILL.md Codex-tailored skill instructions for running the CLI and validating outputs.
skills/claude-code/aippt/SKILL.md Claude Code-tailored skill instructions for running the CLI and validating outputs.
README.md Documents Agent Skills formats and install/copy instructions.
README_zh.md Chinese documentation for Agent Skills formats and install/copy instructions.
Review details
  • Files reviewed: 5/5 changed files
  • Comments generated: 4
  • Review effort level: Lite

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread skills/universal/aippt/SKILL.md Outdated
Comment on lines +27 to +37
source_path: path-to-markdown-or-text
mode: full | prompt-only | from-prompt
num_pages: positive-integer
language: output-language
style: presentation-style
audience: target-audience
aspect_ratio: 16:9 | 4:3 | 1:1
quality: 1K | 2K | 4K
output_dir: local-directory
prompt_path: path-to-prompts-json
export_pdf: true | false

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed in a60508b. I replaced the pseudo-schema with a concrete, parseable YAML example, documented the allowed values separately, and standardized the field on from_prompt with an explicit mapping to --from-prompt.

Comment thread skills/universal/aippt/SKILL.md Outdated
2. Use Python 3.11 or 3.12. Prefer `python3` when `python` is unavailable.
3. If dependencies are missing, install `requirements.txt` in a virtual environment.
4. Confirm the source file exists and is not empty.
5. Confirm a local, ignored `config.yaml` is available before full generation.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed in a60508b. The universal skill now requires the local ignored config.yaml for both full and from-prompt, while prompt-only remains config-free.

Comment thread skills/codex/aippt/SKILL.md Outdated
2. Gather the source path, page count, language, style, audience, aspect ratio, quality, and output directory. Use AIPPT defaults when options are omitted.
3. Use Python 3.11 or 3.12. If dependencies are missing, create a virtual environment and install `requirements.txt`.
4. Confirm the source is a non-empty UTF-8 Markdown or text file.
5. Require an ignored local `config.yaml` before full generation.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed in a60508b. The Codex workflow now performs the same config preflight for both image-generating modes: full and from-prompt.

Comment thread skills/claude-code/aippt/SKILL.md Outdated
2. Gather the source path, page count, language, style, audience, aspect ratio, quality, and output directory. Use AIPPT defaults for unspecified options.
3. Use Python 3.11 or 3.12. Create a virtual environment and install `requirements.txt` when dependencies are unavailable.
4. Confirm the source is a non-empty UTF-8 Markdown or text file.
5. For full generation, require an ignored local `config.yaml`.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed in a60508b. The Claude Code workflow now also requires the local ignored config.yaml for full and from-prompt.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Feature]: Add Agent Skill Support (Universal, Claude Code, Codex)

2 participants