BroV: single Mac target, chat brain = local claude CLI (stream-json, resume)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -71,6 +71,7 @@ enum AgentSource: Equatable {
|
||||
// MARK: - Chat provider
|
||||
|
||||
enum ChatProvider: String, CaseIterable, Codable {
|
||||
case claudeCode = "claudecode" // the user's own `claude` CLI (BroV)
|
||||
case anthropic = "anthropic"
|
||||
case google = "google"
|
||||
case openai = "openai"
|
||||
@@ -79,6 +80,7 @@ enum ChatProvider: String, CaseIterable, Codable {
|
||||
|
||||
var displayName: String {
|
||||
switch self {
|
||||
case .claudeCode: "Claude Code"
|
||||
case .anthropic: "Anthropic"
|
||||
case .google: "Google"
|
||||
case .openai: "OpenAI"
|
||||
@@ -89,6 +91,7 @@ enum ChatProvider: String, CaseIterable, Codable {
|
||||
|
||||
var accentHex: String {
|
||||
switch self {
|
||||
case .claudeCode: "#D97757"
|
||||
case .anthropic: "#E07950"
|
||||
case .google: "#4285F4"
|
||||
case .openai: "#10A37F"
|
||||
@@ -99,6 +102,7 @@ enum ChatProvider: String, CaseIterable, Codable {
|
||||
|
||||
var defaultModel: String {
|
||||
switch self {
|
||||
case .claudeCode: ""
|
||||
case .anthropic: "claude-sonnet-4-6"
|
||||
case .google: "gemini-2.0-flash"
|
||||
case .openai: "gpt-4o"
|
||||
@@ -109,6 +113,7 @@ enum ChatProvider: String, CaseIterable, Codable {
|
||||
|
||||
var keychainKey: String {
|
||||
switch self {
|
||||
case .claudeCode: ""
|
||||
case .anthropic: "anthropic-api-key"
|
||||
case .google: "google-api-key"
|
||||
case .openai: "openai-api-key"
|
||||
@@ -123,6 +128,7 @@ enum ChatProvider: String, CaseIterable, Codable {
|
||||
|
||||
var pillID: String {
|
||||
switch self {
|
||||
case .claudeCode: "ai_claudecode"
|
||||
case .anthropic: "ai_anthropic"
|
||||
case .google: "ai_google"
|
||||
case .openai: "ai_openai"
|
||||
@@ -133,6 +139,7 @@ enum ChatProvider: String, CaseIterable, Codable {
|
||||
|
||||
init?(pillID: String) {
|
||||
switch pillID {
|
||||
case "ai_claudecode": self = .claudeCode
|
||||
case "ai_anthropic": self = .anthropic
|
||||
case "ai_google": self = .google
|
||||
case "ai_openai": self = .openai
|
||||
|
||||
Reference in New Issue
Block a user