<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ko_KR"><generator uri="https://jekyllrb.com/" version="3.10.0">Jekyll</generator><link href="https://jungtaejoon.github.io/blog/feed.xml" rel="self" type="application/atom+xml" /><link href="https://jungtaejoon.github.io/blog/" rel="alternate" type="text/html" hreflang="ko_KR" /><updated>2026-11-12T09:55:37+09:00</updated><id>https://jungtaejoon.github.io/blog/feed.xml</id><title type="html">Slop Log</title><subtitle>AI가 만든 것들 속에서 보석을 캐는 커뮤니티 Slop을 만들며 남기는 기록. 곁가지로 만든 도구 이야기도 함께 써요.</subtitle><author><name>jungtaejoon</name></author><entry xml:lang="ko"><title type="html">claude-warmup 0.3: 가장 바쁜 시각에 Claude 5시간 한도가 딱 리셋되게 맞추기</title><link href="https://jungtaejoon.github.io/blog/2026/11/12/claude-warmup-peak-time/" rel="alternate" type="text/html" title="claude-warmup 0.3: 가장 바쁜 시각에 Claude 5시간 한도가 딱 리셋되게 맞추기" /><published>2026-11-12T00:00:00+09:00</published><updated>2026-11-12T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/2026/11/12/claude-warmup-peak-time</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/2026/11/12/claude-warmup-peak-time/"><![CDATA[<p><a href="https://jungtaejoon.github.io/claude-warmup/ko/">claude-warmup</a>은 Claude Pro·Max의 5시간 창을 늘 켜 두는 작은 도구예요. 앞 창이 끝나면 바로 새 창을 열어 두니까, 언제 자리에 앉든 내 첫 메시지가 5시간짜리 기다림을 새로 시작하지 않아요.</p>

<p>그런데 써 보니 아쉬운 점이 하나 있었어요. 저는 매일 비슷한 시간에 일어나고, 일이 가장 몰리는 시간도 거의 같아요. 그렇다면 <strong>그 시각에 딱 리셋</strong>되는 게 제일 좋겠죠. 0.2에서 피크 시간을 넣었고, 0.3에서 빈 시간을 직접 고르게 다듬었어요.</p>

<h2 id="피크-시간이란">피크 시간이란</h2>

<p>“평일 11:30이 제일 바쁘다”고 알려 주면, 그 시각에 창이 끝나도록 핑 시각을 거꾸로 계산해요. 11:30에 리셋되려면 그 창은 06:30에 시작해야 하고, 그 앞 창은 01:30에 시작해야 하는 식이에요.</p>

<h2 id="하루-24시간에는-4시간이-남아요">하루 24시간에는 4시간이 남아요</h2>

<p>여기서 문제가 하나 있어요. 하루는 24시간인데 창은 5시간이라, 창 4개를 이어 붙이면 20시간이고 <strong>4시간은 창이 없어요.</strong> 피크에 맞추는 한 이 빈 4시간은 어딘가에 꼭 생겨요.</p>

<p>0.2에서는 이 빈 시간이 계산상 피크 바로 뒤(11:30–15:30)에 생겼어요. 가장 바쁜 시간 직후가 비는 셈이라 손해였죠. 그래서 0.3부터는 <strong>어디를 비울지 직접 고르게</strong> 했어요. 피크를 정하면 고를 수 있는 다섯 가지를 보여 주고 번호를 물어요.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ claude-warmup config peak 11:30 weekdays
✓ peak = 11:30 weekdays
  하루는 24시간이라 평일 11:30에 창을 맞추면 창이 없는 4시간이 생겨요. 어디를 비울까요? (고르면 피크가 적용돼요)
    1) 11:30–15:30  (피크 바로 뒤)
    2) 16:30–20:30
    3) 21:30–01:30
    4) 02:30–06:30
    5) 07:30–11:30  (피크 바로 앞)
  번호 (나중에 정하려면 Enter): 4
✓ 빈 시간(창 없음): 02:30–06:30
  이제 06:30, 11:30, 16:30, 21:30에 맞춰 핑을 보내서, 평일 11:30에 창이 딱 리셋되게 해요.
</code></pre></div></div>

<p>저는 자고 있을 새벽을 비웠어요. 그러면 평일에는 창이 06:30 → 11:30(리셋) → 16:30 → 21:30 → 02:30으로 이어지고, 02:30–06:30만 비어요.</p>

<table>
  <thead>
    <tr>
      <th>쓰는 법</th>
      <th>뜻</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">config peak 11:30 weekdays</code></td>
      <td>평일 11:30 (<code class="language-plaintext highlighter-rouge">평일</code>, <code class="language-plaintext highlighter-rouge">월-금</code>, <code class="language-plaintext highlighter-rouge">mon,wed,fri</code>도 돼요. 요일 없이 쓰면 매일)</td>
    </tr>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">config gap</code></td>
      <td>빈 시간 목록을 다시 보여 주고 물어봐요</td>
    </tr>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">config gap 4</code></td>
      <td>4번 칸을 빈 시간으로 (그 안의 시각으로 <code class="language-plaintext highlighter-rouge">config gap 03:00</code>도 돼요)</td>
    </tr>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">config peak off</code></td>
      <td>끄기 (원래대로 창을 끊김 없이 이어요)</td>
    </tr>
  </tbody>
</table>

<h2 id="이렇게-동작해요">이렇게 동작해요</h2>

<ul>
  <li><strong>빈 시간을 고르기 전에는 피크가 적용되지 않아요.</strong> 임의로 정하지 않으려고요.</li>
  <li><strong>맞는 시각이 아니면 기다려요.</strong> 엉뚱한 시각에 창을 열면 그 창이 피크를 어긋나게 만드니까요. 기다리는 동안에는 Claude를 부르지 않아서 토큰도 안 써요.</li>
  <li><strong>이미 어긋난 창은 어쩔 수 없어요.</strong> 내가 다른 시각에 직접 메시지를 보내서 창이 열렸다면 그 창은 옮길 수 없어요. 그 창이 끝나면 다음 맞는 시각에 다시 맞춰요.</li>
  <li><strong>요일을 정하면 그 사이에는 원래대로 동작해요.</strong> 피크 하루 전부터 맞추기 시작하고, 주말처럼 피크가 먼 시간에는 창이 끝나자마자 새 창을 열어요.</li>
  <li><strong>피크를 바꾸면</strong> 고를 수 있는 빈 시간도 달라져요. 정해 둔 빈 시간이 새 목록에 맞지 않으면 다시 물어봐요.</li>
</ul>

<p>상태 화면에서 바로 확인할 수 있어요.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>자동 워밍업
  스케줄      06:00–23:00 · 매일
  피크 시간   평일 11:30 · 06:30, 11:30, 16:30, 21:30에 맞춰 핑
  빈 시간     02:30–06:30
  다음 핑     16:25경, 내일 11:30에 리셋되도록 맞춰서
</code></pre></div></div>

<h2 id="업데이트하는-법">업데이트하는 법</h2>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>npm <span class="nb">install</span> <span class="nt">-g</span> github:jungtaejoon/claude-warmup
claude-warmup <span class="nb">install
</span>claude-warmup config peak 11:30 weekdays
</code></pre></div></div>

