Metadata-Version: 2.4
Name: claude-shop
Version: 0.1.0
Summary: CLI launcher for Claude Code through the claude.shop proxy.
Author: claude.shop
License: MIT
Project-URL: Homepage, https://claudeshop.duckdns.org
Keywords: claude,anthropic,claude-code,cli,proxy,launcher
Classifier: Development Status :: 4 - Beta
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: End Users/Desktop
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Software Development
Classifier: Topic :: Utilities
Requires-Python: >=3.9
Description-Content-Type: text/markdown

# claude-shop

A tiny CLI launcher for [Claude Code](https://docs.claude.com/en/docs/claude-code) that
points it at the [claude.shop](https://claudeshop.duckdns.org) proxy. Buy a token,
install one Python package, and start coding.

## Install

```bash
pip install claude-shop
```

You also need the `claude` binary on your `PATH` — install it via the
[official Claude Code instructions](https://docs.claude.com/en/docs/claude-code/install).

## Usage

```bash
# Launch Claude Code through the proxy
claude-shop start <YOUR_TOKEN>

# Forward extra args to claude
claude-shop start <YOUR_TOKEN> --resume
claude-shop start <YOUR_TOKEN> -p "explain this repo"

# Verify the proxy is reachable
claude-shop check <YOUR_TOKEN>

# Show version
claude-shop --version
```

`start` injects two environment variables for the spawned `claude` process and
inherits everything else from your shell:

| Variable | Value |
| --- | --- |
| `ANTHROPIC_AUTH_TOKEN` | your token |
| `ANTHROPIC_BASE_URL` | `https://claudeshop.duckdns.org` |

The exit code of `claude` is propagated. `Ctrl-C` returns `130` as usual.

## How it works

`claude-shop start` is a thin wrapper:

1. Looks up `claude` on `PATH` (or the binary named in `CLAUDE_SHOP_CLAUDE_BIN`).
2. Builds an env dict from your current environment plus the two proxy variables.
3. Runs `claude` via `subprocess.run`, passing through any extra arguments.

`claude-shop check` issues `GET https://claudeshop.duckdns.org/health` so you can
quickly tell whether the proxy is up. Token validity itself is checked by the
proxy when `claude` makes its first request.

## Buying a token

Tokens are sold on FunPay; see the storefront at
[claudeshop.duckdns.org](https://claudeshop.duckdns.org).

## License

MIT.
