[bug] --config <profile> silently ignores stored credentials; exits 0 unauthenticated
Personne n'a encore pris cette issue.
Évaluation
- Difficulté
- 3/5
- Temps estimé
- 1-2 jours
- Accessibilité débutants
- 68/100
- Type d'issue
- Bug
- Clarté
- Clairement spécifiée
- Activité
- Active
- Stack technique
- node.js, typescript
- Domaine
- cli
Piste de recherche
Start by tracing the CLI's global --config option handling and the profile-loading path used by config show and auth status. Reproduce with a stored, non-active profile, then verify the commands load its credentials or fail with a non-zero error instead of printing generic output and exiting 0.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Description
Environment
- CLI: bl 2.0.1
- Skill: 2.0.1
- Node: v26.9.0
- OS: macOS 26.6.2 (Darwin 25.6.0, arm64)
- Region: intl (ap-southeast-1)
Reproduce
# Precondition: profile "token-plan" is stored in ~/.bailian/config.json with
# api_key, base_url, workspace_id and a console token, but is NOT the active profile.
# 1. Address it with the documented --config global flag
bl --config token-plan config show
bl --config token-plan auth status
# 2. Activate the very same profile and repeat
bl config use --name token-plan
bl config show
bl auth status
Expected
--config <profile> selects and loads that profile's credentials, as documented
("Use a config profile from ~/.bailian/config.json"). Step 1 and step 2 should
report the same api_key / base_url / console gateway for the same profile.
Actual
Step 1 emits no config values at all — config show falls through to the
generic welcome/command list, and auth status reports the profile as
unauthenticated. Step 2 prints the credentials correctly:
api_key: [REDACTED]
base_url: https://token-plan.ap-southeast-1.maas.aliyuncs.com
workspace_id: [REDACTED]
Config: token-plan
API key (model): config [REDACTED]
Console gateway: config [REDACTED] (ap-southeast-1, international)
The profile is fully populated; only the --config addressing path fails to load it.
Full output
$ bl --config token-plan config show
>>> no key/value lines emitted; the generic command list is printed instead
$ bl --config token-plan auth status
>>> generic command list printed; profile reported as unauthenticated
Exit code: 0
The exit code is 0, so this is not even detectable as a failure by scripted
callers. An agent or CI wrapper that passes --config silently runs
unauthenticated (or against the wrong profile) rather than erroring out.
JSON error (if any)
None — the command exits 0 and emits no error object, so there is nothing for a
caller to branch on.
Already tried
bl update(1.28.0 → 2.0.1) andbl skill update; CLI and skill versions
aligned at 2.0.1 before reproducing- Reproduced on two different non-active profiles: the pre-existing
token-plan, and a freshly created profile produced by
bl auth login --console --console-site international --config <name> - Confirmed both profiles work immediately after
bl config use --name <profile>,
then break again when addressed via--config - Eliminated env-var precedence as a cause:
bl config showdocuments
flag > env > config, and the repro was run withDASHSCOPE_API_KEYfully
unset from the environment, so nothing was shadowing the stored key
Notes
- Frequency: always — deterministic, reproduced repeatedly on both profiles
- Invoked via: agent (Qwen Code) driving
blnon-interactively - Impact: multi-profile workflows are effectively unusable.
bl auth login --console --config <name>does create a fully populated
profile, but that profile cannot then be used via--config. The only way to
reach it isbl config use --name <name>, which changes global state and
disrupts whatever profile was in active use — so the flag's stated purpose
("Use a config profile") is not achievable. - Suggested fix: either make
--configload the named profile's credentials
as documented, or fail loudly (non-zero exit + explicit message) when the
named profile cannot be resolved. Silently exiting 0 with unauthenticated
behaviour is the worst of the two outcomes for automation. - Related observation (separate from this bug, reporting only in case it is the
same root cause):bl auth loginappears to resetworkspace_idon the
target profile back to the account's default workspace, even after it had been
set explicitly withbl config set --key workspace_id. We observed it revert
once and had to re-apply the value. - Possibly related open issue: #131 — same "config silently never takes effect"
class of symptom, different mechanism.
- Langage dominant
- TypeScript
- Étoiles
- 333
- Forks
- 28
- Merge moyen
- 1 j 5 h
- PR mergées (30 j)
- 37
Préparer son environnement
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Autres issues de modelstudioai/cli
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
modelstudioai/cli#232 ·
-
[bug] bl update: darwin-arm64 binary ships invalid ad-hoc signature, killed by macOS (Killed: 9)Ouverte
Difficulté 2/5 1-3 heures Accessibilité débutants 65/100
modelstudioai/cli#223 ·
-
Difficulté 3/5 1-2 jours Accessibilité débutants 68/100
modelstudioai/cli#231 · 1 commentaire ·
-
Difficulté 4/5 3-5 jours Accessibilité débutants 35/100
modelstudioai/cli#230 ·
-
Difficulté 5/5 Plus d'une semaine Accessibilité débutants 35/100
modelstudioai/cli#202 · 1 commentaire · 1 réaction ·
Toutes les issues de modelstudioai/cli
Issues similaires
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
melgarafael/DeskcommCRM#1812 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 84/100
prisma/prisma-cli#309 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 78/100
gregwebs/pi-quota-dispatcher#26 ·
Les mainteneurs répondent en général sous 1 jour
-
Difficulté 2/5 1-3 heures Accessibilité débutants 74/100
openwatersio/slackwater.xyz#124 ·
Les mainteneurs répondent en général sous 1 jour
-
agent-reported area/browser area/docs documentation good first issue hacktoberfest help wanted P2
Difficulté 1/5 Moins d'une heure Accessibilité débutants 90/100
Les mainteneurs répondent en général sous 2 jours