Skip to content

Latest commit

 

History

117 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

English | 日本語

SignalRouter

Simulate and replay UI operations as structured commands for reproducible debugging and screenshot-free MCP agent control (Pure C# + Unity).

CI Release License: MIT OpenSSF Scorecard

Read the architecture »

Report Bug · Request Feature · Discussions

Table of Contents
  1. About The Project
  2. Features
  3. Getting Started
  4. Usage
  5. Development
  6. Roadmap
  7. Contributing
  8. Project Docs
  9. License
  10. Acknowledgments

About The Project

SignalRouter is an engine-agnostic Pure C# runtime (Unity is the first target engine) that represents UI operations as structured, serializable commands. Instead of driving the UI through pixels and screenshots, it exposes a semantic UI tree — every interactive element with its identity, role, current value, state, and the operations it currently allows — so command sequences can be executed, recorded, and deterministically replayed.

That enables two things: reproducible debugging (capture a failing session and replay the exact command sequence, application handlers and all) and screenshot-free control by AI agents over MCP (an agent enumerates the operations available in the current screen and drives them directly). It is aimed at teams building Unity apps and games who want their UI to be observable and controllable as data.

Status: The engine-agnostic core is implemented: the single-owner kernel with its typed contracts, the observation/materialization layer with content-addressed canonical state, durable recording (E1–E8 evidence), isolated-twin replay with typed three-valued comparison, a seal evaluator, and a TCK the in-repo reference adapter passes end to end. The protocol gateway (MCP surface) and the Unity adapter are the next roadmap items. Guarantees live in docs/spec/guarantees.md.

Built With

  • Pure C# (.NET Standard 2.1, C# 9) — the runtime takes zero package dependencies
  • Unity 6 — the first target engine (adapter upcoming; the core never depends on it)
  • Model Context Protocol (MCP) — the agent-facing surface (gateway upcoming)

(back to top)

Features

The kernel, observation, recording, and replay layers are implemented; the protocol gateway and the Unity adapter are the remaining roadmap items:

  • Single-owner kernel — one mutation lane, split-phase adapter protocol, exactly-once completion, and a typed failure matrix; every guarantee is a normative table in docs/spec/.
  • Semantic observation — projected views with completeness maps and content-addressed canonical state; a snapshot's ContentId is a portable, verify-before-use digest.
  • Durable recording — an append-only evidence artifact (E1–E8 cuts, delta-encoded checkpoints, a droppable diagnostics timeline) written through a crash-honest reader-classified format.
  • Isolated replay — a pre-scan trust boundary, an isolated twin environment, and typed exact comparison answering Equal | Diverged | Incomparable(reason); a seal evaluator decides what may become a CI verification case.
  • Adapter TCK — a conformance kit any engine adapter must pass; the in-repo reference adapter passes it end to end.
  • Normative performance — quiescent pumps allocate zero bytes and work is proportional to admitted load, enforced by allocation gates in CI.

(back to top)

Getting Started

There is no released package yet. Clone the repository to build the 0.1.0 implementation foundation locally.

Prerequisites

  • .NET SDK 10.0.302
  • PowerShell 7 and Task
  • typos for task check

Installation

git clone https://github.com/dreamingdog0529/SignalRouter.git
cd SignalRouter

(back to top)

Usage

The runtime is consumed through the kernel and adapter SDK assemblies (SignalRouter.Contracts, SignalRouter.Kernel, SignalRouter.AdapterSdk, the codec leaves, SignalRouter.Recording, SignalRouter.Replay, and SignalRouter.Tck). An engine adapter implements the adapter SDK seams and proves itself against the TCK — src/ReferenceAdapter is the working example. There is no released package yet; see docs/README.md for the architecture and docs/spec/guarantees.md for the guarantee catalog.

(back to top)

Development

Run the supported wrappers from the repository root:

task build
task test
task check

Every runtime assembly builds as C# 9 and netstandard2.1 with zero package dependencies; warnings fail the build. See docs/development.md for the exact toolchain and compatibility boundary.

How to contribute: CONTRIBUTING.md

(back to top)

Roadmap

See the open issues and ROADMAP.md for planned features and known issues.

(back to top)

Contributing

Contributions are welcome. Please read CONTRIBUTING.md for the workflow (Conventional Commits, DCO sign-off, PR process) and our Code of Conduct.

Thanks to everyone who has contributed to SignalRouter. This list is updated automatically from git history.

dreamingdog0529
dreamingdog0529
wanx2land
WanwanLand

(back to top)

Project Docs

Repository automation and community files are adapted from container-registry/oss-project-template.

Document Purpose
docs/README.md The design-document map: philosophy, architecture, and the spec set
guarantees.md The normative guarantee catalog (evidence, outcomes, failure matrix)
development.md Current development status and tooling
CONTRIBUTING.md Develop, test, PRs, DCO, CI/CD, releases
SUPPORT.md How to get help
ROADMAP.md Direction and how to propose work
CODE_OF_CONDUCT.md Community standards
SECURITY.md Private vulnerability reporting
CODEOWNERS Default code review owners
CHANGELOG.md Release history
LICENSE MIT license text

(back to top)

License

Distributed under the MIT License. See LICENSE for more information.

MIT © 2026 dreamingdog0529

(back to top)

Acknowledgments

(back to top)

About

Simulate and replay UI operations as structured commands for reproducible debugging and screenshot-free MCP agent control (Pure C# + Unity).

Resources

Code of conduct

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages