human-readablewriting

글쓰기를 위한 에이전트 스킬

코딩 에이전트에 설치하는 글쓰기 스킬입니다. 연구 메모와 재무 분석을 비롯한 실무 글을 다듬는 데 씁니다.

설치 방법

분야별 수정 전후

원문과 실제 수정본의 같은 대목을 발췌했습니다.

Trip.com 연구의 퇴사율 해석

실제 스킬 수정 예시

전체 원문·수정본발췌문 보기

원문

하이브리드 근무 정책 검토를 위한 Trip.com 퇴사율 근거
인사 책임자가 검토할 연구 결과

Bloom·Han·Liang의 2024년 Nature 연구는 상하이 Trip.com의 항공권·IT 부문에서 엔지니어링·마케팅·재무 업무를 맡은 대졸 직원 1,612명을 대상으로 했다. 인턴과 수습기간 중인 신입 직원은 제외했다. 이 단일 기업에서 생일의 날짜가 홀수인지 짝수인지에 따라 무작위 배정한 결과, 홀수일 출생자 792명은 수요일·금요일에 재택근무를 선택할 수 있고 나머지 사흘은 출근하는 처치집단에, 짝수일 출생자 820명은 주 5일 출근하는 대조집단에 속했다. 이틀의 재택근무는 의무가 아니었다. 처음 자원한 518명은 2021년 8월 9일이 속한 주에, 자원하지 않았던 나머지 1,094명은 9월 13일이 속한 주에 실험에 참여했다.

실험기간의 배정집단별 퇴사율은 대조집단 7.20%, 처치집단 4.80%였고 차이의 P값은 0.043이었다. 연간 퇴사율이 아니라 실험기간의 퇴사율이다. 2.40퍼센트포인트 차이를 대조집단 퇴사율에 대한 상대 감소율로 나타내면 약 33%다. 명목상 6개월 실험은 코로나19 확진자 발생으로 전 직원에게 재택근무가 허용된 2022년 1월 21일에 사실상 종료됐다. 다만 퇴사율 그림 설명에는 1월 23일까지 추적한 자료라고 적혀 있다. 무작위 배정된 정책에 2년간 노출된 실험은 아니다.

재택근무 허용 대상으로 배정된 직원의 실제 이용률은 수요일·금요일의 이용 기회 기준으로 자원자 약 55%, 비자원자 약 40%였다. 공휴일·개인 휴가·인정된 결근을 제외한 비율로, 전체 직원이나 주중 모든 날을 분모로 삼은 수치가 아니다. 전형적인 이용은 주 1일 정도였다. 따라서 퇴사율 비교가 추정하는 것은 선택형 정책에 배정된 효과이지 매주 이틀씩 실제 재택근무한 효과가 아니다.

자사 정책 검토에 대한 판단

작성자는 업무와 통근 조건이 얼마나 유사한지 검토한다는 전제 아래, 대졸 사무직을 대상으로 비슷한 선택형 정책의 시범 운영을 검토할 근거가 된다고 판단한다. 이는 정책 판단이지, 다른 기업에서도 같은 퇴사율 감소가 발생하거나 완전 원격근무가 동등하다는 연구 결과가 아니다.

수정본

하이브리드 근무 정책 검토를 위한 Trip.com 퇴사율 근거
인사 책임자가 검토할 연구 결과
연구 대상과 배정 방식

Bloom·Han·Liang의 2024년 Nature 연구는 상하이 Trip.com의 항공권·IT 부문에서 엔지니어링·마케팅·재무 업무를 맡은 대졸 직원 1,612명을 대상으로 했다. 인턴과 수습기간 중인 신입 직원은 제외했다.

이 단일 기업에서 생일의 날짜가 홀수인지 짝수인지에 따라 직원을 무작위로 배정했다.

  • 홀수일 출생자 792명은 처치집단에 속했다. 이들은 수요일·금요일에 재택근무를 선택할 수 있었고, 나머지 사흘은 출근했다.
  • 짝수일 출생자 820명은 대조집단에 속했다. 이들은 주 5일 출근했다.

처치집단의 이틀 재택근무는 의무가 아니었다. 처음 자원한 518명은 2021년 8월 9일이 속한 주에, 자원하지 않았던 나머지 1,094명은 9월 13일이 속한 주에 실험에 참여했다.

퇴사율 결과

실험기간의 배정집단별 퇴사율은 대조집단 7.20%, 처치집단 4.80%였고, 차이의 P값은 0.043이었다. 이 수치는 연간 퇴사율이 아니라 실험기간의 퇴사율이다. 2.40퍼센트포인트 차이를 대조집단 퇴사율에 대한 상대 감소율로 나타내면 약 33%다.

명목상 6개월 실험은 코로나19 확진자 발생으로 전 직원에게 재택근무가 허용된 2022년 1월 21일에 사실상 종료됐다. 다만 퇴사율 그림 설명에는 1월 23일까지 추적한 자료라고 적혀 있다. 따라서 이 실험은 무작위 배정된 정책에 2년간 노출된 실험이 아니다.

실제 재택근무 이용률과 해석의 범위

재택근무 허용 대상으로 배정된 직원의 실제 이용률은 수요일·금요일의 이용 기회를 기준으로 자원자 약 55%, 비자원자 약 40%였다. 이 비율은 공휴일·개인 휴가·인정된 결근을 제외하고 계산했으며, 전체 직원이나 주중 모든 날을 분모로 삼은 수치가 아니다. 전형적인 이용은 주 1일 정도였다.

따라서 퇴사율 비교가 추정하는 것은 선택형 정책에 배정된 효과다. 매주 이틀씩 실제로 재택근무한 효과를 추정한 것이 아니다.

자사 정책 검토에 대한 판단

작성자는 업무와 통근 조건이 얼마나 유사한지 검토한다는 전제 아래, 대졸 사무직을 대상으로 비슷한 선택형 정책의 시범 운영을 검토할 근거가 된다고 판단한다. 이는 정책 판단이다. 다른 기업에서도 같은 퇴사율 감소가 발생한다거나 완전 원격근무가 동등하다는 점은 이 연구의 결과가 아니다.

