Claude의 아티팩트처럼 AI로 만든 보고서나 프로토타입을 사내 버셀에서 쉽게 공유하고 싶었습니다. 기존에는 정적 페이지도 GitHub 저장소를 만들고 push해야 배포할 수 있었습니다.
팀 계정에 속하지 않은 사용자도 쉽게 발행하고 공유할 수 있도록, 사내 버셀에 정적 페이지 업로드 API를 추가했습니다.
기존 배포 과정을 재사용해 업로드 기능 추가하기
시작 방식이 늘어나도 배포 규칙은 한곳에서 관리하고 싶었습니다. Worker의 이미지 준비 부분을 확장하고 이후 배포 과정은 재사용했습니다.
AI에게 페이지 제작부터 배포까지 맡기기
사용자가 배포 절차를 직접 진행하지 않아도 되도록 API와 AI용 안내 문서인 llms.txt를 함께 제공했습니다.
페이지 제작 흐름은 Anthropic의 web-artifacts-builder 스킬을 참고했습니다. 화면을 만들고 HTML 결과물로 묶는 과정에 사내 버셀의 업로드와 배포 확인을 연결했습니다.
사용자는 만들고 싶은 내용과 배포 요청을 함께 전달합니다.
이 보고서를 정적 페이지로 만들어 사내 버셀에 배포해줘.
https://alpha.altools.com/uploads/v1/llms.txt 를 참고해줘.
문서와 응답의 ai_instructions가 같은 안내 문구를 사용하도록 해, AI가 처음 읽은 절차와 작업 중 받는 설명이 어긋나지 않게 했습니다.
업로드 접수와 배포 완료도 구분했습니다. 파일을 받았다는 응답만으로 끝내지 않고, 실제 배포가 완료된 뒤 공유 주소를 안내합니다.
수정하고 공유한 페이지 관리하기
- 수정: “보고서 2장 고쳤어. 다시 배포해줘”라고 요청하면 같은 주소에서 내용을 갱신합니다.
- 복원: “어제 내용으로 돌려줘”라고 요청하면 보관된 이전 결과물을 다시 배포합니다.
- 공유: 배포된 Preview 주소를 사내에 전달합니다.
- 정리: “이 페이지 내려줘”라고 요청하면 등록을 해제하고 공개 경로를 종료합니다.
인증 정책을 바꿔도 프로젝트 유지하기
인증 정책을 바꿔도 기존 프로젝트를 계속 사용할 수 있도록, 프로젝트 소유 기준은 이메일로 두었습니다. 첫 PoC에서는 메일 소유 확인 없이 회사 이메일로 토큰을 발급했습니다.
- 재발급: 다른 PC를 쓰거나 토큰을 잃어버려도 적용된 인증 정책에 따라 같은 이메일로 새 토큰을 받아 기존 프로젝트를 갱신할 수 있습니다.
- 폐기: 같은 허용 버전으로 새 토큰을 발급해도 이전 토큰은 유효하므로, 사용하지 않는 토큰은 별도로 폐기합니다.