<p><code class="language-plaintext highlighter-rouge">install</code>을 다시 실행해야 백그라운드 서비스가 새 버전으로 바뀌어요. 이미 피크를 쓰고 있었다면 <code class="language-plaintext highlighter-rouge">claude-warmup config gap</code>으로 빈 시간을 골라 주세요. <code class="language-plaintext highlighter-rouge">scripts/server-setup.sh</code>로 서버에 설치했다면 npm 명령에 <code class="language-plaintext highlighter-rouge">--prefix ~/.local</code>을 붙여야 같은 자리의 프로그램이 바뀌어요. 저도 처음에 이걸 빼먹어서 서버에서 옛 버전이 그대로 돌고 있었어요.</p>

<p>변경 내용: <a href="https://github.com/jungtaejoon/claude-warmup/releases/tag/v0.3.0">0.3 릴리스 노트</a> · <a href="https://github.com/jungtaejoon/claude-warmup/releases/tag/v0.2.0">0.2 릴리스 노트</a></p>]]></content><author><name>jungtaejoon</name></author><summary type="html"><![CDATA[피크 시간을 정하면 그 시각에 5시간 창이 리셋되도록 핑 시각을 거꾸로 계산해 맞춰 줘요. 하루 24시간이 5시간으로 나누어떨어지지 않아 생기는 빈 4시간은 직접 골라요.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jungtaejoon.github.io/claude-warmup/og.png" /><media:content medium="image" url="https://jungtaejoon.github.io/claude-warmup/og.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="ko"><title type="html">와우 안에서 즐기는 던전 서바이버, 던전 러시</title><link href="https://jungtaejoon.github.io/blog/2026/11/12/introducing-dungeon-rush/" rel="alternate" type="text/html" title="와우 안에서 즐기는 던전 서바이버, 던전 러시" /><published>2026-11-12T00:00:00+09:00</published><updated>2026-11-12T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/2026/11/12/introducing-dungeon-rush</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/2026/11/12/introducing-dungeon-rush/"><![CDATA[<p>경매장에서 시세를 기다리거나 파티를 구할 때, 잠깐 할 만한 게 있으면 좋겠다고 생각했어요. 그래서 WoW Forever 안에서 바로 하는 미니 게임 애드온 <strong><a href="https://www.curseforge.com/wow/addons/dungeon-rush">던전 러시(Dungeon Rush)</a></strong>를 만들었어요. <a href="/blog/2026/11/11/introducing-forgeflow/">ForgeFlow</a>처럼 Claude Code와 함께 만들고, 게임에서 직접 돌려 보며 다듬었어요. 지금은 CurseForge 심사 중이에요.</p>

<h2 id="이렇게-놀아요">이렇게 놀아요</h2>

<p><code class="language-plaintext highlighter-rouge">/dungeonrush</code> 또는 <code class="language-plaintext highlighter-rouge">/drush</code>로 창을 열어요. 직업과 던전을 고르고 WASD로 움직이면, 기술은 알아서 나가요. 스페이스나 시프트로 대시하고, 레벨이 오를 때마다 카드 세 장 중 하나를 골라요.</p>

<ul>
  <li><strong>직업과 특성.</strong> 아홉 직업에 전문화가 셋씩 있어요. 기술은 모두 실제 직업 기술을 자동 공격으로 바꾼 것이고, 이름과 아이콘도 게임에서 그대로 가져와요. 레벨마다 특성 점수를 하나씩 찍으면 다음 단이 열리고, 트리 끝까지 찍으면 그 전문화의 대표 기술이 완성돼요.</li>
  <li><strong>던전과 네임드.</strong> 성난불길 협곡부터 레벨 순서대로 35개 던전이 있고, 던전마다 실제 네임드가 처치 순서대로 나와요. 보스 사이에는 일반 몹·정예·모닥불·상인·이벤트 방 중에서 길을 골라요.</li>
  <li><strong>원거리만 편하지 않게.</strong> 보스마다 멀리 선 플레이어를 노리는 기술이 하나씩 있고, 던전마다 거리를 확 좁혀 오는 몹이 섞여 있어요. 근접이든 원거리든 계속 움직여야 해요.</li>
  <li><strong>레벨이 올라도 방심 금물.</strong> 방을 지날수록, 레벨이 오를수록 몹이 더 질기고 많아져요. 이야기·일반·영웅·신화, 그리고 +2부터 +20까지의 신화+ 쐐기(경화·폭군·분노·화산·고무)를 골라요.</li>
  <li><strong>와우 소리 그대로.</strong> 발자국, 타격, 레벨업, 버튼, 대시 소리를 게임 클라이언트의 소리로 내요.</li>
</ul>

<h2 id="계속-남는-것">계속 남는 것</h2>

<p>판마다 얻는 문장으로 영구 강화를 사고, 직업 숙련이 쌓이고, 클리어하면 다음 던전이 열려요. 진행 중인 판은 /reload 뒤에도 이어져요.</p>

<p>ForgeFlow Windows Companion 0.12.0에서 <strong>게임 진행 상황 백업</strong>을 켜면 진행 상황이 내 계정에 보관되고, 새 PC나 재설치 뒤에도 돌아와요. 기본값은 꺼짐이고, 원할 때만 켜면 돼요.</p>

<h2 id="안심하고">안심하고</h2>

<p>전투에 들어가면 게임이 바로 멈추고 창이 닫히며 키보드를 돌려줘요. 보호된 동작이나 네트워크 통신은 하지 않아요.</p>

<h2 id="slop에서-판정해-주세요">Slop에서 판정해 주세요</h2>

<p><a href="https://slop.ai.kr/#/p/4a8a9e29-2f4d-43ef-8015-f11a58729af7">Slop에도 던전 러시를 올렸어요</a>. 게임 화면 스크린샷이 더 있으니 구경하고, 써 본 뒤 <strong>▲보석</strong> 또는 <strong>▼슬롭</strong>으로 판정해 주세요. 어려운 보스나 지루한 구간, 직업 밸런스 의견을 댓글로 남겨 주시면 다음 버전에 반영할게요.</p>]]></content><author><name>jungtaejoon</name></author><summary type="html"><![CDATA[아홉 직업 중 하나로 와우 포에버의 던전을 네임드 순서대로 돌파하는 서바이버 장르 미니 게임 애드온 던전 러시를 소개해요.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jungtaejoon.github.io/blog/assets/img/dungeonrush/logo.png" /><media:content medium="image" url="https://jungtaejoon.github.io/blog/assets/img/dungeonrush/logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="en"><title type="html">claude-warmup 0.3: make Claude’s 5-hour limit reset right at your busiest time</title><link href="https://jungtaejoon.github.io/blog/en/2026/11/12/claude-warmup-peak-time/" rel="alternate" type="text/html" title="claude-warmup 0.3: make Claude’s 5-hour limit reset right at your busiest time" /><published>2026-11-12T00:00:00+09:00</published><updated>2026-11-12T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/en/2026/11/12/claude-warmup-peak-time</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/en/2026/11/12/claude-warmup-peak-time/"><![CDATA[<p><a href="https://jungtaejoon.github.io/claude-warmup/">claude-warmup</a> is a small tool that keeps a Claude Pro/Max 5-hour window always running. It opens a new window as soon as the last one ends, so whenever you sit down, your first message doesn’t start a full 5-hour wait.</p>

<p>Using it, I noticed one thing missing. I get up at about the same time every day, and my busiest hours are about the same too. So the best thing would be a reset <strong>right at that time</strong>. Version 0.2 added a peak time, and 0.3 lets you choose the empty hours yourself.</p>

<h2 id="what-a-peak-time-is">What a peak time is</h2>

<p>Tell it “weekdays at 11:30 are my busiest,” and it works backward. For a reset at 11:30, that window has to start at 06:30, the one before at 01:30, and so on.</p>

<h2 id="a-day-leaves-4-hours-over">A day leaves 4 hours over</h2>

<p>There’s a catch. A day is 24 hours and a window is 5, so four windows back to back fill 20 hours and <strong>4 hours have no window.</strong> As long as windows line up with the peak, those 4 empty hours have to go somewhere.</p>

<p>In 0.2 they landed right after the peak (11:30–15:30), right after the busiest time, which is the worst place. So from 0.3 <strong>you choose where they go.</strong> Setting a peak lists the five choices and asks for a number.</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>$ claude-warmup config peak 11:30 weekdays
✓ peak = 11:30 weekdays
  A day is 24 hours, so lining windows up with weekdays 11:30 leaves 4 hours with no window. Where should they go?
    1) 11:30–15:30  (right after the peak)
    2) 16:30–20:30
    3) 21:30–01:30
    4) 02:30–06:30
    5) 07:30–11:30  (right before the peak)
  Number (Enter to decide later): 4
✓ Empty hours (no window): 02:30–06:30
  Pings now line up at 06:30, 11:30, 16:30, 21:30, so a window resets right at weekdays 11:30.
</code></pre></div></div>

<p>I left the early morning empty, while I’m asleep. On weekdays windows now run 06:30 → 11:30 (reset) → 16:30 → 21:30 → 02:30, and only 02:30–06:30 is empty.</p>

<table>
  <thead>
    <tr>
      <th>Command</th>
      <th>Meaning</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">config peak 11:30 weekdays</code></td>
      <td>Weekdays at 11:30 (<code class="language-plaintext highlighter-rouge">mon-fri</code>, <code class="language-plaintext highlighter-rouge">mon,wed,fri</code> work too; no days means every day)</td>
    </tr>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">config gap</code></td>
      <td>Shows the empty-hour choices again and asks</td>
    </tr>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">config gap 4</code></td>
      <td>Picks choice 4 (or a time inside it: <code class="language-plaintext highlighter-rouge">config gap 03:00</code>)</td>
    </tr>
    <tr>
      <td><code class="language-plaintext highlighter-rouge">config peak off</code></td>
      <td>Off (windows chain back to back as before)</td>
    </tr>
  </tbody>
</table>

<h2 id="how-it-behaves">How it behaves</h2>

<ul>
  <li><strong>The peak applies only once you’ve chosen the empty hours.</strong> It won’t pick them for you.</li>
  <li><strong>Off an aligned time, it waits.</strong> A window opened at the wrong moment would throw the peak off. While it waits it doesn’t call Claude at all, so it costs no tokens.</li>
  <li><strong>A window that’s already off can’t be fixed.</strong> If your own message opened a window at another time, it can’t be moved. When it ends, claude-warmup lines up again at the next aligned time.</li>
  <li><strong>With days set, the time in between works as before.</strong> Aligning starts within a day of each peak. When the next peak is far away, like over a weekend, a new window starts as soon as the last one ends.</li>
  <li><strong>Change the peak</strong> and the choices change too. If the empty hours you chose no longer fit, it asks again.</li>
</ul>

<p>You can see it all in the status screen:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Auto warm-up
  Schedule    06:00–23:00 · every day
  Peak time   weekdays 11:30 · pings lined up at 06:30, 11:30, 16:30, 21:30
  Gap         02:30–06:30
  Next ping   ~16:25, lined up so a window resets at tomorrow 11:30
</code></pre></div></div>

<h2 id="how-to-update">How to update</h2>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>npm <span class="nb">install</span> <span class="nt">-g</span> github:jungtaejoon/claude-warmup
claude-warmup <span class="nb">install
</span>claude-warmup config peak 11:30 weekdays
</code></pre></div></div>

<p>Run <code class="language-plaintext highlighter-rouge">install</code> again so the background service switches to the new version. If you already use a peak time, choose the empty hours with <code class="language-plaintext highlighter-rouge">claude-warmup config gap</code>. If you set it up on a server with <code class="language-plaintext highlighter-rouge">scripts/server-setup.sh</code>, add <code class="language-plaintext highlighter-rouge">--prefix ~/.local</code> to the npm command so it replaces the same copy. I forgot that at first, and my server kept running the old version.</p>

