본문으로 건너뛰기
cccskills
무료GitHub에 공개한국어 소개

create-paperclip-bundled-skill

아이디어나 글을 Paperclip 공개 카탈로그용 스킬로 정리합니다. 기존 스킬 조사부터 참조 등록이나 신규 작성, 사용 예시, 검증, PR 작성까지 진행합니다.

원문원문 설명 보기

Turn an idea, tweet, or task into a skill in the Paperclip skills catalog (packages/skills-catalog). Use when asked to FIND or MAKE a skill and publish it as a bundled/optional catalog skill: research prior art, reference or author it, add examples, regenerate the manifest, open a PR.

연동 도구X (Twitter)
AI 평가70점/ 100설치 방법 보기

이럴 때 유용합니다

  • 아이디어나 글을 스킬로 만들 때
  • 외부 스킬을 카탈로그에 등록할 때
  • 출처를 밝히고 유사 스킬을 응용할 때
  • 사용 예시와 검증을 갖춘 PR 작성

한국어 소개

할 수 있는 일

아이디어, 게시물, 글, 업무 요청을 Paperclip 스킬 카탈로그에 추가할 형태로 정리합니다. 먼저 카탈로그와 GitHub 등에서 기존 스킬을 찾습니다. 적합한 스킬이 있으면 외부 참조로 등록하고, 일부만 맞으면 출처를 밝혀 응용합니다. 사용할 만한 스킬이 없으면 새로 만듭니다. 직접 작성할 때는 SKILL.md와 사용 예시를 준비하고 카탈로그 정보 재생성, 검증, 테스트, PR 작성까지 진행합니다.

이럴 때 유용합니다

반복해서 사용하는 절차를 Paperclip에서 배포할 스킬로 만들 때 유용합니다. 외부 스킬을 중복 작성하지 않고 카탈로그에 추가하거나, 입력부터 완성 결과까지의 예시를 첨부해 검토를 요청할 때도 활용합니다.

사용 예시

  • “이 글의 절차를 카탈로그에 추가할 스킬로 만들어 주세요.”
  • “같은 용도의 기존 스킬을 찾아 외부 참조로 등록해 주세요.”

주의 사항

Paperclip 개발 환경과 pnpm 등의 도구를 사용합니다. 외부 참조를 검증하려면 GitHub 연결이 필요하며 재배포가 가능한 라이선스인지 확인합니다. 기본값은 optional이며 bundled는 명시적인 지정이 필요합니다. 회사 전용 스킬은 대상에서 제외합니다.

이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.

객관 평가

AI가 SKILL.md의 내용만을 근거로 4가지 관점에서 판정했습니다. 스타 수나 인기도는 판정에 넣지 않았습니다.

지시의 명확성언제 쓰고 무엇을 하는지 알 수 있는가
A양호공개 카탈로그에 스킬을 추가하며 신규 작성 전에 기존 스킬을 찾도록 명시합니다.
절차의 구체성절차·입출력·예시가 구체적으로 적혀 있는가
B일부 부족검색 명령과 등록 형식은 구체적이지만 제공된 발췌에는 검증과 PR 작성의 상세 절차가 없습니다.
안전성전송·삭제·명령 실행 등을 명시하고 있는가
B일부 부족GitHub 조회와 PR 작성을 수반하지만 제공된 자료에는 외부 기록 전 확인 절차가 없습니다.
도입의 용이성필요한 도구나 API 키가 적고 적혀 있는가
B일부 부족xc 사용 가능 여부 확인과 대안은 있지만 gh 등 개발 도구의 설치 절차는 없습니다.

총점은 각 항목을 A=25점, B=15점, C=5점으로 더한 값입니다. 2026년 10월 20일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.

평가가 다르다고 생각되면 재검토를 요청하기

어느 항목이 왜 다르다고 생각하는지 적어 주세요. 로그인은 필요 없습니다. SKILL.md와 대조해 평가를 다시 만들고 이곳에 반영합니다.

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

포함된 파일(3)

  • SKILL.md10.6 KB
  • examples/external-reference.md2.7 KB
  • examples/new-local-skill.md3.1 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Create a Paperclip Bundled Skill

Take source material — a tweet, a task description, a blog post, "make a skill that does X" — and land it as a skill in the Paperclip skills catalog (packages/skills-catalog/), delivered as a reviewed PR. The catalog is the shelf every Paperclip company browses and installs from, so the bar is: correct metadata, useful instructions, worked examples, and a clean validation run.

The core rule is FIND before MAKE: if a good skill already exists (in the catalog, in this repo, or published on GitHub), reference or adapt it instead of writing a duplicate from scratch.

When to use

  • A human sends a tweet/link/idea and asks for it to become a Paperclip skill.
  • A task asks to bundle an existing repo skill into the catalog.
  • A task asks to add an external published skill to the catalog.

When not to use

  • The skill is company-private (belongs in that company's library via the Skills UI/API, not the shipped catalog).
  • You only need a repo-internal agent skill for working on Paperclip itself — that goes in .agents/skills/ or skills/, with no catalog machinery.

Step 0 — Capture the source material

Understand exactly what the skill should teach before writing anything.

Tweets / X links. Use the xc CLI (X API client). Paperclip engineering agent environments ship it preinstalled and pre-authenticated; it is not a tool you install or mint credentials for yourself. Check availability before relying on it:

command -v xc && xc whoami    # on PATH and authenticated? if not, use the fallback below
xc get <post-url-or-id> --json        # the post itself (conversation_id, author)
xc search 'conversation_id:<id>' --archive --json   # rest of the thread (>7 days old needs --archive)
xc user <username>                    # author context
xc search '<topic keywords>' -n 30    # related discussion

If xc is not on PATH, is unauthenticated, or the account lacks read access (the check above fails for any reason), delegate the fetch to a teammate with X/Twitter access (e.g. the Content Strategist agent) via a child issue: give them the URL and ask for full text of the post + thread

  • any linked content.

Other sources. Fetch linked articles/READMEs directly. Record the source URL — it goes in the skill body or PR description as attribution.

Distill: what is the repeatable procedure? What inputs does it take? What does "done" look like? If the source is just an aspiration ("agents should write better commit messages"), you are authoring the procedure yourself — say so in the PR.

Step 1 — FIND: search for an existing skill

Search in this order; stop when you have a clear winner.

  1. Already in the catalog? Avoid duplicates (duplicate slugs fail the build):
    grep -i '<topic>' packages/skills-catalog/generated/catalog.json
    ls packages/skills-catalog/catalog/{bundled,optional}/*/
    
  2. Already in this repo? Check .agents/skills/, skills/, and issue history (gh search issues / Paperclip board) for prior work on the topic.
  3. Published on GitHub? Skills are conventionally a directory with a SKILL.md:
    gh search code --filename SKILL.md "<topic>" --limit 20
    gh search repos "<topic> skill" --limit 20
    
    Also check known collections (e.g. anthropics/skills) and do a web search for <topic> agent skill SKILL.md.

Judge candidates by: does the SKILL.md actually contain the procedure (not a stub)? Is it maintained? What does it bundle (scripts raise the trust level)? Is the license compatible with redistribution? Then pick a path:

  • Good external skill exists → add it as an external reference (Step 2A). It stays attributed to and pinned at the upstream repo.
  • Partial match → author a local skill (Step 2B) that adapts the idea; credit the source with a link in the SKILL.md body.
  • Nothing usable → author a new local skill (Step 2B).

Step 2 — Choose kind, category, and slug

  • kind: default to optional. Use bundled only when the skill should ship to every Paperclip company by default — that needs explicit human/board direction, not your judgment call.
  • category: reuse an existing directory when one fits (browser, content, docs, finance, paperclip-operations, product, quality, research, software-development). New categories are allowed but must be lowercase kebab-case slugs.
  • slug: lowercase kebab-case (^[a-z0-9]+(-[a-z0-9]+)*$), unique across the whole catalog (both kinds).

The skill lives at packages/skills-catalog/catalog/<kind>/<category>/<slug>/ and its canonical key is paperclipai/<kind>/<category>/<slug>.

Step 2A — External reference path (catalog-ref.json)

The directory contains only catalog-ref.json (a directory with both catalog-ref.json and SKILL.md fails the build). The manifest builder fetches the pinned files from GitHub at build time and inventories them.

# Pin the exact commit for the chosen ref (tag or branch)
gh api repos/<owner>/<repo>/commits/<ref> --jq .sha
{
  "source": {
    "type": "github",
    "hostname": "github.com",
    "owner": "<owner>",
    "repo": "<repo>",
    "ref": "<tag-or-branch>",
    "commit": "<40-char sha from above>",
    "path": "<dir inside the repo containing SKILL.md, or ''>"
  },
  "files": ["SKILL.md", "references/**", "scripts/run.py"],
  "defaultInstall": false,
  "recommendedForRoles": ["researcher"],
  "requires": ["python3"],
  "tags": ["topic", "keywords"]
}

Rules the builder enforces:

  • files entries are exact relative paths or dir/** globs; SKILL.md must be included and must have frontmatter with name and description.
  • If the upstream frontmatter declares key/slug, they must match the catalog placement — otherwise pick a matching slug or use the local path.
  • commit must be a full 40-hex SHA; every listed file must be ≤ 1 MiB.
  • recommendedForRoles, requires, tags live in the JSON (there is no local SKILL.md to carry them).

See catalog/optional/research/last30days/catalog-ref.json for the live example, and examples/external-reference.md next to this skill.

Step 2B — Author a local catalog skill

Layout:

catalog/<kind>/<category>/<slug>/
├── SKILL.md          # required entrypoint
├── examples/         # 1–2 worked examples (Step 3)
├── references/       # optional deep-dive docs
├── scripts/          # optional — raises trust level, avoid unless needed
└── assets/           # optional templates/images

SKILL.md frontmatter (all validated by the builder):

---
name: <slug>
description: >
  40–300 chars. Routing logic, not marketing: what it does, when to use it,
  when not to.
key: paperclipai/<kind>/<category>/<slug>
recommendedForRoles:
  - engineer            # non-empty; used for staffing suggestions
tags:
  - topic               # non-empty; used for browse/search
---

Optional frontmatter: defaultInstall: true (only for skills every new company should get), requires: [node, python3, ...] for runtime deps.

Body: follow docs/guides/agent-developer/writing-a-skill.md — "When to use" / "When not to use" sections, concrete commands over prose, supporting detail in references/. If the skill came from a tweet or external source, link it in the body for attribution.

Trust level is derived from files, not declared: any scripts/ file makes the skill scripts_executables (install becomes audit-gated and you must extend the scriptBearing expectation in src/shipped-catalog.test.ts); assets/ or non-markdown files make it assets; markdown-only skills stay markdown_only. Prefer markdown-only.

Step 3 — Write 1–2 worked examples

Create examples/ inside the skill directory with one or two markdown files, each a complete input → application → output walkthrough (realistic input, the skill's steps applied, the finished artifact). These ship with the skill so installers can judge it before running it, and they keep the trust level at markdown_only because they are .md files.

Name them by scenario, e.g. examples/rewrite-release-note.md.

Step 4 — Regenerate the manifest and update tests

Never hand-edit generated/catalog.json; it is deterministic build output.

pnpm --filter @paperclipai/skills-catalog build:manifest   # regenerates generated/catalog.json
pnpm --filter @paperclipai/skills-catalog validate         # must report no errors

(External references need network access to GitHub during these steps.)

Then update packages/skills-catalog/src/shipped-catalog.test.ts:

  • add the new key to EXPECTED_BUNDLED_KEYS or EXPECTED_OPTIONAL_KEYS (alphabetical order);
  • if the skill bears scripts, add it to the scriptBearing expectation.
pnpm --filter @paperclipai/skills-catalog test

The test suite also enforces the ≤300-char frontmatter description budget across the repo and the ≥40-char description / non-empty roles+tags rules for every catalog skill.

Step 5 — Open the PR

Follow the prepare-paperclip-pr skill (.agents/skills/prepare-paperclip-pr/) against paperclipai/paperclip master. The diff should contain exactly:

  1. the new skill directory (SKILL.md + examples/ + supporting files, or catalog-ref.json),
  2. the regenerated generated/catalog.json,
  3. the shipped-catalog.test.ts expectation update.

In the PR body: link the source material (tweet URL, upstream repo), state whether this is a new skill / adaptation / external reference, and note the trust level. Reference PR #10410 (simplified-english) as the shape of a minimal optional-skill PR.

Gotchas

  • generated/catalog.json staleness is a validation error — always rerun build:manifest after any file change inside the skill directory (the inventory carries per-file sha256 hashes).
  • Duplicate slug across bundled and optional fails the build, not just duplicate keys.
  • Symlinks inside a skill directory must resolve within it; directory symlinks are rejected — copy files in.
  • The bundled kind and defaultInstall are independent axes; don't set defaultInstall: true casually on optional skills.
  • For external references the builder fetches from GitHub on every manifest build; a moved/deleted upstream breaks the build, which is why commit is pinned — prefer upstream tags for ref.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

add-product-e2e-eval

무료요약 있음AI 평가 90점

Paperclip에서 실제 브라우저부터 서버, 데이터베이스, runner까지 검증하는 E2E 평가를 추가·확장합니다. 테스트 데이터와 판정 조건, 증거를 기존 보고서에 연결합니다.

  • 전체 사용자 작업 흐름의 평가 추가
  • 테스트 데이터와 판정 조건 갱신
  • 평가 보고서에 스크린샷과 산출물 추가
paperclipai/paperclip10.6만2026년 10월 22일 업데이트

add-runner-eval

무료요약 있음AI 평가 90점

Paperclip Runner의 동작 평가에 판정 조건, 실행 대상, 보고서 검증 데이터를 추가하고 증거와 실행 이력을 남겨 검증합니다.

  • Runner 동작 평가를 추가합니다
  • 정상 및 잘못된 증거로 판정을 검증합니다
  • 실행 대상 목록과 지속 평가를 갱신합니다
paperclipai/paperclip10.6만2026년 10월 22일 업데이트

agent-browser

무료요약 있음AI 평가 90점

실제 브라우저로 웹페이지와 앱을 조작하며 화면과 동작을 검증합니다. 스크린샷, 간단한 양식 입력, 오류 및 통신 기록으로 문제 재현과 결과 확인을 돕습니다.

  • UI 변경 후 화면을 확인합니다
  • JavaScript로 렌더링된 내용을 읽습니다
  • 화면 문제와 오류를 재현합니다
paperclipai/paperclip10.6만2026년 10월 22일 업데이트

agentmail

무료요약 있음AI 평가 100점

Paperclip에서 할당받은 AgentMail 수신함으로 작업에 연결된 메일을 확인하고, 새 메일 전송과 답장, 전송 결과 확인까지 수행합니다.

  • 담당 작업에 연결된 메일을 확인합니다
  • 할당된 수신함에서 새 메일을 보냅니다
  • 대화의 특정 메시지에 답장합니다
paperclipai/paperclip10.6만2026년 10월 22일 업데이트

check-pr

무료요약 있음AI 평가 80점

GitHub, GitLab, Perforce 변경의 검토 의견, 자동 검사 실패와 설명 누락을 확인하고, 할 일을 정리하며 요청에 따라 수정과 처리된 스레드 해결을 지원합니다.

  • 변경 사항을 제출하기 전에 점검합니다
  • 실패한 검사와 수정할 항목을 확인합니다
  • 사람과 봇의 검토 의견을 정리합니다
paperclipai/paperclip10.6만2026년 10월 22일 업데이트

company-creator

무료요약 있음AI 평가 100점

구상이나 기존 저장소를 바탕으로 AI 에이전트의 역할, 보고 체계, 작업 인계를 정리하고 규격에 맞는 회사 또는 팀 패키지를 만듭니다.

  • 구상에서 에이전트 회사를 만듭니다
  • 저장소를 팀 구성으로 정리합니다
  • 역할 분담과 작업 인계를 설계합니다
paperclipai/paperclip10.6만2026년 10월 22일 업데이트

paperclipai의 스킬 모두 보기

이 스킬의 문제 신고