Commit Graph
62 Commits
Author SHA1 Message Date
yilsemandClaude Opus 5.5 ac0fdcf355 fix(codex-link): show added models as provider/model, drop the 9R mark
User decision (10 Oct 2026): combos keep their own name; single models
read as short provider/model with the version kept (cc/opus-5-5,
agy/gemini-3.8-flash-high, bekci/kurnaz). No-think copies show their
real provider with a "(no-think)" suffix.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
aiturk-ide-1.0.0-beta.25
2026-10-10 17:52:55 +03:00
yilsemandClaude Opus 5.5 9a54705ed5 fix(codex-link): label cx models as Codex, matching the 9Router alias
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 15:55:04 +03:00
yilsemandClaude Opus 5.5 9739222919 fix(codex-link): only reject degenerate summaries, not short correct ones
The size-proportional minimum (input/250, cap 4000) rejected a correct summary:
a 646,955 byte thread (225k tokens, five labelled facts in a long log) was
summarized by the subscription model in 1501-1701 characters, the bridge demanded
2587, and Codex could not continue the thread on the selected model. The floor now
only catches broken output (input/2000, cap 300). Memory loss is prevented by who
writes the summary, not by its length.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 15:52:44 +03:00
yilsemandClaude Opus 5.5 94e4aa2a74 release: AITURK IDE 1.0.0-beta.25 (subscription models kept, summary by subscription model)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 15:32:54 +03:00
yilsemandClaude Opus 5.5 adf73eeedd fix(codex-link): summarize with a subscription model, reject tiny summaries, describe added models
Model switch lost the conversation: on 10 Oct a 1 MB thread was compacted by the
newly selected small model into 2201 characters. The compaction summary for a bridge
model is now written by a subscription model (ozet_kopru.ozet_modeli, default
gpt-6.1-sol); if that request is refused before it starts, the target model is used
as before. A summary far shorter than the conversation warrants is not accepted:
Codex gets response.failed and keeps the history.

The line under each added model no longer repeats its name. Teams show their
members, fallback chains their order, single models their provider and the traits
readable from the name; the text fits one phone row (30 characters).

