GCWing / GCWing/OpenBitFun

Feature: per-agent usageCommand in acpClients to surface subscription plan quota

Aperta
#3,078 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
Rust
Stelle
2.2k
Fork
229
Merge medio
2h 46m
PR unite (30g)
577

Descrizione

## Context

ACP has no concept of **plan quota** (limits, reset windows, burn-down). Subscription-backed CLIs — Claude Max, Codex (ChatGPT), Kimi coding plan, GLM coding plan — each expose their remaining usage through their own CLI commands or account endpoints, none of which is visible inside BitFun. When orchestrating a fleet of subscription CLIs as ACP agents, the orchestrator currently has no way to see which agent's plan is nearly exhausted before dispatching work.

## Proposal

Add an optional field on each `acpClients` entry, for example:

```json
{
"kimi": {
"command": "kimi",
"args": ["acp"],
"usageCommand": "kimi usage --json",
"usageIntervalMinutes": 30
}
}
```

- `usageCommand`: a shell command whose (text or JSON) output represents that agent's remaining quota
- BitFun runs it on demand (button on the agent card / ACP settings row) and/or on a refresh interval, parses, and displays the result next to the agent

This keeps quota semantics out of the ACP protocol (where they don't belong) while making them visible exactly where dispatch decisions are made.

## Use case

Multi-agent orchestration over subscription CLIs: check remaining quota per agent before assigning a long-running task, and avoid routing work to an agent whose plan window is exhausted.

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start by locating the acpClients configuration, the ACP agent card/settings row, and the existing command execution or refresh paths. Trace how an agent's configuration reaches the UI; done means an optional usageCommand and interval can be configured per agent, invoked on demand or during refresh, and its text or JSON result is displayed without changing the ACP protocol.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
rust
Ambito
backend, desktop
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Attiva
Chiarezza
Abbastanza chiara
Idoneità per principianti
45/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.