mobiusguard
The Mobius Guard firewall proxy. Part of Mobius Guard. Alpha: the API may still change before 1.0.
It sits between your app and the model and speaks three APIs: OpenAI Chat Completions
(/v1/chat/completions), OpenAI Responses (/v1/responses) and Anthropic Messages
(/v1/messages), streamed or not.
- On the way in, user messages and tool results are cleaned up (invisible characters, look-alike letters, spaced-out letters, leetspeak and base64 undone) and checked against named rules, and optionally a classifier. A clear rule hit is refused with HTTP 403 in the API's own error format, naming the rule. Classifier scores are logged until you set a threshold.
- On the way out, secrets and personal data are replaced in the reply as it streams,
even when they are split across events (
mobiusguard-redact). - For each request, one audit line: the decision, rule IDs, scores and what was redacted, never the prompt text unless you ask. OpenTelemetry spans if installed.
mobiusguard serve --port 8787 # forwards each caller's own API key
mobiusguard check "Ignore all previous instructions" # try the request check
Point any SDK at it:
from openai import OpenAI
client = OpenAI(base_url="http://127.0.0.1:8787/v1") # your usual API key
from anthropic import Anthropic
claude = Anthropic(base_url="http://127.0.0.1:8787")
To try it with a free local model, run Ollama and use
examples/ollama.toml;
scripts/live_check.py sends every case through all three APIs.
Settings are a TOML file (mobiusguard serve --config mobiusguard.toml). Guides:
quickstart, configuration,
rules, audit log and
deploying it, including the container image. The design is in
decision 0010. Optional extras: mobiusguard[classifier] (PIGuard or ProtectAI v2, about a
second per long prompt on a CPU) and mobiusguard[otel].
Metadata
Release files for mobiusguard 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| mobiusguard-0.1.0.tar.gz | 34.6 kB | Without provenance | Details for mobiusguard-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| mobiusguard-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for mobiusguard-0.1.0-py3-none-any.whl |
Total release size: 65.9 kB
Release files / mobiusguard-0.1.0.tar.gz
| Download URL | mobiusguard-0.1.0.tar.gz |
|---|---|
| Size | 34.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
0a910a65bc62c008d3a37751725706834b9de3d1e669a26a5c5489e6e73e54cd
|
|
BLAKE2b-256 checksum How to use checksums |
f4a770869cbcdc60630e58e02bb2831d7f545a064c232ec3f0b7bfb132c71708
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / mobiusguard-0.1.0-py3-none-any.whl
| Download URL | mobiusguard-0.1.0-py3-none-any.whl |
|---|---|
| Size | 31.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b2a8fa4785465be55d70e00aaf02b9e8c7b633a6334df5b42d4eb50937ad41f7
|
|
BLAKE2b-256 checksum How to use checksums |
9f9d98b4775c0ef43819f3aadb03bcffe97e5c0aa659bbd7178fe762a4ea063f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
uv/0.13.7 {"installer":{"name":"uv","version":"0.13.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Security for mobiusguard 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.