Secure Claude Code Quick Launcher for Enterprise Users
A productivity tool for enterprise users accessing Claude Code through corporate endpoints with JWT authentication.
If you're an enterprise user accessing Claude Code through a corporate endpoint, you likely deal with:
- Refreshable JWT tokens that expire periodically
- Multi-step setup every time:
export ANTHROPIC_AUTH_TOKEN="abCdeFghIjKL...long_token..." export ANTHROPIC_BASE_URL="https://your-anthropic-endpoint.internal" claude
- Token management headaches - copying tokens, pasting correctly, checking expiry
- Security risks - tokens in shell history, visible in
ps aux
Wouldn't it be nice to just type cc and be inside Claude Code?
ccThat's it. One command.
| Feature | Description |
|---|---|
| One-command launch | Just type cc |
| Secure token storage | Tokens never in shell history or process list |
| Expiry tracking | See remaining days in your prompt |
| JWT validation | Validates token format before storing |
| Auto permission fixes | Ensures token file is always 600 |
| Interactive installer | Guided setup wizard |
curl -sSL https://raw.githubusercontent.com/ash3in/claude-code-launcher/main/install.sh | bashThe installer will:
- Detect your shell (zsh/bash)
- Guide you through configuration
- Set up the
cccommand - Optionally install a fancy prompt with Claude indicator
| Command | Description |
|---|---|
cc |
Launch Claude Code |
cc -t |
Store/update token (secure hidden input) |
cc -s |
Check token status, expiry, and config |
cc -h |
Show help |
cc -v |
Show version |
# 1. Run the installer
curl -sSL https://raw.githubusercontent.com/ash3in/claude-code-launcher/main/install.sh | bash
# 2. Reload your shell
source ~/.zshrc
# 3. Store your token (input is hidden)
cc -t
Token: <paste your JWT - not visible>
✓ Token stored securely
✓ Token valid for 30 days
# 4. Launch Claude Code
cccc
# Claude Code launches immediatelycc -s
Claude Code Quick Launcher Status
✓ Token file permissions: 600 (secure)
✓ Token valid for 23 days
✓ Endpoint: https://anthropic.internal.company.com
✓ Claude CLI installedcc
✗ Token EXPIRED 2 days ago
Run: cc -t to update
cc -t
Token: <paste new token>
✓ Token stored securely
✓ Token valid for 30 daysImportant: This tool was developed in a controlled enterprise environment. Please read the full security disclaimer below before using.
| Attack Vector | Protection |
|---|---|
| Shell history exposure | Token input is hidden (read -s), never passed as CLI arg |
| Process list snooping | Token never appears in ps aux output |
| File permission attacks | Token file locked to 600 (owner read/write only) |
| Invalid token injection | JWT format validation before storage |
| Stale permissions | Auto-fixes file permissions on every launch |
| Token leakage after exit | Environment variable cleared when Claude exits |
┌──────────────────┐� ┌───────────────────┐� ┌──────────────────┐�
│ User Input │ │ Token Storage │ │ Claude Code │
│ (hidden) │ ──▶ │ ~/.claude-token │ ──▶ │ (env var) │
│ read -s │ │ chmod 600 │ │ unset on exit │
└──────────────────┘ └───────────────────┘ └──────────────────┘
│ │ │
▼ ▼ ▼
Never in history Owner-only access Scoped to session
Never in ps aux Validated JWT Cleared after use
| Threat | Why |
|---|---|
| Root/admin access compromise | Root can read any file regardless of permissions |
| Memory forensics | Token exists in memory while Claude runs |
| Keyloggers | Token could be captured during input |
| Shoulder surfing during token paste | Physical security is your responsibility |
| Compromised shell/terminal | Malicious shell could intercept read |
| Attack | How It Works | Our Mitigation |
|---|---|---|
| History file theft | Attacker reads ~/.zsh_history |
Token never in history (secure input) |
| Process snooping | ps aux to see command args |
Token never in arguments |
| File permission bypass | Read world-readable files | File is 600 (owner-only) |
| Token replay | Stolen token used elsewhere | Use short-lived tokens + rotation |
| Man-in-the-middle | Intercept API traffic | HTTPS + certificate pinning |
This tool was developed in a controlled enterprise environment with:
- Corporate firewalls and network monitoring
- Endpoint detection and response (EDR) software
- Full disk encryption
- Managed device policies
- VPN and network segmentation
Before using this tool, ensure your environment has:
- Full Disk Encryption - Protects token file if device is lost/stolen
- Strong User Authentication - Password/biometric login to your machine
- No Shared User Accounts - Only you should have access to your user account
- Updated Operating System - Latest security patches installed
- Malware Protection - Active antivirus/EDR solution
- Never use on shared computers
- Never use on public/untrusted networks without VPN
- Rotate tokens regularly (your auth provider should enforce this)
- Monitor for unauthorized access to your Anthropic endpoint
- Report suspicious activity to your security team
If you prefer to install manually:
# Claude Code Environment
export ANTHROPIC_BASE_URL='https://your-anthropic-endpoint.internal'
export NO_PROXY='your-anthropic-endpoint.internal,localhost,127.0.0.1'
export NODE_EXTRA_CA_CERTS="$HOME/path/to/cacerts.pem" # if neededcurl -sSL https://raw.githubusercontent.com/ash3in/claude-code-launcher/main/uninstall.sh | bashOr manually:
- Remove the
# cc-launcher STARTto# cc-launcher ENDblock from~/.zshrc - Delete
~/.claude-token
| Variable | Description |
|---|---|
ANTHROPIC_BASE_URL |
Your corporate Claude endpoint |
ANTHROPIC_AUTH_TOKEN |
Set automatically by cc |
NO_PROXY |
Hosts to bypass proxy for |
NODE_EXTRA_CA_CERTS |
Custom CA certificate path |
CC_DISABLE_PROXY |
Set to 1 to disable proxy when launching |
| File | Description |
|---|---|
~/.claude-token |
Stored JWT token (mode 600) |
Contributions welcome! Please feel free to submit a Pull Request.
- Fork the repo
- Create your feature branch (
git checkout -b feature/amazing) - Commit your changes (
git commit -m 'Add an amazing feature') - Push to the branch (
git push origin feature/amazing) - Open a Pull Request
MIT License - see LICENSE for details.
Made with * for Claude community!
