CLAUDE LABJP
FORK — Claude Code 2.1.212 changes what /fork does: it copies your conversation into a new background session with its own row in claude agents, so you can keep working. The old in-session subagent is now /subtaskLIMITS — WebSearch calls are now capped at 200 per session by default, and subagent spawns get the same 200 ceiling, so a runaway search or delegation loop stops on its ownMCPBG — MCP tool calls running past two minutes now move to the background automatically, keeping the session usable. Tune the threshold with CLAUDE_CODE_MCP_AUTO_BACKGROUND_MSPLANFIX — Fixed plan mode auto-running file-modifying Bash commands such as touch and rm without a permission prompt or an SDK canUseTool callbackSONNET5 — Claude Sonnet 5 is running on introductory pricing of $2 per million input tokens and $10 per million output. After August 31 it moves to $3 and $15IPO — Bankers are reportedly lining up investor meetings for Anthropic ahead of a possible public listing as soon as OctoberFORK — Claude Code 2.1.212 changes what /fork does: it copies your conversation into a new background session with its own row in claude agents, so you can keep working. The old in-session subagent is now /subtaskLIMITS — WebSearch calls are now capped at 200 per session by default, and subagent spawns get the same 200 ceiling, so a runaway search or delegation loop stops on its ownMCPBG — MCP tool calls running past two minutes now move to the background automatically, keeping the session usable. Tune the threshold with CLAUDE_CODE_MCP_AUTO_BACKGROUND_MSPLANFIX — Fixed plan mode auto-running file-modifying Bash commands such as touch and rm without a permission prompt or an SDK canUseTool callbackSONNET5 — Claude Sonnet 5 is running on introductory pricing of $2 per million input tokens and $10 per million output. After August 31 it moves to $3 and $15IPO — Bankers are reportedly lining up investor meetings for Anthropic ahead of a possible public listing as soon as October
Articles/Claude Code
Claude Code/2026-04-28Intermediate

Automate Presentation Slides in 30 Minutes with Claude Code Skills

Learn how to combine Claude Code Skills with Markdown intermediate format to generate presentation slides from planning to Google Slides export in just 30 minutes.

Claude Code196Skills7Google SlidesAutomation38Presentations2

If you've spent time creating a presentation, you know exactly where the hours disappear: not in thinking about what to say, but in formatting, adjusting text boxes, repositioning images, and aligning everything perfectly. The creation process becomes pure mechanical work—something a computer should handle instead.

Claude Code Skills change this entirely. You write your structure and content in Markdown, and minutes later you have a complete, properly formatted Google Slides presentation ready to present. The 30 minutes of layout work vanishes.

The Problem with Manual Slide Creation

Working in Google Slides directly, most effort goes toward tasks that have nothing to do with your message:

  • Selecting and adjusting templates and color schemes
  • Resizing and repositioning text boxes
  • Inserting and aligning images
  • Ensuring consistent slide heights
  • Matching font sizes across slides

These aren't design decisions—they're mechanical tasks. You're paying human attention to work that's purely procedural.

Claude Code Skills let you eliminate this entire category of work.

The Complete Workflow: Three Steps

Step 1: Write Your Structure and Content in Markdown

Focus entirely on what matters: what you're communicating.

# Product Strategy 2026
 
## Opening
- Market conditions demand rapid response
- Three new features establish competitive advantage
 
## Feature 1: Real-Time Sync
- Problem: Multi-user editing creates latency issues
- Solution: WebSocket + CRDT implementation
- Target: Sub-100ms latency for 99.9% of use cases
 
## Feature 2: AI-Powered Suggestions
- Leverages Claude API for automatic recommendations
- User approval workflow for safety
- Target error rate: <3%
 
## Rollout Timeline
- Q2: Internal testing
- Q3: Beta launch
- Q4: Full release
 
## Success Metrics
- Adoption: 60%+
- User satisfaction: 4.5/5+

This Markdown file becomes the source document for your entire presentation.

Step 2: Execute Your Claude Code Skill

Define a Skill with instructions like this:

Convert this Markdown into Google Slides API JSON format.

Requirements:
- Convert each H2 section to one slide
- Auto-format bullet points as bullet text
- Extract title from H1
- Use consistent blue color palette
- Font: Google Sans (fallback: Arial)

Output format:
{
  "presentation": {
    "title": "...",
    "slides": [
      {
        "title": "...",
        "content": [
          {"type": "text", "value": "...", "fontSize": 14}
        ]
      }
    ]
  }
}

Run the Skill, and Claude generates the complete JSON automatically.

Step 3: Upload to Google Slides via API

Use Python and the Google Slides API to turn the JSON into a live presentation:

