agent-relay-server 0.4.4 → 0.4.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CONTRIBUTING.md +63 -0
- package/README.md +3 -0
- package/SECURITY.md +67 -0
- package/codex/plugin/.codex-plugin/plugin.json +1 -1
- package/package.json +4 -2
package/CONTRIBUTING.md
ADDED
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
# Contributing
|
|
2
|
+
|
|
3
|
+
Thanks for helping improve Agent Relay. This project is small infrastructure,
|
|
4
|
+
so the best contributions are focused, tested, and easy to reason about.
|
|
5
|
+
|
|
6
|
+
## Before You Start
|
|
7
|
+
|
|
8
|
+
- Open an issue before large features, protocol changes, persistence changes, or
|
|
9
|
+
UX rewrites.
|
|
10
|
+
- Keep pull requests narrow. One behavior change per PR is ideal.
|
|
11
|
+
- Security reports belong in private email, not public issues. See
|
|
12
|
+
[SECURITY.md](SECURITY.md).
|
|
13
|
+
|
|
14
|
+
## Development Setup
|
|
15
|
+
|
|
16
|
+
Agent Relay uses Bun and TypeScript.
|
|
17
|
+
|
|
18
|
+
```bash
|
|
19
|
+
git clone https://github.com/edimuj/agent-relay.git
|
|
20
|
+
cd agent-relay
|
|
21
|
+
bun install
|
|
22
|
+
bun run dev
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Useful checks:
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
bun run typecheck
|
|
29
|
+
bun test
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
The server defaults to `http://127.0.0.1:4850`.
|
|
33
|
+
|
|
34
|
+
## Project Shape
|
|
35
|
+
|
|
36
|
+
- `src/`: relay server, API routes, SQLite persistence, daemon/setup CLI.
|
|
37
|
+
- `public/`: dashboard markup and Alpine model.
|
|
38
|
+
- `claude/`: Claude Code plugin package.
|
|
39
|
+
- `codex/`: Codex launcher, hook, live sidecar, and plugin bundle.
|
|
40
|
+
- `examples/integrations/`: practical task/event connector examples.
|
|
41
|
+
|
|
42
|
+
## Pull Request Expectations
|
|
43
|
+
|
|
44
|
+
- Add or update tests for behavior changes.
|
|
45
|
+
- Preserve the local-first trust model: localhost by default, token required for
|
|
46
|
+
non-loopback binds, conservative daemon behavior.
|
|
47
|
+
- Avoid broad refactors unless they directly support the change.
|
|
48
|
+
- Do not introduce new runtime services unless the issue explicitly calls for it.
|
|
49
|
+
- Update README/API docs when user-facing behavior changes.
|
|
50
|
+
|
|
51
|
+
## Coding Style
|
|
52
|
+
|
|
53
|
+
- Prefer existing local patterns over new abstractions.
|
|
54
|
+
- Keep API validation explicit and boring.
|
|
55
|
+
- Use structured parsing for structured data; avoid ad hoc string parsing when a
|
|
56
|
+
standard API is available.
|
|
57
|
+
- Keep dashboard changes responsive on both desktop and mobile.
|
|
58
|
+
|
|
59
|
+
## Licensing
|
|
60
|
+
|
|
61
|
+
By contributing, you agree that your contribution is licensed under the project
|
|
62
|
+
license: AGPL-3.0-or-later.
|
|
63
|
+
|
package/README.md
CHANGED
|
@@ -538,6 +538,9 @@ codex/ # Codex integration
|
|
|
538
538
|
|
|
539
539
|
## Development
|
|
540
540
|
|
|
541
|
+
See [CONTRIBUTING.md](CONTRIBUTING.md) for contribution guidelines and
|
|
542
|
+
[SECURITY.md](SECURITY.md) for vulnerability reporting.
|
|
543
|
+
|
|
541
544
|
```bash
|
|
542
545
|
git clone https://github.com/edimuj/agent-relay.git
|
|
543
546
|
cd agent-relay
|
package/SECURITY.md
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
Agent Relay is local-first coordination infrastructure for trusted agents,
|
|
4
|
+
scripts, and tools. It is designed for localhost, VPN, or trusted LAN use. Do
|
|
5
|
+
not expose it directly to the public internet.
|
|
6
|
+
|
|
7
|
+
## Supported Versions
|
|
8
|
+
|
|
9
|
+
Security fixes are released on the latest published version.
|
|
10
|
+
|
|
11
|
+
| Version | Supported |
|
|
12
|
+
|---------|-----------|
|
|
13
|
+
| latest | Yes |
|
|
14
|
+
| older releases | Best effort |
|
|
15
|
+
|
|
16
|
+
## Reporting a Vulnerability
|
|
17
|
+
|
|
18
|
+
Please do not open a public GitHub issue for suspected vulnerabilities.
|
|
19
|
+
|
|
20
|
+
Report security issues by email:
|
|
21
|
+
|
|
22
|
+
```text
|
|
23
|
+
edin@exelerus.com
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Include as much detail as you can:
|
|
27
|
+
|
|
28
|
+
- Affected version and install method.
|
|
29
|
+
- Whether the relay was bound to localhost, VPN/LAN, or a public interface.
|
|
30
|
+
- Relevant environment variables, with secrets redacted.
|
|
31
|
+
- Reproduction steps or a proof of concept.
|
|
32
|
+
- Expected impact.
|
|
33
|
+
|
|
34
|
+
I will acknowledge valid reports as quickly as practical and coordinate a fix
|
|
35
|
+
before public disclosure.
|
|
36
|
+
|
|
37
|
+
## Security Model
|
|
38
|
+
|
|
39
|
+
Agent Relay assumes the operators and registered agents are trusted. It is not a
|
|
40
|
+
multi-tenant service boundary.
|
|
41
|
+
|
|
42
|
+
Important defaults and constraints:
|
|
43
|
+
|
|
44
|
+
- The server binds to `127.0.0.1` by default.
|
|
45
|
+
- Non-loopback binds require `AGENT_RELAY_TOKEN` unless
|
|
46
|
+
`AGENT_RELAY_ALLOW_UNAUTH=1` is explicitly set.
|
|
47
|
+
- Browser access is same-origin by default unless
|
|
48
|
+
`AGENT_RELAY_CORS_ORIGINS` is configured.
|
|
49
|
+
- The dashboard stores its token in browser `localStorage` for the relay origin.
|
|
50
|
+
- Agent messages, task data, and integration events are stored in local SQLite.
|
|
51
|
+
- TLS termination, reverse proxy hardening, and network ACLs are deployment
|
|
52
|
+
responsibilities.
|
|
53
|
+
|
|
54
|
+
Use a private network such as Tailscale, WireGuard, SSH tunnels, or localhost
|
|
55
|
+
port forwarding for remote access.
|
|
56
|
+
|
|
57
|
+
## Out of Scope
|
|
58
|
+
|
|
59
|
+
These are usually configuration or trust-model issues rather than project
|
|
60
|
+
vulnerabilities:
|
|
61
|
+
|
|
62
|
+
- A relay intentionally exposed to the public internet.
|
|
63
|
+
- A relay started with `AGENT_RELAY_ALLOW_UNAUTH=1` on an untrusted network.
|
|
64
|
+
- A leaked shared token after it has been stored in shell history, logs, browser
|
|
65
|
+
storage, or third-party tooling.
|
|
66
|
+
- Malicious behavior by an already trusted local agent or script.
|
|
67
|
+
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agent-relay-server",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.5",
|
|
4
4
|
"description": "Lightweight HTTP message relay for inter-agent communication across machines",
|
|
5
5
|
"module": "src/index.ts",
|
|
6
6
|
"type": "module",
|
|
@@ -19,7 +19,9 @@
|
|
|
19
19
|
"codex/plugin/**",
|
|
20
20
|
"examples/**",
|
|
21
21
|
"public/**",
|
|
22
|
-
"README.md"
|
|
22
|
+
"README.md",
|
|
23
|
+
"SECURITY.md",
|
|
24
|
+
"CONTRIBUTING.md"
|
|
23
25
|
],
|
|
24
26
|
"scripts": {
|
|
25
27
|
"start": "bun run src/index.ts",
|