feat(brand): rename app to AITURK Mobil and set applicationId

Replace user-visible Hermes / Hermes Mobile texts with AITURK branding in all
locales and set applicationId to online.turkservis.aiturk.mobil. Namespace and
source packages stay com.m57.hermescontrol.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
This commit is contained in:
yilsemandClaude Opus 5.5 committed 2026-10-03 15:06:19 +03:00
1 parent 944390bec1
commit 5f548f5a17
19 files changed
+168 -171

No files matched your search

@@ -76,7 +76,7 @@ data class MessagingPlatformUpdateResponse(
@Serializable
data class TelegramOnboardingStartRequest(
@SerialName("bot_name") val botName: String = "Hermes Agent",
@SerialName("bot_name") val botName: String = "AITURK",
)
@Serializable
@@ -62,7 +62,7 @@ open class NotificationReplyReceiver : BroadcastReceiver() {
NotificationCompat
.Builder(context, ChatNotificationService.CHAT_CHANNEL_ID)
.setSmallIcon(R.drawable.ic_notification)
.setContentTitle("Hermes")
.setContentTitle("AITURK")
.setContentText("Replied")
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setAutoCancel(true)
@@ -322,7 +322,7 @@ class ChannelsViewModel :
val result =
safeApiCall {
ApiClient.hermesApi.startTelegramOnboarding(
TelegramOnboardingStartRequest(botName = "Hermes Agent"),
TelegramOnboardingStartRequest(botName = "AITURK"),
)
}
_uiState.update {
@@ -790,7 +790,7 @@ fun ChatScreen(
scrollScope.launch { snackbarHostState.showSnackbar(copiedMessage) }
},
onShare = { details ->
val report = "Hermes Mobile ${BuildConfig.VERSION_NAME}\n\n$details"
val report = "AITURK Mobil ${BuildConfig.VERSION_NAME}\n\n$details"
val intent =
Intent(Intent.ACTION_SEND).apply {
type = "text/plain"
@@ -166,7 +166,7 @@ data class ChatUiState(
val messages: List<ChatMessage> = emptyList(),
val currentSessionId: String? = null,
val sessions: List<SessionUi> = emptyList(),
val chatTitle: String = "Hermes",
val chatTitle: String = "AITURK",
val connectionStatus: ConnectionStatus = ConnectionStatus.DISCONNECTED,
val isAgentTyping: Boolean = false,
val isMainTurnBusy: Boolean = false,
@@ -920,7 +920,7 @@ class ChatViewModel(
.collect { _ ->
pendingGoneSessionNotice = false
sessionHasServerPresence = false
resetSessionState(sessionId = null, title = "Hermes", isLoading = true)
resetSessionState(sessionId = null, title = "AITURK", isLoading = true)
}
}
// Same wipe when the CONNECTION profile changes (different server):
@@ -932,7 +932,7 @@ class ChatViewModel(
.collect { _ ->
pendingGoneSessionNotice = false
sessionHasServerPresence = false
resetSessionState(sessionId = null, title = "Hermes", isLoading = true)
resetSessionState(sessionId = null, title = "AITURK", isLoading = true)
}
}
// Slash-command usage ranking (issue #865): mirror the local usage
@@ -1007,7 +1007,7 @@ class ChatViewModel(
// even when the route looks already active).
_uiState.update { it.copy(isLoading = false, resumeError = null, isResumeRetrying = false) }
cancelResumeRetry()
addSystemMessage("Connected to Hermes")
addSystemMessage("Connected to AITURK")
loadSessions()
fetchCommandCatalog()
modelSwitchDelegate.preloadModelOptions()
@@ -1803,7 +1803,7 @@ class ChatViewModel(
isSessionReady = true,
isLoading = false,
messages = if (pendingInitialPrompt != null) it.messages else emptyList(),
chatTitle = "Hermes",
chatTitle = "AITURK",
usedContextTokens = null,
fullContextTokens = null,
contextBreakdown = null,
@@ -1872,7 +1872,7 @@ class ChatViewModel(
val generation =
resetSessionState(
sessionId = storageId,
title = (resultMap["title"] as? String)?.takeIf { it.isNotBlank() } ?: "Hermes",
title = (resultMap["title"] as? String)?.takeIf { it.isNotBlank() } ?: "AITURK",
isLoading = false,
)
runtimeSessionId = runtimeId
@@ -4567,7 +4567,7 @@ class ChatViewModel(
fun createNewSession(setLoading: Boolean = true) {
// A fresh create has no persisted row until the first prompt.
sessionHasServerPresence = false
val generation = resetSessionState(sessionId = null, title = "Hermes", isLoading = setLoading)
val generation = resetSessionState(sessionId = null, title = "AITURK", isLoading = setLoading)
viewModelScope.launch(ioDispatcher) {
wsClient.send(
RpcMethods.SESSION_CREATE,
@@ -4955,7 +4955,7 @@ class ChatViewModel(
val title =
_uiState.value.sessions
.find { it.id == sessionId }
?.title ?: "Hermes"
?.title ?: "AITURK"
val generation = resetSessionState(sessionId, title, isLoading = true)
AuthManager.setLastOpenedSessionId(sessionId)
viewModelScope.launch {
@@ -98,7 +98,7 @@ object MediaExportHelper {
if (length != null && length > 0) {
put(MediaStore.MediaColumns.SIZE, length)
}
put(MediaStore.MediaColumns.RELATIVE_PATH, "Download/Hermes")
put(MediaStore.MediaColumns.RELATIVE_PATH, "Download/AITURK")
put(MediaStore.MediaColumns.IS_PENDING, 1)
}
@@ -28,7 +28,7 @@ object MediaImageStore {
val safe = sanitizeName(displayName)
val (collection, relativePath) =
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
MediaStore.Downloads.EXTERNAL_CONTENT_URI to "Download/Hermes"
MediaStore.Downloads.EXTERNAL_CONTENT_URI to "Download/AITURK"
} else {
MediaStore.Images.Media.EXTERNAL_CONTENT_URI to null
}