Expand AGENTS.md with current repo and reporting rules
This commit is contained in:
60
docs/agent/ARCHITECTURE-NOTES.md
Normal file
60
docs/agent/ARCHITECTURE-NOTES.md
Normal file
@@ -0,0 +1,60 @@
|
||||
# ProxyWarden Architecture Notes for Agents
|
||||
|
||||
## Current design
|
||||
|
||||
ProxyWarden is a local Windows control app. It does not proxy traffic by itself. It orchestrates:
|
||||
|
||||
1. ProxiFyre for per-app routing.
|
||||
2. Optional local sing-box for subscription-based outbound routing.
|
||||
3. External SOCKS5 target for direct proxy routing.
|
||||
|
||||
## Route modes
|
||||
|
||||
External SOCKS5:
|
||||
|
||||
```text
|
||||
selected Windows apps -> ProxiFyre -> external SOCKS5
|
||||
```
|
||||
|
||||
Local sing-box:
|
||||
|
||||
```text
|
||||
selected Windows apps -> ProxiFyre -> 127.0.0.1:1080 -> sing-box selected outbound
|
||||
```
|
||||
|
||||
## Main risks
|
||||
|
||||
- Large orchestration files: `commands.rs` and `App.tsx`.
|
||||
- Security-sensitive elevated operations.
|
||||
- Secrets in subscription/proxy config.
|
||||
- Non-atomic writes to generated configs.
|
||||
- Stale component status.
|
||||
- Duplicate sing-box server tags.
|
||||
- UI/business logic entanglement.
|
||||
|
||||
## Desired direction
|
||||
|
||||
Backend:
|
||||
|
||||
- Thin Tauri command handlers.
|
||||
- Use-case modules.
|
||||
- Testable pure functions.
|
||||
- Structured errors.
|
||||
- Atomic writes and hardened temp/elevation handling.
|
||||
|
||||
Frontend:
|
||||
|
||||
- Smaller `App.tsx`.
|
||||
- Extracted hooks/components.
|
||||
- Typed API boundary.
|
||||
- Testable readiness/snapshot/proxy parsing logic.
|
||||
- Clear UX for pending changes and service state.
|
||||
|
||||
Security:
|
||||
|
||||
- CSP enabled.
|
||||
- Minimal Tauri capabilities.
|
||||
- No broad shell permission.
|
||||
- Redacted secrets.
|
||||
- Safe deletion.
|
||||
- Explicit Windows service control.
|
||||
Reference in New Issue
Block a user