Back to Home

AI-agent Soyuz open source: security and KMP

Desktop AI-agent Soyuz released as open source with emphasis on security. The project uses Kotlin Multiplatform and task graphs, rejecting MCP to minimize vulnerabilities and tokens. Suitable for screen automation with GigaChat and local models.

Open desktop agent Soyuz: security above all
Advertisement 728x90

Soyuz Desktop AI Agent: An Open Source Approach Prioritizing Security

Developers have released the "Soyuz" desktop agent as open source, focusing on security and predictable operation. Unlike tools with extensive functionality, the project minimizes risks by avoiding verbose protocols like MCP. The agent runs locally, without VPN or complex setup, and supports GigaChat and Anthropic models.

The source code is available for review and modification. The project emerged from hackathon experience and mobile agents built with Kotlin Multiplatform.

The Genesis of the Idea: From Simple Agents to Desktop Solutions

In July 2025, the author published a guide on creating agents with Kotlin. By that time, desktop agents were already being integrated into workflows via OpenAI and Anthropic APIs. They automated routine tasks: voice control, UI interaction.

Google AdInline article slot

At a hackathon at Sber, the team rejected universal solutions like Claude Code. Instead, they created an agent for visually impaired users: screen recognition, keyboard and mouse control without a UI. Experience with the Clojure Robot library and a DSL for automation helped implement a prototype within a week.

The agent passed the preliminary round, demonstrating voice commands for opening files, websites, clicks, and hotkeys. Before the finals, issues arose with GigaChat censorship—support for Anthropic via VPN was added, which reduced performance.

The Reboot: A Framework on Kotlin Multiplatform

After the hackathon, the project was refocused on mobile applications. Kotlin Multiplatform (KMP) was used for cross-platform compatibility on iOS, Android, and desktop. A custom agent framework based on graphs was developed, without external dependencies.

Google AdInline article slot

Key publications:

  • Agent on Kotlin without frameworks: implementation via state graphs.
  • KMP and Xcode: experience porting agents to 4 platforms.

This tech stack became the foundation for "Soyuz," ensuring a single codebase and control over security.

Security Above All: Rejecting MCP

For a mass audience—ordinary users—the agent must work out of the box, without VPN, crypto, or cards. Requirements:

Google AdInline article slot
  • Autonomy: No configuration needed.
  • Accessibility: Support for local models and GigaChat without intermediaries.
  • Protection: Minimization of vulnerabilities.

MCP was rejected due to verbosity: descriptions of tools like Notion bloat the context to 45k characters, reducing the efficiency of GigaChat and local LLMs. Research identified 16 vulnerabilities in MCP. The example of Notion MCP tools illustrates the problem:

[
  {
    "fn": {
      "name": "Mcp_notion_notion_search",
      "description": "[MCP:notion] Perform a search over:\n- \"internal\": Semantic search over Notion workspace...",
      "parameters": {
        "type": "object",
        "properties": {
          "query": {
            "type": "string",
            "description": "Semantic search query over your entire Notion workspace..."
          }
        }
      }
    }
  }
]

Such constructs kill performance. "Soyuz" uses a simplified stack: a fixed set of tools, task graphs, local execution.

Architecture and Tech Stack

The project is built on KMP for desktop (Compose Multiplatform). Core components:

  • Agent Core: State graphs for task planning.
  • Tools: Screen capture, OCR, input simulation (keyboard/mouse).
  • Models: GigaChat (primary), Anthropic (fallback), local LLMs.
  • Security: Sandboxing of tools, prompt validation, no network calls without explicit consent.

Graphs allow for predictable behavior: the agent does not deviate from the plan, minimizing tokens. Context savings—up to 70% compared to MCP.

For middle/senior developers, the stack is interesting as an alternative to LangChain or AutoGen: full control, KMP integration, focus on desktop automation.

Key Takeaways

  • Open source: Source code on GitHub, MIT license for free use.
  • Security: Rejection of MCP, fixed tools, local execution.
  • Accessibility: Works with GigaChat without VPN, supports voice and screen.
  • KMP Stack: Cross-platform, graphs instead of prompt chains.
  • Resource Efficiency: Context up to 4k tokens instead of 45k+ in MCP.

— Editorial Team

Advertisement 728x90

Read Next