mlclaw 0.3.1 → 0.3.4

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/Dockerfile CHANGED
@@ -1,17 +1,27 @@
1
- ARG OPENCLAW_VERSION=2026.7.1-beta.5
1
+ ARG OPENCLAW_VERSION=2026.7.1
2
2
  ARG OPENCLAW_BASE_IMAGE=ghcr.io/openclaw/openclaw:${OPENCLAW_VERSION}
3
- ARG BROKERKIT_PLUGIN_VERSION=0.1.0
4
- ARG BROKERKIT_VERSION=fcfc5f2304436d952b18e7c9583bb378d1952776
5
- ARG MLCLAW_RUNTIME_IMAGE=ghcr.io/osolmaz/mlclaw:0.3.1-openclaw-2026.7.1-beta.5
3
+ ARG BROKERKIT_PLUGIN_VERSION=0.2.1
4
+ ARG BROKERKIT_VERSION=hf-broker/v0.1.0
5
+ ARG MLCLAW_RUNTIME_IMAGE=ghcr.io/osolmaz/mlclaw:0.3.4-openclaw-2026.7.1
6
6
 
7
7
  FROM golang:1.26.5-bookworm AS hf-broker-build
8
8
  ARG BROKERKIT_VERSION
9
9
  RUN git init /src \
10
- && git -C /src fetch --depth=1 https://github.com/osolmaz/brokerkit.git "$BROKERKIT_VERSION" \
11
- && git -C /src checkout --detach FETCH_HEAD \
12
- && test "$(git -C /src rev-parse HEAD)" = "$BROKERKIT_VERSION" \
10
+ && git -C /src fetch --depth=1 https://github.com/osolmaz/brokerkit.git "refs/tags/$BROKERKIT_VERSION:refs/tags/$BROKERKIT_VERSION" \
11
+ && git -C /src checkout --detach "$BROKERKIT_VERSION" \
12
+ && test "$(git -C /src rev-parse "refs/tags/$BROKERKIT_VERSION^{commit}")" = "$(git -C /src rev-parse HEAD)" \
13
13
  && cd /src \
14
- && GOWORK=off go build -trimpath -o /out/hf-broker ./brokers/huggingface/cmd/hf-broker
14
+ && GOWORK=off go build -trimpath -o /out/hf-broker ./brokers/huggingface/cmd/hf-broker \
15
+ && /out/hf-broker policy render \
16
+ --preset request-all-agent-operations \
17
+ --client default \
18
+ --profile-out /out/hf-broker.policy-profile.json \
19
+ --output /out/hf-broker.scope.json \
20
+ --manifest-out /out/hf-broker.policy-manifest.json \
21
+ && /out/hf-broker doctor policy \
22
+ --profile /out/hf-broker.policy-profile.json \
23
+ --scope /out/hf-broker.scope.json \
24
+ --manifest /out/hf-broker.policy-manifest.json
15
25
 
16
26
  FROM node:24-bookworm-slim AS brokerkit-plugin-build
17
27
  ARG BROKERKIT_VERSION
@@ -19,9 +29,9 @@ RUN apt-get update \
19
29
  && apt-get install -y --no-install-recommends ca-certificates git \