원문

실험기간의 배정집단별 퇴사율은 대조집단 7.20%, 처치집단 4.80%였고 차이의 P값은 0.043이었다. 연간 퇴사율이 아니라 실험기간의 퇴사율이다. 2.40퍼센트포인트 차이를 대조집단 퇴사율에 대한 상대 감소율로 나타내면 약 33%다. 명목상 6개월 실험은 코로나19 확진자 발생으로 전 직원에게 재택근무가 허용된 2022년 1월 21일에 사실상 종료됐다. 다만 퇴사율 그림 설명에는 1월 23일까지 추적한 자료라고 적혀 있다. 무작위 배정된 정책에 2년간 노출된 실험은 아니다.

수정본

실험기간의 배정집단별 퇴사율은 대조집단 7.20%, 처치집단 4.80%였고, 차이의 P값은 0.043이었다. 이 수치는 연간 퇴사율이 아니라 실험기간의 퇴사율이다. 2.40퍼센트포인트 차이를 대조집단 퇴사율에 대한 상대 감소율로 나타내면 약 33%다.

명목상 6개월 실험은 코로나19 확진자 발생으로 전 직원에게 재택근무가 허용된 2022년 1월 21일에 사실상 종료됐다. 다만 퇴사율 그림 설명에는 1월 23일까지 추적한 자료라고 적혀 있다. 따라서 이 실험은 무작위 배정된 정책에 2년간 노출된 실험이 아니다.

출처·실행 정보

claude-sonnet-5-5 · 2.1.322 (Claude Code). 원문 보존 검토는 별도 에이전트가 맡았습니다.

Nicholas Bloom, Ruobing Han, James Liang의 Hybrid working from home improves retention without damaging performance, Nature 630, 920–925 (2024), DOI 10.1038/s41586-024-07500-2에 근거한다. CC BY 4.0. 연구 결과를 골라 프로젝트가 직접 쓴 영문·국문 메모로 바꾸고 정책 판단을 더했다. 국문 메모는 논문의 공인 번역이 아니다.

원문·출처·실행 기록 (JSON) · 프로젝트 MIT 라이선스 · 고지

이익 증가와 영업활동현금흐름 감소

가상 사례 · 피드백 후 재수정한 예시

전체 원문·수정본발췌문 보기

원문

분기 이익 및 영업활동현금흐름 검토

이 문서는 보고 범위가 동일한 가상 제조기업의 2025년과 2026년 2분기를 비교한다. 비교 기간은 각 연도 4월 1일부터 6월 30일까지이며 누적 실적이 아닌 분기 단독 실적이다. 모든 금액은 백만원 단위의 정확한 값이다. 당기순이익은 전년 동기 1,000 대비 200, 즉 20% 증가했으나 영업활동현금흐름은 300 감소했다. 두 분기 모두 영업활동현금흐름은 양수다. 당기순이익은 손익계산서를 재구성한 결과가 아니라 주어진 최종 이익 수치다.

현금흐름 조정

잔액 항목은 각 분기의 기초잔액, 기말잔액, 현금흐름 조정액 순으로 기재했다.

항목2025년 2분기2026년 2분기
당기순이익1,0001,200
당기순이익에 반영된 감가상각비 가산+200+240
매출채권800에서 900, 조정 -100900에서 1,300, 조정 -400
재고자산1,000에서 1,250, 조정 -2501,200에서 1,800, 조정 -600
매입채무500에서 550, 조정 +50600에서 760, 조정 +160
그 밖의 조정00
영업활동현금흐름900600

그 밖의 조정 합계는 설계상 0이며, 인수·환산·제각·재분류 또는 그 밖의 비현금 변동이 위 잔액 증감에 영향을 주지 않는다고 가정했다. 감가상각비 가산은 비현금 비용의 조정이며 현금 유입이 아니다. 이 조건에서 조정식은 각각 1,000 + 200 - 100 - 250 + 50 = 900, 1,200 + 240 - 400 - 600 + 160 = 600이다.

운전자본 관련 조정 합계는 -300에서 -840으로 바뀌었다. 추가 차감 540이 당기순이익 증가 200과 감가상각비 조정 증가 40을 웃돌았다. 영업활동현금흐름의 증감 조정은 +200 + 40 - 300 - 350 + 110 = -300이다. 마지막 세 항은 각각 매출채권 증가폭 확대, 재고자산 증가폭 확대, 매입채무 증가폭 확대의 영향을 나타낸다.

해석의 한계

현금잔액, 투자·재무활동 현금흐름, 회수 조건, 매출채권 연령 분석, 재고 계획과 이익 증가 원인은 제공되지 않았다. 미상인 값을 0으로 볼 수 없다. 이 조정만으로 고객의 연체, 재고 미판매 또는 재무적 곤경을 판단할 수 없다. 영업활동현금흐름만으로 현금잔액 증감을 알거나 유동성을 종합 평가할 수 없다.

수정본

분기 이익 및 영업활동현금흐름 검토

이 문서는 보고 범위가 동일한 가상 제조기업의 2025년 2분기와 2026년 2분기를 비교한다. 비교 기간은 각 연도 4월 1일부터 6월 30일까지이며, 누적 실적이 아닌 분기 단독 실적이다. 모든 금액은 백만원 단위의 정확한 값이다.

당기순이익은 전년 동기 1,000 대비 200, 즉 20% 증가한 1,200이다. 반면 영업활동현금흐름은 300 감소했다. 두 분기 모두 영업활동현금흐름은 양수다. 당기순이익은 손익계산서를 재구성한 결과가 아니라 주어진 최종 이익 수치다.

현금흐름 조정

잔액 항목은 각 분기의 기초잔액, 기말잔액, 현금흐름 조정액 순으로 기재했다.

