Skip to content

Claude's check_ready.creds_file disagrees across the three registry sources #631

Description

@zomux

Surfaced during review of #630 (merged), which deliberately did not touch it.

Claude's readiness evidence says three different things depending on which copy is read:

source creds_file creds_key
sdk/src/openagents/registry/claude.yaml ~/.claude/.credentials.json claudeAiOauth
registry/claude.json ~/.claude/sessions (none)
packages/agent-connector/registry.json ~/.claude/sessions (none)

Both variants work after #630 (the directory path used to crash the Python loader; now it counts when non-empty), but they check different things — and if Claude Code has moved its credentials the way the Gemini CLI did (to the OS keychain, deleting the on-disk file — the exact failure #630 fixed for Gemini), the .credentials.json variant may be silently stale.

To resolve:

  1. Check where current Claude Code builds actually persist subscription credentials (file vs keychain, per-platform).
  2. Pick one evidence source and align all three copies (plus workspace/backend/registry/claude.json via sync_registry.py).
  3. Remember the connector's registry.json is hand-maintained — the generator would drop drifted blocks (see the note in the package README and fix(core): creds_file readiness — Gemini's evidence moved, Hermes' never parsed, Python's never ran #630's description).

Related pre-existing wart, also from #630's description: _simple_yaml_parse (the PyYAML-absent fallback in loader.py) cannot parse the registry YAML it is the fallback for (install comes back as a list, check_ready as None → AttributeError at import). Worth folding into the same cleanup or splitting out.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions