mirror of
https://github.com/hanzoai/extension.git
synced 2026-10-31 21:57:06 +00:00
28 apps told the user to paste an `hk-` key — input placeholders, settings help text, READMEs, the error thrown when the field is empty — and five of them validated that paste against /^hk-/ before sending it as a bearer. Nothing mints that prefix any more: cloud accepts pk- and sk-, IAM mints sk-. So the guard admitted a credential that authenticates nothing, and the panel failed later at the gateway with nothing on screen to explain it. The three leak detectors keep hk- and gain sk-. Salesforce's source scan and the two Zendesk tests exist to catch a key committed to source or echoed back through a request; retired keys are still in circulation and leak exactly as badly, while a detector that only knew hk- would have gone blind to every key minted from here on. `sk-` used to be the example of the foreign key the guard screened out — an OpenAI key. It cannot mean that now, and shape alone cannot tell one vendor's sk- from another's, so those comments say what the check really proves and point at the /v1/models call that proves the rest. The three tests that pinned "sk- is rejected" now pin "hk- is rejected", which is the invariant that survived. Verified: 2029 tests pass across the 28 packages; typecheck clean on 25 of them (hubspot, jupyter and teams fail identically at HEAD on JSX and ESM type conflicts in files this does not touch); salesforce validate-source green. Co-authored-by: Hanzo Dev <[email protected]>
29 lines
1002 B
JSON
29 lines
1002 B
JSON
{
|
|
"jupyter.lab.setting-icon": "hanzo:logo",
|
|
"jupyter.lab.setting-icon-label": "Hanzo AI",
|
|
"title": "Hanzo AI",
|
|
"description": "Settings for the Hanzo AI in-notebook assistant.",
|
|
"type": "object",
|
|
"properties": {
|
|
"apiKey": {
|
|
"type": "string",
|
|
"title": "Hanzo API key",
|
|
"description": "Your Hanzo `sk-` API key (from https://hanzo.ai). Leave blank to use the gateway's public/limited models. Sent as a Bearer token to api.hanzo.ai; never stored in source.",
|
|
"default": ""
|
|
},
|
|
"model": {
|
|
"type": "string",
|
|
"title": "Default model",
|
|
"description": "The default model id used for cell actions and the assistant panel. Pick any id returned by /v1/models.",
|
|
"default": "zen5"
|
|
},
|
|
"baseUrl": {
|
|
"type": "string",
|
|
"title": "Gateway base URL",
|
|
"description": "The Hanzo AI gateway origin. Override only for a self-hosted gateway.",
|
|
"default": "https://api.hanzo.ai"
|
|
}
|
|
},
|
|
"additionalProperties": false
|
|
}
|