항목2025년 2분기2026년 2분기
당기순이익1,0001,200
당기순이익에 반영된 감가상각비 가산+200+240
매출채권800에서 900, 조정 -100900에서 1,300, 조정 -400
재고자산1,000에서 1,250, 조정 -2501,200에서 1,800, 조정 -600
매입채무500에서 550, 조정 +50600에서 760, 조정 +160
그 밖의 조정00
영업활동현금흐름900600

그 밖의 조정 합계는 설계상 0이다. 또한 인수·환산·제각·재분류 또는 그 밖의 비현금 변동이 위 잔액 증감에 영향을 주지 않는다고 가정했다. 감가상각비 가산은 비현금 비용의 조정이며 현금 유입이 아니다. 이 조건에서 각 분기의 조정식은 다음과 같다.

  • 2025년 2분기: 1,000 + 200 - 100 - 250 + 50 = 900
  • 2026년 2분기: 1,200 + 240 - 400 - 600 + 160 = 600

운전자본 관련 조정 합계는 -300에서 -840으로 바뀌었다. 추가 차감 540이 당기순이익 증가 200과 감가상각비 조정 증가 40을 웃돌았다. 영업활동현금흐름의 증감 조정은 +200 + 40 - 300 - 350 + 110 = -300이다. 마지막 세 항은 각각 매출채권 증가폭 확대, 재고자산 증가폭 확대, 매입채무 증가폭 확대의 영향을 나타낸다.

해석의 한계

다음 정보는 제공되지 않았다.

  • 현금잔액
  • 투자활동 현금흐름과 재무활동 현금흐름
  • 회수 조건
  • 매출채권 연령 분석
  • 재고 계획
  • 이익 증가 원인

미상인 값을 0으로 볼 수 없다. 이 조정만으로는 고객의 연체, 재고 미판매 또는 재무적 곤경을 판단할 수 없다. 또한 영업활동현금흐름만으로는 현금잔액의 증감을 알 수 없고, 유동성을 종합적으로 평가할 수도 없다.

원문

이 문서는 보고 범위가 동일한 가상 제조기업의 2025년과 2026년 2분기를 비교한다. 비교 기간은 각 연도 4월 1일부터 6월 30일까지이며 누적 실적이 아닌 분기 단독 실적이다. 모든 금액은 백만원 단위의 정확한 값이다. 당기순이익은 전년 동기 1,000 대비 200, 즉 20% 증가했으나 영업활동현금흐름은 300 감소했다. 두 분기 모두 영업활동현금흐름은 양수다. 당기순이익은 손익계산서를 재구성한 결과가 아니라 주어진 최종 이익 수치다.

수정본

이 문서는 보고 범위가 동일한 가상 제조기업의 2025년 2분기와 2026년 2분기를 비교한다. 비교 기간은 각 연도 4월 1일부터 6월 30일까지이며, 누적 실적이 아닌 분기 단독 실적이다. 모든 금액은 백만원 단위의 정확한 값이다.

당기순이익은 전년 동기 1,000 대비 200, 즉 20% 증가한 1,200이다. 반면 영업활동현금흐름은 300 감소했다. 두 분기 모두 영업활동현금흐름은 양수다. 당기순이익은 손익계산서를 재구성한 결과가 아니라 주어진 최종 이익 수치다.

출처·실행 정보

claude-sonnet-5-5 · 2.1.322 (Claude Code). 통합 담당자가 검토한 재수정본입니다. 첫 수정본의 오류와 피드백도 기록에 포함했습니다.

시나리오·수치·초안은 프로젝트가 직접 작성한 가상 사례다. SEC 재무제표 안내는 개념 참고 자료이며 수치의 출처가 아니다. SEC의 그림이나 표는 재현하지 않았다.

원문·출처·실행 기록 (JSON) · 프로젝트 MIT 라이선스 · 고지

파일럿 승인 전 물류센터 자동화

가상 사례 · 실제 스킬 수정 예시

전체 원문·수정본발췌문 보기

원문

물류센터 자동화 설비투자 검토서

가상 사례. 운영총괄 및 투자심의위원회 검토용이다. 모든 수치는 설비 성능 측정값이 아닌 투자 전 가정이며, 별도 표시가 없는 금액 단위는 불변가격 기준 백만원이다.

비교 가능한 4개 구역은 각각 자동화 대상 물량을 하루 1,200건씩 연간 300일 처리한다. 수요는 고정이며 매출 증가 효과는 없다. 하루 예정 작업시간 8시간 중 실제 처리에 쓰이는 시간은 75%인 6시간이다. 2인 팀의 수작업 처리량은 실제 팀 작업시간당 200건이며, 자동화 목표는 같은 인원과 물량 구성에서 시간당 300건이다. 목표는 아직 검증되지 않았다. 목표대로라면 실제 팀 작업시간이 하루 6시간에서 4시간으로 줄어 구역당 하루 4인시, 연간 1,200인시, 전체 연간 4,800인시의 절감 작업시간이 생긴다. 예정 작업시간, 실제 팀 작업시간, 인시는 구분해야 한다.

실제 현금지출 감소는 구역당 연간 외주 인력 600시간을 청구 시간당 30,000원에 취소할 수 있다는 가정에 따른다. 감소액은 구역당 18이다. 전체 취소 시간은 2,400시간으로, 절감 작업시간 전체가 아니다. 정규직 급여는 변하지 않으며 나머지 절감 작업시간은 현금절감 없이 재배치에 쓴다. 외주비 취소 가능성도 미검증 상태다. 연간 현금지출 총감소액은 파일럿 18, 전면 도입 72다. 유지보수·소프트웨어·에너지의 연간 추가 비용은 각각 4와 12이므로 순현금절감액은 14와 60이다.