Also normalizes tool call ids in the streamed response so Codex persists ids the
subscription backend accepts (fc_ -> ctc_), and bumps the bridge protocol to 6.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 15:31:53 +03:00
yilsemandClaude Opus 5.5 ce49d6d1cc fix(codex-link): keep subscription models untouched, append bridge models after them
sirala_codex re-sorted the whole list and rewrote every priority, which pushed the
native subscription models to the bottom and put same-named AITURK copies
(GPT-6-Astra) above them. Native models now keep their own order, priority and
name; bridge models are appended after them and a copy that shares a native name
is shown with an (AITURK) suffix.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 03:16:49 +03:00
yilsem 8ee676d7c6 test(codex-link): track the shipped bridge protocol version aiturk-ide-1.0.0-beta.24 2026-10-09 23:21:17 +03:00
yilsem 68a97b7489 ci: pin checkout through verified Gitea mirror 2026-10-09 23:18:39 +03:00
yilsem 6e91154f15 fix(codex-link): use member OmniRoute catalog and metadata ordering 2026-10-09 23:10:29 +03:00
yilsemandClaude Opus 5.5 88e660768c feat(codex-bridge): keep the gateway's short "9R" mark in Codex model names
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HRDGW1LiKcDUZYUdKBoWYW
aiturk-ide-1.0.0-beta.23
2026-10-09 19:27:22 +03:00
yilsemandClaude Opus 5.5 bfd0ff196d feat(codex-bridge): add the models of 9Router's providers to Codex (beta.23)
Codex only received combos and the models named in the IDE config, so none of
the models behind the providers added to 9Router showed up. Those single
models are now always added; 9Router's combos stay hidden. The copy of the
same model that comes through OmniRoute is still added only when the IDE
config names it, so each model is listed once.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HRDGW1LiKcDUZYUdKBoWYW
2026-10-09 19:26:00 +03:00
yilsemandClaude Opus 5.5 1e0f2f9aea feat(codex-bridge): hide 9Router combos in Codex, drop the config backup (beta.22)
Combos that come from 9Router, directly or through the gateway's 9router
provider, are no longer added to Codex's model list; the gateway's own combos
keep their plain names. The IDE no longer leaves a config.toml backup behind:
turning the setting off already restores the file byte for byte.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HRDGW1LiKcDUZYUdKBoWYW
aiturk-ide-1.0.0-beta.22
2026-10-09 17:51:10 +03:00
yilsemandClaude Opus 5.5 b560950f82 fix(codex-bridge): ship zstd for the agent's Python and refuse to link without it
Codex compresses request bodies with zstd. The agent venv is Python 3.11, which
has no zstd in its standard library, so every Codex request failed on a fresh
install. The matching zstandard build now ships beside the bridge; the status
endpoint reports ok=false when bodies cannot be read, and the IDE then leaves
Codex's config alone. A running bridge from an older build is replaced, and
"Sync now" makes the bridge re-read the IDE session at once.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HRDGW1LiKcDUZYUdKBoWYW
aiturk-ide-1.0.0-beta.21
2026-10-09 16:27:55 +03:00
yilsemandClaude Opus 5.5 dea67fc153 feat(settings): Codex Bağlama, on by default
Settings → Codex Bağlama runs the bundled bridge for an OpenAI Codex install on
the same computer: the IDE's models and combos appear in Codex and switching
models keeps the conversation. The IDE points Codex's openai_base_url at the
bridge only after the bridge answers, keeps it running across logins, and
removes every trace when the setting is turned off. A Codex that already uses
another base URL is left untouched.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HRDGW1LiKcDUZYUdKBoWYW
2026-10-09 15:59:39 +03:00
yilsemandClaude Opus 5.5 1ce5ab82cf feat(codex-bridge): ship the local Codex bridge with the IDE
Adds the IDE's models and combos to Codex's model list and keeps conversation
summaries readable across providers, so switching models in Codex no longer
drops the conversation. Standard-library Python, run on the agent venv.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HRDGW1LiKcDUZYUdKBoWYW
2026-10-09 15:46:10 +03:00
yilsemandClaude Opus 5.5 df63432c92 Remove the leftover Codex link visual fixture
The settings screen it rendered was reverted; it depended on a separate
manager process that is not shipped.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HRDGW1LiKcDUZYUdKBoWYW
2026-10-09 15:18:07 +03:00
yilsem 4220d35ebe Revert "feat(settings): add Codex link controls and authenticated phone bridge"
This reverts commit 55a1beaf9d.
2026-10-09 15:17:59 +03:00
yilsem 01889d1383 Revert "Label provider token estimates in Codex memory settings"
This reverts commit 0fa42332c1.
2026-10-09 15:17:34 +03:00
yilsem 1282de09ba Prepare IDE beta.21 Codex connection settings release 2026-10-09 13:38:21 +03:00
yilsem 0fa42332c1 Label provider token estimates in Codex memory settings 2026-10-09 13:36:39 +03:00
yilsem 21aa3c2247 fix(test): separate browser preview from Playwright compiler project 2026-10-09 12:09:50 +03:00
yilsem 55a1beaf9d feat(settings): add Codex link controls and authenticated phone bridge 2026-10-09 11:55:16 +03:00
yilsem 1acb5dd90f fix(mobile): wire plugin catalog and session-scoped subagent controls aiturk-ide-1.0.0-beta.20 2026-10-07 22:37:49 +03:00
yilsem 61d765e2df fix(mobile): route phone APIs to selected profile and unblock runtime readiness aiturk-ide-1.0.0-beta.19 2026-10-07 20:10:36 +03:00
yilsemandClaude Opus 5.5 b1db2870c1 ci(gitea): run the approval-gate tests on the Windows runner
This fork had no CI on Gitea (Actions was off; the upstream .github
workflows do not run here). Add one job that runs the protected
instruction-file gate tests and the file-write safety tests on the
Windows runner. Seven upstream tests that cannot pass on Windows (POSIX
paths, symlink privilege, POSIX stat) are deselected by name and listed
in the job log.

Kart: turkservis-20261007-1421-2

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EwSpve9HuXMy7dHf4RDMzX
2026-10-07 18:12:14 +03:00
yilsemandClaude Opus 5.5 7e4cc0915c AITURK IDE 1.0.0-beta.18: gorunmeyen onay beklemesi yerine aninda "onay gerekli"
A one-shot run (hermes chat --query-file ... -Q, stdin closed, no window)
still installs the prompt_toolkit approval callback but never starts the
prompt UI. The protected instruction-file gate (AGENTS.md / CLAUDE.md /
SOUL.md ...) took the registered callback for a reachable human and waited
out approvals.timeout on a panel painted nowhere. With the profile value of
300000 s the stage job hung for good.

- Gate: in a one-shot run, or when only an automatic approver
  (subagent_auto_approve) is attached, return BLOCKED / APPROVAL REQUIRED
  immediately instead of prompting. Human consent is still required every
  time; yolo and approvals.single_query_mode still do not open this gate.
- One-shot exit prints an "approval_required: {json}" line on stderr
  (session_id, tool_call_id, request_id, targets, reason, applied=false)
  so the launcher can tell "blocked, needs a human" from "still working".
- execute_code: an approval that arrives after the calling script stopped
  waiting (300 s reply timeout, script run timeout, retired kernel cell)
  is not applied.
- Same invisible wait removed from the computer_use and memory-write
  prompts in a one-shot run. The one-shot marker is no longer inherited by
  child processes.
- BLOCKED text no longer breaks on a target path containing braces.

Long-running tools are untouched: no general tool timeout was shortened.

Kart: turkservis-20261007-1421-2

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EwSpve9HuXMy7dHf4RDMzX
aiturk-ide-1.0.0-beta.18
2026-10-07 17:17:05 +03:00
yilsemandClaude Opus 5.5 58dbb4523b AITURK IDE 1.0.0-beta.17: telefon kodu yayini yeniden denenir
Uzun sure acik kalan IDE'de "Telefon ekle" ilk istegi olu bir keep-alive
baglantisinda kaybedebiliyordu; bulusma kaydi yayinlanamayinca kod yolu bes
dakika boyunca "Kodla baglanma su an kullanilamiyor" kaliyordu (QR calisiyordu).

- publishPairOffer: en cok 4 deneme (0,5 / 1,5 / 3 sn); ag hatasi, 5xx ve 429
  yeniden denenir, 422 kalicidir; yaniti kaybolan denemeden sonraki 409 kaydin
  yerinde oldugu anlamina gelir (iptal jetonu yoktur, kayit kendiliginden biter).
- Pencerede "Yeniden dene": ayni kod ve QR ile kaydi yeniden yayinlar.
- Role oturumu kaydi ve "Giris yap" baslangici icin tek ek deneme (zaman asimi
  yeniden denenmez).
- Gunluge yalniz "pair offer published / failed after N tries" duser; kod,
  lookup ve jeton yazilmaz.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
aiturk-ide-1.0.0-beta.17
2026-10-05 14:27:59 +03:00
yilsemandClaude Opus 5.5 2ed9a6b2de feat(aiturk): phone link works from any network through an end-to-end encrypted tunnel (1.0.0-beta.16)
The phone link no longer depends on the local network. The IDE dials out to
turkservis.online and bridges tunnel streams to its own TLS proxy on
loopback; the phone runs TLS to the pinned IDE certificate inside the
tunnel, so the relay only carries ciphertext. The proxy binds to 127.0.0.1
by default and enabling the feature never asks for a firewall rule; direct
same-network access is an explicit option. The window shows the real relay,
listener and firewall state, and pairing no longer needs local addresses.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
aiturk-ide-1.0.0-beta.16
2026-10-05 04:22:51 +03:00
yilsemandClaude Opus 5.5 03d3803dfc feat(aiturk): phone link for AITURK Mobil (1.0.0-beta.15)
Settings gets a Phone link window: when enabled, the IDE main process runs a
small TLS proxy on the local network (self-signed certificate, pinned by its
fingerprint) in front of the loopback backend and pairs a phone by QR code
or an 8-character code. Each phone gets its own revocable token; the backend
session token never leaves the computer. The root page, terminal sockets and
secret or settings-changing endpoints are not reachable from a phone. The
old WebRTC pairing window is replaced.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
aiturk-ide-1.0.0-beta.15
2026-10-04 06:02:02 +03:00
yilsemandClaude Opus 5.5 25d8c18c10 feat(aiturk): one-click sign-in for AITURK IDE (1.0.0-beta.14)
The onboarding and provider settings get a Sign in button: the IDE shows a
short code, opens the turkservis.online approval page, and after approval
saves the TurkServis provider itself and hands a separate member key to the
AITURK CLI over stdin (aiturk login --key-stdin --keep-other-account).
Keys never reach the renderer, logs, process arguments or URLs. Pasting an
API key remains as the fallback.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01B8ppceaR5s6cvMnm7uGRnf
aiturk-ide-1.0.0-beta.14
2026-10-03 15:13:23 +03:00
yilsemandClaude Opus 5.5 fe0a45a84f fix(aiturk): tell the agent the CLI launcher name for bash-style terminals
Acceptance on Windows: the IDE agent's Git Bash terminal does not resolve the `aiturk` launcher (a .cmd file) and needed several attempts before it called it by path. The media skill now says to use `aiturk.cmd` there.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012wwqJMAuhMBMWvsvNLFGb9
aiturk-ide-1.0.0-beta.13
2026-10-03 11:30:47 +03:00
yilsemandClaude Opus 5.5 67a99be224 feat(aiturk): produce media through the AITURK CLI, stop adding the media MCP server (beta.13)
Owner decision (3 Oct 2026): where the AITURK CLI is available, TurkServis
models are reached through it, not MCP. The backend no longer writes a
`turkservis-media` MCP server into config.yaml on startup or when a member
endpoint is saved. Existing entries, including disabled ones, are left exactly
as they are. A bundled `aiturk-media` skill teaches the agent to list and run
media with `aiturk media`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012wwqJMAuhMBMWvsvNLFGb9
2026-10-03 11:03:47 +03:00
yilsemandClaude Opus 5 9240576937 fix(desktop): resolve hoisted mobile vendor packages when bundling
A clean npm ci hoists qrcode-generator and jsqr to the workspace root, so the bundler now follows Node resolution from apps/mobile instead of assuming apps/mobile/node_modules.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
aiturk-ide-1.0.0-beta.12
2026-09-15 19:51:08 +03:00
yilsemandClaude Opus 5 233885d3a7 fix(desktop): ship the VC++ runtime the Windows voice wheels need
onnxruntime (wake word) and ctranslate2 (local speech-to-text) link against
msvcp140.dll and msvcp140_1.dll, which the managed CPython does not ship.
On Windows without the system VC++ Redistributable both imports failed with
"DLL load failed: The specified module could not be found", so "Hey Hermes"
and voice chat transcription never worked.

