SecTrust
An auditable, always-on AI colleague platform — with humans still in charge.
Cross-process task registry → DAG orchestration → HITL approvals → compliance scanning → long-term memory, exposed as a zero-dependency MCP server (36 tools, pure Python stdlib).
Status: experimental (v0.8.0-alpha) — 482 tests passing, real multi-process demos, no production traffic yet.
Why SecTrust
Most multi-agent frameworks give you coordination and hope for the best. SecTrust gives you an operating base where AI colleagues hold real jobs — and every consequential step has a human checkpoint:
- A minimal, reliable contract. AI coworkers on the same machine exchange task metadata through one local SQLite file (WAL mode) — zero ops, transactional, crash-safe. Need to go cross-machine? HTTP API and an optional Redis-backed queue are already there.
- Humans approve by default. An ApprovalCenter gates dangerous actions (
pending → approved/rejected/expired, expires to deny, never to allow), with WeCom / Feishu push out of the box. - Costs are routed, not burned. A built-in cost router grades every request simple / medium / complex — a one-liner runs as a single task, not a 7-node DAG. Estimated LLM calls are attached to every task for attribution.
- Three collaboration modes. Pipeline (planner + DAG), iterative refinement (quality gate sends work back with feedback until it passes), and voting (fan the same task out to N workers, score the proposals with the same quality rules, recommend a winner — a human confirms; ranking alone never takes effect).
Quickstart
Zero dependencies (pure Python stdlib). Python ≥ 3.10, no pip install needed:
git clone https://github.com/nanshandongli/SecTrust.git
cd SecTrust
python demo.py # ① core contract self-test (real cross-process concurrency)
python -m unittest discover -s tests -p "test_*.py" # ② full suite: 482 tests
python task_center_web.py # ③ open http://127.0.0.1:8090 — live task dashboard
Wire it into any MCP host (Claude Desktop, WorkBuddy, …):
{
"mcpServers": {
"sectrust": {
"command": "python",
"args": ["/absolute/path/to/SecTrust/mcp_server.py"]
}
}
}
36 tools go live immediately: task register/claim, DAG orchestration (dag_*), quality rework loops,
proposal voting (ballot_*), compliance scanning, long-term memory, approval queries.
What's inside
| Layer | What it does |
|---|---|
task_registry.py |
The core contract: TaskRegistry — tasks/runners tables, CAS claiming, self-healing connections |
orchestration.py |
DAG scheduler: dependencies, readiness waves, failure cascades, parallel-safe claiming |
planner.py |
Decomposer: one sentence → a subtask DAG with skills & quality rules; cost routing (simple/medium/complex); slot extraction never fabricates |
agentskills/quality.py |
Quality loop: verify output → send back with feedback → escalate to human after 3 reworks |
ballot.py |
Voting: N proposals scored by the same quality rules; rank() recommends, confirm() takes effect |
arbiter.py |
Conflict arbitration: registers competing claims, defaults to human judgment |
approval.py |
HITL ApprovalCenter: pending/approved/rejected/expired-to-deny |
sandbox/ |
Enforced local sandbox: rlimits, process-tree kill, output truncation |
scanner/ |
Compliance scanner: 78 detection rules, entropy engine, fingerprints, SARIF, gitleaks benchmark (F1 = 1.0) |
memory_semantic.py / memory_hybrid.py |
Memory: BM25 + entities + optional real embeddings (Ollama/OpenAI), vector-space guards against silent dimensional corruption |
channels/ |
WeCom / Feishu adapters with real AES-256-CBC callback verification |
games/ |
Two-player Chinese chess — a live proof that the base supports real-time multi-agent play |
mcp_server.py |
The MCP server: 36 tools over stdio, JSON-RPC 2.0, protocol 2026-07-28 |
Honest status
What's proven: single-machine multi-process orchestration end-to-end; 482 tests; benchmark-aligned scanner (2 TP / 0 FP on gitleaks vectors); stress-tested write throughput (~685 TPS at 8 processes, CAS claiming with zero duplicates); MCP tools verified from a clean install.
What's not proven yet: cross-machine deployments (implemented, untested under real network latency); production traffic; PyPI/MCP Registry listing (materials ready); real WeCom/Feishu credentials. The Chinese docs (README.zh-CN.md, PRODUCT_SUMMARY.md) keep a running "honesty ledger" of exactly this kind.
Docs
- DESIGN.md — runtime extension architecture (channels / skills / models), trust boundaries, key management
- README.zh-CN.md — full Chinese documentation (deployment, WAL ops, workflows)
- PRODUCT_SUMMARY.md — feature inventory, market position, roadmap (P0/P1/P2)
- SECURITY.md — security narrative; SELF_AUDIT_REPORT.md — reproducible self-audit
- RELEASING.md — PyPI / MCP Registry publishing steps
- CHANGELOG.md — version history
License
AGPL-3.0-only. In short: use it, study it, modify it, run your AI colleagues with it — if you offer SecTrust itself as a hosted service, the network-use clause requires you to share your modified source. Commercial dual-licensing may be considered; open an issue to discuss.
Metadata
Release files for sectrust 0.8.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 | |
|---|---|---|---|---|
| sectrust-0.8.0.tar.gz | 289.0 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| sectrust-0.8.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 590.8 kB
Release files / sectrust-0.8.0.tar.gz
| Download URL | sectrust-0.8.0.tar.gz |
|---|---|
| Size | 289.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
991a1754221b2ebaa2302e17ab7828f9d2f4e0473e86cd3aea5f7fddafdf6700
|
|
BLAKE2b-256 checksum How to use checksums |
f33621a9104ad424552d15319dd3de3ff441f774649918e1de18e95fa099426a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / sectrust-0.8.0-py3-none-any.whl
| Download URL | sectrust-0.8.0-py3-none-any.whl |
|---|---|
| Size | 301.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3d30618098030e34309b062ae19568891ee22774483308822892c513c96d8130
|
|
BLAKE2b-256 checksum How to use checksums |
ef37df82f7dee96ce103a3173153423f85521ec36c791596c6fdcd6fb28ea863
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Security for sectrust 0.8.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.