4개 구역 전면 도입의 최초 설비투자액은 240이다. 1개 구역 파일럿은 1운영연도 동안 진행하며 최초 75가 필요하다. 조건부 확장은 파일럿 설비를 재사용해도 추가 190이 들어 단계적 도입의 총투자액은 265다. 지출과 가동 개시 시점은 일치한다. 초기 가동률 상승 기간 없이 절감액이 일정하고 현금절감이 기간에 걸쳐 균등하게 발생하며, 확장은 첫 운영연도 직후 시작한다고 가정한다. 세금·감가상각·금융비용·할인·운전자본·잔존가치는 계산에서 제외한다. 전면 도입의 단순 투자회수기간은 240 / 60 = 4.00년이다. 확장 없이 파일럿만 계속 운영하면 75 / 14로 약 5.36년이다. 조건부 단계적 도입은 첫해에 14만 절감하므로 최초 지출부터 1 + (75 - 14 + 190) / 60, 약 5.18년이 걸린다.

확장 조건으로는 비교 가능한 물량 구성에서 목표 처리량 달성, 건별 오류율 0.5% 이하, 미해결 중대 안전 지적사항 없음, 파일럿 연도 중 외주 인력 600시간 취소 증빙을 제안한다. 재무팀과 운영팀은 나머지 구역의 경제성을 입증해야 하며 확장은 별도 승인이 필요하다. 경영진은 처리량과 외주비 취소 가능성이 검증되지 않았다는 이유로 파일럿 예산 75만 승인하도록 권고한다. 파일럿과 확장은 모두 승인되거나 완료되지 않았다. 파일럿은 최초 투입액이 165 적지만 단계적 도입의 총투자액은 25 많고 모형상 회수도 더 늦다. 가정한 경제성은 전면 도입이 우세하나, 현금절감 실현을 입증하기 전에 더 많은 자본을 투입하게 된다.

수정본

물류센터 자동화 설비투자 검토서

가상 사례이며, 운영총괄과 투자심의위원회의 검토용이다. 모든 수치는 설비 성능 측정값이 아니라 투자 전 가정이다. 별도 표시가 없는 금액 단위는 불변가격 기준 백만원이다.

1. 검토 대상과 결론

이 검토서는 4개 구역 전면 도입과, 1개 구역 파일럿 후 별도 승인을 거치는 조건부 확장을 비교한다.

  • 경영진은 처리량과 외주비 취소 가능성이 검증되지 않았다는 이유로 파일럿 예산 75만 승인하도록 권고한다.
  • 파일럿과 확장은 모두 승인되거나 완료되지 않았다.
  • 가정한 경제성은 전면 도입이 우세하다. 다만 전면 도입은 현금절감 실현을 입증하기 전에 더 많은 자본을 투입한다.
구분최초 투자액총투자액연간 순현금절감액단순 투자회수기간
4개 구역 전면 도입24024060240 / 60 = 4.00년
파일럿만 계속 운영(확장 없음)75751475 / 14 = 약 5.36년
조건부 단계적 도입75265첫해 14, 확장 후 60최초 지출부터 1 + (75 - 14 + 190) / 60 = 약 5.18년

파일럿은 최초 투입액이 전면 도입보다 165 적다. 반면 단계적 도입의 총투자액은 전면 도입보다 25 많고, 모형상 회수도 더 늦다.

2. 처리량과 작업시간 가정

비교 가능한 4개 구역은 각각 자동화 대상 물량을 하루 1,200건씩 연간 300일 처리한다. 수요는 고정이며 매출 증가 효과는 없다.

하루 예정 작업시간 8시간 중 실제 처리에 쓰이는 시간은 75%인 6시간이다. 2인 팀의 수작업 처리량은 실제 팀 작업시간당 200건이다. 자동화 목표는 같은 인원과 물량 구성에서 시간당 300건이며, 이 목표는 아직 검증되지 않았다.

목표대로라면 실제 팀 작업시간이 하루 6시간에서 4시간으로 줄어든다. 이때 생기는 절감 작업시간은 다음과 같다.

  • 구역당 하루 4인시
  • 구역당 연간 1,200인시
  • 전체 연간 4,800인시

예정 작업시간, 실제 팀 작업시간, 인시는 서로 다른 개념이므로 구분해서 읽어야 한다.

3. 현금절감 가정

실제 현금지출 감소는 구역당 연간 외주 인력 600시간을 청구 시간당 30,000원에 취소할 수 있다는 가정에 따른다. 이에 따른 감소액은 구역당 18이다. 외주비 취소 가능성도 검증되지 않았다.

  • 전체 취소 시간은 2,400시간이며, 절감 작업시간 전체가 아니다.
  • 정규직 급여는 변하지 않는다.
  • 나머지 절감 작업시간은 현금절감 없이 재배치에 쓴다.
구분연간 현금지출 총감소액연간 추가 비용(유지보수·소프트웨어·에너지)연간 순현금절감액
파일럿(1개 구역)18414
전면 도입(4개 구역)721260
4. 투자액과 회수기간 계산의 전제
  • 4개 구역 전면 도입의 최초 설비투자액은 240이다.
  • 1개 구역 파일럿은 1운영연도 동안 진행하며 최초 75가 필요하다.
  • 조건부 확장은 파일럿 설비를 재사용해도 추가 190이 든다. 따라서 단계적 도입의 총투자액은 265다.

계산에는 다음을 가정한다.

  • 지출과 가동 개시 시점이 일치한다.
  • 초기 가동률 상승 기간 없이 절감액이 일정하다.
  • 현금절감이 기간에 걸쳐 균등하게 발생한다.
  • 확장은 첫 운영연도 직후 시작한다.

세금, 감가상각, 금융비용, 할인, 운전자본, 잔존가치는 계산에서 제외한다.

조건부 단계적 도입은 첫해에 파일럿의 순현금절감액 14만 얻는다. 그래서 최초 지출부터 회수까지 1 + (75 - 14 + 190) / 60, 약 5.18년이 걸린다.

5. 확장 조건

확장 조건으로 다음 네 가지를 제안한다.

  1. 비교 가능한 물량 구성에서 목표 처리량을 달성한다.
  2. 건별 오류율이 0.5% 이하이다.
  3. 미해결 중대 안전 지적사항이 없다.
  4. 파일럿 연도 중 외주 인력 600시간 취소를 증빙한다.

재무팀과 운영팀은 나머지 구역의 경제성을 입증해야 한다. 확장은 별도 승인이 필요하다.

