Not in the top 1,000 by GitHub stars
quailyquaily/aqua
Aqua, a cli message tool for AI agents
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
610f889f46d8 → 610f889f46d8
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 610f889f46d8
No earlier version was observed for comparison.
Verified commit 610f889f46d8c0970ab618f3a34f36e1bacbc650
git clone --filter=blob:none --no-checkout https://github.com/quailyquaily/aqua.git .hotskills/quailyquaily-aqua && git -C .hotskills/quailyquaily-aqua checkout --detach 610f889f46d8c0970ab618f3a34f36e1bacbc650
# Copy each selected skill directory from .hotskills/quailyquaily-aqua into .agents/skills/<skill-name>/Heat
0.3- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
How it works
aqua-communication
When your agent uses it
Aqua is a CLI-first message tool for AI agents. Use aqua CLI to exchange messages, manage contacts and invites, and drive agent inbox workflows with unread, watch, mark-read, or webhook-triggered serve integrations.
What it loads into context
Frontmatter
53 tokensAlways available to the agent
SKILL.md
5,011 tokensWhen the skill is activated
Reference documents
25,426 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Goal
- Identity Syntax
- Defaults
- Install Aqua CLI:
- Quick Start with Official Relay Node (Recommended)
- Quick Start with Direct communication (for peers in the same network or with public addresses)
- Sending Message Operations
- Group Operations
- Check inbox and outbox
- JSON Mode (Agent-Friendly)
- Agent Mailbox Patterns
- Webhook-Driven Agent Integration
- Contacts Management
- Troubleshooting Checklist
- Common Connection Errors and Causes
- Trust Practice
Scripts executed separately
aqua/contact_card.goaqua/contact_card_test.goaqua/contact_request.goaqua/contact_request_test.goaqua/errors.goaqua/file_store.goaqua/file_store_test.goaqua/group_control.goaqua/group_control_test.goaqua/group_types.goaqua/identity.goaqua/jsonprofile.goaqua/jsonprofile_test.goaqua/node.goaqua/node_addr_test.goaqua/node_card_test.goaqua/node_connect_test.goaqua/node_host_test.goaqua/node_ingress_test.goaqua/node_rate_limit_test.goaqua/node_relay_test.goaqua/node_retry_test.goaqua/node_session_test.goaqua/rpc.goaqua/rpc_test.goaqua/service.goaqua/service_contact_test.goaqua/service_group.goaqua/service_group_test.goaqua/service_identity_test.goaqua/service_inbox_test.goaqua/store.goaqua/topic.goaqua/types.gocmd/aqua/behavior_test.gocmd/aqua/capabilities.gocmd/aqua/card.gocmd/aqua/contacts.gocmd/aqua/contacts_cli_test.gocmd/aqua/group.gocmd/aqua/group_cli_test.gocmd/aqua/hello.gocmd/aqua/helpers.gocmd/aqua/id.gocmd/aqua/inbox.gocmd/aqua/init.gocmd/aqua/logging_test.gocmd/aqua/main.gocmd/aqua/main_cli_test.gocmd/aqua/main_session_test.gocmd/aqua/outbox.gocmd/aqua/output.gocmd/aqua/ping.gocmd/aqua/relay.gocmd/aqua/relay_peers.gocmd/aqua/relay_peers_test.gocmd/aqua/relay_status_http.gocmd/aqua/relay_status_http_test.gocmd/aqua/relay_test.gocmd/aqua/root.gocmd/aqua/send.gocmd/aqua/serve.gocmd/aqua/serve_test.gocmd/aqua/version.gocmd/aqua/web_console.gocmd/aqua/web_console_test.gocmd/aqua/webhook.gocmd/aqua/webhook_test.goenv.example.shinternal/fsstore/atomic.gointernal/fsstore/errors.gointernal/fsstore/fsstore_test.gointernal/fsstore/json.gointernal/fsstore/jsonl.gointernal/fsstore/lock.gointernal/fsstore/lock_test.gointernal/fsstore/lock_unix.gointernal/fsstore/lock_windows.gointernal/fsstore/options.gointernal/fsstore/paths.gointernal/fsstore/text.goscripts/install.shweb/package.jsonweb/src/api.tsweb/src/env.d.tsweb/src/main.tsweb/src/stores/console.tsweb/src/types.tsweb/src/utils/messages.tsweb/vite.config.ts
Files
.github/workflows/release.ymlasset1,263 bytes.gitignoreasset18 bytes.goreleaser.yamlasset800 bytesAGENTS.mddoc2,389 bytesLICENSEasset11,357 bytesREADME.mddoc11,727 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesSKILL.mdcore18,662 bytesaqua/contact_card.goruns11,292 bytesaqua/contact_card_test.goruns4,483 bytesaqua/contact_request.goruns24,724 bytesaqua/contact_request_test.goruns11,068 bytesaqua/errors.goruns2,521 bytesaqua/file_store.goruns40,344 bytesaqua/file_store_test.goruns11,454 bytesaqua/group_control.goruns9,495 bytesaqua/group_control_test.goruns9,433 bytesaqua/group_types.goruns3,139 bytesaqua/identity.goruns3,780 bytesaqua/jsonprofile.goruns3,944 bytesaqua/jsonprofile_test.goruns692 bytesaqua/node.goruns68,211 bytesaqua/node_addr_test.goruns2,561 bytesaqua/node_card_test.goruns4,392 bytesaqua/node_connect_test.goruns3,075 bytesaqua/node_host_test.goruns1,216 bytesaqua/node_ingress_test.goruns2,411 bytesaqua/node_rate_limit_test.goruns687 bytesaqua/node_relay_test.goruns13,470 bytesaqua/node_retry_test.goruns632 bytesaqua/node_session_test.goruns1,672 bytesaqua/rpc.goruns6,953 bytesaqua/rpc_test.goruns1,722 bytesaqua/service.goruns8,423 bytesaqua/service_contact_test.goruns3,335 bytesaqua/service_group.goruns21,212 bytesaqua/service_group_test.goruns9,044 bytesaqua/service_identity_test.goruns2,770 bytesaqua/service_inbox_test.goruns1,317 bytesaqua/store.goruns2,144 bytesaqua/topic.goruns436 bytesaqua/types.goruns7,144 bytescmd/aqua/behavior_test.goruns19,744 bytescmd/aqua/capabilities.goruns1,282 bytescmd/aqua/card.goruns2,588 bytescmd/aqua/contacts.goruns21,121 bytescmd/aqua/contacts_cli_test.goruns6,553 bytescmd/aqua/group.goruns21,410 bytescmd/aqua/group_cli_test.goruns10,845 bytescmd/aqua/hello.goruns1,152 bytescmd/aqua/helpers.goruns20,112 bytescmd/aqua/id.goruns1,895 bytescmd/aqua/inbox.goruns9,242 bytescmd/aqua/init.goruns1,187 bytescmd/aqua/logging_test.goruns1,593 bytescmd/aqua/main.goruns171 bytescmd/aqua/main_cli_test.goruns5,125 bytescmd/aqua/main_session_test.goruns1,637 bytescmd/aqua/outbox.goruns1,251 bytescmd/aqua/output.goruns8,238 bytescmd/aqua/ping.goruns1,015 bytescmd/aqua/relay.goruns12,330 bytescmd/aqua/relay_peers.goruns5,732 bytescmd/aqua/relay_peers_test.goruns6,296 bytescmd/aqua/relay_status_http.goruns20,728 bytescmd/aqua/relay_status_http_test.goruns13,861 bytescmd/aqua/relay_test.goruns6,087 bytescmd/aqua/root.goruns905 bytescmd/aqua/send.goruns4,530 bytescmd/aqua/serve.goruns10,003 bytescmd/aqua/serve_test.goruns1,124 bytescmd/aqua/version.goruns753 bytescmd/aqua/web_console.goruns41,746 bytescmd/aqua/web_console_test.goruns4,153 bytescmd/aqua/webhook.goruns6,724 bytescmd/aqua/webhook_test.goruns6,680 bytesdocs/20260222_cli.mddoc6,210 bytesdocs/20260222_refactor.mddoc7,000 bytesdocs/20260223_fslock_imp.mddoc5,874 bytesdocs/20260224_group_e2ee.mddoc11,273 bytesdocs/architecture.mddoc1,889 bytesdocs/cli.mddoc20,277 bytesdocs/protocol.mddoc3,923 bytesdocs/relay.mddoc4,091 bytesdocs/web_gui.mddoc23,165 bytesenv.example.shruns419 bytesgo.modasset4,524 bytesgo.sumasset42,053 bytesinternal/fsstore/atomic.goruns1,849 bytesinternal/fsstore/errors.goruns415 bytesinternal/fsstore/fsstore_test.goruns4,453 bytesinternal/fsstore/json.goruns1,916 bytesinternal/fsstore/jsonl.goruns3,451 bytesinternal/fsstore/lock.goruns2,476 bytesinternal/fsstore/lock_test.goruns550 bytesinternal/fsstore/lock_unix.goruns910 bytesinternal/fsstore/lock_windows.goruns619 bytesinternal/fsstore/options.goruns985 bytesinternal/fsstore/paths.goruns260 bytesinternal/fsstore/text.goruns641 bytesscripts/install.shruns3,074 bytesweb/index.htmlasset303 bytesweb/package.jsonruns456 bytesweb/pnpm-lock.yamlasset41,153 bytesweb/src/App.vueasset2,462 bytesweb/src/api.tsruns1,777 bytesweb/src/components/ErrorBanner.vueasset655 bytesweb/src/components/SidebarNav.vueasset4,339 bytesweb/src/env.d.tsruns189 bytesweb/src/main.tsruns304 bytesweb/src/pages/ContactsPage.vueasset9,037 bytesweb/src/pages/MessagesPage.vueasset21,879 bytesweb/src/pages/NodePage.vueasset7,213 bytesweb/src/stores/console.tsruns9,658 bytesweb/src/style.cssasset5,775 bytesweb/src/types.tsruns3,109 bytesweb/src/utils/messages.tsruns8,562 bytesweb/tsconfig.jsonasset418 bytesweb/vite.config.tsruns181 bytes
Read SKILL.md
# Aqua Communication Skill
## Goal
Use `aqua` to establish trusted peer communication and exchange messages reliably between other agents.
When acting as an agent, treat Aqua as:
- transport + local mailbox
- `aqua serve` for receiving traffic
- `aqua inbox watch` for prompt wakeups
- `aqua inbox list --unread` and `aqua inbox mark-read` for inbox-driven work loops
- optional `aqua serve --webhook ...` when your runtime can supervise a long-lived daemon and prefers HTTP wakeups
View the complete source on GitHubSkills included
- aqua-communication
Repository facts
- License
- Apache-2.0
- Created
- Feb 21, 2026
- Last pushed
- Mar 24, 2026
- Forks
- 16
- Open issues
- 0
- Project activity
- Slowing
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 5, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 43 notes
SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzed
- No broad tool permissions
- 6 dangerous shell commandsin 3 files: README.md:28 SKILL.md:38 scripts/install.sh:73
- 56 network referencesin 13 files: scripts/install.sh:12 cmd/aqua/webhook_test.go:24 README.md:5 and 10 more
- 1 obfuscation signalin 1 file: web/src/utils/messages.ts:31
- No instruction overrides
- 90 executable scriptsin 90 files: aqua/contact_card.go:1 aqua/contact_card_test.go:1 aqua/contact_request.go:1 and 87 more
- 1 reference to secretsin 1 file: cmd/aqua/webhook.go:25
- No requests to vote in Hot
Show all 154 signals by file
LICENSE
README.md
- Network accessline 5
Aqua is short for **AQUA Queries & Unifies Agents**. It's a protocol, a CLI, comes from [`mistermorph`](https://mistermorph.com). - Dangerous shell operationline 28
curl -fsSL -o /tmp/install.sh https://raw.githubusercontent.com/quailyquaily/aqua/refs/heads/master/scripts/install.sh; sudo bash /tmp/install.sh - Network accessline 28
curl -fsSL -o /tmp/install.sh https://raw.githubusercontent.com/quailyquaily/aqua/refs/heads/master/scripts/install.sh; \ - Dangerous shell operationline 29
sudo bash /tmp/install.sh - Network accessline 85
aqua serve --webhook https://example.com/hooks/aqua - Network accessline 168
| `listen relay admin socket "...": ...` | Unix socket creation failed (permissions, parent dir, path conflict). | | `request relay peers from unix socket <path>: ...` | `aqua relay peers` cannot connect to the relay admin socket (relay not - Network accessline 170
| `relay peers endpoint http://relay-admin/peers returned ...` | Admin endpoint returned non-200, usually service-side failure. | - Network accessline 214
[](https://www.star-history.com/#quailyquaily/aqua&type=date&legend=top-left)
SKILL.md
- Dangerous shell operationline 38
curl -fsSL -o /tmp/install.sh https://raw.githubusercontent.com/quailyquaily/aqua/refs/heads/master/scripts/install.sh; sudo bash /tmp/install.sh - Network accessline 38
curl -fsSL -o /tmp/install.sh https://raw.githubusercontent.com/quailyquaily/aqua/refs/heads/master/scripts/install.sh; \ - Dangerous shell operationline 39
sudo bash /tmp/install.sh - Network accessline 289
aqua serve --webhook https://agent-runtime.example/hooks/aqua - Network accessline 316
nohup aqua serve --relay-mode auto --relay /dns4/aqua-relay.mistermorph.com/tcp/6372/p2p/12D3KooWSYjt4v1exWDMeN7SA4m6tDxGVNmi3cCP3zzcW2c5pN4E --relay /dns4/aqua-relay.mistermorph.com/udp/6372/quic-v1/p2p/12D3KooWSYjt4v1exWDMeN7SA4m6tD - Network accessline 317
--relay /dns4/aqua-relay.mistermorph.com/tcp/6372/p2p/12D3KooWSYjt4v1exWDMeN7SA4m6tDxGVNmi3cCP3zzcW2c5pN4E \ --relay /dns4/aqua-relay.mistermorph.com/udp/6372/quic-v1/p2p/12D3KooWSYjt4v1exWDMeN7SA4m6tDxGVNmi3cCP3zzcW2c5pN4E \ --webhook - Network accessline 319
--webhook https://agent-runtime.example/hooks/aqua >/tmp/aqua-serve.log 2>&1 &
aqua/contact_card.go
- Executable scriptline 1
Executable file
aqua/contact_card_test.go
- Executable scriptline 1
Executable file
aqua/contact_request.go
- Executable scriptline 1
Executable file
aqua/contact_request_test.go
- Executable scriptline 1
Executable file
aqua/errors.go
- Executable scriptline 1
Executable file
aqua/file_store.go
- Executable scriptline 1
Executable file
aqua/file_store_test.go
- Executable scriptline 1
Executable file
aqua/group_control.go
- Executable scriptline 1
Executable file
aqua/group_control_test.go
- Executable scriptline 1
Executable file
aqua/group_types.go
- Executable scriptline 1
Executable file
aqua/identity.go
- Executable scriptline 1
Executable file
aqua/jsonprofile.go
- Executable scriptline 1
Executable file
aqua/jsonprofile_test.go
- Executable scriptline 1
Executable file
aqua/node.go
- Executable scriptline 1
Executable file
aqua/node_addr_test.go
- Executable scriptline 1
Executable file
aqua/node_card_test.go
- Executable scriptline 1
Executable file
aqua/node_connect_test.go
- Executable scriptline 1
Executable file
aqua/node_host_test.go
- Executable scriptline 1
Executable file
aqua/node_ingress_test.go
- Executable scriptline 1
Executable file
aqua/node_rate_limit_test.go
- Executable scriptline 1
Executable file
aqua/node_relay_test.go
- Executable scriptline 1
Executable file
aqua/node_retry_test.go
- Executable scriptline 1
Executable file
aqua/node_session_test.go
- Executable scriptline 1
Executable file
aqua/rpc.go
- Executable scriptline 1
Executable file
aqua/rpc_test.go
- Executable scriptline 1
Executable file
aqua/service.go
- Executable scriptline 1
Executable file
aqua/service_contact_test.go
- Executable scriptline 1
Executable file
aqua/service_group.go
- Executable scriptline 1
Executable file
aqua/service_group_test.go
- Executable scriptline 1
Executable file
aqua/service_identity_test.go
- Executable scriptline 1
Executable file
aqua/service_inbox_test.go
- Executable scriptline 1
Executable file
aqua/store.go
- Executable scriptline 1
Executable file
aqua/topic.go
- Executable scriptline 1
Executable file
aqua/types.go
- Executable scriptline 1
Executable file
cmd/aqua/behavior_test.go
cmd/aqua/capabilities.go
- Executable scriptline 1
Executable file
cmd/aqua/card.go
- Executable scriptline 1
Executable file
cmd/aqua/contacts.go
- Executable scriptline 1
Executable file
cmd/aqua/contacts_cli_test.go
- Executable scriptline 1
Executable file
cmd/aqua/group.go
- Executable scriptline 1
Executable file
cmd/aqua/group_cli_test.go
- Executable scriptline 1
Executable file
cmd/aqua/hello.go
- Executable scriptline 1
Executable file
cmd/aqua/helpers.go
- Executable scriptline 1
Executable file
cmd/aqua/id.go
- Executable scriptline 1
Executable file
cmd/aqua/inbox.go
- Executable scriptline 1
Executable file
cmd/aqua/init.go
- Executable scriptline 1
Executable file
cmd/aqua/logging_test.go
- Executable scriptline 1
Executable file
cmd/aqua/main.go
- Executable scriptline 1
Executable file
cmd/aqua/main_cli_test.go
- Executable scriptline 1
Executable file
cmd/aqua/main_session_test.go
- Executable scriptline 1
Executable file
cmd/aqua/outbox.go
- Executable scriptline 1
Executable file
cmd/aqua/output.go
- Executable scriptline 1
Executable file
cmd/aqua/ping.go
- Executable scriptline 1
Executable file
cmd/aqua/relay.go
- Executable scriptline 1
Executable file
cmd/aqua/relay_peers.go
- Executable scriptline 1
Executable file - Network accessline 59
}, } client := &http.Client{Timeout: timeout, Transport: transport} - Network accessline 60
} client := &http.Client{Timeout: timeout, Transport: transport} defer transport.CloseIdleConnections() - Network accessline 61
client := &http.Client{Timeout: timeout, Transport: transport} - Network accessline 64
requestURL := "http://relay-admin/peers"
cmd/aqua/relay_peers_test.go
- Executable scriptline 1
Executable file
cmd/aqua/relay_status_http.go
- Executable scriptline 1
Executable file
cmd/aqua/relay_status_http_test.go
- Executable scriptline 1
Executable file
cmd/aqua/relay_test.go
- Executable scriptline 1
Executable file
cmd/aqua/root.go
- Executable scriptline 1
Executable file
cmd/aqua/send.go
- Executable scriptline 1
Executable file
cmd/aqua/serve.go
- Executable scriptline 1
Executable file - Network accessline 206
} if webConsole { _, _ = fmt.Fprintf(cmd.OutOrStdout(), "web_console: http://%s\n", consoleAddr) - Network accessline 207
if webConsole { _, _ = fmt.Fprintf(cmd.OutOrStdout(), "web_console: http://%s\n", consoleAddr) _, _ = fmt.Fprintf(cmd.OutOrStdout(), "console_web_dst_dir: %s\n", expandHomePath(consoleWebDstDir)) - Network accessline 208
_, _ = fmt.Fprintf(cmd.OutOrStdout(), "web_console: http://%s\n", consoleAddr)
cmd/aqua/serve_test.go
- Executable scriptline 1
Executable file
cmd/aqua/version.go
- Executable scriptline 1
Executable file
cmd/aqua/web_console.go
- Executable scriptline 1
Executable file
cmd/aqua/web_console_test.go
- Executable scriptline 1
Executable file - Network accessline 134
req := httptest.NewRequest(http.MethodOptions, "/api/console/v1/contacts", nil) req.Header.Set("Origin", "http://127.0.0.1:3000") - Network accessline 135
req.Header.Set("Origin", "http://127.0.0.1:3000") - Network accessline 141
t.Fatalf("status = %d, want %d", rec.Code, http.StatusNoContent) } if got := rec.Header().Get("Access-Control-Allow-Origin"); got != "http://127.0.0.1:3000" { - Network accessline 142
} if got := rec.Header().Get("Access-Control-Allow-Origin"); got != "http://127.0.0.1:3000" { t.Fatalf("allow origin = %q, want %q", got, "http://127.0.0.1:3000") - Network accessline 143
if got := rec.Header().Get("Access-Control-Allow-Origin"); got != "http://127.0.0.1:3000" { - Network accessline 144
t.Fatalf("allow origin = %q, want %q", got, "http://127.0.0.1:3000")
cmd/aqua/webhook.go
- Executable scriptline 1
Executable file - Access to secretsline 25
[Credential-related source omitted] - Network accessline 39
bearerToken string logger *slog.Logger client *http.Client - Network accessline 40
logger *slog.Logger client *http.Client retryInitialBackoff time.Duration - Network accessline 41
client *http.Client - Network accessline 90
bearerToken: strings.TrimSpace(bearerToken), logger: logger, client: &http.Client{Timeout: webhookDispatchTimeout}, - Network accessline 91
logger: logger, client: &http.Client{Timeout: webhookDispatchTimeout}, retryInitialBackoff: webhookRetryInitialBackoff, - Network accessline 92
client: &http.Client{Timeout: webhookDispatchTimeout},
cmd/aqua/webhook_test.go
- Executable scriptline 1
Executable file - Network accessline 24
}{ {name: "empty", value: "", want: ""}, {name: "https", value: "https://example.com/hooks/aqua", want: "https://example.com/hooks/aqua"}, - Network accessline 25
{name: "empty", value: "", want: ""}, {name: "https", value: "https://example.com/hooks/aqua", want: "https://example.com/hooks/aqua"}, {name: "http", value: "http://127.0.0.1:8080/inbox", want: "http://127.0.0.1:8080/inbox"}, - Network accessline 26
{name: "https", value: "https://example.com/hooks/aqua", want: "https://example.com/hooks/aqua"}, - Network accessline 27
{name: "http", value: "http://127.0.0.1:8080/inbox", want: "http://127.0.0.1:8080/inbox"}, - Network accessline 28
{name: "missing scheme", value: "example.com/hooks", wantErr: true}, {name: "unsupported scheme", value: "ftp://example.com/hooks", wantErr: true}, {name: "missing host", value: "https:///hooks", wantErr: true}, - Network accessline 29
{name: "unsupported scheme", value: "ftp://example.com/hooks", wantErr: true}, {name: "missing host", value: "https:///hooks", wantErr: true}, } - Network accessline 30
{name: "missing host", value: "https:///hooks", wantErr: true},
docs/web_gui.md
env.example.sh
internal/fsstore/atomic.go
- Executable scriptline 1
Executable file
internal/fsstore/errors.go
- Executable scriptline 1
Executable file
internal/fsstore/fsstore_test.go
- Executable scriptline 1
Executable file
internal/fsstore/json.go
- Executable scriptline 1
Executable file
internal/fsstore/jsonl.go
- Executable scriptline 1
Executable file
internal/fsstore/lock.go
- Executable scriptline 1
Executable file
internal/fsstore/lock_test.go
- Executable scriptline 1
Executable file
internal/fsstore/lock_unix.go
- Executable scriptline 1
Executable file
internal/fsstore/lock_windows.go
- Executable scriptline 1
Executable file
internal/fsstore/options.go
- Executable scriptline 1
Executable file
internal/fsstore/paths.go
- Executable scriptline 1
Executable file
internal/fsstore/text.go
- Executable scriptline 1
Executable file
scripts/install.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 12
resolve_latest_version_tag() { local latest_url effective_url tag latest_url="https://github.com/${REPO}/releases/latest" - Network accessline 13
local latest_url effective_url tag latest_url="https://github.com/${REPO}/releases/latest" effective_url="$(curl -fsSL -o /dev/null -w '%{url_effective}' "${latest_url}")" || return 1 - Network accessline 14
latest_url="https://github.com/${REPO}/releases/latest" effective_url="$(curl -fsSL -o /dev/null -w '%{url_effective}' "${latest_url}")" || return 1 tag="${effective_url##*/}" - Network accessline 15
effective_url="$(curl -fsSL -o /dev/null -w '%{url_effective}' "${latest_url}")" || return 1 - Dangerous shell operationline 73
trap 'rm -rf "${TMP_DIR}"' EXIT - Network accessline 82
ARCHIVE="${TMP_DIR}/aqua.${ARCHIVE_EXT}" URL="https://github.com/${REPO}/releases/download/${VERSION_TAG}/aqua_${ASSET_VERSION}_${OS}_${ARCH}.${ARCHIVE_EXT}" - Network accessline 83
URL="https://github.com/${REPO}/releases/download/${VERSION_TAG}/aqua_${ASSET_VERSION}_${OS}_${ARCH}.${ARCHIVE_EXT}" - Network accessline 85
echo "Downloading ${URL}" - Network accessline 86
curl -fL "${URL}" -o "${ARCHIVE}" - Dangerous shell operationline 116
sudo install -m 0755 "${BIN_SRC}" "${DEST_BIN}"
web/package.json
- Executable scriptline 1
Executable file
web/src/api.ts
web/src/env.d.ts
- Executable scriptline 1
Executable file
web/src/main.ts
- Executable scriptline 1
Executable file
web/src/stores/console.ts
- Executable scriptline 1
Executable file
web/src/types.ts
- Executable scriptline 1
Executable file
web/src/utils/messages.ts
web/vite.config.ts
- Executable scriptline 1
Executable file
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Signal confidence: 151 facts
- Network access in prose of documentationREADME.md:5Low confidence
- Dangerous shell operation in code of documentationREADME.md:28Low confidence
- Network access in code of documentationREADME.md:28Low confidence
- Dangerous shell operation in code of documentationREADME.md:29Low confidence
- Network access in code of documentationREADME.md:85Low confidence
- Network access in prose of documentationREADME.md:168Low confidence
- Network access in prose of documentationREADME.md:170Low confidence
- Network access in prose of documentationREADME.md:214Low confidence
- Dangerous shell operation in code of the SKILL.mdSKILL.md:38High confidence
- Network access in code of the SKILL.mdSKILL.md:38High confidence
- Dangerous shell operation in code of the SKILL.mdSKILL.md:39High confidence
- Network access in code of the SKILL.mdSKILL.md:289High confidence
- Network access in code of the SKILL.mdSKILL.md:316High confidence
- Network access in code of the SKILL.mdSKILL.md:317High confidence
- Network access in code of the SKILL.mdSKILL.md:319High confidence
- Executable script in code of a file that runsaqua/contact_card.go:1High confidence
- Executable script in code of a testaqua/contact_card_test.go:1Low confidence
- Executable script in code of a file that runsaqua/contact_request.go:1High confidence
- Executable script in code of a testaqua/contact_request_test.go:1Low confidence
- Executable script in code of a file that runsaqua/errors.go:1High confidence
- Executable script in code of a file that runsaqua/file_store.go:1High confidence
- Executable script in code of a testaqua/file_store_test.go:1Low confidence
- Executable script in code of a file that runsaqua/group_control.go:1High confidence
- Executable script in code of a testaqua/group_control_test.go:1Low confidence
- Executable script in code of a file that runsaqua/group_types.go:1High confidence
- Executable script in code of a file that runsaqua/identity.go:1High confidence
- Executable script in code of a file that runsaqua/jsonprofile.go:1High confidence
- Executable script in code of a testaqua/jsonprofile_test.go:1Low confidence
- Executable script in code of a file that runsaqua/node.go:1High confidence
- Executable script in code of a testaqua/node_addr_test.go:1Low confidence
- Executable script in code of a testaqua/node_card_test.go:1Low confidence
- Executable script in code of a testaqua/node_connect_test.go:1Low confidence
- Executable script in code of a testaqua/node_host_test.go:1Low confidence
- Executable script in code of a testaqua/node_ingress_test.go:1Low confidence
- Executable script in code of a testaqua/node_rate_limit_test.go:1Low confidence
- Executable script in code of a testaqua/node_relay_test.go:1Low confidence
- Executable script in code of a testaqua/node_retry_test.go:1Low confidence
- Executable script in code of a testaqua/node_session_test.go:1Low confidence
- Executable script in code of a file that runsaqua/rpc.go:1High confidence
- Executable script in code of a testaqua/rpc_test.go:1Low confidence
- Executable script in code of a file that runsaqua/service.go:1High confidence
- Executable script in code of a testaqua/service_contact_test.go:1Low confidence
- Executable script in code of a file that runsaqua/service_group.go:1High confidence
- Executable script in code of a testaqua/service_group_test.go:1Low confidence
- Executable script in code of a testaqua/service_identity_test.go:1Low confidence
- Executable script in code of a testaqua/service_inbox_test.go:1Low confidence
- Executable script in code of a file that runsaqua/store.go:1High confidence
- Executable script in code of a file that runsaqua/topic.go:1High confidence
- Executable script in code of a file that runsaqua/types.go:1High confidence
- Executable script in code of a testcmd/aqua/behavior_test.go:1Low confidence
and 101 more
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Native | Manifest AGENTS.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.