Bot kinds: personal vs company bots in the create flow, profile, and list - #837
Merged
Merged
Conversation
…list The New bot flow asks one question on the Home step: "Personal — acts as you" or "For a company" with a multi-select of the owner's cloud companies (slugs). Company kind needs at least one company; a company template defaults to a company bot for that company. Setup creates a personal bot. `LocalBotCreateInput` gains `kind` and `companies`; both Tauri adapters pass them through and Rust `create_args` maps them to `--kind` and one `--company <slug>` each (validated as slugs). `LocalBotRow` gains `kind`/`companies`. The bot profile and Settings → Bots show "Personal · acts as you" or "Company · <slugs>"; rows from an older CLI without a kind show nothing new. Promote to cloud is offered only for company bots; personal bots see "Personal bots stay on this Mac". Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Only company bots pass `--kind company` and `--company <slug>`; a personal bot sends nothing, so a desktop build against an hq that predates `--kind` keeps creating personal/setup bots. Rust refuses companies without the company kind instead of dropping them. The create flow remembers when the user answered "who is it for?" so going back and picking a company template no longer flips Personal to company. A company bot's promote dialog lists only the companies it belongs to (when the row carries them). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
Desktop half of bot kinds (spec: the local-bots BOT-KINDS doc). Pairs with the hq-cli change that adds
hq bot create --kind personal|company --company <slug>andkind/companiesonhq bot list --json.startSetupBot) always creates a personal bot.LocalBotCreateInput.kind/.companies,LocalBotRow.kind/.companies; both Tauri adapters pass them through; Rustcreate_argsmaps to--kindand one--company <slug>each (slug-validated, closed enum for kind).LocalBotDetailPanel) and Settings → Bots list: "Personal · acts as you" or "Company · indigo, ridge". Rows withoutkind(older CLI) show nothing new.kindkeep today's behaviour.Checks
packages/ui:npx vitest run src/chat src/shell src/settings— 1986 passed;npx svelte-check --threshold error— 0 errorspackages/platform:sync-adapter-bots.test.ts— 10 passedapps/sync:pnpm typecheck— 0 errorsapps/sync/src-tauri:cargo test --bin hq-sync-menubar create_args— 4 passedTests added
toCreateInputpasseskindand de-duplicated slugs;scopeLine.kindandcompanieswith identical shapes.create_args_pass_kind_and_companies.🤖 Generated with Claude Code