@fidacy/openclaw-plugin 0.5.8 → 0.5.9
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/CHANGELOG.md +12 -0
- package/README.md +21 -10
- package/dist/index.js +3 -3
- package/openclaw.plugin.json +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,17 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.5.9
|
|
4
|
+
|
|
5
|
+
### Patch Changes
|
|
6
|
+
|
|
7
|
+
- 5090ab4: Closes the two gaps the 0.5.8 scan named: "material disclosure gaps around session logs and outbound anchoring".
|
|
8
|
+
|
|
9
|
+
- **Session logs.** 0.5.8 deleted a wrong claim (a `~/.fidacy/sessions/` directory this plugin never creates) without replacing it, which left the loudest question unanswered: the plugin sees the command, path and arguments of every tool call, so where does that go? It is held in memory for the life of the process and never written to disk. What survives is the digest plus per-category counts. The readable session log belongs to the separate MCP-plus-hooks install, which is now named so the difference is explicit.
|
|
10
|
+
- **Outbound anchoring.** The endpoint was listed but not its trigger, and the trigger is the non-obvious part: when an engine key is set, queued session digests are drained on the first tool call of a LATER session, not at the end of the session that produced them, and nothing asks first. Now stated, along with how to stop it.
|
|
11
|
+
- A fourth local file, the `pending-anchors.taking` lock, was still undisclosed. The list now names all four.
|
|
12
|
+
|
|
13
|
+
Documentation only. Every claim checked against the code: the plugin imports `queuePending`, `sessionLabel`, `sessionSummary` and `takePending` from the shared evidence module, and never `writeSessionLog`.
|
|
14
|
+
|
|
3
15
|
## 0.5.8
|
|
4
16
|
|
|
5
17
|
### Patch Changes
|
package/README.md
CHANGED
|
@@ -12,18 +12,25 @@ Read this before installing. Since 0.5.0 the plugin is not payment-only: it
|
|
|
12
12
|
hooks every agent tool call to build a session report, and each session ends in
|
|
13
13
|
a hash digest anyone can recompute.
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
15
|
+
**The session log is never written to disk by this plugin.** The plugin sees the
|
|
16
|
+
command, file path and arguments of every tool call, and keeps that record in
|
|
17
|
+
memory for the life of the process only. It is not persisted, not on shutdown,
|
|
18
|
+
not anywhere. What survives a session is the hash digest of that record plus
|
|
19
|
+
per-category counts (for example `shell: 9, file: 4`), and nothing else from it.
|
|
20
|
+
If you want the readable session log on disk, that is the separate MCP-plus-hooks
|
|
21
|
+
install (`npx @fidacy/mcp install-hooks`), which writes `~/.fidacy/sessions/`.
|
|
22
|
+
This plugin does not: it never calls the function that writes them.
|
|
19
23
|
|
|
20
24
|
Written to disk, and this is the complete list:
|
|
21
25
|
|
|
22
26
|
- `~/.fidacy/config.json` (mode 0600): the anonymous install id, tier, and your
|
|
23
27
|
mandate rules
|
|
24
28
|
- `~/.fidacy/audit/audit.log`: the hash-chained decision log
|
|
25
|
-
- `~/.fidacy/pending-anchors.jsonl
|
|
26
|
-
|
|
29
|
+
- `~/.fidacy/pending-anchors.jsonl` (directory mode 0700): one line per finished
|
|
30
|
+
session holding its digest, id, timestamp and per-category counts. No command,
|
|
31
|
+
path or argument. Lines are removed once anchored.
|
|
32
|
+
- `~/.fidacy/pending-anchors.taking`: a lock file, present only while that queue
|
|
33
|
+
is being drained
|
|
27
34
|
|
|
28
35
|
Leaves your machine, and this is the complete list of hosts and paths. Every one
|
|
29
36
|
goes to your configured engine (`https://api.fidacy.com` by default) and nowhere
|
|
@@ -33,9 +40,13 @@ else:
|
|
|
33
40
|
random UUID, never a name or hostname). Off with `FIDACY_DISABLE_TELEMETRY=1`.
|
|
34
41
|
- `/v1/provision`: a background free-key request. Off with
|
|
35
42
|
`FIDACY_DISABLE_PROVISION=1`.
|
|
36
|
-
- `/v1/artifacts`: per-category counts
|
|
37
|
-
|
|
38
|
-
|
|
43
|
+
- `/v1/artifacts`: per-category counts and the session digest, plus any hash you
|
|
44
|
+
anchor with `anchor_artifact`. Hashes and counts only; no file content and no
|
|
45
|
+
command text. **This one is automatic, so be clear on when it fires:** if an
|
|
46
|
+
engine key is set, the queued digests are drained on the first tool call of a
|
|
47
|
+
LATER session, not at the end of the session that produced them. Nobody
|
|
48
|
+
confirms it. With no engine key nothing is ever sent and the queue simply
|
|
49
|
+
sits on your disk; delete `~/.fidacy/pending-anchors.jsonl` to discard it.
|
|
39
50
|
- `/v1/assess`: only when you call `assess_action` yourself, and only if you set
|
|
40
51
|
an engine API key. Sends the action you passed to the tool.
|
|
41
52
|
- `/v1/register`: only if you set `operatorEmail`, which is opt-in and removable.
|
|
@@ -128,7 +139,7 @@ This is a payment-control plugin, so audit it like one. What it actually does:
|
|
|
128
139
|
shorter copy naming only two of them, and a privacy disclosure that
|
|
129
140
|
contradicts itself is worse than a long one. None of the five is ever on the
|
|
130
141
|
decision path; payment gating works fully offline.
|
|
131
|
-
- **Local state:** the
|
|
142
|
+
- **Local state:** the four files listed above, and nothing else. This bullet
|
|
132
143
|
used to name two of them and end with "Nothing else", which was not true:
|
|
133
144
|
`pending-anchors.jsonl` was never disclosed. Delete `~/.fidacy` to clear all
|
|
134
145
|
of it.
|
package/dist/index.js
CHANGED
|
@@ -5102,7 +5102,7 @@ var FileAuditStore = class {
|
|
|
5102
5102
|
import { statSync } from "node:fs";
|
|
5103
5103
|
|
|
5104
5104
|
// ../mcp/src/telemetry.ts
|
|
5105
|
-
var CLIENT_VERSION = true ? "0.5.
|
|
5105
|
+
var CLIENT_VERSION = true ? "0.5.9" : "dev";
|
|
5106
5106
|
function bandOf(amount) {
|
|
5107
5107
|
if (typeof amount !== "number" || !Number.isFinite(amount) || amount <= 0) return void 0;
|
|
5108
5108
|
if (amount < 10) return "lt10";
|
|
@@ -5317,7 +5317,7 @@ function requestUpgrade() {
|
|
|
5317
5317
|
}
|
|
5318
5318
|
|
|
5319
5319
|
// ../mcp/src/provision.ts
|
|
5320
|
-
var CLIENT_VERSION2 = true ? "0.5.
|
|
5320
|
+
var CLIENT_VERSION2 = true ? "0.5.9" : "dev";
|
|
5321
5321
|
function provisionEnabled() {
|
|
5322
5322
|
const v = (process.env.FIDACY_DISABLE_PROVISION ?? "").trim().toLowerCase();
|
|
5323
5323
|
return !(v === "1" || v === "true" || v === "yes");
|
|
@@ -5460,7 +5460,7 @@ function trialCountdownLine(keyOverride) {
|
|
|
5460
5460
|
}
|
|
5461
5461
|
|
|
5462
5462
|
// ../mcp/src/register.ts
|
|
5463
|
-
var CLIENT_VERSION3 = true ? "0.5.
|
|
5463
|
+
var CLIENT_VERSION3 = true ? "0.5.9" : "dev";
|
|
5464
5464
|
function endpoint3() {
|
|
5465
5465
|
const base = (process.env.FIDACY_ENGINE_URL ?? "https://api.fidacy.com").replace(/\/$/, "");
|
|
5466
5466
|
return `${base}/v1/register`;
|
package/openclaw.plugin.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"name": "Fidacy AI Agent Firewall",
|
|
4
4
|
"description": "Firewall for AI agents. Watches every action the agent takes and ends each session in a digest anyone can recompute; commands, paths and arguments never leave your machine, only counts and a hash. Blocks wrong/lookalike payee, over-cap and duplicate-invoice fraud before money moves. Non-custodial, local-first, deny-by-default. Anonymous telemetry (counts only) can be disabled with FIDACY_DISABLE_TELEMETRY=1.",
|
|
5
5
|
"icon": "https://fidacy.com/logo.png",
|
|
6
|
-
"version": "0.5.
|
|
6
|
+
"version": "0.5.9",
|
|
7
7
|
"contracts": {
|
|
8
8
|
"tools": [
|
|
9
9
|
"request_payment",
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fidacy/openclaw-plugin",
|
|
3
|
-
"version": "0.5.
|
|
3
|
+
"version": "0.5.9",
|
|
4
4
|
"description": "Fidacy payment firewall as a native OpenClaw plugin: signed, verifiable verdicts on every money-moving agent action, in-process (no MCP subprocess).",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"author": "Fidacy (ZeepCode Group Technology LLC) <hello@fidacy.com> (https://fidacy.com)",
|