from google.oauth2.service_account import Credentials
from googleapiclient.discovery import build
import json
 
# Authenticate with service account
credentials = Credentials.from_service_account_file(
    'service_account.json',
    scopes=['https://www.googleapis.com/auth/presentations']
)
slides_service = build('slides', 'v1', credentials=credentials)
 
# Create presentation
presentation = slides_service.presentations().create(
    body={'title': 'Auto-Generated Slides'}
).execute()
 
presentation_id = presentation['presentationId']
 
# Load generated JSON
with open('generated_slides.json', 'r') as f:
    slide_data = json.load(f)
 
# Add each slide
for index, slide_content in enumerate(slide_data['slides']):
    request_body = {
        'requests': [
            {
                'createSlide': {
                    'objectId': f'slide_{index}',
                    'insertIndex': index,
                    'slideLayoutReference': {'predefinedLayout': 'BLANK'}
                }
            }
        ]
    }
    slides_service.presentations().batchUpdate(
        presentationId=presentation_id,
        body=request_body
    ).execute()
 
print(f"Presentation created: https://docs.google.com/presentation/d/{presentation_id}")

Run this script and you have an editable Google Slides presentation.

Real Time Investment

PhaseManual ApproachClaude Code Automation
Planning & writing15 min15 min
Creating slides & layout20 min0 min (automatic)
Color & typography10 min0 min (automatic)
Uploading to Google Slides5 min5 min
Total50 min20 min

Once your outline is solid, the automated portion takes under 3 minutes.

Practical Tips for Using Claude Code

1. Use an Intermediate Format

The "Markdown → JSON → Google Slides" pipeline means each step is independently editable. You can inspect and tweak the JSON before uploading if needed.

2. Predefine Your Style Templates

Instead of describing design each time, create reusable style names: "Blue Corporate," "Minimal Tech," "Colorful Creative." This makes Skills more reusable and faster.

3. Handle Images Separately

Rather than trying to embed images in the automated process, leave image_placeholder fields in the JSON and replace them manually in Google Slides afterward. This 90% automation + 10% manual adjustment approach is far more practical than attempting 100% automation.

How This Compares to Other Tools

  • Canva's auto-generation: Easier to use, but less customizable
  • PowerPoint auto-generators: On-premises only, no cloud support
  • Slidesgo templates: Still requires extensive manual editing
  • Claude Code + Google Slides API: Full customization + template inheritance

Scaling This Approach

Once you've established the workflow, you can expand it:

  • Multiple style templates: Sales decks, engineering-focused, executive summaries
  • Auto-refining existing presentations: Convert old slides to Markdown and regenerate with new styles
  • Team sharing: Share structure as Markdown, each person generates their own styled version

The shift from manual work to automation starts with skepticism. But once the pattern is established, your presentation creation speed transforms completely. The gain isn't just that tedious work disappears—it's that iteration becomes fast. Receive feedback, update your Markdown, and have a refreshed slide deck in 5 minutes.

Share

Thank You for Reading

Claude Lab is ad-free, supported entirely by members like you. We publish practical guides daily with implementation code, benchmarks, and production-ready patterns. If you've found it useful, we'd love to have you on board.

  • Copy-paste ready implementation code
  • New advanced guides published daily
  • $5/mo or $10 for lifetime access
View Membership →

If you found this article helpful, a small tip ($1.50) would mean a lot to us. Your support helps keep this site ad-free and covers server and hosting costs.

Related Articles

Claude Code2026-07-17
The String I Approved Wasn't the String I Read — Testing a Relayed Permission Prompt with Deceptive Characters
I pushed bidi overrides and zero-width characters through my own approval relay. NFKC normalization caught 0%. Here is why, and the implementation that catches 100% with zero false positives.
Claude Code2026-07-17
My Nightly Subagents Ran, and I Couldn't Retrace Them — Trimming the Logs That --forward-subagent-text Unleashed
Subagent text and thinking can now flow into stream-json output, and unattended log volume climbs sharply with it. Here are measured numbers, a three-tier retention filter that keeps only what postmortems need, and a correlation ID design that survives missing fields.
Claude Code2026-07-05
Rolling Out Trusted Devices for a Small Team: Enrollment, Preflight, and Rotation
How to introduce Team/Enterprise Trusted Devices for a 2-5 person team: device enrollment, an unattended-run preflight gate, and closing the gaps that appear during device rotation and offboarding.
📚RECOMMENDED BOOKS
Build a Large Language Model (From Scratch)
Sebastian Raschka
LLM Dev
Prompt Engineering for LLMs
Berryman & Ziegler
Prompting
AI Engineering
Chip Huyen
AI Eng
* Contains affiliate links
See all →