• Joined on 2026-03-27
mathias commented on issue mathias/hyperguild#144 2026-10-01 20:21:24 +00:00
brain-mcp: one shared bearer for every client, no per-caller read scoping (OWASP MCP07/MCP10)

pr-gatekeeper: PR #147 BLOCKED at 32dedb3. On the audit-log half, one audit line per tools/call with tool, principal, origin, wing and hall works, verified by execution. But the outcome field…

mathias commented on pull request mathias/hyperguild#147 2026-10-01 20:21:14 +00:00
feat(brain): tool-call audit log (#144) + server-owned write provenance (#145)

pr-gatekeeper: BLOCKED (head 32dedb3)

I built the PR head in a scratch worktree and called the real mcp.Server over HTTP, with a JWT principal attacker (fake validator) and the static…

mathias opened issue mathias/hyperguild#148 2026-10-01 20:19:45 +00:00
Provenance: first-party writers (claudewatcher, pipeline) stamp origin: unknown — add an internal origin
mathias opened issue mathias/gitea-mcp#65 2026-10-01 20:19:10 +00:00
Tool args: case-variant duplicate keys silently override, and file_write_branch accepts refs/heads/* (wedges main)
mathias pushed to feat/mcp-destructive-guard at mathias/skills 2026-10-01 20:19:01 +00:00
a41f5abfba fix(hooks): file_write_branch clears only one exact-case key and a plain branch name
mathias commented on pull request mathias/skills#52 2026-10-01 18:51:52 +00:00
feat(hooks): mcp-destructive-guard asks before irreversible MCP verbs

pr-gatekeeper round 2: BLOCKED (head 4a82206)

task check exits 0, task test exits 0 (38/38), and CI runs 8689/8690 are green. Green does not cover the escape below.

Escape: `file_write…

mathias created pull request mathias/hyperguild#147 2026-10-01 18:49:22 +00:00
feat(brain): tool-call audit log (#144) + server-owned write provenance (#145)
mathias pushed to feat/mcp-audit-provenance at mathias/hyperguild 2026-10-01 18:49:12 +00:00
32dedb318d feat(brain): stamp server-owned write provenance; surface it in brain_query
a9a9eebe26 feat(brain-mcp): audit-log every tools/call with principal and scope
Compare 2 commits »
mathias created branch feat/mcp-audit-provenance in mathias/hyperguild 2026-10-01 18:49:12 +00:00
mathias pushed to feat/mcp-destructive-guard at mathias/skills 2026-10-01 18:45:21 +00:00
4a82206393 fix(hooks): close the five escapes the skills#52 review found
mathias commented on pull request mathias/skills#52 2026-10-01 18:43:22 +00:00
feat(hooks): mcp-destructive-guard asks before irreversible MCP verbs

pr-gatekeeper: BLOCKED (head d068cbc)

Reviewed by running the hook as a program against crafted PreToolUse JSON in a clean clone. task check exits 0, task test exits 0, and CI runs…

mathias commented on issue mathias/hyperguild#144 2026-10-01 18:42:55 +00:00
brain-mcp: one shared bearer for every client, no per-caller read scoping (OWASP MCP07/MCP10)

Correction: status:dispatch does nothing here. The dispatch watcher has been suspended since 2026-09-17 (dispatch#56), and the CI agent lane exists only on cobalt-dingo. Taking this interactively…

mathias commented on issue mathias/hyperguild#145 2026-10-01 18:42:53 +00:00
brain_write is an ungated persistent prompt-injection path into every future session (OWASP MCP06)

Correction: status:dispatch does nothing here. The dispatch watcher has been suspended since 2026-09-17 (dispatch#56, infra k3s/apps/dispatch/cronjob.yaml), and the CI agent lane (`agent-run.ym…

mathias pushed to main at mathias/hyperguild 2026-10-01 18:42:22 +00:00
f21be1aef6 chore(context): re-sync adapters after root brain-scoping correction
mathias pushed to main at mathias/gitea-mcp 2026-10-01 18:41:55 +00:00
0e2bd3d90e fix(mcp): audit record keeps legacy name/index alias targets
b149dccdbe chore(context): re-sync adapters after root brain-scoping correction
Compare 2 commits »
mathias pushed tag v0.16.1 to mathias/gitea-mcp 2026-10-01 18:41:55 +00:00
mathias commented on issue mathias/gitea-mcp#64 2026-10-01 18:41:20 +00:00
tools/call is not audit-logged — only auth acceptance is (OWASP MCP08)

Shipped in v0.16.0 (724a997), deployed by CD (infra 18d781c). Verified live in the pod log, 2026-10-01T18:38Z:

{"msg":"mcp tool call","tool":"pr_create","caller":"mathias","args_bytes":147…
mathias created pull request mathias/skills#52 2026-10-01 18:38:06 +00:00
feat(hooks): mcp-destructive-guard asks before irreversible MCP verbs
mathias pushed to feat/mcp-destructive-guard at mathias/skills 2026-10-01 18:37:55 +00:00
d068cbc279 docs(readme): list mcp-destructive-guard among shipped hooks
mathias created branch feat/mcp-destructive-guard in mathias/skills 2026-10-01 18:37:48 +00:00