Activity log
Every node keeps a record of what Dashcat did there: everything your AI asked for through the Dashcat connector or a bridge, how each request ended, and which bridges connected. It works the same on nodes nobody is watching. You don’t need to turn it on.
Reading it
Section titled “Reading it”On the node:
dashcat-agent activity # The last 50 events, newest lastdashcat-agent activity -n 500 # Moredashcat-agent activity --json # As stored, one JSON object per lineEach request and its result share a line:
2026-11-03 19:01:03 UTC dashcat-bridge@laptop connected from 192.168.1.20:511442026-11-03 19:01:03 UTC dashcat-bridge@laptop Run: brew upgrade [done, exit code 0, 3.2 s]2026-11-03 19:01:09 UTC dashcat-bridge@laptop Replace /etc/hosts (412 bytes) [allowed once at the node, done, 9.4 s]2026-11-03 19:01:30 UTC dashcat-bridge@laptop Take a screenshot of display 0 [refused: this node does not allow this bridge to see the screen. …]2026-11-03 19:02:00 UTC dashcat-bridge@laptop disconnectedRequests through the Dashcat connector appear the same way, under the handle of the person who
asked and the AI app that sent them, for example Dashcat connector (@tom via Claude (claude.ai)). Requests through a bridge in
Direct mode appear under the bridge’s name, as above.
A request is recorded as soon as it arrives, before it runs. If the line says “no result recorded”, the request was still running when the bridge disconnected or the node stopped: a restart command, for example.
What it records
Section titled “What it records”| Event | Recorded |
|---|---|
| Pairing | Bridge name, fingerprint and address |
| Refused connections | Address and reason: an unknown bridge, or a wrong or expired pairing code |
| Connecting and disconnecting | Bridge name, fingerprint and address |
| Requests | What was asked, in the words above, and how it ended: done (with the exit code for commands), failed or refused, with the reason and how long it took |
| Refused connector commands | Commands from Dashcat’s cloud that failed the node’s checks (wrong signature, another node’s, expired or repeated) and did not run, with the reason |
| Answers | When the node asked first, what the person at the node chose |
| Permission changes | dashcat-agent bridges allow, ask, deny and revoke |
It never records file contents, command output, screenshots or environment variables. Text typed into apps, and values filled into fields, appear as their length only. Commands are recorded as they were sent, so a password written into a command line will be in the log.
Where it is
Section titled “Where it is”agent-activity.log, beside the agent’s other files (see
Configuration), readable only by the node’s user. At 10 MB it moves to
agent-activity.1.log, replacing the one before, so the log never takes more than about 20 MB.
Both are plain text: grep, jq and log collectors read them directly. Each line has a
time (UTC) and an event; requests and their results share session and id.
Limits
Section titled “Limits”- The log is kept by the agent, which runs as the node’s user. Anything a bridge runs also runs as that user, so a bridge can delete or change the log. Treat it as a record, not proof. A copy of every node’s log in Dashcat Dashboard is coming, but isn’t there yet.
- If the log can’t be written, for example because the disk is full, requests still run and the agent reports the problem in its own output.
- Only the node can read its log. Your AI can’t read it through Dashcat yet.
© 2026 Dashcat · Free during the preview