- Bundle the Microsoft-signed VC143 CRT set (14.44.35211, matching the
  managed CPython's vcruntime140) as a Windows extra resource with a SHA-256
  manifest.
- Before every local backend start, copy missing or mismatching CRT files
  beside the managed python.exe (the process image directory, searched first),
  verifying digests; never overwrite the interpreter's own vcruntime and never
  block boot. Existing installs heal on their next launch.
- Report an unloadable native voice wheel as a VC++ runtime problem in the
  wake-word requirements, local transcription and `hermes doctor`, instead of
  treating installed package metadata as proof the wheel loads.
- Bump AITURK IDE to 1.0.0-beta.12.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-15 19:46:39 +03:00
yilsem 9a1d831d4b fix(desktop): complete Rolldown runtime dependency closure aiturk-ide-1.0.0-beta.11 2026-09-12 14:41:36 +03:00
yilsem 1fe367177c fix(windows): pin Vite Lightning CSS native dependency to matching version 2026-09-12 14:39:39 +03:00
yilsem 40c3c74282 fix(mobile): synchronize root lockfile QR dependencies 2026-09-12 14:36:33 +03:00
yilsem ee73fa8cce chore(desktop): prepare Windows x64 beta.11 candidate 2026-09-12 14:26:39 +03:00
yilsem f960716483 test(mobile): verify Windows host ancestry and 0.1.4 runtime integration 2026-09-12 12:17:16 +03:00
yilsem 5f75dcc99a feat(mobile): bind device identities and bound voice usage in 0.1.4 dev 2026-09-12 12:11:18 +03:00
yilsem ac6687181e fix(windows): probe compute host liveness without sending signals 2026-09-12 11:52:12 +03:00
yilsem 3f12c627ab fix(windows): append compute host logs without concurrent record loss 2026-09-12 11:49:46 +03:00
yilsem 4115f1b4c0 feat(mobile): add local QR scanning and desktop pairing invitations 2026-09-08 21:28:24 +03:00
yilsem c1929957a2 feat(mobile): connect Android and IDE to browser account login 2026-09-08 21:10:49 +03:00
yilsem b66daed07a feat(mobile): correlate voice tasks and recover results on reconnect 2026-09-08 21:00:28 +03:00
yilsem 9f9f3226a1 feat(mobile): add Android development client and scoped IDE companion 2026-09-08 16:54:28 +03:00
yilsem 3332458708 feat(desktop): open read-only TurkServis combo details in browser pane aiturk-ide-1.0.0-beta.10 2026-09-07 21:46:57 +03:00
yilsem ff2eb47302 Fix Chrome session list API pagination in IDE beta 9 aiturk-ide-1.0.0-beta.9 2026-09-07 13:58:03 +03:00
yilsem fa63e03eb7 Bound serialized Chrome transcript bytes in IDE beta 8 aiturk-ide-1.0.0-beta.8 2026-09-07 13:11:31 +03:00
yilsem 57876d11f0 Harden Chrome bridge framing and preserve panel state for IDE beta 7 aiturk-ide-1.0.0-beta.7 2026-09-07 12:50:15 +03:00