Skip to content

Unify product name as "Thoughtful"; name the requesting app on OAuth login - #700

Merged
kcarnold merged 2 commits into
mainfrom
claude/quirky-lovelace-7d4pdw
Oct 31, 2026
Merged

kcarnold merged 2 commits into
mainfrom
claude/quirky-lovelace-7d4pdw

Conversation

@kcarnold

Copy link
Copy Markdown
Contributor

Two commits:

  1. Unify user-facing product name as "Thoughtful". The product was called "Writing Tools", "Thoughtful AI Tools", or "Thoughtful Writing Tools" depending on where you looked. Now it's "Thoughtful" on the OAuth login page, the device approval page, the Google Docs add-on (menu, sidebar, store listing, setup README), the Office store long description, the dev debug pages, and in docs/oauth-provider.md. The Mindmap OAuth client's display name is now "Mindmap". Provisioning updates the existing row on startup.

    • Not changed: the lab name ("Thoughtful AI Lab"), LICENSE, and package/repo identifiers.
  2. Name the requesting app on the OAuth login page. The page used to say "the app you came from" for every client. It now looks up the query's client_id in the trusted-client list and says "Mindmap wants to use Thoughtful's AI on your behalf", which matches what the openai:chat scope grants. Only configured names can appear on the page, and they are HTML-escaped. An unknown id gets the old generic text.

Notes

  • Trusted clients skip consent, so a user who is already signed in never sees this page. The name only shows when they sign in during connect.
  • The device approval page didn't need a client name. Its "device" is the add-in itself.

Testing

  • npm run typecheck and npx vitest run in backend/: 137/137 pass. That includes new assertions for the named prompt and the unknown-client fallback.

Generated by Claude Code

The product appeared as "Writing Tools", "Thoughtful AI Tools", and
"Thoughtful Writing Tools" depending on the surface. Use "Thoughtful"
on the OAuth login page, device approval page, Google Docs add-on
(menu, sidebar, store listing, setup README), Office store long
description, dev debug pages, and docs. The Mindmap OAuth client's
display name becomes "Mindmap" (re-provisioned on startup).

Left as-is: the lab name ("Thoughtful AI Lab"), LICENSE, package and
repo identifiers.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_017KwGFihH21DMyLYsDhRSFp
The login page said "the app you came from" for every client. Look up
the authorization query's client_id in the trusted-client list and say
"<Name> wants to use Thoughtful's AI on your behalf", which matches
what the openai:chat scope grants. Only configured names can render
(and they're escaped); unknown ids keep the generic prompt.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
Claude-Session: https://claude.ai/code/session_017KwGFihH21DMyLYsDhRSFp
@kcarnold
kcarnold merged commit 8d56b25 into main Oct 31, 2026
8 checks passed
@kcarnold
kcarnold deleted the claude/quirky-lovelace-7d4pdw branch October 31, 2026 22:38
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants