Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions .agents/skills/fetching-models-pricing/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,11 @@ Maintain the per-token rate cards in:
| Provider | Table | Live catalog | Preferred rate source |
|---|---|---|---|
| Copilot | `packages/provider-copilot/src/pricing.ts` | Copilot `/models` | model vendor's first-party API |
| Codex | `packages/provider-codex/src/pricing.ts` | authenticated `/codex/models` | OpenAI API pricing |
| ChatGPT | `packages/provider-chatgpt/src/pricing.ts` | authenticated `/codex/models` | OpenAI API pricing |
| Claude Code | `packages/provider-claude-code/src/pricing.ts` | authenticated Anthropic `/v1/models` | Anthropic API pricing |
| Ollama | `packages/provider-ollama/src/pricing.ts` | `/api/tags` + `/api/show` | Ollama official standard rates; vendor/host valuation for other models |

Copilot, Codex and Claude Code use API-equivalent valuation. Ollama uses its
Copilot, ChatGPT and Claude Code use API-equivalent valuation. Ollama uses its
published standard token rates for covered models and retains vendor/host
valuation for other models. These are request estimates; account consumption
from `/api/usage` includes Ollama billing adjustments such as off-peak discounts.
Expand Down Expand Up @@ -80,7 +80,7 @@ subset for a model.
USD per million tokens. `tokenPricingEntry` and `tokenBasePricing` apply the
existing `perMillionTokenRates` conversion, so their resulting `PriceVector`
values are USD per base token. Do not divide manually or pass number literals.
Follow `packages/provider-codex/src/pricing.ts` for a complete production
Follow `packages/provider-chatgpt/src/pricing.ts` for a complete production
example instead of copying a rate vector into this skill.

`collectModelPricingIssues` in
Expand Down Expand Up @@ -138,7 +138,7 @@ ineligible.
normalizes nothing itself.
- Claude Code resolves pricing from the dated raw upstream id before catalog
aliases are merged into public ids.
- Codex and Ollama use the raw upstream slug directly.
- ChatGPT and Ollama use the raw upstream slug directly.

## Source Cautions

Expand Down
4 changes: 2 additions & 2 deletions .agents/skills/probing-prod-upstream/SKILL.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ and non-production fixtures only.
refresh token and leave production holding an invalid predecessor, interrupting
production token renewal. This is a production continuity constraint. Do not
extract refresh tokens, invoke refresh endpoints, call automatic-refresh helpers
(including `ensureCodexAccessToken` and `ensureClaudeCodeAccessToken`), or route
(including `ensureChatGPTAccessToken` and `ensureClaudeCodeAccessToken`), or route
through a gateway operation that may trigger renewal. For providers with
refresh-token renewal, use the existing access token. If it is missing, expired,
or rejected, stop probing that account and report the blocker; let production
Expand Down Expand Up @@ -110,7 +110,7 @@ Do not import a provider entrypoint that can renew tokens or persist state.

- **Copilot:** follow [the Copilot access reference](references/copilot.md) for
PAT exchange, token-advertised endpoints, and Copilot Chat headers.
- **Codex / Claude Code:** use the selected account's persisted
- **ChatGPT / Claude Code:** use the selected account's persisted
`state_json.accounts[].accessToken.token` and its expiry. Read `fetch.ts` and
the protocol transport for headers and endpoints; join the credential to the
configured account identity. All refresh-token paths remain forbidden.
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/verify.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -114,7 +114,7 @@ jobs:
- name: lint (gateway)
targets: packages/gateway
- name: lint (other packages)
targets: eslint.config.ts vitest.config.ts packages/agent-setup packages/http packages/interceptor packages/platform packages/protocols packages/provider packages/provider-azure packages/provider-claude-code packages/provider-codex packages/provider-copilot packages/provider-custom packages/provider-ollama packages/proxy packages/test-utils packages/translate scripts tools
targets: eslint.config.ts vitest.config.ts packages/agent-setup packages/http packages/interceptor packages/platform packages/protocols packages/provider packages/provider-azure packages/provider-chatgpt packages/provider-claude-code packages/provider-copilot packages/provider-custom packages/provider-ollama packages/proxy packages/test-utils packages/translate scripts tools
name: ${{ matrix.name }}
steps:
- name: Checkout
Expand Down
2 changes: 1 addition & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,8 +65,8 @@
| Package | `packages/protocols` | Defines protocol contracts. |
| Package | `packages/provider` | Defines provider contracts. |
| Package | `packages/provider-azure` | Integrates Azure OpenAI. |
| Package | `packages/provider-chatgpt` | Integrates ChatGPT subscriptions. |
| Package | `packages/provider-claude-code` | Integrates Claude Code subscriptions. |
| Package | `packages/provider-codex` | Integrates OpenAI Codex subscriptions. |
| Package | `packages/provider-copilot` | Integrates GitHub Copilot subscriptions. |
| Package | `packages/provider-custom` | Integrates OpenAI-compatible providers. |
| Package | `packages/provider-ollama` | Integrates Ollama. |
Expand Down
2 changes: 1 addition & 1 deletion apps/web/__tests__/browser-entrypoints_test.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

8 changes: 4 additions & 4 deletions apps/web/__tests__/components/search/eligibility_test.ts

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading
Loading