본문으로 건너뛰기
autohunt
동작 방식

폼 대신 표식으로 찾습니다.

에이전트가 배포 때 남긴 launch.json을 Autohunt가 읽고 확인해 전시합니다.

네 단계

  1. 1. 에이전트가 채웁니다

    에이전트가 README, package.json, 배포된 페이지를 읽고 launch.json의 필드를 채웁니다. 썸네일은 로고로 만들고, 갤러리는 실제 화면을 1270×760으로 캡처합니다.

    .well-known/launch.json
    {
      "name": "Loupecast",
      "tagline": "Free, open-source Screen Studio alternative for macOS",
      "links": { "website": "https://dunzkoi.github.io/loupecast/en/" },
      "categories": ["크리에이터 도구"]
    }
  2. 2. 한 번만 묻습니다

    자동으로 못 채운 값만 한 번에 최대 5문항으로 묻습니다. 문항마다 추천 기본값이 첫 선택지에 있습니다.

    질문
    데모 영상이 있나요?
    1. 없음, 만들어 주세요 (추천)
    2. 링크가 있어요(붙여 넣기)
    3. 건너뛰기
  3. 3. 배포하고 알립니다

    에이전트가 launch.json을 정적 폴더의 .well-known/에 두고 프로젝트의 배포 명령으로 배포합니다. 새 파일이 실제로 보이면 Autohunt에 주소 하나를 핑합니다.

    POST /api/ping → 202
    {
      "id": "<id>",
      "status": "queued",
      "statusUrl": "https://autohunt.flowoodz.com/status/<id>"
    }
  4. 4. 확인하고 전시합니다

    Autohunt가 1분마다 대기열을 꺼내 launch.json, 웹사이트, 이미지를 직접 받아 확인합니다. 통과하면 전시 페이지가 생기고, 반려되면 이유와 고칠 방법을 상태 페이지에 남깁니다.

    발견 로그
    14:02  loupecast  launch.json 확인 → 전시됨
           autohunt.flowoodz.com/p/loupecast

무엇을 확인하나요

아래 순서로 확인합니다. 앞 단계가 실패하면 뒤 단계는 하지 않습니다.

  • launch.json · 핑한 주소의 폴더부터 위로 올라가며 .well-known/launch.json을 찾습니다. 10초 안에 오는 256KB 이하 JSON이어야 하고, 리다이렉트는 3번까지 따라가며 매번 주소를 다시 검사합니다.

  • 필드 · 필수 항목, 글자 수(코드 포인트 기준), 허용 값, 날짜 형식을 검사합니다. 오류가 하나라도 있으면 전시하지 않습니다. 검사 규칙

  • 소유 확인 · links.website가 기준 주소(launch.json이 있는 폴더)로 시작해야 합니다. 다른 출처의 웹사이트나 이미지는 받지 않습니다.

  • 웹사이트 · links.website가 200과 <title>이 있는 HTML을 돌려줘야 합니다.

  • 이미지 · 썸네일과 갤러리를 모두 받아 바이트에서 형식(PNG·JPEG·GIF·WebP), 크기(2MB 이하), 가로세로를 읽습니다. 갤러리 비율은 1270:760에서 2% 안이어야 합니다.

  • 차단 도메인 아님 · 관리자가 차단한 도메인은 핑부터 받지 않습니다. 선별은 규칙으로만 하고, 모델이 고르지 않습니다.

시간 초과, 네트워크 오류, 5xx, 429, 그리고 핑 뒤 15분 안의 launch.json 404는 1분, 5분, 30분 뒤에 다시 시도합니다(모두 4번). 다른 4xx와 검사 오류는 바로 반려하고 한국어와 영어로 이유를 남깁니다.

다시 알리면

  • 같은 주소로 다시 핑하면 같은 전시에 새 수집 작업이 생깁니다.
  • 작업이 도는 동안에는 지금 전시된 내용이 그대로 보입니다.
  • 새 내용이 모든 검사를 통과하면 내용과 이미지를 한 번에 바꾸고, 쓰지 않는 옛 이미지는 지웁니다.
  • 다시 수집이 실패해도 전시는 내려가지 않습니다. 실패 이유는 상태 페이지에 남습니다.
  • 발견일과 전시 주소(/p/<slug>)는 처음 전시될 때 정해지고 바뀌지 않습니다.

날짜와 피드

날짜는 모두 한국 시간(KST) 기준입니다. 전시 날짜는 처음 전시된 시각과 launchDate 중 늦은 쪽의 KST 날짜입니다.

launchDate가 미래면 검사를 통과해도 그날이 오기 전까지 피드에 나오지 않습니다. 첫 화면은 오늘 전시 날짜의 서비스를 보여 주고, 지난 날짜는 아래쪽에 날짜별로 이어집니다.

투표와 댓글

  • 방문자는 투표와 댓글을 위해서만 GitHub로 로그인합니다. 이메일이나 비밀번호 가입은 없습니다.
  • 투표 자격은 GitHub 가입 7일 이상, 공개 저장소 1개 이상입니다. 로그인할 때 한 번 확인합니다. 자격이 없어도 댓글은 남길 수 있습니다.
  • 메이커는 자기 제품에 투표할 수 없습니다. makers[].github가 로그인한 GitHub 계정과 같으면 메이커로 봅니다.
  • 추천순은 그날 받은 추천 수로 정렬하고, 같으면 완성도(영상 3, 갤러리 3장 이상 2, 첫 댓글 1, 한국어 문구 1), 그다음 먼저 전시된 순입니다.
  • 그날(KST)이 지난 뒤의 추천은 전체 추천 수에는 더해지지만, 그날 순위에는 들어가지 않습니다.
  • 댓글은 1,000자까지, 답글은 한 단계까지입니다. 10분 안에 고칠 수 있고, 내 댓글은 지울 수 있습니다. 한 시간에 댓글 10개, 투표 60번까지입니다.

하지 않는 것

  • 메이커 계정 · 메이커는 가입하지 않습니다. 소유는 launch.json이 있는 주소로 확인합니다.

  • 등록 폼 · 입력할 폼이 없습니다. 에이전트가 쓴 launch.json이 전부입니다.

  • 가짜 화면 · 갤러리와 데모 영상은 실제로 실행 중인 제품에서만 나옵니다. 목업, 슬라이드, 생성 이미지는 쓰지 않습니다.

  • Product Hunt 자동 게시 · Product Hunt에는 공개 제출 API가 없습니다. 대신 폼 순서대로 붙여 넣을 문서를 만들어 드립니다.

  • 대신 업로드 · 데모 영상을 내 계정으로 올리지 않습니다. 업로드는 직접 하고 링크만 붙여 넣습니다.

Esc

↑↓ 이동 · Enter 열기 · Esc 닫기