Hacktoberfest 2026: die Issues, die Maintainer für den Oktober markiert haben – offen und einsteigerfreundlich. Hacktoberfest-Issues durchsuchen

[bug] --config <profile> silently ignores stored credentials; exits 0 unauthenticated

Offen
#229 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Bewertung

Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Anfängerfreundlichkeit
68/100
Issue-Typ
Bug
Klarheit
Klar beschrieben
Aktivitätsstatus
Aktiv
Tech-Stack
node.js, typescript
Bereich
cli

Rechercherichtung

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.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Beschreibung

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) and bl 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 show documents
    flag > env > config, and the repro was run with DASHSCOPE_API_KEY fully
    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 bl non-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 is bl 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 --config load 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 login appears to reset workspace_id on the
    target profile back to the account's default workspace, even after it had been
    set explicitly with bl 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.
Vorherrschende Sprache
TypeScript
Sterne
333
Forks
28
Ø Merge
1 T. 5 Std.
Gemergte PRs (30 T.)
37

Entwicklungsumgebung

Erste Schritte

  1. Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
  3. Forken Sie das Repository und arbeiten Sie in einem Branch.
  4. Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.

Mehr aus modelstudioai/cli

Alle Issues in modelstudioai/cli

Ähnliche Issues

Weitere Issues zu TypeScript

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.