Skill · Sales and Marketing · Creative and Design

Social Batch Review Calendar

Replace PDFs and chat recaps with a Type app your client can actually review: a weekly calendar with each post's first paragraph and full image, copyable captions, downloadable visuals, and the approver on every card.

At a glance

Social Batch Review Calendar is an AI skill for sales & marketing and creative & design teams that you can use in Claude Code, Codex, or type.com.

Updated

What it does

  • The three rules: the caption is real copyable text, the visual sits under its caption, and every card names the approver and the state.
  • Calendar and list views, account filters, full-resolution image download, character counts and day-of-check notes.
  • A working React template used with real clients, plus a script that packs images into the app under the source-size cap.

Before you start

  • A Type app (React + Vite starter)
  • Python 3 with Pillow for scripts/encode_visuals.py

See an example

Example output from a sample run. Unless the example says otherwise, company names and figures are sample data.

What the client receives in chat:

Review calendar: <app link>
Week 1 · Tue · Company LinkedIn · Launch: shared review calendar (In review, Dana approves)
Week 1 · Thu · Founder LinkedIn · Why we stopped sending PDFs (Draft, Dana approves)
All captions are also in "November batch: captions" in this space.
Social Batch Review Calendar template in calendar view: a week of placeholder posts, each card showing the account, state, approver, first paragraph and full image.

How to use Social Batch Review Calendar

  1. type.com: Choose Use Skill to add Social Batch Review Calendar to your type.com workspace.
  2. Claude Code: Download the skill and extract it into ~/.claude/skills/social-batch-review-calendar/ (or .claude/skills/social-batch-review-calendar/ in a project). Then ask Claude to use Social Batch Review Calendar.
  3. Codex: Download the skill and extract it into ~/.agents/skills/social-batch-review-calendar/ (or .agents/skills/social-batch-review-calendar/ in a repository). Then ask Codex to use Social Batch Review Calendar.

AI agents can read this page as Markdown or fetch the raw SKILL.md.

Frequently asked questions

What is Social Batch Review Calendar?

Social Batch Review Calendar is an AI skill for sales & marketing and creative & design teams that you can use in Claude Code, Codex, or type.com.

What does Social Batch Review Calendar do?

Replace PDFs and chat recaps with a Type app your client can actually review: a weekly calendar with each post's first paragraph and full image, copyable captions, downloadable visuals, and the approver on every card.

What do I need to use Social Batch Review Calendar?

A Type app (React + Vite starter); Python 3 with Pillow for scripts/encode_visuals.py.

Can I use Social Batch Review Calendar in Claude Code or Codex?

Yes. Social Batch Review Calendar is a standard Agent Skills folder with a SKILL.md file. Download it and extract it into ~/.claude/skills/ for Claude Code or ~/.agents/skills/ for Codex.

Who created Social Batch Review Calendar?

Barbara Jovanovic from Startup Cookie created Social Batch Review Calendar. The type.com team reviews every skill before it is published in the Skills Library.

  • AI List Inclusion OutreachGet named on the "best X" lists that ChatGPT, Claude, Perplexity and Google AI answers already cite for your buyers' questions. Ranks the lists, drafts a three-line request for each, and tracks follow-ups.
  • Transparent Lower ThirdOn-brand animated name tags for testimonial videos, delivered as transparent ProRes 4444 files that drop straight onto a CapCut or Premiere timeline, with brand pulled from your site and a frame-by-frame check.
  • Event Post Fact-CheckDraft post-conference posts with every speaker, affiliation, session, sponsorship, photo and hashtag checked against the official program, keeping what the program proves separate from what someone remembers.
  • Reference Style Model"We want our LinkedIn to sound like them." Turns a reference company's public posts into a style spec: numbered moves, each proved by a real line, and a pre-publish checklist. It transfers form, never their facts.
  • Founder GhostwriterGhostwrite LinkedIn and X posts in a founder's real voice, grounded only in things they actually said. Every post has a verbatim anchor, passes six gates, and is read by fresh-context reviewers before you see it.
  • Slop EditLine-edit any draft so it stops reading as AI-written. A mechanical lint catches the surface patterns, a sentence-by-sentence pass fixes agentless and vague constructions, and every reviewer correction becomes a rule.

AI for marketing teams: a practical guide

