Skip to content

docs(ai): document enabling per-user Claude Code Connect (Features__Ai__Clis__ClaudeCode) (#324) - #335

Merged
rbuergi merged 1 commit into
mainfrom
docs/claude-code-connect-324-enable
Jul 6, 2026
Merged

rbuergi merged 1 commit into
mainfrom
docs/claude-code-connect-324-enable

Conversation

@rbuergi

@rbuergi rbuergi commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Summary

Documents, in one place, how to enable per-user Claude Code Connect — each user connects their own Claude subscription via Settings → Models → Connect (billed to their personal account), gated behind Features__Ai__Clis__ClaudeCode. The backend already exists; this fills the doc gap so a deployment can turn it on without reverse-engineering the code.

Extends src/MeshWeaver.Documentation/Data/AI/ModelProviderSetup.md with a clearly-headed "Enabling per-user Claude Code Connect" section (plus a forward-link from the existing Claude blockquote and a Related entry).

What it documents (every claim grounded in code)

  • Per-user own-subscription path, not a personal API key — the login (claude setup-token, ClaudeConnectStrategy) captures the user's subscription token and stores it encrypted at {user}/_Memex/ClaudeCode (ConnectTokenSink → ModelProviderService.CreateProvider/RotateKey).
  • Resolved by the per-user token, not by model id — ChatClientCredentialResolver.ResolveConnectToken/ResolveConnectCredential, consumed by ClaudeCodeHarness.
  • Independent of the shared org Anthropic key — Features:Ai:Providers:Anthropic and Features:Ai:Clis:ClaudeCode are separate flags in MemexConfiguration.cs; enabling Connect adds the per-user card.
  • Prerequisites & enablement — CLI-enabled portal-ai image (bundles the claude CLI, deploy/base-images/portal-ai/Dockerfile); Features__Ai__Clis__ClaudeCode=true; ClaudeCode:ConfigDirRoot per-user writable mount (ClaudeCodeConfiguration.ConfigDirRoot → CLAUDE_CONFIG_DIR); redeploy.
  • Verification — Settings → Models shows a "Claude Code" Connect card (absent when unset); completing Connect uses the user's subscription + creates the per-user encrypted node; shared org key path unchanged.

Note on "off by default"

The code default for the flag is true (absent Features section = all-on, no regression, per MemexFeatureOptions), but the packaged deployment paths ship it off (deploy/.env.example = false; the Marketplace "Bundle co-hosted CLIs" checkbox unchecked) and it is inert without the CLI-enabled image. The section documents this precisely rather than asserting a code-level default.

Verification

  • DocumentationLinkIntegrityTest — Passed (1/1). New links use /Doc/…, /Skill/provider-keys, and same-page anchors.

Fixes #324

🤖 Generated with Claude Code

…i__Clis__ClaudeCode) (#324)

Add an "Enabling per-user Claude Code Connect" section to ModelProviderSetup
that documents, in one place, the enablement path and prerequisites for the
per-user Claude Code Connect flow (each user connects their OWN Claude
subscription via Settings -> Models -> Connect, billed personally):

- What Connect is (own-subscription CLI/token, not a personal API key) and how
  it is resolved (ResolveConnectToken/ResolveConnectCredential read the per-user
  {user}/_Memex/ClaudeCode node, not by model id).
- Independent of the shared org Anthropic key (Features__Ai__Providers__Anthropic);
  enabling Connect ADDS the per-user card, does not change the shared key.
- Prerequisites/enablement: CLI-enabled portal-ai image (bundles the claude CLI),
  Features__Ai__Clis__ClaudeCode=true, ClaudeCode:ConfigDirRoot per-user mount,
  redeploy.
- Verification steps + cross-references to ModelProviderSettings and the
  /provider-keys skill.

Every claim grounded in code: MemexConfiguration.cs, MemexFeatureOptions.cs,
ChatClientCredentialResolver.cs, ClaudeCodeHarness/Configuration, the Connect/
backend, and the deploy image/config.

Fixes #324

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 1)

1 029 tests  ±0   1 028 ✅ ±0   3m 16s ⏱️ -37s
    8 suites ±0       1 💤 ±0 
    8 files   ±0       0 ❌ ±0 

Results for commit 4700de9. ± Comparison against base commit 339c21f.

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 3)

819 tests  ±0   819 ✅ ±0   3m 54s ⏱️ -2s
 10 suites ±0     0 💤 ±0 
 10 files   ±0     0 ❌ ±0 

Results for commit 4700de9. ± Comparison against base commit 339c21f.

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 2)

697 tests  ±0   695 ✅ ±0   1m 52s ⏱️ +4s
  9 suites ±0     2 💤 ±0 
  9 files   ±0     0 ❌ ±0 

Results for commit 4700de9. ± Comparison against base commit 339c21f.

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 5)

873 tests  +253   691 ✅ +253   4m 13s ⏱️ + 2m 28s
  9 suites ±  0   182 💤 ±  0 
  9 files   ±  0     0 ❌ ±  0 

Results for commit 4700de9. ± Comparison against base commit 339c21f.

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 4)

   10 files  ±0     10 suites  ±0   5m 3s ⏱️ +8s
1 359 tests ±0  1 359 ✅ ±0  0 💤 ±0  0 ❌ ±0 
1 398 runs  ±0  1 398 ✅ ±0  0 💤 ±0  0 ❌ ±0 

Results for commit 4700de9. ± Comparison against base commit 339c21f.

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Test Results (shard 0)

648 tests  ±0   648 ✅ ±0   5m 2s ⏱️ -7s
 10 suites ±0     0 💤 ±0 
 10 files   ±0     0 ❌ ±0 

Results for commit 4700de9. ± Comparison against base commit 339c21f.

@github-actions

github-actions Bot commented Jul 6, 2026

Copy link
Copy Markdown
Contributor

Test Results

   56 files  ±  0     56 suites  ±0   23m 21s ⏱️ + 1m 52s
5 425 tests +253  5 240 ✅ +253  185 💤 ±0  0 ❌ ±0 
5 464 runs  +253  5 279 ✅ +253  185 💤 ±0  0 ❌ ±0 

Results for commit 4700de9. ± Comparison against base commit 339c21f.

@rbuergi
rbuergi merged commit 65aeec7 into main Jul 6, 2026
15 checks passed
@rbuergi
rbuergi deleted the docs/claude-code-connect-324-enable branch August 5, 2026 10:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Document how to enable per-user Claude Code Connect (Features__Ai__Clis__ClaudeCode) and its prerequisites

1 participant