yilsem and Claude Opus 5.5
cbe716300c
feat(aiturk): reach the IDE through an end-to-end encrypted tunnel
...
A phone on the same Wi-Fi could not reach the computer at all (client
isolation on the router), and every failure was shown as one 'same
Wi-Fi' message. Contract v3: the phone only dials turkservis.online.
Transport: a relay pairing lives on the virtual host
<relayId>.relay.aiturk.invalid. For that host only, the shared OkHttp
client resolves a placeholder address, opens a WebSocket byte stream to
the relay instead of a TCP connection, and runs TLS on top of it pinned
to the IDE's certificate fingerprint. The relay sees ciphertext only.
DNS, sockets, proxy choice and TLS are unchanged for every other host.
Pairing: tunnel first (hello within 10 s), LAN candidates second, one
claim only. The local-network permission is requested only when a LAN
address may be tried; denying it no longer ends the pairing.
Errors: host offline, unknown relay, busy, no internet, silent computer,
certificate mismatch and the LAN failures each get their own text plus
a short diagnostic code built from a fixed vocabulary (never a token,
pairing code or address). After pairing the screen shows the first 8
characters of the fingerprint as a security code.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
2026-10-05 04:18:52 +03:00
yilsem and Claude Opus 5.5
9afac6f508
feat(aiturk): accept a relay id in pairing payloads
...
Contract v3 (tunnel): the QR / deep link may carry r=<lowercase UUIDv4>
and no LAN address at all (the IDE's default). u is now 0..4, but a
payload with neither u nor r is rejected, and a present-but-invalid r
rejects the whole payload instead of falling back to the LAN addresses.
AiturkRelay maps a relay id to the virtual host
<relayId>.relay.aiturk.invalid that addresses a tunnel pairing.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
2026-10-05 04:08:07 +03:00
yilsem and Claude Opus 5.5
6f4309c746
feat(aiturk): add the connect-to-computer screen (QR scan, code, deep link)
...
Merge Conflict Detector / detect-and-label (push) Successful in 3s
Android CI/CD / Detect Changes (push) Successful in 6s
CodeQL Analysis / Analyze (java-kotlin) (push) Failing after 2m31s
Android CI/CD / Android Lint — Static Analysis (push) Failing after 3m57s
Android CI/CD / Build Debug APK (push) Failing after 1m56s
Android CI/CD / Instrumented Tests (push) Failing after 1m15s
Android CI/CD / ktlint — Code Style (push) Failing after 5m16s
Android CI/CD / Unit & Integration Tests (push) Failing after 4m8s
Android CI/CD / Release Compile Check (push) Failing after 14m1s
Android CI/CD / CI Summary (push) Failing after 1s
Landing now leads with QR / 8-character code pairing; manual login stays as the secondary action. aiturk://pair links open the same screen and ask for confirmation first.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
aiturk-mobil-0.2.0-beta.2
2026-10-04 06:06:31 +03:00
yilsem and Claude Opus 5.5
c2b08ff73e
feat(aiturk): pair with AITURK IDE over LAN with a pinned certificate
...
Adds the phone side of the pairing contract v1: payload parsing, gateway resolve, parallel hello and a single claim, per host:port certificate pinning hooked into OkHttpProvider.base, and no dashboard token refresh for a paired IDE. Adds zxing-android-embedded and okhttp-tls (tests).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
2026-10-04 06:06:31 +03:00
yilsem and Claude Opus 5.5
8e48a0fa1e
feat(brand): disable upstream self-updater, add attribution and NOTICE
...
The GitHub release checker would install Hy4ri/hermes-mobile APKs; the About
screen now points to https://turkservis.online/indir and credits the original
project.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
2026-10-03 15:06:22 +03:00
yilsem and Claude Opus 5.5
34758975b7
feat(brand): replace launcher icon with the AITURK mark
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
2026-10-03 15:06:21 +03:00
yilsem and Claude Opus 5.5
e3d0a97921
feat(i18n): add Turkish translation and language picker entry
...
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com >
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
2026-10-03 15:06:20 +03:00
yilsem and Claude Opus 5.5
5f548f5a17
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
2026-10-03 15:06:19 +03:00
944390bec1
chore: promote dev to main ( #1455 )
...
Co-authored-by: AlexDev_ <56083016+alexdev03@users.noreply.github.com >
2026-10-03 00:51:11 +03:00
m57 and GitHub
62fcf07e1b
Merge pull request #1431 from Hy4ri/codex/release-v2.0.2
...
chore: promote dev for v2.0.2
2026-10-01 20:30:07 +03:00
M57
e7927f6631
chore: promote dev for v2.0.2
2026-10-01 20:17:08 +03:00
m57 and GitHub
1cef9e7ebb
fix( #1427 ): keep accepted prompts visible during live turns ( #1430 )
2026-10-01 20:17:05 +03:00
m57 and GitHub
82cf8df238
Merge pull request #1429 from Hy4ri/codex/release-v2.0.1
...
chore(release): promote dev to main for v2.0.1
2026-10-01 17:08:17 +03:00
M57
ba029e83dc
chore(release): merge dev for v2.0.1
2026-10-01 16:56:32 +03:00
m57 and GitHub
63105b7843
fix( #1427 ): recover sends past unresolved receipts ( #1428 )
2026-10-01 16:52:39 +03:00
728daa9acd
release: promote dev to main for v2.0.0 ( #1426 )
...
Signed-off-by: dependabot[bot] <support@github.com >
Co-authored-by: Lx-204 <15377891490@163.com >
Co-authored-by: AlexDev_ <56083016+alexdev03@users.noreply.github.com >
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Nikhil Nair <32665919+nikhilnair31@users.noreply.github.com >
Co-authored-by: marciodps <95321123+marciodps@users.noreply.github.com >
Co-authored-by: ThomasCrund <39323104+ThomasCrund@users.noreply.github.com >
2026-10-01 11:19:09 +03:00
m57 and GitHub
4294d7edff
feat: add source filter chips to history screen ( #1425 )
2026-10-01 11:09:50 +03:00
m57 and GitHub
9cf8c3818c
refactor( #1376 ): extract WebSocket client components ( #1424 )
2026-10-01 10:35:59 +03:00
m57 and GitHub
6a75a2f1fb
docs: fix stale counts and reorder README for users ( #1423 )
2026-09-30 23:53:00 +03:00
5bf43e4a21
feat(notifications): optional alert when any session completes ( #1401 )
...
Co-authored-by: M57 <41645758+Hy4ri@users.noreply.github.com >
2026-09-30 23:31:08 +03:00
m57 and GitHub
0c336ecc4d
feat(chat): show agent message reactions ( #1422 )
2026-09-30 23:15:11 +03:00
m57 and GitHub
6e14c49df1
fix(model): MoA row shows 'not loaded' on null temperatures ( #1421 )
2026-09-30 22:16:32 +03:00
m57 and GitHub
a8dd055426
feat(ui): copy button on error states and chat error snackbar ( #1420 )
2026-09-30 21:45:06 +03:00
m57 and GitHub
26f259ddd8
feat(theme): add Garnet preset with deep red accents ( #1418 )
2026-09-30 21:30:18 +03:00
m57 and GitHub
7b6aed4bcd
fix(chat): /compress no longer drops feedback on id-less transcript rows ( #1419 )
2026-09-30 21:29:57 +03:00
m57 and GitHub
56bb3a88c2
fix(theme): complete color and component contrast contracts ( #1417 )
2026-09-30 21:14:56 +03:00
Nikhil Nair and GitHub
9529a7e32c
feat( #1247 ): live level meter on the voice recording strip ( #1416 )
2026-09-30 21:14:27 +03:00
m57 and GitHub
5145a3354b
perf(markdown): coalesce long plain bullet runs ( #1415 )
2026-09-30 18:12:57 +03:00
m57 and GitHub
dcf62c0c02
fix(chat): keep restored commands in place on session load ( #1414 )
2026-09-30 17:14:59 +03:00
m57 and GitHub
9f033ac82c
fix(chat): keep interrupted replies and notices in place ( #1413 )
2026-09-30 16:16:23 +03:00
m57 and GitHub
c5bd457da3
fix(chat): keep Send primary while streaming, Stop in the flat slot ( #1412 )
2026-09-30 14:33:08 +03:00
m57 and GitHub
3fb99f86ac
fix(chat): tint composer send/stop/mic button with theme primary ( #1410 )
2026-09-30 14:33:08 +03:00
m57 and GitHub
0e39a71591
feat(chat): /stop also kills background processes like desktop ( #1409 )
2026-09-30 14:33:07 +03:00
m57 and GitHub
05519ba1ff
feat(notification): Turn off action and tap-to-open on background notification ( #1408 )
2026-09-30 13:30:55 +03:00
m57 and GitHub
48de25985a
fix(providers): accept numeric expires_at in OAuth status ( #1407 )
2026-09-30 13:30:41 +03:00
m57 and GitHub
6810ef02fe
fix(mcp): show Installed state for catalog entries already installed ( #1405 )
2026-09-30 13:15:30 +03:00
m57 and GitHub
81b5e6d84b
feat(mcp): Installed/Catalog tabs with search, matching Plugins and Skills ( #1404 )
2026-09-30 13:15:30 +03:00
m57 and GitHub
fc2ce3f26b
fix( #1402 ): replace Map<String, Any> Retrofit types with typed DTOs ( #1403 )
2026-09-30 12:35:01 +03:00
7a2822fade
fix(sessions): send profile in destructive bodies and prune the asked window ( #1398 )
...
Co-authored-by: M57 <41645758+Hy4ri@users.noreply.github.com >
2026-09-30 11:27:40 +03:00
Nikhil Nair and GitHub
012440b8f7
fix(nav): back from a list-opened chat returns to that list ( #1400 )
2026-09-30 11:21:44 +03:00
Nikhil Nair and GitHub
57be85d2f7
fix( #1247 ): keep the keyboard up through the whole mic hold ( #1399 )
2026-09-30 11:17:10 +03:00
m57 and GitHub
ee1d7a0b75
fix( #1375 ): treat required profile like any required param in the contract check ( #1397 )
2026-09-30 01:42:37 +03:00
m57 and GitHub
6baade0f7f
refactor( #1375 ): make untyped RPC request and send internal ( #1395 )
2026-09-30 01:22:39 +03:00
m57 and GitHub
26c60a10c0
refactor( #1375 ): type command dispatch, slash exec and attachment RPC params ( #1394 )
2026-09-30 01:09:34 +03:00
m57 and GitHub
1456e642e3
refactor( #1375 ): type config.set, config.get, model.options and client.capabilities ( #1393 )
2026-09-30 00:40:24 +03:00
m57 and GitHub
cb0463aefc
refactor( #1375 ): type profiles.list and profiles.configure RPC params ( #1392 )
2026-09-29 23:42:01 +03:00
m57 and GitHub
445da9fe14
refactor( #1375 ): type plugins.manage and projects.list RPC params ( #1391 )
2026-09-29 23:14:13 +03:00
m57 and GitHub
9a09974081
refactor( #1375 ): type process list and kill RPC params ( #1390 )
2026-09-29 22:36:35 +03:00
m57 and GitHub
27ce528005
refactor( #1375 ): type subagent list and tail RPC params ( #1389 )
2026-09-29 22:02:07 +03:00
m57 and GitHub
c8edf3665f
refactor( #1375 ): type connector operation responses ( #1388 )
2026-09-29 21:28:40 +03:00