Browse the technical files
---
name: social-batch-review-calendar
description: Turn a settled batch of social posts into an interactive Type app where the team and client can review, copy and publish. It has a weekly calendar showing each post's first paragraph and full image, a list view, copyable captions, downloadable full-resolution visuals, and the approver and status on every card. Use when a batch of 3+ posts across one or more accounts is ready for review or scheduling, instead of a PDF, a doc, image previews or a chat recap.
---

# Social Batch Review Calendar

Reviewers need to **read** each caption, **see** its visual, **copy** the text and **download** the image, and know **who approves** it. PDFs, Word docs, chat recaps and image-only previews fail at least one of those. This skill builds a small static Type app that does all four, from a template that has been used with real clients.

## The three rules
1. **The caption is real, selectable, copyable text.** Never an image of text, never only inside a table cell.
2. **The visual sits directly under its caption**, uncropped, with a Download button that saves the full-resolution file.
3. **Every card names the account, the approver and the state.**

## When to use
- The batch's text is settled enough for review (not mid-brainstorm).
- Three or more posts, or more than one account.
- If the user only needs one post, deliver the caption and visual inline in chat.

## Inputs
For each post: number, week, day (time only if agreed), account, handle, story/topic, approver, state, caption (paragraphs separated by blank lines), visuals (primary + labelled alternatives), notes (open decisions and day-of checks). Plus a title and an **approval-boundary** line ("Nothing here is approved for publishing until its card says Approved").

## Build steps
1. **Collect the images** into one folder, named so their stems are valid identifiers (`post1.png`, `post1_alt.png`). Keep the publishable resolution (for example 1080×1350 portrait, 1200×1200 square, 1600×900 landscape).
2. **Create a Type app** in the space (React + Vite starter). Don't rewrite the starter's `src/styles.css` variables or `src/main.tsx`.
3. **Encode the visuals.** Type apps store source text only, so images ship as data URLs. Run with Type's managed execution tool:
   ```bash
   python3 scripts/encode_visuals.py ./images ./<app>/src
   ```
   This writes `visuals-a.ts`, `visuals-b.ts`, … (each under the source-file size cap, default 480 KB) and `visuals.ts`, which re-exports them. Each export is `{ src, file, w, h }`. Full resolution is kept by default so Download gives the publishable file. If one image is too big for a single file, the script tells you to re-run with `--max-edge 1600`.
4. **Copy `assets/App.tsx` to `src/App.tsx`.** Edit only the "Batch content" block: `TITLE`, `BOUNDARY`, `ACCOUNTS`, `ACCOUNT_TONE`, `WEEKS`, `POSTS`. Each post's `visuals[].key` is the export name from step 3.
5. **Append `assets/calendar-styles.css`** to `src/styles.css`.
6. **Build and check.** Type-check passes; then open the preview and verify:
   - every week shows Mon–Fri columns with posts on their days,
   - each tile shows the account chip, state, **full uncropped image** and the **complete first paragraph**, plus "+ N more paragraphs · open",
   - opening a post shows every paragraph, Copy caption, character count, all visuals with Download buttons, and notes,
   - account filters and the Calendar/List switch work,
   - Copy puts the exact caption on the clipboard (the template falls back to a selection copy where an app viewer blocks the Clipboard API, and says so if both are blocked),
   - Download saves the full-resolution file; where a viewer blocks downloads, the card tells the reviewer to right-click the image and choose Save image as,
   - on a narrow window the week scrolls sideways instead of squashing cards.
7. **Publish the app and post the link**, with one line per post (account · day · story). Keep a durable copy of all captions outside the app (a doc in the space or the thread itself). The app must never be the only copy.

## Updating
When a caption changes, edit `POSTS` and republish. When an image changes, replace the file in the images folder and re-run `encode_visuals.py`; it removes stale `visuals-*.ts` files. Update the caption doc at the same time.

## What not to do
- No captions in a table: tables truncate and can't be copied cleanly.
- No dashboard metrics, charts or progress bars. This is a review surface.
- Don't crop images on the calendar tiles; reviewers need to see the whole visual.
- Don't invent posting times. If times aren't agreed, show days only.
- Don't deliver the batch as a doc and expect the reviewer to find the visuals. Every post must have its caption and visual together.

## Files
- `assets/App.tsx`: the working component (calendar, list, detail, copy, download, filters) with two placeholder posts.
- `assets/calendar-styles.css`: append to the app's stylesheet. Uses the starter's semantic variables, so light and dark mode both work.
- `scripts/encode_visuals.py`: encodes and splits images into `visuals-*.ts`. Needs Pillow.