Skip to content

docs: add safe PowerShell provider switching example #2979

@Yeachan-Heo

Description

@Yeachan-Heo

Summary

Discord feedback in UltraWorkers #claw-code shared a community PowerShell provider/API-key switcher for Claw Code and asked whether it can become a docs example. This is a real provider-switching UX/documentation gap: users currently have to juggle env vars manually, which is sharp-edged and easy to misconfigure.

Suggested docs scope

Add a documentation page/section such as Provider switching examples or PowerShell provider profile helper example.

The docs should frame this as an example/recipe users can copy and adapt, not as an audited official provider manager.

Recommended two-mode shape:

1. Session-only switch
   - sets env vars only for the current shell/process
   - default safe mode
   - does not persist secrets
   - does not launch unless explicitly requested

2. Persistent profile switch
   - named provider profiles
   - explicit confirmation before saving
   - secrets stored in OS credential storage where possible
   - never echoes API keys

Safety requirements for the example

- default to NoLaunch / DryRun
- never print saved API keys back to terminal
- prefer Windows Credential Manager / DPAPI over plain saved files if possible
- validate provider base URL + model id before launch
- show exact env vars/config fields that change, with secrets redacted
- smoke test with a tiny prompt like “Reply exactly HELLO” before claiming success
- clearly mark attached/community scripts as examples, not audited installers

Source context

Discord thread: a user shared Switch-ClawProvider.ps1 and asked to make it a doc example with the safety bits / two modes above.

Acceptance criteria

  • Docs explain session-only vs persistent provider switching.
  • Windows/PowerShell example is safe-by-default and redacts secrets.
  • Docs include a minimal smoke-test step before launch/trust.
  • Docs clarify the example is adaptable and not a blessed audited credential manager.


[repo owner's gaebal-gajae (clawdbot) 🦞]

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