Paperclip에서 실제 브라우저부터 서버, 데이터베이스, runner까지 검증하는 E2E 평가를 추가·확장합니다. 테스트 데이터와 판정 조건, 증거를 기존 보고서에 연결합니다.
- 전체 사용자 작업 흐름의 평가 추가
- 테스트 데이터와 판정 조건 갱신
- 평가 보고서에 스크린샷과 산출물 추가
아이디어나 글을 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.
아이디어, 게시물, 글, 업무 요청을 Paperclip 스킬 카탈로그에 추가할 형태로 정리합니다. 먼저 카탈로그와 GitHub 등에서 기존 스킬을 찾습니다. 적합한 스킬이 있으면 외부 참조로 등록하고, 일부만 맞으면 출처를 밝혀 응용합니다. 사용할 만한 스킬이 없으면 새로 만듭니다. 직접 작성할 때는 SKILL.md와 사용 예시를 준비하고 카탈로그 정보 재생성, 검증, 테스트, PR 작성까지 진행합니다.
반복해서 사용하는 절차를 Paperclip에서 배포할 스킬로 만들 때 유용합니다. 외부 스킬을 중복 작성하지 않고 카탈로그에 추가하거나, 입력부터 완성 결과까지의 예시를 첨부해 검토를 요청할 때도 활용합니다.
Paperclip 개발 환경과 pnpm 등의 도구를 사용합니다. 외부 참조를 검증하려면 GitHub 연결이 필요하며 재배포가 가능한 라이선스인지 확인합니다. 기본값은 optional이며 bundled는 명시적인 지정이 필요합니다. 회사 전용 스킬은 대상에서 제외합니다.
이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.
AI가 SKILL.md의 내용만을 근거로 4가지 관점에서 판정했습니다. 스타 수나 인기도는 판정에 넣지 않았습니다.
총점은 각 항목을 A=25점, B=15점, C=5점으로 더한 값입니다. 2026년 10월 20일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.
설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
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.
.agents/skills/ or skills/, with no catalog machinery.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
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.
Search in this order; stop when you have a clear winner.
grep -i '<topic>' packages/skills-catalog/generated/catalog.json
ls packages/skills-catalog/catalog/{bundled,optional}/*/
.agents/skills/, skills/, and issue
history (gh search issues / Paperclip board) for prior work on the topic.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:
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.browser,
content, docs, finance, paperclip-operations, product, quality,
research, software-development). New categories are allowed but must be
lowercase kebab-case slugs.^[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>.
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.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.
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.
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.
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:
EXPECTED_BUNDLED_KEYS or EXPECTED_OPTIONAL_KEYS
(alphabetical order);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.
Follow the prepare-paperclip-pr skill (.agents/skills/prepare-paperclip-pr/)
against paperclipai/paperclip master. The diff should contain exactly:
generated/catalog.json,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.
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).slug across bundled and optional fails the build, not just
duplicate keys.bundled kind and defaultInstall are independent axes; don't set
defaultInstall: true casually on optional skills.commit is
pinned — prefer upstream tags for ref.아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Paperclip에서 실제 브라우저부터 서버, 데이터베이스, runner까지 검증하는 E2E 평가를 추가·확장합니다. 테스트 데이터와 판정 조건, 증거를 기존 보고서에 연결합니다.
Paperclip Runner의 동작 평가에 판정 조건, 실행 대상, 보고서 검증 데이터를 추가하고 증거와 실행 이력을 남겨 검증합니다.
실제 브라우저로 웹페이지와 앱을 조작하며 화면과 동작을 검증합니다. 스크린샷, 간단한 양식 입력, 오류 및 통신 기록으로 문제 재현과 결과 확인을 돕습니다.
Paperclip에서 할당받은 AgentMail 수신함으로 작업에 연결된 메일을 확인하고, 새 메일 전송과 답장, 전송 결과 확인까지 수행합니다.
GitHub, GitLab, Perforce 변경의 검토 의견, 자동 검사 실패와 설명 누락을 확인하고, 할 일을 정리하며 요청에 따라 수정과 처리된 스레드 해결을 지원합니다.
구상이나 기존 저장소를 바탕으로 AI 에이전트의 역할, 보고 체계, 작업 인계를 정리하고 규격에 맞는 회사 또는 팀 패키지를 만듭니다.