The Rust server powers high-performance messaging and orchestration. Its design, security boundaries, and release process are maintained by the internal team.
Important
Scope
- Direct changes to the Rust server are internal-only.
- There is no server plugin or extension API at this time.
- Community input is welcome through issues and focused design discussions.
- Report bugs with a minimal reproduction and logs.
- Propose behavior changes via a short design note in an issue.
- Discuss performance findings with reproducible benchmarks.
- Contribute examples and modules on the client side. See Creating an Agent Class.
Note
If your idea adds functionality rather than changing core protocol or I/O, deliver it as a client-side module or example. This keeps the server surface small and easier to secure.
Provide enough detail to reproduce the issue. Use this checklist:
### Summary
Short description of the failure.
### Steps to Reproduce
1) ...
2) ...
3) ...
### Expected vs Actual
Expected: ...
Actual: ...
### Environment
- OS and kernel
- rustc and cargo versions (from `rustup`)
- Server commit or tag
- Config used (attach sanitized json/toml)
- Client SDK and Python versions
- Network conditions (localhost, WAN, container)
### Logs
Relevant lines only. Redact secrets.
### Notes
Throughput, connection count, or timing details if performance related.Note
Reproduce with a clean toolchain from rustup, a fresh build, and default configuration where possible. If the bug depends on specific .env or firewall settings, describe those explicitly.
Server changes can affect protocol compatibility, replay protection, or security posture. Keep proposals narrow.
### Problem
What cannot be achieved with the current server.
### Proposed Direction
Smallest change that solves it. Mention config flags or defaults.
### Compatibility
On-the-wire impact and migration notes.
### Alternatives
Other approaches you considered.
### Measurement
How we can verify correctness or performance.If you can prototype the idea on the client side first, link the repo. Real usage helps us evaluate the need and risk.
- Protocol definitions and envelope formats
- Cryptography, key handling, and replay protection
- Core networking, concurrency model, and shutdown semantics
- Release tooling and deployment pipeline
Use issues to discuss these areas. Attach measurements or traces where relevant.
Important
Do not file public issues for vulnerabilities or credential exposure. Email info@summoner.org with steps to reproduce, affected versions, and impact. We will coordinate a fix and disclosure.
- Changes include tests, benchmarks when relevant, and upgrade notes.
- Performance regressions are treated as bugs.
- The server aims for parity with the Python reference behavior while prioritizing safety and observability.
If you are unsure whether something belongs in the server or as a client-side extension, open an issue and describe the end goal. We will guide you toward the right path.
« Previous: Submitting an Issue | Next: Creating an Agent Class »