원문

비교 가능한 4개 구역은 각각 자동화 대상 물량을 하루 1,200건씩 연간 300일 처리한다. 수요는 고정이며 매출 증가 효과는 없다. 하루 예정 작업시간 8시간 중 실제 처리에 쓰이는 시간은 75%인 6시간이다. 2인 팀의 수작업 처리량은 실제 팀 작업시간당 200건이며, 자동화 목표는 같은 인원과 물량 구성에서 시간당 300건이다. 목표는 아직 검증되지 않았다. 목표대로라면 실제 팀 작업시간이 하루 6시간에서 4시간으로 줄어 구역당 하루 4인시, 연간 1,200인시, 전체 연간 4,800인시의 절감 작업시간이 생긴다. 예정 작업시간, 실제 팀 작업시간, 인시는 구분해야 한다.

수정본

비교 가능한 4개 구역은 각각 자동화 대상 물량을 하루 1,200건씩 연간 300일 처리한다. 수요는 고정이며 매출 증가 효과는 없다.

하루 예정 작업시간 8시간 중 실제 처리에 쓰이는 시간은 75%인 6시간이다. 2인 팀의 수작업 처리량은 실제 팀 작업시간당 200건이다. 자동화 목표는 같은 인원과 물량 구성에서 시간당 300건이며, 이 목표는 아직 검증되지 않았다.

목표대로라면 실제 팀 작업시간이 하루 6시간에서 4시간으로 줄어든다. 이때 생기는 절감 작업시간은 다음과 같다.

  • 구역당 하루 4인시
  • 구역당 연간 1,200인시
  • 전체 연간 4,800인시

예정 작업시간, 실제 팀 작업시간, 인시는 서로 다른 개념이므로 구분해서 읽어야 한다.

출처·실행 정보

claude-sonnet-5-5 · 2.1.322 (Claude Code). 원문 보존 검토는 별도 에이전트가 맡았습니다.

시나리오·수치·초안은 프로젝트가 직접 작성한 가상 사례다. 설비 성능 측정값이 아닌 투자 전 가정이며, 제3자 자료는 재현하지 않았다.

원문·출처·실행 기록 (JSON) · 프로젝트 MIT 라이선스 · 고지

혼잡통행료 수치와 추가 근거

실제 스킬 수정 예시

전체 원문·수정본발췌문 보기

원문

뉴욕 혼잡통행료 평가를 위한 근거 요청

교통정책 검토자에게

보고된 결과와 누락된 정의

MTA는 2025년 12월 17일 이사회 발표 자료인 2025 in Data의 13쪽에서 중심업무지구인 CBD의 차량 진입 건수가 11%, 하루 71,000건 줄었다고 보고한다. 이는 진입 건수이지 고유 차량 수나 차량 주행거리가 아니며, 반올림된 수치로 정확한 기준 진입 건수를 확정할 수 없다. 슬라이드에는 관측기간과 비교기간, 기준치 산정 방식이 명시되어 있지 않다.

MTA는 CBD 내 승용차 통행속도도 4.3% 증가했다고 보고하지만, 통행시간이 4.3% 줄었다는 뜻은 아니다. 절대 속도, 가중 방식, 포함 시간대, 측정기관, 기준치, 관측기간과 비교기간은 명시되어 있지 않다.

PM2.5에 대해서는 MTA가 Cornell University, 2025를 출처로 제시하며 첫 6개월간 22% 감소했다고 보고한다. 슬라이드는 혼잡통행료 적용 구역인 Congestion Relief Zone을 다루는 제목 아래 이 주장을 제시하지만, 정확한 연구 날짜, 농도 통계량, 백분율의 분모, 상세한 지리적 범위는 명시하지 않는다. 이 농도 관련 주장만으로 배출량, 모든 오염물질 또는 개인별 노출이 22% 감소했다고 볼 수 없으며, 뉴욕시 전체 결과로 일반화할 수도 없다. 발표 제목만으로 이 지표들이 동일한 연간 비교에 해당한다고 판단할 수는 없다.

요청하는 근거

나는 시행기관의 요약을 출처가 명시된 주장에 대한 기록으로 다루며, 정책 효과에 대한 독립적인 인과적 입증으로 보지 않는다. 독립적인 검토를 위해 교통 시계열과 계산 방식, 누락된 기간과 기준치, 대기질 원연구의 지역 범위·통계량·정책 미시행 시의 추정 방식·불확실성을 요청한다. 이는 내가 제안하는 근거 요청이며, MTA의 권고도 혼잡통행료 폐지나 확대 권고도 아니다.

수정본

뉴욕 혼잡통행료 평가를 위한 근거 요청

교통정책 검토자에게

보고된 결과와 누락된 정의

차량 진입 건수. MTA는 2025년 12월 17일 이사회 발표 자료인 2025 in Data의 13쪽에서 중심업무지구(CBD)의 차량 진입 건수가 11%, 하루 71,000건 줄었다고 보고한다. 이 수치는 진입 건수이며 고유 차량 수나 차량 주행거리가 아니다. 또한 반올림된 값이어서 정확한 기준 진입 건수를 확정할 수 없다. 슬라이드에는 관측기간, 비교기간, 기준치 산정 방식이 명시되어 있지 않다.

승용차 통행속도. MTA는 CBD 내 승용차 통행속도가 4.3% 증가했다고도 보고한다. 이것이 통행시간이 4.3% 줄었다는 뜻은 아니다. 절대 속도, 가중 방식, 포함 시간대, 측정기관, 기준치, 관측기간, 비교기간은 명시되어 있지 않다.

PM2.5. MTA는 Cornell University, 2025를 출처로 들어 PM2.5가 첫 6개월간 22% 감소했다고 보고한다. 슬라이드는 혼잡통행료 적용 구역인 Congestion Relief Zone을 다루는 제목 아래 이 주장을 제시한다. 그러나 정확한 연구 날짜, 농도 통계량, 백분율의 분모, 상세한 지리적 범위는 명시하지 않는다. 이 농도 관련 주장만으로는 배출량, 모든 오염물질, 개인별 노출이 22% 감소했다고 볼 수 없고, 뉴욕시 전체 결과로 일반화할 수도 없다. 발표 제목만으로 이 지표들이 동일한 연간 비교에 해당한다고 판단할 수도 없다.

