Paperclip에서 실제 브라우저부터 서버, 데이터베이스, runner까지 검증하는 E2E 평가를 추가·확장합니다. 테스트 데이터와 판정 조건, 증거를 기존 보고서에 연결합니다.
- 전체 사용자 작업 흐름의 평가 추가
- 테스트 데이터와 판정 조건 갱신
- 평가 보고서에 스크린샷과 산출물 추가
새 기능과 수정 사항이 사용자에게 미치는 영향과 필요한 조치를 정리합니다. 독자와 게시 채널에 맞춰 변경 기록, 블로그, 앱 내 알림, 소셜 미디어 공지를 작성합니다.
Write a release announcement — changelog, blog post, in-app note, or social post — that leads with user impact, names the audience, and includes upgrade/migration steps without filler.
release-announcement는 새 기능과 수정 사항을 사용자가 받을 영향을 설명하는 출시 공지로 정리합니다. 먼저 무엇이 바뀌었는지, 누구에게 해당하는지, 어떤 조치가 필요한지 정리합니다. 이후 변경 기록, 개발자 블로그, 앱 내 알림, 소셜 미디어에 맞춰 분량과 구성을 조정합니다. 업데이트나 이전 절차, 알려진 문제와 우회 방법을 포함한 릴리스 노트도 작성할 수 있습니다.
새 버전 출시나 기능의 정식 제공 시작을 알릴 때 사용합니다. 호환성을 깨는 변경으로 영향을 받는 사용자와 대응 절차를 명시해야 할 때도 유용합니다. 하나의 출시 소식을 여러 채널에 전할 경우에는 대상 독자별로 원고를 나누어 정리합니다.
사용자에게 영향이 없는 내부 변경이나 아직 개발 중인 미완성 출시는 대상에 포함하지 않습니다. Paperclip에서 Cases 기능이 활성화되어 있으면 공지 원고를 사례에도 저장합니다.
이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.
AI가 SKILL.md의 내용만을 근거로 4가지 관점에서 판정했습니다. 스타 수나 인기도는 판정에 넣지 않았습니다.
총점은 각 항목을 A=25점, B=15점, C=5점으로 더한 값입니다. 2026년 10월 20일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.
설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Write the channel-appropriate announcement for a release without churn. Different surfaces need different shapes: a changelog entry is not a blog post is not a social card. The bar is: a reader of the chosen surface can decide in under 30 seconds whether this release affects them, and if so what to do.
When this skill runs inside Paperclip and experimental.enableCases is enabled,
emit durable release-content cases before handing off the copy. Cases preserve
the inspectable output; the issue coordinates the work.
Use skills/paperclip/references/cases.md for the API contract. Include
X-Paperclip-Run-Id on writes when PAPERCLIP_RUN_ID is set. If the API returns
403 Cases are disabled, report that limitation and continue with the requested
copy artifact.
Upsert the parent release case first when it does not already exist:
{
"caseType": "release",
"key": "paperclip-release:vYYYY.MDD.P",
"title": "Paperclip vYYYY.MDD.P release",
"status": "in_progress",
"fields": {
"schema_version": 1,
"version": "vYYYY.MDD.P",
"release_date": "YYYY-MM-DD",
"release_patch": 0,
"stable": true,
"channels": ["blog_post", "tweet_storm"],
"artifacts": {
"changelog_path": "releases/vYYYY.MDD.P.md",
"publish_url": null
}
}
}
For a dev blog, upsert a child case with parentCaseId set to the release case:
{
"caseType": "blog_post",
"key": "paperclip-release:vYYYY.MDD.P:blog-post",
"title": "Paperclip vYYYY.MDD.P launch post",
"status": "in_review",
"parentCaseId": "<release-case-id>",
"fields": {
"schema_version": 1,
"version": "vYYYY.MDD.P",
"slug": "paperclip-vYYYY-MDD-P",
"word_count_target": 650,
"target_audience": ["operators", "developers"],
"requires_screenshot": false,
"links": {
"release_notes": "releases/vYYYY.MDD.P.md",
"publish_url": null
},
"sections": ["hook", "whats_new", "upgrade", "whats_next"]
}
}
For social output, upsert a sibling child case:
{
"caseType": "tweet_storm",
"key": "paperclip-release:vYYYY.MDD.P:tweet-storm",
"title": "Paperclip vYYYY.MDD.P tweet storm",
"status": "in_review",
"parentCaseId": "<release-case-id>",
"fields": {
"schema_version": 1,
"version": "vYYYY.MDD.P",
"post_count": 1,
"channel": "x",
"target_audience": ["operators", "contributors"],
"links": {
"release_notes": "releases/vYYYY.MDD.P.md",
"publish_url": null
},
"review": {
"needs_human_copy_paste": true,
"approved_by": null
}
}
}
Write the produced copy to PUT /api/cases/:caseId/documents/body with
format: "markdown" and a changeSummary. Fetch the latest document revision
and pass baseRevisionId when updating an existing body document.
| Audience | Best channel | Tone |
|---|---|---|
| Existing power users | Changelog, in-app note | Terse, factual, links |
| Engineering teams adopting your API | Release notes, dev blog | Examples, migration steps, version pins |
| Prospective customers | Landing page, marketing blog | Story arc, problem → solution, social proof |
| Broad audience | Social post, email newsletter | One-sentence pitch, link to depth |
| Internal team | Slack/Discord post | What changed, who to ping if it breaks |
Pick the audience for this writeup. One release often needs several writeups; do not blend them.
Whatever the channel, lead with:
Everything else is depth that supports those three.
## v1.42.0 — 2026-05-26
### Added
- <feature> — <one-line user benefit>. ([#1234](link))
### Changed
- <change> — <one-line impact>. ([#1235](link))
### Fixed
- <bug> — <one-line user-visible symptom>. ([#1236](link))
### Deprecated
- <thing>. Replaced by <thing>. Removal planned for v<x>.
### Breaking
- <change>. **Migration:** <one-line> or <link to guide>.
Same as changelog, plus:
You can now export to CSV beats We've added CSV export.60% faster cold start beats much faster. Cite the methodology.**Breaking:** prefix. Repeat in the email/social channel.아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Paperclip에서 실제 브라우저부터 서버, 데이터베이스, runner까지 검증하는 E2E 평가를 추가·확장합니다. 테스트 데이터와 판정 조건, 증거를 기존 보고서에 연결합니다.
Paperclip Runner의 동작 평가에 판정 조건, 실행 대상, 보고서 검증 데이터를 추가하고 증거와 실행 이력을 남겨 검증합니다.
실제 브라우저로 웹페이지와 앱을 조작하며 화면과 동작을 검증합니다. 스크린샷, 간단한 양식 입력, 오류 및 통신 기록으로 문제 재현과 결과 확인을 돕습니다.
Paperclip에서 할당받은 AgentMail 수신함으로 작업에 연결된 메일을 확인하고, 새 메일 전송과 답장, 전송 결과 확인까지 수행합니다.
GitHub, GitLab, Perforce 변경의 검토 의견, 자동 검사 실패와 설명 누락을 확인하고, 할 일을 정리하며 요청에 따라 수정과 처리된 스레드 해결을 지원합니다.
구상이나 기존 저장소를 바탕으로 AI 에이전트의 역할, 보고 체계, 작업 인계를 정리하고 규격에 맞는 회사 또는 팀 패키지를 만듭니다.