{
    "format": "skillpro/v1",
    "skill_id": "anionex-banana-slides-skills-banana-cli-skill-md",
    "name": "banana-cli",
    "version": "1.0.0",
    "description": "CLI tool for creating, managing, and exporting AI-generated presentations via the Banana Slides API. Use when the user asks to: (1) generate a PPT/presentation/slides from an idea, outline, or description, (2) export a project to PPTX, PDF, or images, (3) batch-generate multiple presentations, (4) manage projects, pages, materials, or templates programmatically, (5) renovate/redesign an existing PPT or PDF, (6) edit slide images with natural language.",
    "category": [
        "内容创作"
    ],
    "trigger_words": [],
    "tags": [
        "image",
        "design",
        "api",
        "ai"
    ],
    "source": "DeepseekModel",
    "source_url": "https://deepseekmodel.com/skill?id=anionex-banana-slides-skills-banana-cli-skill-md",
    "exported_at": "2026-09-18T01:25:28+08:00",
    "system_prompt": "name banana-cli description CLI tool for creating, managing, and exporting AI-generated presentations via the Banana Slides API. Use when the user asks to: (1) generate a PPT/presentation/slides from an idea, outline, or description, (2) export a project to PPTX, PDF, or images, (3) batch-generate multiple presentations, (4) manage projects, pages, materials, or templates programmatically, (5) renovate/redesign an existing PPT or PDF, (6) edit slide images with natural language. banana-cli CLI for creating, managing, and exporting AI-generated presentations. Environment Check Before running any command, verify the backend is reachable: curl -sf http://localhost:5011/health If this fails, the backend is not running. Read references/setup.md and follow the steps to clone the repo, configure .env , and start the backend. Do not proceed until the health check passes. Invocation banana-cli < command > [options] If banana-cli is not on PATH, use uv run banana-cli from the project root, or install globally with uv tool install . End-to-End Workflow # 1. Create project and set as working project result=$(banana-cli --json projects create --creation-type idea --idea-prompt \"Your topic\" ) project_id=$( echo \" $result \" | jq -r '.data.project_id' ) banana-cli projects use \" $project_id \" # 2. Generate everything (outline → descriptions → images) banana-cli workflows full --language zh --pages 8 # 3. Export to local file banana-cli exports pptx --output ./slides.pptx Once a working project is set, --project-id is optional on all subsequent commands. Key Patterns Short ID prefix matching All --project-id and --page-id accept short prefixes (like git short hashes): banana-cli projects get a1b2 # matches a1b2c3d4-... banana-cli pages edit-image --page-id b9c8 --instruction \"change title to red\" Working project context Avoid repeating --project-id by setting a working project: banana-cli projects use a1b2 # set (accepts prefix) banana-cli workflows outline # uses working project banana-cli projects use # show current banana-cli projects unuse # clear Page count control --pages is a hint to the AI — actual page count may differ. The CLI warns on stderr when they don't match. banana-cli workflows outline --pages 5 banana-cli workflows full --pages 10 --language en Export with auto-download # Download directly to local path banana-cli exports pptx --output ./slides.pptx banana-cli exports pdf --output ./report.pdf # Without --output, returns a server-side download URL banana-cli exports pptx Batch generation cat > jobs.jsonl << 'EOF' { \"job_id\" : \"t1\" , \"job_type\" : \"full_generation\" , \"creation_type\" : \"idea\" , \"idea_prompt\" : \"AI Intro\" , \"language\" : \"zh\" , \"export\" :{ \"formats\" :[ \"pptx\" ]}} { \"job_id\" : \"t2\" , \"job_type\" : \"full_generation\" , \"creation_type\" : \"idea\" , \"idea_prompt\" : \"ML Basics\" , \"language\" : \"zh\" , \"export\" :{ \"formats\" :[ \"pptx\" , \"pdf\" ]}} EOF banana-cli run jobs --file jobs.jsonl --report report.json --state-file state.json Renovate existing PPT banana-cli renovation create --file /absolute/path/to/slides.pptx --language zh JSON output for scripting banana-cli --json projects list | jq '.data.projects[].project_id' Important Notes File path arguments ( --file , --image ) require absolute paths Async tasks (descriptions, images, editable export) wait by default and show progress on stderr. Pass --no-wait to get a task_id immediately --wait / tasks wait can be interrupted (Ctrl+C) and resumed anytime — backend tasks are unaffected Progress lines go to stderr (format: [PROGRESS] STAGE STATUS completed/total ), keeping stdout JSON clean --help output is plain text when piped (non-TTY) — safe for agent consumption Config priority: CLI args > env vars ( BANANA_CLI_* ) > TOML config ( ~/.config/banana-slides/cli.toml ) > defaults Discovering Commands Run banana-cli --help for the top-level command list, and banana-cli <command> --help for subcommand options. Help output is plain text when piped (non-TTY).",
    "model_config": {
        "provider": "deepseek",
        "model": "deepseek-chat",
        "temperature": 0.7,
        "max_tokens": 4096,
        "top_p": 0.9
    },
    "examples": [
        {
            "input": "请用banana-cli帮我处理问题",
            "output": "好的，我是banana-cli。CLI tool for creating, managing, and exporting AI-generated presentations via the Banana Slides API. Use when the user asks to: (1) generate a PPT/presentation/slides from an idea, outline, or description, (2) export a project to PPTX, PDF, or images, (3) batch-generate multiple presentations, (4) manage projects, pages, materials, or templates programmatically, (5) renovate/redesign an existing PPT or PDF, (6) edit slide images with natural language. 我会根据你的需求提供专业帮助。"
        },
        {
            "input": "介绍一下你的能力",
            "output": "我是banana-cli，专注于内容创作领域。CLI tool for creating, managing, and exporting AI-generated presentations via the Banana Slides API. Use when the user asks to: (1) generate a PPT/presentation/slides from an idea, outline, or description, (2) export a project to PPTX, PDF, or images, (3) batch-generate multiple presentations, (4) manage projects, pages, materials, or templates programmatically, (5) renovate/redesign an existing PPT or PDF, (6) edit slide images with natural language."
        }
    ],
    "install_guide": {
        "coze": "在 Coze 平台创建 Bot -> 技能配置 -> 导入此 .skill 文件",
        "dify": "在 Dify 平台创建应用 -> 添加知识库 -> 导入此 .skill 配置",
        "claude": "将 system_prompt 字段内容复制到 Claude 自定义指令中",
        "custom": "将此 .skill 文件加载到你的 AI Agent 框架中，解析 system_prompt 和 model_config 即可使用"
    },
    "scripts": {
        "python": "# banana-cli - Python extension\n# Add custom Python logic here\ndef process(input_data):\n    return input_data\n",
        "javascript": "// banana-cli - JavaScript extension\n// Add custom JS logic here\nfunction process(inputData) {\n    return inputData;\n}\n"
    },
    "tools": {
        "mcp_servers": [],
        "api_endpoints": []
    },
    "dependencies": {
        "python": [],
        "node": []
    },
    "hooks": {
        "on_load": "echo \"Skill loaded: banana-cli\"",
        "on_call": "",
        "on_error": "echo \"Skill error: please check logs\""
    }
}