요청하는 근거

나는 시행기관의 요약을 출처가 명시된 주장의 기록으로 다루며, 정책 효과에 대한 독립적인 인과적 입증으로 보지 않는다. 독립적인 검토를 위해 다음을 요청한다.

  • 교통 시계열과 그 계산 방식
  • 누락된 관측기간, 비교기간, 기준치
  • 대기질 원연구의 지역 범위, 통계량, 정책 미시행 시의 추정 방식, 불확실성

이는 내가 제안하는 근거 요청이다. MTA의 권고도, 혼잡통행료 폐지나 확대에 대한 권고도 아니다.

원문

MTA는 2025년 12월 17일 이사회 발표 자료인 2025 in Data의 13쪽에서 중심업무지구인 CBD의 차량 진입 건수가 11%, 하루 71,000건 줄었다고 보고한다. 이는 진입 건수이지 고유 차량 수나 차량 주행거리가 아니며, 반올림된 수치로 정확한 기준 진입 건수를 확정할 수 없다. 슬라이드에는 관측기간과 비교기간, 기준치 산정 방식이 명시되어 있지 않다.

MTA는 CBD 내 승용차 통행속도도 4.3% 증가했다고 보고하지만, 통행시간이 4.3% 줄었다는 뜻은 아니다. 절대 속도, 가중 방식, 포함 시간대, 측정기관, 기준치, 관측기간과 비교기간은 명시되어 있지 않다.

PM2.5에 대해서는 MTA가 Cornell University, 2025를 출처로 제시하며 첫 6개월간 22% 감소했다고 보고한다. 슬라이드는 혼잡통행료 적용 구역인 Congestion Relief Zone을 다루는 제목 아래 이 주장을 제시하지만, 정확한 연구 날짜, 농도 통계량, 백분율의 분모, 상세한 지리적 범위는 명시하지 않는다. 이 농도 관련 주장만으로 배출량, 모든 오염물질 또는 개인별 노출이 22% 감소했다고 볼 수 없으며, 뉴욕시 전체 결과로 일반화할 수도 없다. 발표 제목만으로 이 지표들이 동일한 연간 비교에 해당한다고 판단할 수는 없다.

수정본

차량 진입 건수. MTA는 2025년 12월 17일 이사회 발표 자료인 2025 in Data의 13쪽에서 중심업무지구(CBD)의 차량 진입 건수가 11%, 하루 71,000건 줄었다고 보고한다. 이 수치는 진입 건수이며 고유 차량 수나 차량 주행거리가 아니다. 또한 반올림된 값이어서 정확한 기준 진입 건수를 확정할 수 없다. 슬라이드에는 관측기간, 비교기간, 기준치 산정 방식이 명시되어 있지 않다.

승용차 통행속도. MTA는 CBD 내 승용차 통행속도가 4.3% 증가했다고도 보고한다. 이것이 통행시간이 4.3% 줄었다는 뜻은 아니다. 절대 속도, 가중 방식, 포함 시간대, 측정기관, 기준치, 관측기간, 비교기간은 명시되어 있지 않다.

PM2.5. MTA는 Cornell University, 2025를 출처로 들어 PM2.5가 첫 6개월간 22% 감소했다고 보고한다. 슬라이드는 혼잡통행료 적용 구역인 Congestion Relief Zone을 다루는 제목 아래 이 주장을 제시한다. 그러나 정확한 연구 날짜, 농도 통계량, 백분율의 분모, 상세한 지리적 범위는 명시하지 않는다. 이 농도 관련 주장만으로는 배출량, 모든 오염물질, 개인별 노출이 22% 감소했다고 볼 수 없고, 뉴욕시 전체 결과로 일반화할 수도 없다. 발표 제목만으로 이 지표들이 동일한 연간 비교에 해당한다고 판단할 수도 없다.

출처·실행 정보

claude-sonnet-5-5 · 2.1.322 (Claude Code). 원문 보존 검토는 별도 에이전트가 맡았습니다.

MTA, 2025 in Data, 2025년 12월 17일, 13쪽에 근거한다. 직접 쓴 메모에 출처를 명시한 사실을 풀어 썼으며 슬라이드나 그림은 재현하지 않았다. MTA는 권리를 유보한다. 이용약관과 저작권 고지는 이 프로젝트에 일반적인 재현 허가를 부여하지 않는다.

원문·출처·실행 기록 (JSON) · 프로젝트 MIT 라이선스 · 고지

중복 웹훅과 이용 권한 부여

가상 사례 · 실제 스킬 수정 예시

전체 원문·수정본발췌문 보기

원문

ADR 01. 송장 이벤트의 영속 수신과 로컬 이용 권한 부여
배경

이 ADR은 가상 애플리케이션을 위한 설계 제안이며 실제 Stripe·API·운영 환경을 변경하는 작업이 아니다. 계정 하나와 환경 하나에서 버전 2026-10-28.preview의 스냅샷 invoice.created 및 invoice.paid 이벤트를 받는다고 가정한다. 송장과 주문의 매핑은 이미 존재하며 송장마다 철회하지 않는 로컬 이용 권한 하나를 부여한다.

Stripe는 생성 순서대로의 전달을 보장하지 않으며 중복 이벤트가 발생할 수 있다고 설명한다. 스냅샷의 created는 초 단위이므로 순서나 고유성의 근거가 되지 못한다. 같은 Event의 재전송과 별개의 중복 Event 객체는 구분해야 한다. 후자의 식별에는 data.object.id와 event.type을 함께 사용하라는 권고가 있지만, 객체의 모든 후속 갱신을 무시하라는 뜻은 아니다.

가상 전달 사례에서는 invoice.paid E2, E2 재전송, 늦게 도착한 invoice.created E1, 별개의 중복 invoice.paid E3 순으로 수신한다. 네 번의 전달은 송장 하나와 주문 하나에 관한 것으로 이벤트 ID는 세 개, 유형은 두 개다. E1은 E2보다 먼저 생성되었으며 created가 같은 초를 나타낼 수도 있다.

결정

영속 inbox를 작업 큐로 사용하고 외부 큐에 발행하는 단계는 두지 않는다. 페이로드·수신 시각·pending 또는 completed 상태를 저장하며 (account_id, event_id)에 고유 제약을 둔다. account_id는 페이로드에 있다고 가정하지 않고 설정된 계정 문맥에서 얻는다. event_id·event_type·invoice_id는 각각 Event.id·Event.type·data.object.id에서 얻는다. 업무 연산 키는 이벤트 ID가 아니라 (account_id, invoice_id, operation_kind=grant_entitlement)이다.

Stripe의 핸들러 지침에 따라 변경하지 않은 요청 본문 원문으로 서명을 검증한다. inbox 행을 커밋하거나 기존 행의 영속 저장을 확인한 뒤 신속히 2xx를 반환한다. 저장 실패에는 성공 응답을 보내지 않는다. 수신 확인은 전달을 받았다는 뜻이지 업무 처리 완료가 아니다. E2 재전송은 기존 행이 pending이어도 새 작업을 만들지 않으며, 그 행을 폐기하거나 completed로 바꾸지도 않는다. 수신 기록 커밋 후 응답 전에 장애가 나더라도 재전송 시 커밋된 작업이 남는다.

inbox·연산 원장·이용 권한은 단일 ACID 데이터베이스에 두고 잠금과 고유 제약으로 동시 작업자를 조정한다. paid 처리 시 송장을 조회하여 status=paid와 기존 order_id의 일치를 확인한다. 조회 실패나 조건 미충족 시 작업은 pending으로 남는다. 새 연산의 원장 삽입·권한 변경·inbox 완료는 하나의 트랜잭션으로 커밋하며, 이미 기록된 연산이면 E3도 권한을 다시 부여하지 않고 처리를 완료한다. 트랜잭션 장애로 완료 표시만 따로 커밋될 수는 없다. created 처리는 해당 수신 건을 완료하되 권한을 초기화하지 않으므로 늦은 E1이 권한 부여를 되돌리지 못한다.

대안

이벤트 ID만으로 중복을 제거하면 E3를 놓친다. 영속 저장 전 응답은 작업 유실 위험이 있고 타임스탬프 정렬로는 순서를 확정할 수 없다. 어느 대안도 업무 연산의 고유성을 대신하지 못한다.

결과와 한계

데이터베이스 경합과 pending 작업 복구가 비용이다. pending 행은 재시도할 수 있으며 이 예시의 범위에서는 inbox와 연산 기록을 삭제하지 않는다. 이 데이터베이스·기록 보존 가정 아래 수신, 작업자 재시도, 조회, 결제 완료 확인, 주문 매칭이 결국 성공하면 이 전달 사례에서 로컬 권한을 한 번 부여한다. 이는 전역 exactly-once 실행 보장이 아니다. 환불·분쟁·구독 변경·외부 이행·외부 결제 API의 멱등성은 제외한다.

수정본

ADR 01. 송장 이벤트의 영속 수신과 로컬 이용 권한 부여
배경

이 ADR은 가상 애플리케이션을 위한 설계 제안이다. 실제 Stripe, API, 운영 환경을 변경하는 작업이 아니다. 계정 하나와 환경 하나에서 버전 2026-10-28.preview의 스냅샷 invoice.created와 invoice.paid 이벤트를 받는다고 가정한다. 송장과 주문의 매핑은 이미 존재한다. 송장마다 철회하지 않는 로컬 이용 권한을 하나씩 부여한다.

Stripe는 생성 순서대로의 전달을 보장하지 않으며 중복 이벤트가 발생할 수 있다고 설명한다. 스냅샷의 created는 초 단위여서 순서나 고유성의 근거가 되지 못한다.

같은 Event의 재전송과 별개의 중복 Event 객체는 구분해야 한다. 후자를 식별할 때는 data.object.id와 event.type을 함께 사용하라는 권고가 있다. 다만 이것이 객체의 모든 후속 갱신을 무시하라는 뜻은 아니다.

가상 전달 사례에서는 다음 순서로 수신한다.

  1. invoice.paid E2
  2. E2 재전송
  3. 늦게 도착한 invoice.created E1
  4. 별개의 중복 invoice.paid E3

네 번의 전달은 모두 송장 하나와 주문 하나에 관한 것이며, 이벤트 ID는 세 개, 유형은 두 개다. E1은 E2보다 먼저 생성되었다. 다만 created는 두 이벤트에서 같은 초를 나타낼 수도 있다.

결정
저장 구조와 키

영속 inbox를 작업 큐로 사용하며, 외부 큐에 발행하는 단계는 두지 않는다. inbox에는 페이로드, 수신 시각, pending 또는 completed 상태를 저장하고 (account_id, event_id)에 고유 제약을 둔다.

  • account_id는 페이로드에 있다고 가정하지 않고 설정된 계정 문맥에서 얻는다.
  • event_id, event_type, invoice_id는 각각 Event.id, Event.type, data.object.id에서 얻는다.
  • 업무 연산 키는 이벤트 ID가 아니라 (account_id, invoice_id, operation_kind=grant_entitlement)이다.
수신과 응답

Stripe의 핸들러 지침에 따라, 변경하지 않은 요청 본문 원문으로 서명을 검증한다. 검증 뒤에는 inbox 행을 커밋하거나 기존 행이 영속 저장되었음을 확인하고, 신속히 2xx를 반환한다. 저장에 실패하면 성공 응답을 보내지 않는다.

