diff --git a/README.md b/README.md index fd876d7..3f9b2d1 100644 --- a/README.md +++ b/README.md @@ -238,6 +238,23 @@ curl -fsSL https://raw.githubusercontent.com/aproorg/claude-wrapper/main/install The file uses simple `KEY="VALUE"` format and has `0600` permissions. +**Overriding the team 1Password account** (e.g. if your key is in a personal account): + +```bash +# ~/.config/claude/local.env +OP_ACCOUNT="my" # shorthand for personal account (my.1password.eu) +OP_ITEM="op://Vault/your-item-name" # your vault item path +``` + +**Fallback token** (if 1Password isn't available): + +```bash +# ~/.config/claude/local.env +ANTHROPIC_AUTH_TOKEN="your-token-here" +``` + +The wrapper sets this before attempting 1Password. If 1Password succeeds it takes precedence; if it fails the token is already in place. +
@@ -326,13 +343,9 @@ If you prefer not to use the installer: @powershell -ExecutionPolicy Bypass -File "%~dp0claudestart.ps1" %* ``` -### WSL - -Follow the macOS/Linux instructions inside your WSL shell — WSL uses the bash wrapper, not the PowerShell one. - ### VSCode on Windows -Add to your `settings.json`: +Add to your `settings.json` (`%APPDATA%\Code\User\settings.json`): ```json { @@ -345,18 +358,89 @@ Add to your `settings.json`:
+
+WSL (Windows Subsystem for Linux) + +Run the bash wrapper inside your WSL shell — WSL uses the Linux wrapper, not the PowerShell one. + +### Install + +```bash +curl -fsSL https://raw.githubusercontent.com/aproorg/claude-wrapper/main/install.js | node +``` + +### 1Password desktop app integration + +In WSL, `op` can authenticate through the Windows 1Password desktop app instead of requiring `eval $(op signin)` on every session. + +**Prerequisites:** +1. 1Password for Windows is running (check system tray) +2. In the app: **Settings → Developer → enable both "Connect with 1Password CLI" and "Biometric unlock for 1Password CLI"** + +**Configure WSL:** + +Add to `~/.bashrc`: +```bash +export OP_BIOMETRIC_UNLOCK_ENABLED=true +``` + +Open a new terminal and verify: +```bash +op whoami # should authenticate via Windows Hello/PIN — no password prompt +``` + +### Personal 1Password account + +If your API key is in a personal account (not the team account in `claude-env.sh`), add overrides to `~/.config/claude/local.env`: + +```bash +OP_ACCOUNT="my" # shorthand for personal account (my.1password.eu) +OP_ITEM="op://Vault/your-item-name" # your vault item path +``` + +### Fallback token + +If 1Password integration isn't set up yet, add a static token to `~/.config/claude/local.env`. The wrapper uses it when 1Password is unavailable and automatically switches to 1Password once it's working: + +```bash +ANTHROPIC_AUTH_TOKEN="your-token-here" +``` + +### VSCode integration + +When using VSCode with the Remote-WSL extension, the Claude Code extension runs inside WSL. Settings go in the **Linux-side** VSCode user config, not the Windows-side `settings.json`. + +Create `~/.config/Code/User/settings.json` (create if it doesn't exist): + +```json +{ + "claudeCode.environmentVariables": [ + { "name": "CLAUDE_CODE_SKIP_AUTH_LOGIN", "value": "1" } + ], + "claudeCode.claudeProcessWrapper": "/home/YOU/.local/bin/claude" +} +``` + +Replace `/home/YOU` with your actual home directory (`echo $HOME`). + +> **Note:** The Windows-side `settings.json` (`%APPDATA%\Code\User\settings.json`) will not work for WSL — `claudeCode.claudeProcessWrapper` must be a Linux path. + +
+
VSCode integration (macOS/Linux) -Add to your `settings.json`: +Create or edit `~/.config/Code/User/settings.json`: ```json { "claudeCode.environmentVariables": [ { "name": "CLAUDE_CODE_SKIP_AUTH_LOGIN", "value": "1" } ], - "claudeCode.claudeProcessWrapper": "/Users/YOU/.local/bin/claude" + "claudeCode.claudeProcessWrapper": "/home/YOU/.local/bin/claude" } ``` +Replace `/home/YOU` with your actual home directory (`echo $HOME`). On macOS use `/Users/YOU`. +