Syna
The AI agent with a pod.
julynx.github.io/syna
uv tool install syna-agent
Features
- A sandboxed pod. Every command runs inside an isolated container, with a full Debian shell, root access, and your host machine out of reach.
- A complete toolset. Web search and browser automation (both local, no API key), image understanding, image generation, speech-to-text, text-to-speech, and precise line-number, diff-style file editing.
- Built for long, complex tasks. Every tool output is saved to a file, context is managed automatically (elision and compaction, with a high cache hit rate), and deliverables keep a verifiable chain of custody from source to artifact.
- Honest reporting. Syna is trained to say exactly what happened and what it can't verify; it resists prompt injection and false-flag attacks baked into web content, and it scores at the top of honesty benchmarks.
- It asks when it should. Multiple-choice or open-ended questions, mid-task, whenever a decision isn't Syna's to make.
- Voice mode. Talk to it, and it reads its answers out loud.
- A beautiful UI. Frosted glass, sound effects, and a Y2K-video-player-style background visualizer that reacts to the agent (thinking, calling tools, speaking).
- Any provider. Works with OpenRouter (recommended, most tested), OpenAI, Google Gemini, local Ollama, or any OpenAI-compatible endpoint.
Getting started
-
Install:
uv tool install syna-agent
-
Run the setup wizard and follow the steps (dependencies, provider, API key, sanity check):
syna-setup
-
Start Syna (the web UI at
http://127.0.0.1:8000, or the terminal CLI):syna # Starts the web UI (and first-run wizard if not configured) syna-cli # Starts the terminal CLI
The wizard writes a .env file in ~/.syna for you. To configure manually, create ~/.syna/.env with:
OPENROUTER_API_KEY=your-api-key
MODEL=~z-ai/glm-flash-latest # Or any model of your preference
BASE_URL=https://openrouter.ai/api/v1 # Optional: any OpenAI-compatible endpoint
THINKING_EFFORT=medium # Can be either of none|minimal|low|medium|high|xhigh|max
Voice mode is enabled by adding speech models to the same .env file:
STT_MODEL=google/chirp-3 # Transcribes microphone recordings
TTS_MODEL=google/gemini-3.8-flash-lite-tts # Reads the answers out loud
TTS_VOICE=Kore # Optional: voice of the TTS model
SPEECH_LANGUAGE=en # Optional: ISO-639-1 code, English by default
Image generation (the model's text_to_image tool) is enabled the same way:
IMAGE_MODEL=google/gemini-3.1-flash-image
Requirements: Python 3.12+ and a container engine (Podman or Docker; the setup wizard checks and installs one for you).
Privacy
Syna does not collect your personal information or send your messages anywhere except to the provider you specified. Their Terms of Service and Privacy Policy apply.
Links
Metadata
Release files for syna-agent 0.10.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| syna_agent-0.10.2.tar.gz | 5.3 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| syna_agent-0.10.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 10.7 MB
Release files / syna_agent-0.10.2.tar.gz
| Download URL | syna_agent-0.10.2.tar.gz |
|---|---|
| Size | 5.3 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
179ded8e2a84c9b0b6b166e36ff43e3f5abd395c01156e4995811f418b520416
|
|
BLAKE2b-256 checksum How to use checksums |
9eccbf6773c24eb38fb95d638139623218ec53be049b1a32e15e0d32ef8b8ea9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / syna_agent-0.10.2-py3-none-any.whl
| Download URL | syna_agent-0.10.2-py3-none-any.whl |
|---|---|
| Size | 5.4 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
dda68ae91827351be1f1b42a0cfa019a5ec84652d462dc0a22511a73a718e446
|
|
BLAKE2b-256 checksum How to use checksums |
0db251b639fdd4f56f85db0e87b4320200c9f232dc365b7b4f8975924f183b92
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.13.1 {"installer":{"name":"uv","version":"0.13.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Security for syna-agent 0.10.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.