수신 확인은 전달을 받았다는 뜻이며 업무 처리가 끝났다는 뜻이 아니다. E2가 재전송되었을 때 기존 행이 pending이더라도 새 작업을 만들지 않는다. 그 행을 폐기하거나 completed로 바꾸지도 않는다. 수신 기록을 커밋한 뒤 응답하기 전에 장애가 나더라도, 재전송이 오면 커밋된 작업이 남아 있다.

처리와 권한 부여

inbox, 연산 원장, 이용 권한은 단일 ACID 데이터베이스에 두고, 잠금과 고유 제약으로 동시 작업자를 조정한다.

paid 이벤트를 처리할 때는 송장을 조회해 status=paid인지, 기존 order_id와 일치하는지 확인한다. 조회에 실패하거나 조건을 충족하지 못하면 작업은 pending으로 남는다.

새 연산이면 원장 삽입, 권한 변경, inbox 완료를 하나의 트랜잭션으로 커밋한다. 이미 기록된 연산이면 E3도 권한을 다시 부여하지 않고 처리만 완료한다. 트랜잭션 장애가 나도 완료 표시만 따로 커밋될 수는 없다.

created 이벤트는 해당 수신 건을 완료하지만 권한을 초기화하지 않는다. 따라서 늦게 도착한 E1이 권한 부여를 되돌리지 못한다.

대안
대안문제
이벤트 ID만으로 중복 제거E3를 놓친다.
영속 저장 전에 응답작업을 유실할 위험이 있다.
타임스탬프 정렬순서를 확정할 수 없다.

어느 대안도 업무 연산의 고유성을 대신하지 못한다.

결과와 한계

비용은 데이터베이스 경합과 pending 작업 복구다. pending 행은 재시도할 수 있다. 이 예시의 범위에서는 inbox와 연산 기록을 삭제하지 않는다.

이 데이터베이스와 기록 보존 가정 아래에서 수신, 작업자 재시도, 조회, 결제 완료 확인, 주문 매칭이 결국 성공하면, 이 전달 사례에서 로컬 권한을 한 번 부여한다. 이는 전역 exactly-once 실행 보장이 아니다. 환불, 분쟁, 구독 변경, 외부 이행, 외부 결제 API의 멱등성은 다루지 않는다.

원문

가상 전달 사례에서는 invoice.paid E2, E2 재전송, 늦게 도착한 invoice.created E1, 별개의 중복 invoice.paid E3 순으로 수신한다. 네 번의 전달은 송장 하나와 주문 하나에 관한 것으로 이벤트 ID는 세 개, 유형은 두 개다. E1은 E2보다 먼저 생성되었으며 created가 같은 초를 나타낼 수도 있다.

수정본

가상 전달 사례에서는 다음 순서로 수신한다.

  1. invoice.paid E2
  2. E2 재전송
  3. 늦게 도착한 invoice.created E1
  4. 별개의 중복 invoice.paid E3

네 번의 전달은 모두 송장 하나와 주문 하나에 관한 것이며, 이벤트 ID는 세 개, 유형은 두 개다. E1은 E2보다 먼저 생성되었다. 다만 created는 두 이벤트에서 같은 초를 나타낼 수도 있다.

출처·실행 정보

claude-sonnet-5-5 · 2.1.322 (Claude Code). 원문 보존 검토는 별도 에이전트가 맡았습니다.

가상 ADR에 Stripe의 웹훅, Event, 이벤트 유형, Invoice 문서의 사실을 출처와 함께 풀어 썼다. Stripe 문서의 재배포 허가는 확인되지 않았다. 원문 코드·그림·표는 재현하지 않았다.

원문·출처·실행 기록 (JSON) · 프로젝트 MIT 라이선스 · 고지

설치와 사용

코딩 에이전트가 설치된 환경에서 사용할 수 있습니다. skills CLI에는 Node.js 22.20 이상이 필요합니다. 수동 설치에는 이 CLI가 필요하지 않습니다.

  1. 사용할 프로젝트에 설치

    아래는 프로젝트 루트에서 Codex와 Claude Code에 설치하는 명령입니다. -a 옵션은 설치할 에이전트를 지정합니다.

    Pi의 에이전트 옵션은 -a pi입니다. oh-my-pi는 수동 설치로 이용할 수 있습니다. OpenCode는 현재 부분 지원입니다.

    npx skills add JangHyun-bin/human-readable-writing --skill human-readable-writing -a codex -a claude-code

    현재 프로젝트에만 설치합니다. Codex와 Pi는 .agents/skills/, Claude Code는 .claude/skills/에서 읽습니다.

    CLI는 공개 저장소와 스킬 이름을 포함한 익명 사용 정보를 전송합니다. 사용 정보 전송은 DISABLE_TELEMETRY=1로 끌 수 있습니다. 수집 정보 안내.

  2. 새 세션에서 이름으로 호출

    호출문에는 스킬 이름과 원문이 들어갑니다. 대상 독자와 원하는 언어·형식도 함께 적을 수 있습니다.

    한국어와 영어 문서에 사용할 수 있습니다. 번역을 요청하지 않으면 원문의 언어를 유지합니다.

    Claude Code
    /human-readable-writing
    Codex
    $human-readable-writing
    Pi / oh-my-pi
    /skill:human-readable-writing

    요청 예시: "독자는 유지보수자입니다. 원문의 기술 용어와 사실·조건·불확실성을 유지한 PR 설명이 필요합니다."

    OpenCode는 네이티브 스킬 선택을 사용합니다. CLI 호출의 신뢰성은 확인되지 않았습니다.

설치·업데이트·삭제 안내

지원 현황

기준

Claude Code
설치·호출 확인

2.1.321에서 프로젝트 설치와 사용자 전역 설치를 확인했습니다.

Pi
설치물 로딩 확인

1.4.0에서 프로젝트 설치물을 읽었습니다.

oh-my-pi
설치물 로딩 확인

18.18.6에서 프로젝트 설치물을 읽었습니다.

Codex
호출 미확인

0.167.0에서 제공자·계정 오류로 확인하지 못했습니다.

OpenCode
부분 지원

스킬 선택과 참조 로딩이 실패하거나 원문 조건이 바뀐 사례가 있습니다.