commit
무료Create a conventional commit for all uncommitted changes
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Audit the in-tree model catalog against each provider's live API (Anthropic, OpenAI, Google, OpenRouter, xAI) using the keys in .env. Surfaces new models the catalog is missing, catalog models a provider no longer returns, and price/context drift on the curated OpenRouter subset, so the catalog stays current. Works on both stacks (docker containers or host venv). Run periodically or when a provider ships new models / changes pricing.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
실행 점수 미검증
설치 방법 보기설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Keep src/uniffy/data/models/catalog.json current by diffing
it against what the providers actually serve. The catalog is the source of truth
for the model list, pricing, capabilities, and image-gen support (see
.agents/rules/agents.md), so it drifts as providers ship and retire models.
Detect the stack (same protocol as the stack notes in AGENTS.md) - never
assume:
docker compose ps -q --status running backend
/app, and .env injected via env_file..venv/bin/python exists on the host. A bare
.venv directory does NOT count (empty or root-owned leftovers happen and
uv will fail trying to populate them).run --rm backend container (compose builds the dev image on first use).
Never fix a broken host .venv by letting uv sync onto the host.Run the audit from the repo root. deps run -s backend is a raw uv
passthrough that targets whichever stack you detected:
# docker stack (default)
./manage.py deps run -s backend run python .agents/skills/model-catalog-audit/scripts/audit_models.py
# local stack
./manage.py deps run -s backend --stack local run python .agents/skills/model-catalog-audit/scripts/audit_models.py
It loads provider keys from .env (CLAUDE_API_KEY, OPENAI_API_KEY,
GOOGLE_GENAI_API_KEY, XAI_API_KEY), lists each provider's live models,
and diffs against the catalog. A provider with no key in .env is skipped.
OpenRouter uses a public endpoint and needs no key, so it always runs. It is
read-only - it never edits the catalog.
Read the report. Per provider:
tts-*, whisper-*,
gpt-realtime-*, *-moderation, aqa, deep-research-*, computer-use-*,
sora-* are not chat or image-generation models - skip them unless we
add a code path. Focus on chat models and image-gen models.cost_per_1m_* vs live per-token
prices times 1M, beyond a small tolerance), and CONTEXT DRIFT (catalog
context_window vs live context_length).XAI_API_KEY. When the richer
/v1/language-models endpoint responds with pricing, the same PRICE DRIFT
report runs; otherwise the plain /v1/models list is used.Review the findings with the user before adopting anything.
Decide what to adopt. For each NEW model worth adding (a real chat or image-gen model), and for any model whose pricing may have changed:
Edit catalog.json (catwalk-shaped - match existing entries):
id, name, cost_per_1m_in/out, cost_per_1m_in_cached
(cache write) + cost_per_1m_out_cached (cache read), context_window,
default_max_tokens, can_reason (+ reasoning_levels /
default_reasoning_effort when it reasons), supports_attachments.supports_image_generation: true and either
image_prices (size/quality matrix) or cost_per_image (flat). Leave
pricing out if genuinely unknown - the model is still selectable, cost just
stays unrecorded.aliases for -preview / -latest / dated variants that should
resolve to one canonical entry.deprecated: true and sunset_date rather
than deleting, so existing references still resolve.Verify on the same stack you detected in step 1 (add --stack local for
the host venv). The loader re-reads on file change:
./manage.py deps run -s backend run python -c "from uniffy.domains.agents.providers.catalog import loader; loader.load_catalog(); print('catalog valid')"
./manage.py deps run -s backend run pytest src/uniffy/tests/test_pricing.py -q
A malformed catalog raises on load (hard fail), so a clean load means the schema is satisfied.
/v1/language-models reports pricing. Anthropic,
OpenAI, and Google expose no pricing, so their price changes remain a manual
web-research step..env or print key values.아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Create a conventional commit for all uncommitted changes
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Create a Product Requirements Document from the current conversation and save it under `.agents/local/plans/`. Use when the user asks for a PRD, product specification, or requirements document for an Uniffy feature.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Execute or resume an implementation plan from `.agents/local/plans/`, keeping its companion backlog and validation evidence current. Use when the user asks to implement a saved plan or continue planned multi-phase work.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Create a comprehensive Uniffy feature plan in `.agents/local/plans/` through deep codebase analysis, applicable rules, verified patterns, risks, tests, and executable validation steps. Use when the user asks to plan a feature or prepare implementation work without writing product code.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.
Check the current branch for an existing PR and either update or create one with an auto-generated description based on all commits since diverging from main.
한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.