Sign in
Join now
scn-chat
sharedcomputer.network
/
Star
Starred
Star
5
Something went wrong. Try again.
Fork
0
Eye filled
Watch
Watching
Watch
ATProto-based AI Assistant Chat interface.
Star
Starred
Star
Something went wrong. Try again.
Fork
Eye filled
Watch
Watching
Watch
Overview
Overview
Issues
Issues
1
1
Pulls
Pulls
Pipelines
Pipelines
scn-chat
/
apps
/
server
/
src
/
providers
8 files
at
main
hadsie.com
·
Add support for per-provider model capability defaults.
·
1w ago
cfc1b536
admin-models.ts
Add site-config export / import via CLI.
2w ago
catalog.ts
Retry busy providers. Don't retry spent keys. Add messaging for users.
2w ago
effort.ts
Implement initial buildout of core features.
1mo ago
generate-text.ts
Retry busy providers. Don't retry spent keys. Add messaging for users.
2w ago
guarded-fetch.ts
Judge a NAT64 address by the IPv4 address inside it, rather than refusing the whole 64:ff9b::/96 range as private. On an IPv6-only network, DNS64 gives every IPv4-only host a NAT64 address next to its IPv4 one, and the guard refuses a host when any of its addresses is private. So sign-in failed at the callback, with "Refusing to connect to private network address 64:ff9b::d8c6:4f01", since resolving the identity reached the PDS, the handle, and plc.directory through the guard. Every other guarded fetch failed the same way. A NAT64 address hiding a private IPv4 address, like 64:ff9b::7f00:1 for 127.0.0.1, is still refused.
4w ago
retries.ts
Retry busy providers. Don't retry spent keys. Add messaging for users.
2w ago
routes.ts
Add support for per-provider model capability defaults.
1w ago
user-credentials.ts
The OpenAI-compatible plugin's model list sends sessionHeader too, with a fresh session ID shaped like a conversation's, since a list belongs to no conversation, and userAgent's hint and the spec say it leads the user agent, with the AI SDK's name after it on chat calls. Unticking a loaded model on a key's page takes it out of the draft, which the spec now says, along with the page's notes for a key that can't be read or isn't saved, any route answering 400 for an undecryptable key, and the Select scrolling to its active option only when it changes, each with a test and an acceptance criterion. ModelName shows a model's ID only when it differs from its name, in both the admin's and a key's list of models to tick, the admin's model rows name capabilities by their labels from the shared list, noCapabilities is typed by it, and decryptKey refuses an unreadable key in one place.
2w ago