20
30
  && rm -rf /var/lib/apt/lists/* \
21
31
  && git init /src \
22
- && git -C /src fetch --depth=1 https://github.com/osolmaz/brokerkit.git "$BROKERKIT_VERSION" \
23
- && git -C /src checkout --detach FETCH_HEAD \
24
- && test "$(git -C /src rev-parse HEAD)" = "$BROKERKIT_VERSION"
32
+ && git -C /src fetch --depth=1 https://github.com/osolmaz/brokerkit.git "refs/tags/$BROKERKIT_VERSION:refs/tags/$BROKERKIT_VERSION" \
33
+ && git -C /src checkout --detach "$BROKERKIT_VERSION" \
34
+ && test "$(git -C /src rev-parse "refs/tags/$BROKERKIT_VERSION^{commit}")" = "$(git -C /src rev-parse HEAD)"
25
35
  WORKDIR /src
26
36
  RUN corepack enable \
27
37
  && pnpm install --frozen-lockfile \
@@ -69,7 +79,9 @@ COPY --from=sync-build /build/dist/hf-state-sync.js /app/hf-state-sync.js
69
79
  COPY --from=sync-build /build/dist/hf-tooling-seed.js /app/hf-tooling-seed.js
70
80
  COPY --from=sync-build /build/dist/mlclaw-space-runtime.js /app/mlclaw-space-runtime.js
71
81
  COPY --from=hf-broker-build /out/hf-broker /usr/local/bin/hf-broker
72
- COPY hf-broker.scope.json /app/hf-broker.scope.json
82
+ COPY --from=hf-broker-build /out/hf-broker.scope.json /app/hf-broker.scope.json
83
+ COPY --from=hf-broker-build /out/hf-broker.policy-profile.json /app/hf-broker.policy-profile.json
84
+ COPY --from=hf-broker-build /out/hf-broker.policy-manifest.json /app/hf-broker.policy-manifest.json
73
85
  COPY --chown=node:node openclaw.default.json /app/openclaw.default.json
74
86
  COPY --chown=node:node entrypoint.sh /app/entrypoint.sh
75
87
  COPY --chown=node:node assets/ /app/assets/
package/README.md CHANGED
@@ -209,10 +209,12 @@ merges every BrokerKit-compatible backend configured in
209
209
  `MLCLAW_OPERATOR_BROKERS_FILE` and lets administrators inspect, approve, deny,
210
210
  cancel, or revoke requests. The plugin registers the Gateway tab, while ML Claw
211
211
  serves the immutable packaged UI from its trusted HTTP boundary and gives it a
212
- small launcher inside the Gateway. Decisions open in an unframeable protected
213
- document with a renewable, short-lived, admin-bound browser token. Broker
214
- operator tokens remain in backend-only files and are never sent to the browser
215
- or OpenClaw. See
212
+ small popover inside the Gateway. Administrators decide requests directly in
213
+ the sandboxed popover when `MLCLAW_BROKERKIT_POPOVER_DECISIONS=true`; otherwise
214
+ the popover remains read-only and decisions use the standalone protected page.
215
+ Both flows use a renewable, short-lived, admin-bound browser token.
216
+ Broker operator tokens remain in backend-only files and are never sent to the
217
+ browser or OpenClaw. See
216
218
  [Operator Broker Configuration](docs/operator-brokers-config.md).
217
219
 
218
220
  - `/mlclaw/credentials`: connect or disconnect Hugging Face MCP and Research
@@ -239,9 +241,9 @@ MLCLAW_BRAND_SHORT_NAME=Bob
239
241
  MLCLAW_BRAND_THEME_COLOR=#111827
240
242
  MLCLAW_BRAND_LOGO=mlclaw.svg
241
243
  MLCLAW_BRAND_FAVICON=hf-logo.svg
242
- MLCLAW_BRAND_FAVICON_32=hf-logo.svg
244
+ MLCLAW_BRAND_FAVICON_32=hf-logo.png
243
245
  MLCLAW_BRAND_FAVICON_ICO=hf-logo.svg
244
- MLCLAW_BRAND_APPLE_TOUCH_ICON=assistant-avatar.svg
246
+ MLCLAW_BRAND_APPLE_TOUCH_ICON=hf-logo.png
245
247
  MLCLAW_BRAND_ASSISTANT_AVATAR=assistant-avatar.svg
246
248
  ```
247
249
 
Binary file
@@ -126,6 +126,24 @@ This workspace has Hugging Face tooling preinstalled. Use the Hugging Face CLI
126
126
  \`hf\`, \`hf-discover\`, and \`uv\` for Hub, dataset, model, Space, and bucket
127
127
  work.
128
128
 
129
+ Protected Hugging Face mutations use the preconfigured HF Broker. Never ask
130
+ the user for a Hugging Face token and never run \`hf auth login\`. Choose the
131
+ matching \`hf_*\` MCP tool for the operation. Omit \`request_id\` for a new
132
+ operation unless you deliberately need an exact retry identity. Record the
133
+ returned operation \`id\`, then use \`hf_operation_wait\` or
134
+ \`hf_operation_get\` to observe completion. Use the bounded
135
+ \`hf_operation_list\` tool, optionally filtered by \`request_id\`, to recover
136
+ an operation after an ambiguous transport timeout.
137
+
138
+ Never reuse a request ID for a different target or argument set. A request-ID
139
+ conflict is durable: inspect the existing operation instead of restarting the
140
+ broker. Protected actions appear in the ML Claw BrokerKit control and may also
141
+ be sent through configured OpenClaw channels.
142
+
143
+ After repository creation, use the brokered Git transport for repository
144
+ contents. The limited broker credential is not a Hugging Face Hub token; do
145
+ not report it as missing Hub access.
146
+
129
147
  Hugging Face agent skills are available in both \`.agents/skills\` and
130
148
  \`skills\`. Prefer these skills when the task involves Hugging Face:
131
149