Communitygithub.com

ComposioHQ/paperjsx

구조화된 JSON 입력을 사용하여 PPTX 프레젠테이션, DOCX 문서, XLSX 스프레드시트 및 PDF 보고서를 생성합니다.

paperjsx란 무엇인가요?

PaperJSX는 JSON 레이아웃 명세에서 전문 문서를 생성하는 에이전트 스킬입니다. PPTX, DOCX, XLSX, PDF 등 네 가지 주요 형식을 지원하며, 기존 파일을 편집하지 않고 새로운 파일만 생성합니다. 사용자가 "프레젠테이션 만들어 줘", "엑셀 차트 생성해 줘", "PDF 인보이스 만들어 줘" 등과 같은 요청을 할 때 트리거됩니다. 각 형식별 전용 패키지(json-to-pptx, json-to-docx, json-to-xlsx, json-to-pdf)를 npm으로 설치한 후, JSON 명세를 작성하고 Node.js 스크립트로 실행하는 간단한 파이프라인으로 동작합니다. 생성된 파일의 유효성을 확인하는 검증 단계도 포함되어 있어, 에이전트가 안정적으로 문서를 생성할 수 있도록 돕습니다. 이 스킬은 Claude Code, Cursor, Codex 등 다양한 AI 에이전트 플랫폼에서 사용할 수 있도록 설계되었습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/ComposioHQ/awesome-codex-skills/tree/main/paperjsx

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

PaperJSX 문서 생성

JSON 레이아웃 명세로 전문 문서를 생성합니다. PaperJSX는 생성 전용입니다. 새로운 파일을 만들 뿐 기존 파일을 편집하지 않습니다.

트리거

사용자가 다음과 같은 요청을 할 때 이 스킬을 사용하세요:

  • 프레젠테이션 만들기 또는 슬라이드 생성
  • PPTX 또는 PowerPoint 파일 만들기
  • Word 문서 또는 DOCX 만들기
  • 차트가 포함된 Excel 스프레드시트 생성
  • JSON에서 PPTX, JSON에서 DOCX, 또는 JSON에서 XLSX 파일 만들기
  • PDF 인보이스, 보고서, 또는 차트 문서 생성

설치

형식에 맞는 패키지를 설치하세요:

# 프레젠테이션
npm install @paperjsx/json-to-pptx

# Word 문서
npm install @paperjsx/json-to-docx

# 스프레드시트
npm install @paperjsx/json-to-xlsx

# PDF 문서
npm install @paperjsx/json-to-pdf

작동 방식

  1. references/json-schema.md의 스키마에 맞는 JSON 레이아웃 명세를 작성합니다.
  2. JSON을 PaperJSX 엔진에 전달하는 Node.js 스크립트를 작성합니다.
  3. 스크립트를 실행하여 출력 파일을 생성합니다.
  4. 출력 파일이 존재하고 크기가 0바이트가 아닌지 확인합니다.

명령형 PaperJSX API 코드를 작성하지 마십시오. 실행 모델은 항상: JSON 명세 입력 → 문서 파일 출력입니다.

예제: PPTX 생성

import { PaperEngine } from "@paperjsx/json-to-pptx";
import fs from "node:fs";

const spec = {
  type: "Document",
  meta: { title: "Q4 리뷰" },
  slides: [
    {
      type: "Slide",
      children: [
        { type: "Text", content: "2025년 4분기 사업 리뷰", style: { fontSize: 36, bold: true } }
      ]
    }
  ]
};

const buffer = await PaperEngine.render(spec);
fs.writeFileSync("presentation.pptx", buffer);
console.log("presentation.pptx 생성 완료");

예제: DOCX 생성

import { renderToDocx } from "@paperjsx/json-to-docx";
import fs from "node:fs";

const result = await renderToDocx({
  type: "DocxDocument",
  pageSize: "a4",
  orientation: "portrait",
  pages: [
    {
      elements: [
        { type: "heading", level: 1, text: "분기별 보고서" },
        { type: "paragraph", text: "여기에 섹션 내용을 입력합니다." }
      ]
    }
  ]
});

fs.writeFileSync("report.docx", result.buffer);
console.log("report.docx 생성 완료");

예제: XLSX 생성

import { SpreadsheetEngine } from "@paperjsx/json-to-xlsx";
import fs from "node:fs";

const spec = {
  meta: { title: "수익 데이터", creator: "PaperJSX" },
  sheets: [{
    name: "수익",
    rows: [
      { cells: [{ value: "분기" }, { value: "수익" }] },
      { cells: [{ value: "2026년 1분기" }, { value: 420000 }] },
      { cells: [{ value: "2026년 2분기" }, { value: 510000 }] }
    ]
  }]
};

const buffer = await SpreadsheetEngine.render(spec);
fs.writeFileSync("revenue.xlsx", buffer);
console.log("revenue.xlsx 생성 완료");

검증

파일을 생성한 후에는 항상 다음을 확인하세요:

import fs from "node:fs";

const stats = fs.statSync("output.pptx");
if (stats.size === 0) {
  throw new Error("생성된 파일이 비어 있습니다");
}
console.log(`출력 파일 크기: ${stats.size} 바이트`);

엔진에서 오류가 발생하면 전체 오류 메시지를 사용자에게 표시하세요.

스키마 참조

지원되는 모든 형식의 전체 JSON 레이아웃 명세 스키마는 references/json-schema.md를 참조하세요.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

ComposioHQ/-21risk-automation

Automate 21risk tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/-2chat-automation

Automate 2chat tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/ably-automation

Automate Ably tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abstract-automation

Automate Abstract tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abuselpdb-automation

Automate Abuselpdb tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/abyssale-automation

Automate Abyssale tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/accelo-automation

Automate Accelo tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/accredible-certificates-automation

Automate Accredible Certificates tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/acculynx-automation

Automate Acculynx tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/active-campaign-automation

Automate ActiveCampaign tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/addresszen-automation

Automate Addresszen tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adobe-automation

Automate Adobe tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adrapid-automation

Automate Adrapid tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/adyntel-automation

Automate Adyntel tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/aeroleads-automation

Automate Aeroleads tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/aero-workflow-automation

Automate Aero Workflow tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/affinda-automation

Automate Affinda tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/affinity-automation

Automate Affinity tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/agencyzoom-automation

Automate Agencyzoom tasks via Rube MCP (Composio). Always search tools first for current schemas.

ComposioHQ/agent-deep-links

Build, validate, and troubleshoot deep links for Codex, Cursor, VS Code, Visual Studio, and similar tools. Use when users ask for clickable links (especially in Slack) that open threads, files, folders, or app settings.

관련 스킬