feat(providers): anillo de uso semanal de SuperGrok vía Grok CLI
メンテナーはふだん 1 日以内に返信
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
- issue の種類
- 機能追加
- 明瞭さ
- 明確に書かれている
- 活発さ
- 活発
- 技術スタック
- rust, typescript
調査の方向性
Read codex.rs and claude.rs for CLI session credential handling, then trace provider registration and refresh flow through ProviderLogo.tsx, Settings.tsx, and widget-refresh.ts. Implementing this requires a new provider, endpoint parsing, UI integration, and deterministic Rust fixtures; done means weekly usage and reset details display, plan information appears when available, and legacy responses produce a clear error state.
索引モデルが issue の本文から書いたものです。
説明
Pre-flight checks
- Busqué en las issues existentes y en el roadmap: sin duplicados ni solapamiento.
- Entiendo que esta propuesta requiere revisión de producto antes de implementarse.
Problem to solve
Quorb soporta varios proveedores (Claude, Codex, Gemini, Cursor, Copilot, OpenRouter, NaN, etc.) pero no Grok / SuperGrok. Quienes tienen suscripción SuperGrok y usan el Grok CLI (Grok Build) no pueden monitorear el consumo de su ventana semanal de créditos desde el widget.
Nota: los créditos del CLI/Grok Build y los caps de chat de grok.com/X son pools separados; este issue cubre el del CLI, que es el relevante para uso agéntico/coding.
Proposed solution
Provider nativo grok (Kind::Subscription), siguiendo el patrón de credenciales de sesión CLI de codex.rs/claude.rs (no el de API keys):
- Credenciales: token Bearer del login local del Grok CLI oficial (
grok), en~/.grok/auth.json. Detección y lectura con parseo defensivo; sin importar cookies de navegador en una primera etapa. - Endpoints (superficie no documentada por xAI, estable a fecha de hoy y usada por proyectos de terceros):
GET https://cli-chat-proxy.grok.com/v1/billing?format=credits→creditUsagePercent(porcentaje usado 0–100), ventana de la semana y reset.GET https://cli-chat-proxy.grok.com/v1/settings(opcional) → nombre del plan visible (SuperGrok, etc.).
- Medidores:
- Anillo principal con porcentaje de créditos usados de la ventana semanal (
percent,resets_at,window_seconds= 7 días). - Identificación del plan activo en el detalle.
- Anillo principal con porcentaje de créditos usados de la ventana semanal (
- Robustez: ante cambios del formato (endpoint no oficial), degradar con mensaje claro (
Status::Error) en lugar de romper; parseo tolerante como encodex.rs. - Interfaz y assets:
- Logo en
ProviderLogo.tsx(SVG ensrc/assets/logos/o monograma) con aliasgrok. - Sección en
Settings.tsx(pestañagrok, estado enmainStatesegún presencia del auth file/token). - Inclusión en
widget-refresh.tspara invalidación al cambiar credenciales.
- Logo en
- Tests: unitarios deterministas en Rust con fixtures JSON representativas (sin red), incluyendo caso de respuesta legacy sin
creditUsagePercent.
Affected area
Application behavior
Scope and non-goals
- Scope: suscripción SuperGrok/Grok Build monitoreada vía el Grok CLI (
~/.grok/auth.json) y su billing endpoint. Fuente única y prioritaria; el auth file es el mecanismo de credenciales. - Non-goals:
- API de developer platform de xAI (Management API de
management-api.x.ai: créditos prepago, facturación por equipo) — superficie distinta con credenciales distintas; candidato a un issue separado. - Caps de chat consumer de grok.com/X (gRPC-web con cookies de sesión) — pool separado, frágil; queda fuera salvo demanda explícita.
- API de developer platform de xAI (Management API de
Alternatives considered
- Management API de xAI: documentada y estable, pero mide la plataforma de desarrollo (API keys/créditos), no la suscripción que se quiere monitorear.
- gRPC-web de grok.com con cookies del navegador: no requiere CLI, pero es frágil (protobuf interno, cookies que expiran); otros proyectos lo usan solo como fallback. Puede añadirse después como best-effort.
- 主要言語
- TypeScript
- スター
- 10
- フォーク
- 2
- 平均マージ
- 3時間 54分
- マージ済み PR(30日)
- 94
環境構築
このプロジェクトには開発コンテナ、Dockerfile、コントリビューションガイドがありません。まず README を読み、一般的な手順ははじめてのコントリビューションガイドを参照してください。
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
egdev6/quorb のほかの issue
-
難易度 4/5 3〜5日 初心者へのやさしさ 38/100
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 45/100
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 35/100
メンテナーはふだん 1 日以内に返信
-
難易度 4/5 3〜5日 初心者へのやさしさ 57/100
メンテナーはふだん 1 日以内に返信
-
難易度 5/5 1週間以上 初心者へのやさしさ 30/100
メンテナーはふだん 1 日以内に返信
似ている issue
-
[good first issue, hacktoberfest] 🏯 Hacktoberfest Task - Add new Japan Fact 898 (good-first-issue)オープンcommunity first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
難易度 1/5 1時間未満 初心者へのやさしさ 86/100
lingdojo/kana-dojo#33145 · コメント 1 件 · リアクション 5 件 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
code-yeongyu/senpi#4278 ·
メンテナーはふだん 1 日以内に返信
-
[Bug] Activity | The activity list ignores taskIds and returns the activities of every task対応中かも @NdekoCode が今日担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
ever-co/ever-gauzy#11469 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
griffinwork40/agent-afk#4408 ·
メンテナーはふだん 1 日以内に返信