ghc-proxy 0.5.4 → 0.5.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -0
- package/dist/main.mjs +279 -122
- package/dist/main.mjs.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -118,6 +118,7 @@ bunx ghc-proxy@latest debug # Print diagnostic info (version, paths, to
|
|
|
118
118
|
| `--proxy-env` | -- | `false` | Use `HTTP_PROXY`/`HTTPS_PROXY` from env (Node.js only; Bun reads proxy env natively) |
|
|
119
119
|
| `--idle-timeout` | -- | `120` | Bun server idle timeout in seconds (`0` disables; Bun max is `255`; streaming routes disable idle timeout automatically) |
|
|
120
120
|
| `--upstream-timeout` | -- | `1800` | Upstream request timeout in seconds (0 to disable) |
|
|
121
|
+
| `--ghe-domain` | `--ghe` | -- | GitHub Enterprise Cloud company domain (e.g. `company.ghe.com`). Required for GHE.com device login on first run; persisted automatically for later runs. |
|
|
121
122
|
|
|
122
123
|
## Rate Limiting
|
|
123
124
|
|
|
@@ -147,6 +148,28 @@ bunx ghc-proxy@latest start --account-type enterprise
|
|
|
147
148
|
|
|
148
149
|
This routes requests to the correct Copilot API endpoint for your plan. See the [GitHub docs on network routing](https://docs.github.com/en/enterprise-cloud@latest/copilot/managing-copilot/managing-github-copilot-in-your-organization/managing-access-to-github-copilot-in-your-organization/managing-github-copilot-access-to-your-organizations-network#configuring-copilot-subscription-based-network-routing-for-your-enterprise-or-organization) for details.
|
|
149
150
|
|
|
151
|
+
### GitHub Enterprise Cloud (GHE.com)
|
|
152
|
+
|
|
153
|
+
If your organization uses GitHub Enterprise Cloud (`*.ghe.com`), the standard GitHub device login URL differs from `github.com`. Pass your company's GHE domain on first auth:
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
bunx ghc-proxy@latest start --account-type enterprise --ghe-domain company.ghe.com
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
Or authenticate first, then start without the flag on subsequent runs:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
# First run (authenticates and persists the domain)
|
|
163
|
+
bunx ghc-proxy@latest auth --ghe-domain company.ghe.com
|
|
164
|
+
|
|
165
|
+
# Later runs (domain is read from persisted config)
|
|
166
|
+
bunx ghc-proxy@latest start --account-type enterprise
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
The proxy normalizes and persists the GHE domain automatically after a successful authentication, so you only need to pass `--ghe-domain` on the first run or when switching tenants.
|
|
170
|
+
|
|
171
|
+
> **Note:** `--account-type enterprise` alone is not sufficient for GHE.com login — the proxy needs the company domain to construct the correct device login URL (`https://<company>.ghe.com/login/device`). GHE.com support is scoped to `*.ghe.com` only and does not apply to self-hosted GitHub Enterprise Server instances.
|
|
172
|
+
|
|
150
173
|
## Configuration
|
|
151
174
|
|
|
152
175
|
The proxy reads an optional JSON config file at:
|
|
@@ -466,3 +489,20 @@ bun run matrix:live --stateful-only --json --model=gpt-5.2-codex
|
|
|
466
489
|
> - `--stateful-only`: run follow-up/resource probes such as `previous_response_id`, `input_tokens`, and `input_items`
|
|
467
490
|
> - `--all-responses-models`: scan every model that advertises `/responses`
|
|
468
491
|
> - `--model=<id>`: pin the Responses scan to one specific model
|
|
492
|
+
|
|
493
|
+
### Tool Support Probe
|
|
494
|
+
|
|
495
|
+
Tests which server-side tool types (bash, text_editor, web_search, memory, etc.) each Copilot model actually accepts. Useful for tracking backend changes over time.
|
|
496
|
+
|
|
497
|
+
```bash
|
|
498
|
+
bun scripts/probe-all-copilot-tools.ts # human-readable table
|
|
499
|
+
bun scripts/probe-all-copilot-tools.ts --json # JSON snapshot to stdout
|
|
500
|
+
bun scripts/probe-all-copilot-tools.ts --model=claude-opus-4.6 # single model
|
|
501
|
+
```
|
|
502
|
+
|
|
503
|
+
The JSON output is designed for weekly diffing — `generatedAt` is the only volatile field:
|
|
504
|
+
|
|
505
|
+
```bash
|
|
506
|
+
# Compare two weekly snapshots
|
|
507
|
+
diff <(jq -S 'del(.generatedAt)' week1.json) <(jq -S 'del(.generatedAt)' week2.json)
|
|
508
|
+
```
|