feat: anillo de uso del GLM Coding Plan de z.ai
メンテナーはふだん 1 日以内に返信
まだ誰も着手していません。
評価
- 難易度
- 4/5
- 見積もり時間
- 3〜5日
- 初心者へのやさしさ
- 48/100
- issue の種類
- 機能追加
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- rust, typescript
調査の方向性
Read the existing provider implementations, especially cursor.rs, and follow their registration through mod.rs, config.rs, secrets.rs, and Settings.tsx. Check how provider tests use JSON fixtures and how settings test connections. Done means the GLM Coding Plan quota and reset data appear in usage rings, the plan level is shown, and the API key can be saved and checked; first verify the endpoint and any weekly limit behavior.
索引モデルが issue の本文から書いたものです。
説明
Pre-flight checks
- Busqué en las issues existentes y en el roadmap (#45): sin duplicados ni solapamiento (la «ventana GLM de NaN» en candidatos no priorizados es otro tema).
- Entiendo que esta propuesta requiere revisión de producto antes de implementarse.
Problem to solve
quorb muestra anillos de Claude, Codex, Gemini, Cursor, Copilot, OpenRouter y NaN, pero no del GLM Coding Plan de z.ai, cada vez más usado con agentes de código vía el endpoint Anthropic-compatible (api.z.ai/api/anthropic). Quien lo tiene no ve en el widget la cuota de 5h ni el resto del consumo.
Proposed solution
Provider zai (Kind::Subscription), mismo patrón de archivo único que el resto:
GET https://api.z.ai/api/monitor/usage/quota/limitconAuthorization: Bearer <API key de z.ai>(creada en z.ai/manage-apikey).- La response trae
data.level(plan lite/pro/max) ylimits[]:TOKENS_LIMIT— cuota de coding con ventana de 5h:usage/number,percentage,nextResetTime(unix ms) y desglose pormodelCode.TIME_LIMIT— cuota mensual de web search/reader.
- Meter principal (ventana 5h,
resets_at) + secundario; nivel de plan en el label del anillo. - API key en Windows Credential Manager (
secrets::ZAI_API_KEY); sección en Ajustes con comprobar conexión. - Piezas:
src-tauri/src/providers/zai.rs+ registro enmod.rs,config.rs,secrets.rsySettings.tsx; tests deterministas de parseo con fixture JSON (sin red).
Nota de riesgo: el endpoint no está documentado en docs.z.ai; lo usan tools comunitarias independientes (nharu-0630/zaiusage, chunnylab/agent-usage-widget). Igual que cursor.rs con su dashboard, un cambio upstream degrada a fail(Status::Error) sin romper la app.
Pendiente de verificar con una cuenta real: si el límite semanal del devpack aparece como otro type de limit (en código ajeno solo se ven TOKENS_LIMIT y TIME_LIMIT).
Affected area
Application behavior
Scope and non-goals
- Scope: GLM Coding Plan (suscripción devpack), cuenta principal y adicionales por API key como el resto de proveedores.
- Non-goals: z.ai pay-as-you-go sin devpack, leer logs locales de Claude Code, macOS.
Alternatives considered
- API oficial de usage: no existe hoy en docs.z.ai/api-reference (solo chat/agents/image/audio/video/tools).
- Estimar créditos con la fórmula del devpack desde logs locales: frágil, duplicaría el parseo de sesión de
claude.rsy no refleja el estado real de la cuota. - Esperar documentación oficial: sin fecha; el endpoint lleva tiempo estable para las tools comunitarias.
- 主要言語
- TypeScript
- スター
- 10
- フォーク
- 2
- 平均マージ
- 16分
- マージ済み PR(30日)
- 51
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
egdev6/quorb のほかの issue
-
status:approved type:bug
難易度 1/5 1時間未満 初心者へのやさしさ 70/100
メンテナーはふだん 1 日以内に返信
-
odd type:feature
難易度 5/5 1週間以上 初心者へのやさしさ 15/100
メンテナーはふだん 1 日以内に返信
-
odd type:feature
難易度 4/5 3〜5日 初心者へのやさしさ 15/100
メンテナーはふだん 1 日以内に返信
-
odd type:feature
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
メンテナーはふだん 1 日以内に返信
-
odd type:chore
難易度 5/5 1週間以上 初心者へのやさしさ 22/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
メンテナーはふだん 1 日以内に返信
-
needs triage
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
homarr-labs/homarr#7191 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 62/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
AvaProtocol/ava-sdk-js#276 ·
メンテナーはふだん 1 日以内に返信
-
useFragment does not require `variables` when the fragment's variables type has required fieldsオープン
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
apollographql/apollo-client#13493 ·
メンテナーはふだん 1 日以内に返信