Michael Mikovsky
56abb5e1e0
Big rewrite.
2026-05-16 13:10:51 -06:00
Michael Mikovsky
a61c0ce72d
Add runtime API redesign scaffold
2026-05-09 12:45:14 -06:00
Michael Mikovsky
71b311065d
Add crossbeam channel router leaf example
2026-04-29 22:14:04 -06:00
Michael Mikovsky
990be30232
unshell-macros is now a workspace dependency
2026-04-26 13:02:53 -06:00
Michael Mikovsky
4f8835bd25
Fix examples for renamed leaf endpoint surface
...
Update the remote shell examples to use unshell::leaves and the leaf_endpoint feature-gated endpoint module, and restore the local macro aliasing needed after removing the direct unshell dependency from unshell-leaves.
2026-04-26 12:57:56 -06:00
Michael Mikovsky
d4100d0604
Split protocol and leaf surfaces into crates
...
Move the protocol runtime into unshell-protocol and remote shell leaf code into unshell-leaves so endpoint and TUI roles can compile independently without circular dependencies.
2026-04-26 12:39:06 -06:00
Michael Mikovsky
2b753685ca
Document examples and add local remote shell endpoint demo
2026-04-26 11:25:46 -06:00
Michael Mikovsky
17be0f9daa
Improve protocol documentation and runtime structure
2026-04-26 01:53:37 -06:00
Michael Mikovsky
7bea3e2b6b
Add procedure-scoped stateful leaves
2026-04-25 17:42:39 -06:00
Michael Mikovsky
5e9b49a4d9
Split remote shell leaf module
2026-04-25 16:27:10 -06:00
Michael Mikovsky
396c707662
Reorganize protocol examples
2026-04-25 14:46:59 -06:00
Michael Mikovsky
b1ebe34ec1
Add derive-based protocol leaf declarations
2026-04-25 14:41:00 -06:00
Michael Mikovsky
3e764610eb
Formatting changes.
2026-04-25 13:43:19 -06:00
Michael Mikovsky
792eb28457
Add back minimize profile
2026-04-25 11:36:10 -06:00
Michael Mikovsky
2b633ce019
add treetest protocol simulator and ui
2026-04-24 16:19:42 -06:00
Michael Mikovsky
3f1116c26a
Improve protocol implementation.
2026-04-24 14:10:03 -06:00
Michael Mikovsky
49901b6370
Reorganize protocol.
2026-04-24 13:37:30 -06:00
Michael Mikovsky
dcf0fe230b
Work on implementing the protocol.
2026-04-24 12:32:24 -06:00
Michael Mikovsky
d0ca53f5c7
Working network test
2026-04-22 13:12:25 -06:00
Michael Mikovsky
fcb3b2be17
feat: complete protocol spec and initial implementation
...
- Write PROTOCOL.md with full wire format spec and 8 real-world scenario
analyses (reconnect, multi-operator, large files, AV evasion, router crash,
malformed packets, future pivoting)
- Rewrite workspace structure:
- unshell lib: protocol types (PacketHeader, TreeRequest/Response,
HandshakeMessage/Ack), Transport trait, TcpTransport, Tree routing
- ush-router: router binary with per-node threads, NodeRegistry with
longest-prefix path matching, packet relay
- ush-payload: implant binary with reconnect loop, module tree, InfoModule
- ush-cli: operator REPL with rustyline, session management, command parser
- Protocol design: two-part rkyv frame [header][payload]; router reads only
header for routing, payload bytes forwarded opaque
- All code documented with doc comments and examples
- Zero warnings, zero errors across entire workspace
- 32 tests pass (unit tests for tree routing, TCP transport, framing,
command parsing, node registry)
2026-04-20 23:38:02 -06:00
Michael Mikovsky
f3a59f5082
Convert to no_std, add request type
2026-03-17 16:40:05 -06:00
Michael Mikovsky
07e3f83bcf
Put logging time behind log_debug
2026-03-04 10:00:06 -07:00
Michael Mikovsky
5a60f3f503
Obfuscation macros are now defined more easily
2026-02-20 15:47:58 -07:00
Michael Mikovsky
ba1772e512
Make base62 project independent, more concise macro definitions.
2026-02-20 14:54:12 -07:00
Michael Mikovsky
6c6625e9ad
Make the log macro's definition more consise
2026-02-20 14:34:32 -07:00
Michael Mikovsky
219c7254fb
Remove old code
2026-02-20 14:13:41 -07:00
Michael Mikovsky
2a18639d84
Rename things to ush for brevity. Add Tree system.
2026-02-09 10:27:15 -07:00
Michael Mikovsky
ebeaa29d5b
Remove unshell_crypt, and change some of the naming to make it more accurate
2026-02-08 12:56:52 -07:00
Michael Mikovsky
fc625e89d2
Start reworking the manager system
2026-02-04 22:19:16 -07:00
Michael Mikovsky
82d8e1ba10
Work on custom binaries
2026-01-30 14:05:07 -07:00
Michael Mikovsky
b2fe85a698
Get the GUI to build again
2026-01-30 11:01:21 -07:00
Michael Mikovsky
a4411d378f
Fix unshell_obfuscate error. remove default encryption key error when there isn't any encryption
2026-01-27 15:37:19 -07:00
Michael Mikovsky
2edb4f3187
Clean up some package stuff
2026-01-27 15:12:20 -07:00
Michael Mikovsky
2aa61e80eb
Make unshell-obfuscate into a re-export
2026-01-26 09:47:40 -07:00
Michael Mikovsky
5d6d746985
Move everything into workspace
2026-01-26 09:13:46 -07:00