<p>What changed: <a href="https://github.com/jungtaejoon/claude-warmup/releases/tag/v0.3.0">0.3 release notes</a> · <a href="https://github.com/jungtaejoon/claude-warmup/releases/tag/v0.2.0">0.2 release notes</a></p>]]></content><author><name>jungtaejoon</name></author><category term="en" /><summary type="html"><![CDATA[Set a peak time and claude-warmup works backward so a 5-hour window resets right then. A day doesn't divide into 5-hour windows, so you choose where the 4 empty hours go.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jungtaejoon.github.io/claude-warmup/og.png" /><media:content medium="image" url="https://jungtaejoon.github.io/claude-warmup/og.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="en"><title type="html">A dungeon survivors game inside WoW: Dungeon Rush</title><link href="https://jungtaejoon.github.io/blog/en/2026/11/12/introducing-dungeon-rush/" rel="alternate" type="text/html" title="A dungeon survivors game inside WoW: Dungeon Rush" /><published>2026-11-12T00:00:00+09:00</published><updated>2026-11-12T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/en/2026/11/12/introducing-dungeon-rush</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/en/2026/11/12/introducing-dungeon-rush/"><![CDATA[<p>Waiting on auction prices or a group, I kept wishing for something quick to play without leaving the game. So I made <strong><a href="https://www.curseforge.com/wow/addons/dungeon-rush">Dungeon Rush</a></strong>, a minigame addon that runs inside WoW Forever. Like <a href="/blog/en/2026/11/11/introducing-forgeflow/">ForgeFlow</a>, I built it with Claude Code and tuned it by playing it in game. It is under review on CurseForge right now.</p>

<h2 id="how-it-plays">How it plays</h2>

<p>Open it with <code class="language-plaintext highlighter-rouge">/dungeonrush</code> or <code class="language-plaintext highlighter-rouge">/drush</code>. Pick a class and a dungeon and move with WASD; your skills fire on their own. Space or Shift dashes, and every level up offers three cards to choose from.</p>

<ul>
  <li><strong>Classes and talents.</strong> Nine classes with three specs each. Every skill is a real class ability turned into an automatic attack, with its name and icon from the game. Each level gives a talent point; deeper tiers open as you spend, and the end of a tree completes the spec’s signature skill.</li>
  <li><strong>Dungeons and bosses.</strong> 35 dungeons in level order, starting with Ragefire Chasm, each with its real bosses in kill order. Between bosses you choose a road of trash, elite, campfire, merchant and event rooms.</li>
  <li><strong>Not just for ranged.</strong> Every boss has a move that punishes standing far away, and every dungeon has monsters that close the gap fast. Melee and ranged both have to keep moving.</li>
  <li><strong>Levelling never makes you safe.</strong> Monsters get tougher and more numerous with every room and every level. Choose Story, Normal, Heroic, Mythic, or Mythic+ keystones from +2 to +20 with Fortified, Tyrannical, Raging, Volcanic and Bolstering.</li>
  <li><strong>WoW’s own sounds.</strong> Footsteps, hits, level-ups, buttons and dashes use sounds from the game client.</li>
</ul>

<h2 id="what-lasts">What lasts</h2>

<p>Emblems from every run buy permanent upgrades, classes gain mastery, clears open the next dungeons, and a run in progress continues after a /reload.</p>

<p>Turn on <strong>game progress backup</strong> in the ForgeFlow Windows Companion 0.12.0 and your progress is kept on your account, so it comes back on a new PC or after a reinstall. It is off by default.</p>

<h2 id="safe-to-play">Safe to play</h2>

<p>Entering combat pauses the game at once, closes the window and gives your keyboard back. It makes no protected calls and no network traffic.</p>

<h2 id="judge-it-on-slop">Judge it on Slop</h2>

<p><a href="https://slop.ai.kr/#/p/4a8a9e29-2f4d-43ef-8015-f11a58729af7">Dungeon Rush is on Slop too</a>, with more in-game screenshots. Try it and vote <strong>▲ gem</strong> or <strong>▼ slop</strong>. Comments about hard bosses, slow stretches or class balance go straight into the next version.</p>]]></content><author><name>jungtaejoon</name></author><category term="en" /><summary type="html"><![CDATA[Dungeon Rush is a survivors-style minigame addon for WoW Forever. Pick one of nine classes and fight through the dungeons, boss by boss.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jungtaejoon.github.io/blog/assets/img/dungeonrush/logo.png" /><media:content medium="image" url="https://jungtaejoon.github.io/blog/assets/img/dungeonrush/logo.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="ko"><title type="html">뭘 만들어야 남을까? WoW Forever 제작·경매 애드온 ForgeFlow</title><link href="https://jungtaejoon.github.io/blog/2026/11/11/introducing-forgeflow/" rel="alternate" type="text/html" title="뭘 만들어야 남을까? WoW Forever 제작·경매 애드온 ForgeFlow" /><published>2026-11-11T00:00:00+09:00</published><updated>2026-11-11T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/2026/11/11/introducing-forgeflow</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/2026/11/11/introducing-forgeflow/"><![CDATA[<p>WoW Forever에서 전문기술을 올리다 보면 늘 같은 고민을 해요. “이거 만들면 남나? 재료를 사는 게 싸, 아니면 하위 재료부터 만드는 게 싸?” 계산기를 두드리고 경매장을 몇 번씩 오가다 보면 정작 게임은 별로 못 하죠. 그래서 그 과정을 한 흐름으로 묶은 애드온 <strong><a href="https://www.curseforge.com/wow/addons/forgeflow">ForgeFlow</a></strong>를 만들고 있어요. <a href="https://slop.ai.kr/">Slop</a>과 마찬가지로 Claude Code 같은 AI 도구와 함께 만들고, 직접 게임에서 써 보며 다듬고 있어요.</p>

<h2 id="제작-공방-만들기-전에-남는지부터">제작 공방: 만들기 전에 남는지부터</h2>

<p><img src="/blog/assets/img/forgeflow/workshop.jpg" alt="ForgeFlow 제작 공방 화면. 리넨 재료 가방의 제작 원가, 결과물 경매가, 경매 순이익과 필요 재료별 가격이 보인다." /></p>

<p>제작법을 고르면 <strong>제작 원가 · 결과물 경매가 · 수수료를 뺀 순이익</strong>이 한눈에 나와요. 재료마다 상인 고정가인지 경매장 시세인지, 언제 확인한 가격인지도 같이 보여 줘요. 시세는 필요한 품목만 골라 확인하고 5분 동안 재사용해요. 경매장 전체를 긁는 스캔은 하지 않아요.</p>

<h2 id="제작-경로-살까-만들까">제작 경로: 살까, 만들까</h2>

<p><img src="/blog/assets/img/forgeflow/route.jpg" alt="ForgeFlow 제작 경로 화면. 직접 재료를 모두 구매할 때와 추천 경로의 재료비를 비교하고, 하위 재료를 직접 만들면 얼마나 아끼는지 보여 준다." /></p>

<p>재료 트리를 펼쳐서 <strong>“전부 사기”와 “하위 재료부터 만들기”를 비교</strong>해요. 가방에 이미 있는 재료는 빼고, 여러 번 나오는 재료는 합쳐서 계산해요. 위 화면에서는 리넨 두루마리를 사지 않고 옷감으로 직접 만들면 2은 넘게 아낀다는 걸 바로 알 수 있어요. 추천 경로의 부족한 재료는 버튼 하나로 장보기 목록에 담겨요.</p>

<h2 id="경매장-필요한-것만-내-손으로">경매장: 필요한 것만, 내 손으로</h2>

<p><img src="/blog/assets/img/forgeflow/auction-search.jpg" alt="ForgeFlow 물품 검색 화면. 왼쪽에 분류와 검색 조건, 오른쪽에 비단 관련 물품의 등록 수량과 최저가 목록이 있다." /></p>

<p>경매인과 대화할 때만 경매장 메뉴(물품 검색 · 구매·입찰 · 제작품 구매 · 판매 등록 · 내 경매)가 열려요. 검색 결과에서 바로 장보기에 담거나, 제작 분석으로 넘어가거나, 판매 화면으로 갈 수 있어요. 판매 등록에서는 경쟁 매물을 옆에 두고 가격을 정해요.</p>

<p>거래는 안전하게 만들었어요. <strong>구매·판매·취소는 화면의 최종 버튼을 직접 눌렀을 때만</strong> 실행되고, 애드온이 알아서 사고팔지 않아요.</p>

<p>최근에는 <strong>잘못 놓인 보급품(Waylaid Supplies) 상자</strong> 화면도 넣었어요. 상자마다 받는 재료 후보 중에서 가방에 있는 상자에 필요한 재료와 수량만 골라 검색하고, 후보별 총비용을 비교해 가장 싼 재료를 표시해 줘요. 구매를 누르면 부족한 수량이 채워진 구매 화면이 열려요.</p>

<h2 id="게임-전문기술-창-안에서">게임 전문기술 창 안에서</h2>

<p><img src="/blog/assets/img/forgeflow/profession-window.jpg" alt="게임 재봉술 창. 왼쪽에 ForgeFlow 정보판이 붙어 습득 정보와 제작 원가를 보여 주고, 제작법 목록에는 배움·미습득 상태와 숙련도 상승 표시가 있다." /></p>

<p>게임의 전문기술 창 옆에는 ForgeFlow 정보판이 붙어서, 고른 제작법의 원가와 습득 방법을 보여 줘요. 목록에는 <strong>아직 배우지 않은 제작법</strong>도 함께 나와서 앞으로 뭘 배우면 좋을지 미리 볼 수 있어요. 결과물이 없는 마법부여 같은 제작법도 재료와 함께 나와요.</p>

<p><img src="/blog/assets/img/forgeflow/profession-filter.jpg" alt="ForgeFlow 전문기술 필터 메뉴. 습득 상태(전체, 배움, 미습득, 습득 미확인), 함께 적용할 조건(숙련도 상승, 현재 숙련도로 배울 수 있음, 가방 재료로 제작 가능), 내 목록(즐겨찾기, 관심 제작법)이 있다." /></p>

<p>필터는 써 보면서 계속 고쳤어요. 습득 상태를 맨 위에서 바로 고르고, <strong>숙련도 상승 · 현재 숙련도로 배울 수 있음 · 가방 재료로 제작 가능</strong>은 모두 겹쳐서(교집합) 적용돼요. 그래서 “미습득 + 숙련도 상승 + 지금 배울 수 있음”을 켜면 지금 트레이너에게 가서 배우면 바로 숙련도를 올려 주는 제작법만 남아요. 즐겨찾기와 관심 제작법은 둘 중 하나에만 있어도 보여 줘요(합집합). 마지막 필터는 캐릭터·전문기술별로 기억해요.</p>

<h2 id="제작법-데이터는-매일-확인해요">제작법 데이터는 매일 확인해요</h2>

<p>제작법 목록은 Forever 클라이언트의 최신 빌드 데이터와 공개 전문기술 목록을 매일 비교해서, 바뀐 게 있으면 테스트를 거친 뒤 업데이트를 준비해요. 결과물 확인이 안 되는 예전 시즌 잔여 제작법은 섞이지 않게 걸러 둬요.</p>

<h2 id="써-보기">써 보기</h2>

<ul>
  <li><strong>무료</strong>예요. <a href="https://www.curseforge.com/wow/addons/forgeflow">CurseForge</a>에서 받을 수 있고, WoW Forever 1.60.1에서 한국어·영어로 동작해요.</li>
  <li>게임 안에서 <code class="language-plaintext highlighter-rouge">/forgeflow</code> 또는 미니맵 버튼으로 열어요.</li>
  <li>원하면 Windows용 Companion으로 <a href="https://forgeflow.co.kr/">ForgeFlow 웹</a>과 연결해 개인 장부를 백업하고 웹에서 제작 도감을 볼 수 있어요. 연결하지 않아도 애드온 기능은 그대로 쓸 수 있어요.</li>
</ul>

<p>이 글에 나온 보급품 상자 화면과 새 필터는 0.9.1에 들어 있고, 지금 CurseForge 심사 중이에요. 써 보고 불편한 점이나 원하는 기능이 있으면 CurseForge 댓글이나 <a href="https://forgeflow.co.kr/support">ForgeFlow 지원 페이지</a>로 알려 주세요. Slop에서 하듯이, 의견을 받아 다음 버전으로 키워 갈게요.</p>

<p>Slop에도 <a href="https://slop.ai.kr/#/p/3ef64616-47bf-4cba-93af-143a36fb5be1">ForgeFlow 애드온</a>과 <a href="https://slop.ai.kr/#/p/9f9aae21-517d-4361-a374-2bed7d93740e">Windows Companion</a>을 올렸어요. 써 보고 보석인지 슬롭인지 판정해 주세요.</p>]]></content><author><name>jungtaejoon</name></author><summary type="html"><![CDATA[제작법과 재료 경로, 경매장 시세, 판매와 개인 장부까지 한 흐름으로 이어 주는 무료 WoW Forever 애드온 ForgeFlow를 소개해요. Slop처럼 AI와 함께 만들고 있어요.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jungtaejoon.github.io/blog/assets/img/forgeflow/workshop.jpg" /><media:content medium="image" url="https://jungtaejoon.github.io/blog/assets/img/forgeflow/workshop.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="en"><title type="html">Is it worth crafting? ForgeFlow, a crafting and auction addon for WoW Forever</title><link href="https://jungtaejoon.github.io/blog/en/2026/11/11/introducing-forgeflow/" rel="alternate" type="text/html" title="Is it worth crafting? ForgeFlow, a crafting and auction addon for WoW Forever" /><published>2026-11-11T00:00:00+09:00</published><updated>2026-11-11T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/en/2026/11/11/introducing-forgeflow</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/en/2026/11/11/introducing-forgeflow/"><![CDATA[<p>Leveling professions in WoW Forever always comes with the same questions. Will this make a profit? Is it cheaper to buy the materials, or to craft the intermediate ones myself? Between the calculator and trips back and forth to the auction house, there isn’t much time left to play. So I’m building <strong><a href="https://www.curseforge.com/wow/addons/forgeflow">ForgeFlow</a></strong>, an addon that turns that whole process into one flow. Like <a href="https://slop.ai.kr/">Slop</a>, I build it together with AI tools such as Claude Code and refine it by playing with it in game. The screenshots below are from the Korean client; the addon also runs in English.</p>

<h2 id="workshop-check-the-profit-before-you-craft">Workshop: check the profit before you craft</h2>

<p><img src="/blog/assets/img/forgeflow/workshop.jpg" alt="The ForgeFlow workshop. For a Linen Reagent Bag it shows crafting cost, auction price of the result, net profit after the fee, and the price of each material." /></p>

<p>Pick a recipe and you see <strong>crafting cost, the auction price of the result, and net profit after the auction fee</strong> at a glance. Each material shows whether it’s a fixed vendor price or an auction price, and when that price was checked. Prices are looked up only for the items you need and reused for 5 minutes. ForgeFlow never scans the whole auction house.</p>

<h2 id="crafting-route-buy-or-craft">Crafting route: buy or craft?</h2>

<p><img src="/blog/assets/img/forgeflow/route.jpg" alt="The ForgeFlow crafting route. It compares buying all direct materials with the recommended route and shows how much crafting the intermediates saves." /></p>

<p>Expand the material tree to <strong>compare “buy everything” with “craft the intermediates yourself.”</strong> Materials already in your bags are deducted, and repeated materials are combined. In the screenshot you can see right away that making Bolts of Linen Cloth from cloth instead of buying them saves over 2 silver. The missing materials for the recommended route go into your shopping list with one button.</p>

<h2 id="auction-house-only-what-you-need-on-your-click">Auction house: only what you need, on your click</h2>

<p><img src="/blog/assets/img/forgeflow/auction-search.jpg" alt="The ForgeFlow item search. Categories and search options on the left; on the right, silk-related items with listed quantity and lowest price." /></p>

<p>The auction pages (search, buy and bid, buy crafted items, sell, my auctions) open only while you’re talking to an auctioneer. From search results you can add an item to your shopping list, jump to crafting analysis, or go to the sell screen. When selling, you set your price with competing listings right beside the form.</p>

<p>Trading is built to be safe: <strong>buying, selling and cancelling happen only when you press the final button yourself.</strong> The addon never buys or sells on its own.</p>

<p>The newest page handles <strong>Waylaid Supplies crates</strong>. For the crates in your bags it searches only the materials and quantities they accept, compares the total cost of each option, and marks the cheapest one. Press buy and the purchase screen opens with the missing quantity already filled in.</p>

<h2 id="inside-the-games-profession-window">Inside the game’s profession window</h2>

<p><img src="/blog/assets/img/forgeflow/profession-window.jpg" alt="The game's Tailoring window with the ForgeFlow panel attached on the left, showing how to learn the recipe and its cost. The recipe list shows learned and unlearned recipes and skill-up markers." /></p>

<p>A ForgeFlow panel sits next to the game’s profession window and shows the selected recipe’s cost and how to learn it. The list also includes <strong>recipes you haven’t learned yet</strong>, so you can plan what to learn next. Recipes with no item output, such as enchants, are listed with their materials too.</p>

<p><img src="/blog/assets/img/forgeflow/profession-filter.jpg" alt="The ForgeFlow profession filter: learning state (all, learned, unlearned, unknown), conditions applied together (skill-up, learnable at current skill, craftable from bag materials), and my lists (favorites, interest recipes)." /></p>

<p>The filter changed a lot as I used it. You pick the learning state right at the top, and <strong>skill-up, learnable at your current skill, and craftable from bag materials</strong> all apply together (an intersection). Turn on “unlearned + skill-up + learnable now” and you’re left with exactly the recipes a trainer can teach you right now that will raise your skill. Favorites and interest recipes show a recipe if it’s in either list (a union). Your last filter is remembered per character and profession.</p>

<h2 id="recipe-data-is-checked-every-day">Recipe data is checked every day</h2>

<p>Every day the recipe list is compared with the newest Forever client build and the public profession lists. When something changed, the update is tested and prepared. Leftover recipes from an older season whose results can’t be confirmed are kept out.</p>

<h2 id="try-it">Try it</h2>

<ul>
  <li>It’s <strong>free</strong>. Get it on <a href="https://www.curseforge.com/wow/addons/forgeflow">CurseForge</a>. It runs on WoW Forever 1.60.1 in English and Korean.</li>
  <li>Open it in game with <code class="language-plaintext highlighter-rouge">/forgeflow</code> or the minimap button.</li>
  <li>If you like, the Windows Companion connects it to the <a href="https://forgeflow.co.kr/">ForgeFlow website</a> to back up your private ledger and browse the crafting catalog on the web. The addon works fully without it.</li>
</ul>

<p>The Waylaid Supplies page and the new filters in this post are in version 0.9.1, which is under review on CurseForge right now. If something bothers you or you want a feature, tell me in the CurseForge comments or on the <a href="https://forgeflow.co.kr/support">ForgeFlow support page</a>. Just like on Slop, I’ll take the feedback and grow it into the next version.</p>

<p>ForgeFlow is on Slop too: <a href="https://slop.ai.kr/#/p/3ef64616-47bf-4cba-93af-143a36fb5be1">the addon</a> and <a href="https://slop.ai.kr/#/p/9f9aae21-517d-4361-a374-2bed7d93740e">the Windows Companion</a>. Try them and judge whether they are gems or slop.</p>]]></content><author><name>jungtaejoon</name></author><category term="en" /><summary type="html"><![CDATA[ForgeFlow is a free WoW Forever addon that connects recipes, material routes, auction prices, selling and a private ledger in one flow. Like Slop, I'm building it with AI.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jungtaejoon.github.io/blog/assets/img/forgeflow/workshop.jpg" /><media:content medium="image" url="https://jungtaejoon.github.io/blog/assets/img/forgeflow/workshop.jpg" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="ko"><title type="html">Claude 5시간 한도, 첫 메시지부터 5시간을 꽉 채워 기다리지 않는 법</title><link href="https://jungtaejoon.github.io/blog/2026/11/10/claude-5-hour-limit-reset/" rel="alternate" type="text/html" title="Claude 5시간 한도, 첫 메시지부터 5시간을 꽉 채워 기다리지 않는 법" /><published>2026-11-10T00:00:00+09:00</published><updated>2026-11-10T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/2026/11/10/claude-5-hour-limit-reset</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/2026/11/10/claude-5-hour-limit-reset/"><![CDATA[<p><a href="https://slop.ai.kr/">Slop</a>을 Claude Code로 만들면서 거의 매일 같은 장면을 봤어요. 오전 내내 열심히 작업하다가 정오쯤 “한도 도달, 14:00에 리셋”. 9시에 보낸 내 첫 메시지가 5시간 시계를 새로 시작했으니, 가장 손이 잘 풀리는 시간에 두 시간을 기다려야 했죠. 그래서 리셋이 어떻게 정해지는지 찾아보고, 작은 도구를 하나 만들었어요.</p>

<h2 id="리셋은-첫-메시지로부터-5시간-뒤">리셋은 첫 메시지로부터 5시간 뒤</h2>

<p>Claude Pro·Max의 세션 한도는 시계 기준이 아니라 앞 창이 끝난 뒤 <strong>창의 첫 메시지로부터 5시간</strong>이에요(<a href="https://support.claude.com/en/articles/11647753-how-do-usage-and-length-limits-work">공식 도움말</a>). 9시에 처음 물어보면 14시에 리셋돼요. 웹, 앱, Claude Code가 이 한도를 같이 쓰고, 주간 한도는 이와 별도예요.</p>

<p>내 리셋 시각은 Claude Code에서 <code class="language-plaintext highlighter-rouge">/usage</code>를 치면 바로 보여요. 이 명령은 로컬에서 돌아서 토큰을 쓰지 않아요.</p>

<h2 id="창이-늘-돌아가고-있으면-덜-기다려요">창이 늘 돌아가고 있으면 덜 기다려요</h2>

<p>문제는 내 첫 메시지가 5시간을 <strong>통째로</strong> 새로 시작한다는 거예요. 반대로 내가 앉기 전에 이미 창이 흐르고 있었다면, 5시간 중 일부는 벌써 지나 있어요. 앞 창이 끝나자마자 새 창이 열리게 해 두면 이렇게 돼요.</p>

<table>
  <thead>
    <tr>
      <th>창</th>
      <th>그때 시작하면 다음 리셋</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>6시~11시</td>
      <td>9시에 시작 → 11시 (원래는 14시)</td>
    </tr>
    <tr>
      <td>11시~16시</td>
      <td>13시에 시작 → 16시 (원래는 18시)</td>
    </tr>
    <tr>
      <td>16시~21시</td>
      <td>19시에 시작 → 21시 (원래는 24시)</td>
    </tr>
  </tbody>
</table>

<p>언제 앉든 다음 리셋까지 평균 2시간 반 정도만 남아 있어요. 한도가 늘어나는 건 아니에요. 5시간을 처음부터 꽉 채워 기다리는 일이 없어질 뿐이에요.</p>

<h2 id="자동으로-하기-claude-warmup">자동으로 하기: claude-warmup</h2>

<p>창이 끝날 때마다 직접 메시지를 보낼 수는 없으니 <a href="https://jungtaejoon.github.io/claude-warmup/ko/">claude-warmup</a>을 만들었어요.</p>

<ul>
  <li>5분마다 <code class="language-plaintext highlighter-rouge">/usage</code>로 확인하고(토큰 0), <strong>열린 창이 없을 때만</strong> haiku에 “hi”를 보내요. 그래서 앞 창이 끝나면 바로 새 창이 이어져요.</li>
  <li>내 컴퓨터나 내 서버에서 돌고, 로그인 정보는 읽지 않아요. 토큰을 다른 서비스에 맡길 필요가 없어요.</li>
  <li>터미널에서 세션·주간 사용량과 리셋 시각을 보여 줘요.</li>
  <li>macOS·Linux·Windows에서 돌아가요. 맥이 꺼져 있을 때를 위해 무료 서버에 설치하는 스크립트도 있어요.</li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>npm <span class="nb">install</span> <span class="nt">-g</span> github:jungtaejoon/claude-warmup
claude-warmup <span class="nb">install
</span>claude-warmup config hours 06:00-23:00
</code></pre></div></div>

<p>저는 Oracle Cloud 무료 서버에 올려 두고 써요. 맥을 꺼 둬도 아침 6시부터 밤까지 창이 끊김 없이 이어져서, 언제 앉아도 시계가 이미 돌고 있어요.</p>

<p>더 자세한 원리와 확인 방법은 <a href="https://jungtaejoon.github.io/claude-warmup/ko/claude-usage-limit-reset/">Claude 사용량 한도 리셋 가이드</a>에 정리해 뒀어요. 코드는 <a href="https://github.com/jungtaejoon/claude-warmup">GitHub</a>에 있어요.</p>]]></content><author><name>jungtaejoon</name></author><summary type="html"><![CDATA[Slop을 만들다 Claude 한도에 걸릴 때마다 5시간 가까이 기다리는 게 싫어서, 5시간 창을 늘 켜 두는 작은 도구 claude-warmup을 만들었어요.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jungtaejoon.github.io/claude-warmup/og.png" /><media:content medium="image" url="https://jungtaejoon.github.io/claude-warmup/og.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="ko"><title type="html">AI가 만든 거라고 다 슬롭일까? 보석을 가려내는 커뮤니티 Slop을 만들었어요</title><link href="https://jungtaejoon.github.io/blog/2026/11/10/introducing-slop/" rel="alternate" type="text/html" title="AI가 만든 거라고 다 슬롭일까? 보석을 가려내는 커뮤니티 Slop을 만들었어요" /><published>2026-11-10T00:00:00+09:00</published><updated>2026-11-10T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/2026/11/10/introducing-slop</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/2026/11/10/introducing-slop/"><![CDATA[<p>요즘은 누구나 AI로 글을 쓰고, 그림을 그리고, 작은 웹앱이나 게임까지 만들어요. 그만큼 “AI가 만든 거잖아” 한마디로 넘겨지는 것도 많아졌죠. 이런 걸 흔히 <strong>슬롭(slop)</strong>이라고 불러요.</p>

<p>그런데 그 더미 속에는 진짜 쓸 만하거나 재미있는 것도 섞여 있어요. 문제는 그걸 골라낼 곳이 없다는 거예요. 그래서 <strong><a href="https://slop.ai.kr/">Slop</a></strong>을 만들었어요.</p>

<h2 id="slop에서는-이렇게-해요">Slop에서는 이렇게 해요</h2>

<ol>
  <li><strong>올리기.</strong> AI로 만든 글, 이미지, HTML 실행물, 코드, 링크를 주제별 커뮤니티에 올려요. 어떤 도구와 프롬프트로 만들었는지도 같이 남길 수 있어요.</li>
  <li><strong>써 보기.</strong> HTML 실행물은 샌드박스 안에서 바로 돌아가요. AI가 만든 웹앱이나 게임을 설치 없이 그 자리에서 해 볼 수 있어요.</li>
  <li><strong>판정하기.</strong> 써 본 사람들이 <strong>▲보석</strong> 또는 <strong>▼슬롭</strong>을 눌러요. 댓글에는 “가치 발견”, “개선 제안”, “질문” 같은 종류를 붙여서 왜 그렇게 판정했는지 남겨요.</li>
  <li><strong>키우기.</strong> 올린 사람은 의견을 반영해 <strong>수정판</strong>을 올려요. 버전마다 무엇이 바뀌었는지 비교해 볼 수 있고, 반영한 제안에는 표시가 붙어요. 다른 사람이 가져가서 <strong>리믹스</strong>할 수도 있어요.</li>
</ol>

<blockquote>
  <p>핵심은 “AI가 만들었냐”가 아니라 “써 보니 가치가 있냐”예요.</p>
</blockquote>

<h2 id="레딧처럼-누구나-커뮤니티를-만들-수-있어요">레딧처럼, 누구나 커뮤니티를 만들 수 있어요</h2>

<p>AI 그림, AI 음악, 프롬프트, 작은 웹앱처럼 주제별 커뮤니티가 있어요. 관심 있는 커뮤니티를 팔로우하면 홈 피드에 모이고, 인기 피드에서는 전체 글을 볼 수 있어요. 정렬도 인기, 최신, 최고, 논쟁 중, <strong>판정 대기</strong>로 바꿀 수 있어서 아직 아무도 판정하지 않은 글을 찾아 첫 판정을 남길 수도 있어요.</p>

<h2 id="지금-바로-해-볼-수-있는-것">지금 바로 해 볼 수 있는 것</h2>

<ul>
  <li><strong>판정 한 번 해 보기:</strong> <a href="https://slop.ai.kr/#/judge">판정하기 화면</a>을 열면 카드 한 장이 바로 나와요. ▲ 아니면 ▼, 그것만 누르면 돼요.</li>
  <li><strong>이번 주 보석 보기:</strong> <a href="https://slop.ai.kr/best/">이번 주 보석</a> 페이지는 3시간마다 자동으로 갱신돼요.</li>
  <li><strong>앱처럼 쓰기:</strong> 휴대폰 브라우저에서 “홈 화면에 추가”를 누르면 앱 아이콘으로 설치돼요.</li>
  <li><strong>피드 구독:</strong> <a href="https://slop.ai.kr/rss.xml">RSS</a>로 새 글을 받아 볼 수 있어요.</li>
</ul>

<h2 id="어떻게-만들었나요">어떻게 만들었나요</h2>

<p>Slop은 Claude Code와 함께 만들었어요. 화면은 Vite로, 데이터와 로그인은 Supabase(Postgres + 행 단위 보안 규칙)로 만들었고, 코드는 <a href="https://github.com/jungtaejoon/slop">GitHub</a>에 공개돼 있어요. 만드는 과정에서 겪은 일, 고친 버그, 사람을 모으려고 해 본 것들은 이 블로그에 계속 써 나갈게요.</p>

<p>아직 초기라서 판정 하나, 댓글 하나가 정말 큰 힘이 돼요. AI로 만든 게 있다면 하나 올려서 판정을 받아 보세요.</p>

<p><strong><a href="https://slop.ai.kr/">Slop 둘러보기 →</a></strong></p>]]></content><author><name>jungtaejoon</name></author><summary type="html"><![CDATA[AI로 만든 글·그림·웹앱·코드를 올리고, 직접 써 본 사람들이 ▲보석 / ▼슬롭으로 판정하고, 의견을 반영해 다음 버전으로 키우는 곳이에요.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://slop.ai.kr/og-ko.png" /><media:content medium="image" url="https://slop.ai.kr/og-ko.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="en"><title type="html">How to stop waiting a full 5 hours for Claude’s usage limit to reset</title><link href="https://jungtaejoon.github.io/blog/en/2026/11/10/claude-5-hour-limit-reset/" rel="alternate" type="text/html" title="How to stop waiting a full 5 hours for Claude’s usage limit to reset" /><published>2026-11-10T00:00:00+09:00</published><updated>2026-11-10T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/en/2026/11/10/claude-5-hour-limit-reset</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/en/2026/11/10/claude-5-hour-limit-reset/"><![CDATA[<p>While building <a href="https://slop.ai.kr/">Slop</a> with Claude Code, I saw the same thing almost every day. A productive morning, then around noon: “limit reached, resets at 2 PM.” My own first message at 9 had started a fresh 5-hour clock, so I waited two hours, right when I was most in the flow. So I looked into how the reset is timed and built a small tool.</p>

<h2 id="the-reset-is-5-hours-after-your-first-message">The reset is 5 hours after your first message</h2>

<p>Claude Pro and Max session limits run on windows that start with <strong>the first message</strong> after the last window ended, not on a fixed clock (<a href="https://support.claude.com/en/articles/11647753-how-do-usage-and-length-limits-work">help center</a>). Ask your first question at 9:00 and the limit resets at 14:00. The web app, desktop and mobile apps, and Claude Code share it. The weekly limit is separate.</p>

<p>You can see your own reset time by running <code class="language-plaintext highlighter-rouge">/usage</code> in Claude Code. It runs locally and uses no tokens.</p>

<h2 id="keep-a-window-running-and-you-wait-less">Keep a window running and you wait less</h2>

<p>The problem is that your first message starts the <strong>whole</strong> 5 hours. If a window was already running before you sat down, part of those 5 hours has already passed. Start a new window the moment the last one ends, and you get this:</p>

<table>
  <thead>
    <tr>
      <th>Window</th>
      <th>Start then, next reset at</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <td>6:00 to 11:00</td>
      <td>Start at 9:00 → 11:00 (otherwise 14:00)</td>
    </tr>
    <tr>
      <td>11:00 to 16:00</td>
      <td>Start at 13:00 → 16:00 (otherwise 18:00)</td>
    </tr>
    <tr>
      <td>16:00 to 21:00</td>
      <td>Start at 19:00 → 21:00 (otherwise midnight)</td>
    </tr>
  </tbody>
</table>

<p>Whenever you sit down, the next reset is about 2.5 hours away on average. You don’t get more usage. You just stop starting from a full 5-hour wait.</p>

<h2 id="automating-it-claude-warmup">Automating it: claude-warmup</h2>

<p>I can’t send a message every time a window ends, so I built <a href="https://jungtaejoon.github.io/claude-warmup/">claude-warmup</a>.</p>

<ul>
  <li>It checks every 5 minutes with <code class="language-plaintext highlighter-rouge">/usage</code> (0 tokens) and sends “hi” to haiku <strong>only when no window is open</strong>, so a new window follows right after the last one.</li>
  <li>It runs on your own computer or server and never reads your credentials, so no token has to live in another service.</li>
  <li>It shows session and weekly usage with reset times in the terminal.</li>
  <li>It runs on macOS, Linux and Windows, with a setup script for a free always-on server for when your laptop is off.</li>
</ul>

<div class="language-bash highlighter-rouge"><div class="highlight"><pre class="highlight"><code>npm <span class="nb">install</span> <span class="nt">-g</span> github:jungtaejoon/claude-warmup
claude-warmup <span class="nb">install
</span>claude-warmup config hours 06:00-23:00
</code></pre></div></div>

<p>I run it on a free Oracle Cloud server. Even with my Mac off, windows run back to back from 6 in the morning until night, so the clock is already running whenever I sit down.</p>

<p>The details are in the <a href="https://jungtaejoon.github.io/claude-warmup/claude-usage-limit-reset/">Claude usage limit reset guide</a>. The code is on <a href="https://github.com/jungtaejoon/claude-warmup">GitHub</a>.</p>]]></content><author><name>jungtaejoon</name></author><category term="en" /><summary type="html"><![CDATA[I got tired of waiting out nearly 5 hours every time I hit Claude's limit while building Slop, so I made claude-warmup, a small tool that keeps a 5-hour window always running.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://jungtaejoon.github.io/claude-warmup/og.png" /><media:content medium="image" url="https://jungtaejoon.github.io/claude-warmup/og.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry><entry xml:lang="en"><title type="html">Is everything AI-made just slop? I built Slop, a community that finds the gems</title><link href="https://jungtaejoon.github.io/blog/en/2026/11/10/introducing-slop/" rel="alternate" type="text/html" title="Is everything AI-made just slop? I built Slop, a community that finds the gems" /><published>2026-11-10T00:00:00+09:00</published><updated>2026-11-10T00:00:00+09:00</updated><id>https://jungtaejoon.github.io/blog/en/2026/11/10/introducing-slop</id><content type="html" xml:base="https://jungtaejoon.github.io/blog/en/2026/11/10/introducing-slop/"><![CDATA[<p>Anyone can now write, draw, and even ship small web apps and games with AI. That also means a lot of it gets waved off with “it’s just AI-made.” People call that <strong>slop</strong>.</p>

<p>But mixed into the pile are things that are genuinely useful or fun. The problem is there is no good place to sort them out. So I built <strong><a href="https://slop.ai.kr/">Slop</a></strong>.</p>

<h2 id="how-slop-works">How Slop works</h2>

<ol>
  <li><strong>Post.</strong> Share AI-made writing, images, runnable HTML, code or links in topic communities. You can note which tools and prompts you used.</li>
  <li><strong>Try.</strong> Runnable HTML plays right in a sandbox, so you can try an AI-made web app or game without installing anything.</li>
  <li><strong>Judge.</strong> People who try it vote <strong>▲gem</strong> or <strong>▼slop</strong>. Comments carry a type such as “found value”, “suggestion” or “question”, so the reason behind each judgment stays visible.</li>
  <li><strong>Grow.</strong> The author posts a <strong>new version</strong> based on the feedback. You can compare what changed between versions, and adopted suggestions get marked. Others can <strong>remix</strong> it too.</li>
</ol>

<blockquote>
  <p>The question is not “was it made by AI?” but “is it worth something once you try it?”</p>
</blockquote>

<h2 id="communities-anyone-can-start-like-reddit">Communities anyone can start, like Reddit</h2>

<p>There are communities for AI art, AI music, prompts, small web apps and more. Follow the ones you like and they fill your home feed; the popular feed shows everything. You can sort by hot, new, top, controversial, or <strong>awaiting judgment</strong>, so you can find posts nobody has judged yet and leave the first vote.</p>

<h2 id="things-to-try-right-now">Things to try right now</h2>

<ul>
  <li><strong>Judge one post:</strong> open the <a href="https://slop.ai.kr/#/judge">judge screen</a> and a card shows up. Press ▲ or ▼, that’s it.</li>
  <li><strong>See this week’s gems:</strong> the <a href="https://slop.ai.kr/best/">weekly gems</a> page refreshes every three hours.</li>
  <li><strong>Use it like an app:</strong> on your phone, choose “Add to Home Screen” in the browser to install it.</li>
  <li><strong>Subscribe:</strong> follow new posts with <a href="https://slop.ai.kr/rss.xml">RSS</a>.</li>
</ul>

<h2 id="how-i-built-it">How I built it</h2>

<p>I built Slop together with Claude Code. The front end uses Vite, and data and sign-in run on Supabase (Postgres with row-level security rules). The code is public on <a href="https://github.com/jungtaejoon/slop">GitHub</a>. I will keep writing here about what happens while building it: bugs fixed, and what I try to bring people in.</p>

<p>It is still early, so every vote and comment really helps. If you have made something with AI, post it and see how it is judged.</p>

<p><strong><a href="https://slop.ai.kr/">Explore Slop →</a></strong></p>]]></content><author><name>jungtaejoon</name></author><category term="en" /><summary type="html"><![CDATA[Post AI-made writing, images, web apps and code. People who try them judge each one ▲gem or ▼slop, and you grow the good ones into the next version.]]></summary><media:thumbnail xmlns:media="http://search.yahoo.com/mrss/" url="https://slop.ai.kr/og.png" /><media:content medium="image" url="https://slop.ai.kr/og.png" xmlns:media="http://search.yahoo.com/mrss/" /></entry></feed>