S
sipkigroup/witness
Human approval for risky AI agent tool calls
View on GitHub ↗Link checked 2026-11-12 · HTTP 200 · opens the vendor's own site
Official descriptionHuman approval for risky AI agent tool calls. Claude Code plugin, MCP proxy and SDK: allowed calls run, forbidden ones are refused, the rest wait for your passkey. Signed receipts in a Merkle log, checkable offline.
Install & config
Client config (built from the install command this repo gives)
{
"mcpServers": {
"sipkigroup-witness": {
"command": "uvx",
"args": ["deus-witness"]
}
}
}Parsed from the README we fetched on 2026-10-29; we have not executed it.
command/args come from the install command the repository states. When it is ambiguous, the project README wins.
VS Code (.vscode/mcp.json - the key is servers)
{
"servers": {
"sipkigroup-witness": {
"command": "uvx",
"args": ["deus-witness"]
}
}
}Same server, but VS Code keeps it under <code>servers</code>.
Claude Code (command line)
claude mcp add --transport stdio sipkigroup-witness -- uvx deus-witness
Claude Code does not read a config file; add the server with this command.
Key names differ by client: Clients & CLI
- Star count
- 0 ★ · sipkigroup/witness · read from the GitHub search API · (checked 2026-11-13 20:00:50)
- Source
- read directly from its GitHub page · type: open-source project
- Harvest history
- first seen 2026-10-30 · last seen 2026-11-14 · seen 16× · listed by 1 sources
- Score
- score 103 · 1 sources · repo
- Install
uvx deus-witness
FAQ (answers come from our records)
How do I install it?
The repository provides this install command:
uvx deus-witness. It comes from the repository itself; we cannot guarantee it runs as-is in your client.Who is it for?
We filed it under these tags: 开源项目. The tags come from the entry itself, not a taxonomy we imposed.
Who maintains it?
repository
sipkigroup/witness;first catalogued 2026-10-30;last seen 2026-11-14。There is no official certification or quality rating here — we record sources and dates only.# Deus Witness
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
A witness service for AI-agent tool calls. Your agent asks before it acts; a witness outside the agent
checks the call against a mandate you signed, and answers allow, deny or defer (wait for you). A decision made against your mandate is a signed,
append-only receipt you can verify offline (a few automatic refusals, e.g. a call before any mandate or over a rate limit, are kept only in the server database) - so "what did the agent do, and who allowed it" has an answer you do not have to take on trust.
Install and try (one command): uvx --from deus-witness deus-witness try - or in Claude Code /plugin marketplace add sipkigroup/witness, then /plugin install deus-witness@sipkigroup.
As an MCP proxy (stdio; after -- put the MCP server you want witnessed; the bundled demo server records calls to a file and does nothing real): uvx deus-witness -- deus-witness-demo-tools, with DEUSWITNESSKEY (dwk..., from your account at the hosted service) set.
Hosted service: - live demo:
This repository: the open parts - the receipt specification, two separate verifiers, the TypeScript client, the Python client and the HTTP API contract (OpenAPI, data only).
> Status: early (0.x). The specification is an individual draft in spec/ (not an IETF standard, not submitted to the IETF).
> The evidence so far is our own simulations and separate implementations written from the spec by one author; there are no external audits or deployments yet.
> Treat it as something to test and attack, not as a certified security boundary. Reports of bypasses are the most valuable thing you can send us.
## Try it in Claude Code
Needs Claude Code 2.1.295+ and uv (curl -LsSf https://astral.sh/uv/install.sh | sh); macOS, Linux, WSL.
/plugin marketplace add sipkigroup/witness
/plugin install deus-witness@sipkigroup
/deus-witness:try
try makes a trial account and opens a page in your browser. The first tool call that needs you waits; the page asks for two passkey touches (one makes your passkey, one signs the recommended rules), then that call is decided - allowed, refused, or shown to you for one more touch. Until your first touch a call waits up to 90 s, then it is refused (TRIALNOTCLAIMED): ask again after the touches. A trial account has no phone notifications: the call waits for you on that page. A trial account you do not keep is erased after 7 days.
/plugin install opens the plugin panel: pick a scope and install; if it says so, run /reload-plugins.
Without the plugin: uvx --from deus-witness deus-witness try (pip install deus-witness only with Python 3.10+ in a venv).
## What is here
| Path | What | License |
| spec/ | Draft specification of the action receipt (draft-deus-aar-05, plus history and errata) and the test vectors (spec/vectors) | Apache-2.0 |
| verifierjs/ | Verifier in JavaScript, written from the spec | Apache-2.0 |
| verifierswift/ | Verifier in Swift, written from the spec (source; build with ./build.sh) | Apache-2.0 |
| sdk-ts/ | @deus-witness/sdk (npm): TypeScript client, no dependencies | Apache-2.0 |
| python/ | deus-witness (PyPI): Python thin client - MCP proxy, Claude Code hook, doctor, SDK. Registry name io.github.sipkigroup/witness | Apache-2.0 |
checks the call against a mandate you signed, and answers allow, deny or defer (wait for you). A decision made against your mandate is a signed,
append-only receipt you can verify offline (a few automatic refusals, e.g. a call before any mandate or over a rate limit, are kept only in the server database) - so "what did the agent do, and who allowed it" has an answer you do not have to take on trust.
Install and try (one command): uvx --from deus-witness deus-witness try - or in Claude Code /plugin marketplace add sipkigroup/witness, then /plugin install deus-witness@sipkigroup.
As an MCP proxy (stdio; after -- put the MCP server you want witnessed; the bundled demo server records calls to a file and does nothing real): uvx deus-witness -- deus-witness-demo-tools, with DEUSWITNESSKEY (dwk..., from your account at the hosted service) set.
Hosted service: - live demo:
This repository: the open parts - the receipt specification, two separate verifiers, the TypeScript client, the Python client and the HTTP API contract (OpenAPI, data only).
> Status: early (0.x). The specification is an individual draft in spec/ (not an IETF standard, not submitted to the IETF).
> The evidence so far is our own simulations and separate implementations written from the spec by one author; there are no external audits or deployments yet.
> Treat it as something to test and attack, not as a certified security boundary. Reports of bypasses are the most valuable thing you can send us.
## Try it in Claude Code
Needs Claude Code 2.1.295+ and uv (curl -LsSf https://astral.sh/uv/install.sh | sh); macOS, Linux, WSL.
/plugin marketplace add sipkigroup/witness
/plugin install deus-witness@sipkigroup
/deus-witness:try
try makes a trial account and opens a page in your browser. The first tool call that needs you waits; the page asks for two passkey touches (one makes your passkey, one signs the recommended rules), then that call is decided - allowed, refused, or shown to you for one more touch. Until your first touch a call waits up to 90 s, then it is refused (TRIALNOTCLAIMED): ask again after the touches. A trial account has no phone notifications: the call waits for you on that page. A trial account you do not keep is erased after 7 days.
/plugin install opens the plugin panel: pick a scope and install; if it says so, run /reload-plugins.
Without the plugin: uvx --from deus-witness deus-witness try (pip install deus-witness only with Python 3.10+ in a venv).
## What is here
| Path | What | License |
| spec/ | Draft specification of the action receipt (draft-deus-aar-05, plus history and errata) and the test vectors (spec/vectors) | Apache-2.0 |
| verifierjs/ | Verifier in JavaScript, written from the spec | Apache-2.0 |
| verifierswift/ | Verifier in Swift, written from the spec (source; build with ./build.sh) | Apache-2.0 |
| sdk-ts/ | @deus-witness/sdk (npm): TypeScript client, no dependencies | Apache-2.0 |
| python/ | deus-witness (PyPI): Python thin client - MCP proxy, Claude Code hook, doctor, SDK. Registry name io.github.sipkigroup/witness | Apache-2.0 |
Listed badge (optional)
Copy this line into the README if you want the listing mark. Optional, and it does not affect being listed.
[](https://anclum.com/en/s/sipkigroup-witness/)
- Source
- github · https://github.com/sipkigroup/witness
- Browse by field
- Open source
- added
- today
More like this
Filed under
Every tag opens the full list for that filter. Counts are the live catalogue figures.