---
title: "optimaizr"
url: "https://claudemods.dev/ko/builds/optimaizr-25aed7"
source: "https://github.com/blendbunjaku/optimaizr/tree/main/mods/optimaizr"
source_type: "github"
repo: "https://github.com/blendbunjaku/optimaizr/tree/main/mods/optimaizr"
author: "blendbunjaku"
author_handle: "blendbunjaku"
stars: 41
category: "사용량 및 비용"
categories: ["cost"]
tags: ["cost-tracking", "hooks", "model-switching", "spinner", "statusline", "usage-limits"]
permission_level: 3
scan_complete: true
install: "claude plugin marketplace add blendbunjaku/optimaizr\nclaude plugin install optimaizr@optimaizr"
added: "2026-10-11T14:52:26.530Z"
updated: "2026-10-09T18:25:17Z"
locale: "ko"
content_locale: "ko"
---

# optimaizr

Claude Code 플러그인으로, 스피너와 프롬프트 밴드에 턴별 비용과 5시간 플랜 사용량을 실시간으로 표시하고, `optimaizr live`에서 모델/노력 전환을 적용하며, 대화 캐시가 만료되기 전에 카운트다운하고, `/optimaizr handoff` 노트를 제공하고, 재시도 루프를 방지합니다 — 모두 로컬에서 실행됩니다.

## Description

optimAIzr는 세션 비용을 Claude Code 인터페이스에 직접 표시합니다: 스피너는 현재 턴의 비용과 윈도우 채움을 보여주고, 프롬프트 위의 밴드는 플랜 윈도우 상태와 재설정 시간을 보여주며, 각 답변에는 한 줄 비용 요약이 제공됩니다. `/optimaizr`는 세션 지출과 절약 및 플랜 윈도우를 출력하고, `/optimaizr hud`는 게이지와 스파크라인을 렌더링하며, `/optimaizr handoff`는 Claude가 짧은 노트를 작성하여 이전 대화를 다시 읽지 않고도 새 대화를 시작할 수 있게 합니다. 또한 캐시 만료 전에 비용 경고와 함께 카운트다운하고, 동일한 실패가 두 번 발생하면 명령을 변경하지 않고 유지하여 재시도 루프를 끊습니다. `optimaizr live`에서 허용된 전환(모델 또는 노력)은 다음 요청부터 실행 중인 세션에 적용됩니다. 설치: `/plugin marketplace add blendbunjaku/optimaizr` 그런 다음 `/plugin install optimaizr@optimaizr`. Claude Code 2.1.287+가 필요합니다. 자체 세션을 통해 발행된 핸드오프 요청을 제외하고 완전히 로컬입니다.

## Install

```
claude plugin marketplace add blendbunjaku/optimaizr
claude plugin install optimaizr@optimaizr
```

## Original README

# optimAIzr for Claude Code

A Claude Code mod from [optimAIzr](https://github.com/blendbunjaku/optimaizr).
It puts what your session costs where you work, lets `optimaizr live` switch
the model or effort of the session you are in, and shows what each switch
saved.

```
/plugin marketplace add blendbunjaku/optimaizr
/plugin install optimaizr@optimaizr
```

Needs Claude Code 2.1.287 or later.

## What it adds

- **The spinner** shows what the turn has cost so far and how full your 5-hour
  window is: `Thinking · $0.18 · 61% of 5h…`
- **The band above the prompt** shows the window, how long it lasts at this
  pace and when it resets: `61% of 5h · ~2h 25m left at this pace · resets 01:00`
- **Each answer** gets one line: `optimaizr: this turn $0.18 · 4 requests · 5h 55% → 56%`
- **What a switch saved:** a switched turn's line leads with it, e.g.
  `saved $0.10 vs Opus 5.5 · this turn $0.10 on Sonnet 5.5 · …`, and the band
  keeps a running total. It is the same tokens priced on both models.
- **`/optimaizr`** prints the session's spend, what it saved, both plan windows
  and any switch. **`/optimaizr hud`** shows it as gauges and a sparkline.
- **Switches that pay:** subagents switch at once; a long conversation waits
  until reloading it into the new model pays back, and the band says so.
- **Before the cache expires:** Claude Code caches the conversation for an
  hour. Once it carries 50K tokens or more, the band counts down the last 15
  minutes, `cache     warm 10m more, then 300K is written again ($2.40)`, and one
  toast comes 5 minutes before. After it expires, the band says what the next
  message will cost. Past 200K, it says what each request re-reads.
- **`/optimaizr handoff`:** Claude writes a three-line note (done, next, the
  file to start from) while the cache is still warm,
  so it costs cents. `/clear`, and the next conversation in that project
  starts from the note instead of re-reading the old one. A note is used
  once and expires after 12 hours.
- **A guard against retry loops:** when the same command fails twice in a row
  with nothing changed, the next identical attempt is held once and Claude is
  asked to change something first.
- **Switches.** Press **Y** on a model swap in
  [`optimaizr live`](https://www.npmjs.com/package/optimaizr) and running
  sessions in that project use the new model from their next request. A
  reasoning-effort finding lowers effort the same way. The first switched
  request leaves a note, and the band names the model. Harder task?
  `/optimaizr off` goes back for this session, `/optimaizr on` resumes, and
  `optimaizr undo <rule>` takes it back everywhere.

## Options

| Option       | Default | What it does                                  |
| ------------ | ------- | --------------------------------------------- |
| `turnLine`   | `true`  | The line under each answer with what it cost. |
| `retryGuard` | `true`  | Hold a command that failed twice unchanged.   |

## Privacy

It reads the usage figures Claude Code already shows you (cost, token counts,
context fill, plan windows) and the commands Claude runs, kept in memory for
the retry guard. It never reads your prompts or file contents and makes no
network calls of its own. It
reads `~/.optimaizr/overrides.json` and writes one small file per session to
`~/.optimaizr/mod/sessions`, which is how `optimaizr live` knows it is running.
That file also carries Claude Code's own 5-hour and weekly meters, so
`optimaizr profile` and `optimaizr live` can show your real windows.
`/optimaizr handoff` is the one exception to "no text": only when you run it,
it asks Claude for a note through your own session and saves the reply to
`~/.optimaizr/mod/handoffs`, one file per project, which the next conversation
there reads once. Nothing leaves your machine besides that one request to Claude.
`claude plugin validate` on this folder lists every call it makes.

## Develop

```bash
claude --plugin-dir mods/optimaizr     # reloads on save
claude plugin validate mods/optimaizr
claude plugin test mods/optimaizr
```

The tests were last run on Claude Code 2.1.286, where mods still needed
`CLAUDE_CODE_ENABLE_FUNCTION_HOOKS=1`. From 2.1.287 they are on by default.
