agent-os-kernel 1.1.0__py3-none-any.whl → 1.3.0__py3-none-any.whl
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.
- agent_os/__init__.py +66 -4
- agent_os/agents_compat.py +286 -0
- agent_os/base_agent.py +308 -0
- agent_os/cli.py +1079 -19
- agent_os/integrations/__init__.py +37 -2
- agent_os/integrations/openai_adapter.py +502 -0
- agent_os/integrations/semantic_kernel_adapter.py +569 -0
- agent_os/stateless.py +349 -0
- agent_os_kernel-1.3.0.dist-info/METADATA +676 -0
- agent_os_kernel-1.3.0.dist-info/RECORD +1053 -0
- {agent_os_kernel-1.1.0.dist-info → agent_os_kernel-1.3.0.dist-info}/entry_points.txt +0 -1
- modules/amb/.github/workflows/ci.yml +102 -0
- modules/amb/.github/workflows/publish.yml +146 -0
- modules/amb/.gitignore +134 -0
- modules/amb/CHANGELOG.md +118 -0
- modules/amb/CONTRIBUTING.md +141 -0
- modules/amb/LICENSE +21 -0
- modules/amb/README.md +188 -0
- modules/amb/amb_core/__init__.py +175 -0
- modules/amb/amb_core/adapters/__init__.py +55 -0
- modules/amb/amb_core/adapters/aws_sqs_broker.py +374 -0
- modules/amb/amb_core/adapters/azure_servicebus_broker.py +338 -0
- modules/amb/amb_core/adapters/kafka_broker.py +258 -0
- modules/amb/amb_core/adapters/nats_broker.py +283 -0
- modules/amb/amb_core/adapters/rabbitmq_broker.py +233 -0
- modules/amb/amb_core/adapters/redis_broker.py +260 -0
- modules/amb/amb_core/broker.py +143 -0
- modules/amb/amb_core/bus.py +479 -0
- modules/amb/amb_core/cloudevents.py +507 -0
- modules/amb/amb_core/dlq.py +343 -0
- modules/amb/amb_core/hf_utils.py +534 -0
- modules/amb/amb_core/memory_broker.py +408 -0
- modules/amb/amb_core/models.py +139 -0
- modules/amb/amb_core/persistence.py +527 -0
- modules/amb/amb_core/schema.py +292 -0
- modules/amb/amb_core/tracing.py +356 -0
- modules/amb/examples/advanced_features.py +223 -0
- modules/amb/examples/backpressure_demo.py +225 -0
- modules/amb/examples/basic_usage.py +117 -0
- modules/amb/examples/tracing_demo.py +104 -0
- modules/amb/experiments/README.md +52 -0
- modules/amb/experiments/reproduce_results.py +467 -0
- modules/amb/experiments/results.json +324 -0
- modules/amb/paper/README.md +40 -0
- modules/amb/paper/paper.tex +365 -0
- modules/amb/paper/whitepaper.md +377 -0
- modules/amb/pyproject.toml +117 -0
- modules/amb/tests/__init__.py +1 -0
- modules/amb/tests/test_backpressure_priority.py +280 -0
- modules/amb/tests/test_bus.py +198 -0
- modules/amb/tests/test_cloudevents.py +443 -0
- modules/amb/tests/test_features.py +531 -0
- modules/amb/tests/test_models.py +74 -0
- modules/amb/tests/test_tracing.py +254 -0
- modules/atr/.github/workflows/ci.yml +101 -0
- modules/atr/.github/workflows/publish.yml +140 -0
- modules/atr/.gitignore +134 -0
- modules/atr/.pre-commit-config.yaml +37 -0
- modules/atr/CHANGELOG.md +39 -0
- modules/atr/CONTRIBUTING.md +96 -0
- modules/atr/IMPLEMENTATION_SUMMARY.md +143 -0
- modules/atr/README.md +180 -0
- modules/atr/atr/__init__.py +638 -0
- modules/atr/atr/access.py +346 -0
- modules/atr/atr/composition.py +643 -0
- modules/atr/atr/decorator.py +355 -0
- modules/atr/atr/executor.py +382 -0
- modules/atr/atr/health.py +555 -0
- modules/atr/atr/hf_utils.py +447 -0
- modules/atr/atr/injection.py +420 -0
- modules/atr/atr/metrics.py +438 -0
- modules/atr/atr/policies.py +401 -0
- modules/atr/atr/py.typed +2 -0
- modules/atr/atr/registry.py +450 -0
- modules/atr/atr/schema.py +478 -0
- modules/atr/atr/tools/safe/__init__.py +73 -0
- modules/atr/atr/tools/safe/calculator.py +380 -0
- modules/atr/atr/tools/safe/datetime_tool.py +441 -0
- modules/atr/atr/tools/safe/file_reader.py +400 -0
- modules/atr/atr/tools/safe/http_client.py +314 -0
- modules/atr/atr/tools/safe/json_parser.py +372 -0
- modules/atr/atr/tools/safe/text_tool.py +526 -0
- modules/atr/atr/tools/safe/toolkit.py +173 -0
- modules/atr/docs/PYPI_SETUP.md +113 -0
- modules/atr/examples/README.md +27 -0
- modules/atr/examples/demo.py +144 -0
- modules/atr/examples/sandbox_demo.py +218 -0
- modules/atr/experiments/README.md +69 -0
- modules/atr/experiments/reproduce_results.py +509 -0
- modules/atr/experiments/results/.gitkeep +0 -0
- modules/atr/experiments/results/results_20260123_140334.json +71 -0
- modules/atr/paper/README.md +36 -0
- modules/atr/paper/figures/.gitkeep +0 -0
- modules/atr/paper/references.bib +84 -0
- modules/atr/paper/structure.tex +293 -0
- modules/atr/paper/whitepaper.md +234 -0
- modules/atr/pyproject.toml +148 -0
- modules/atr/requirements.txt +1 -0
- modules/atr/setup.py +30 -0
- modules/atr/tests/__init__.py +1 -0
- modules/atr/tests/test_decorator.py +317 -0
- modules/atr/tests/test_executor.py +245 -0
- modules/atr/tests/test_integration_executor.py +184 -0
- modules/atr/tests/test_registry.py +312 -0
- modules/atr/tests/test_schema.py +182 -0
- modules/atr/tests/test_v2_features.py +708 -0
- modules/caas/.dockerignore +63 -0
- modules/caas/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
- modules/caas/.github/ISSUE_TEMPLATE/custom.md +10 -0
- modules/caas/.github/ISSUE_TEMPLATE/feature_request.md +20 -0
- modules/caas/.github/workflows/ci.yml +100 -0
- modules/caas/.github/workflows/lint.yml +39 -0
- modules/caas/.github/workflows/publish-pypi.yml +124 -0
- modules/caas/.gitignore +73 -0
- modules/caas/.pre-commit-config.yaml +33 -0
- modules/caas/CHANGELOG.md +58 -0
- modules/caas/CONTRIBUTING.md +346 -0
- modules/caas/Dockerfile +41 -0
- modules/caas/LICENSE +21 -0
- modules/caas/MANIFEST.in +11 -0
- modules/caas/README.md +158 -0
- modules/caas/benchmarks/README.md +255 -0
- modules/caas/benchmarks/create_hf_dataset.py +502 -0
- modules/caas/benchmarks/data/sample_corpus/README.md +86 -0
- modules/caas/benchmarks/data/sample_corpus/auth_module.py +211 -0
- modules/caas/benchmarks/data/sample_corpus/contribution_guide.md +185 -0
- modules/caas/benchmarks/data/sample_corpus/remote_work_policy.html +57 -0
- modules/caas/benchmarks/hf_dataset/README.md +214 -0
- modules/caas/benchmarks/hf_dataset/caas_benchmark_corpus.py +73 -0
- modules/caas/benchmarks/hf_dataset/corpus_preview.json +193 -0
- modules/caas/benchmarks/results/README.md +66 -0
- modules/caas/benchmarks/results/evaluation_2026-01-20.json +121 -0
- modules/caas/benchmarks/run_evaluation.py +561 -0
- modules/caas/benchmarks/statistical_tests.py +289 -0
- modules/caas/benchmarks/verify_sample_corpus.py +83 -0
- modules/caas/docker-compose.yml +38 -0
- modules/caas/docs/CONTEXT_TRIAD.md +462 -0
- modules/caas/docs/CONTRIBUTING.md +346 -0
- modules/caas/docs/ETHICS_AND_LIMITATIONS.md +336 -0
- modules/caas/docs/HEURISTIC_ROUTER.md +442 -0
- modules/caas/docs/IMPLEMENTATION_SUMMARY.md +363 -0
- modules/caas/docs/IMPLEMENTATION_SUMMARY_CONTEXT_TRIAD.md +277 -0
- modules/caas/docs/IMPLEMENTATION_SUMMARY_HEURISTIC_ROUTER.md +231 -0
- modules/caas/docs/IMPLEMENTATION_SUMMARY_METADATA_INJECTION.md +258 -0
- modules/caas/docs/IMPLEMENTATION_SUMMARY_PRAGMATIC_TRUTH.md +212 -0
- modules/caas/docs/IMPLEMENTATION_SUMMARY_TRUST_GATEWAY.md +319 -0
- modules/caas/docs/LAYER_1_PRIMITIVE.md +202 -0
- modules/caas/docs/METADATA_INJECTION.md +404 -0
- modules/caas/docs/PRAGMATIC_TRUTH.md +431 -0
- modules/caas/docs/RELATED_WORK.md +312 -0
- modules/caas/docs/RELEASE_CHECKLIST.md +219 -0
- modules/caas/docs/RELEASE_GUIDE.md +285 -0
- modules/caas/docs/REPRODUCIBILITY.md +386 -0
- modules/caas/docs/SLIDING_WINDOW.md +387 -0
- modules/caas/docs/STRUCTURE_AWARE_INDEXING.md +158 -0
- modules/caas/docs/TESTING.md +259 -0
- modules/caas/docs/THREAT_MODEL.md +247 -0
- modules/caas/docs/TRUST_GATEWAY.md +575 -0
- modules/caas/docs/VFS.md +298 -0
- modules/caas/examples/agents/enterprise_security_agent.py +414 -0
- modules/caas/examples/agents/intelligent_document_analyzer.py +380 -0
- modules/caas/examples/demos/demo.py +309 -0
- modules/caas/examples/demos/demo_context_triad.py +225 -0
- modules/caas/examples/demos/demo_conversation_manager.py +285 -0
- modules/caas/examples/demos/demo_heuristic_router.py +133 -0
- modules/caas/examples/demos/demo_metadata_injection.py +198 -0
- modules/caas/examples/demos/demo_pragmatic_truth.py +303 -0
- modules/caas/examples/demos/demo_structure_aware.py +140 -0
- modules/caas/examples/demos/demo_time_decay.py +247 -0
- modules/caas/examples/demos/demo_trust_gateway.py +383 -0
- modules/caas/examples/multi_agent/README.md +159 -0
- modules/caas/examples/multi_agent/research_team.py +369 -0
- modules/caas/examples/multi_agent/vfs_collaboration.py +393 -0
- modules/caas/examples/usage/auth_module.py +142 -0
- modules/caas/examples/usage/usage_example.py +173 -0
- modules/caas/experiments/README.md +42 -0
- modules/caas/experiments/reproduce_results.py +462 -0
- modules/caas/paper/ARXIV_METADATA.md +145 -0
- modules/caas/paper/ARXIV_README.md +47 -0
- modules/caas/paper/CHECKLIST.md +103 -0
- modules/caas/paper/GITHUB_RELEASE_NOTES.md +105 -0
- modules/caas/paper/README.md +71 -0
- modules/caas/paper/abstract.md +24 -0
- modules/caas/paper/arxiv_submission.tar +0 -0
- modules/caas/paper/arxiv_submission.zip +0 -0
- modules/caas/paper/build_pdf.py +355 -0
- modules/caas/paper/experiments.md +149 -0
- modules/caas/paper/figures/.gitkeep +0 -0
- modules/caas/paper/figures/README.md +237 -0
- modules/caas/paper/figures/fig1_system_architecture.png +0 -0
- modules/caas/paper/figures/fig1_system_architecture.svg +198 -0
- modules/caas/paper/figures/fig2_context_triad.png +0 -0
- modules/caas/paper/figures/fig2_context_triad.svg +105 -0
- modules/caas/paper/figures/fig3_ablation_results.png +0 -0
- modules/caas/paper/figures/fig3_ablation_results.svg +113 -0
- modules/caas/paper/figures/fig4_routing_latency.png +0 -0
- modules/caas/paper/figures/fig4_routing_latency.svg +97 -0
- modules/caas/paper/intro.md +103 -0
- modules/caas/paper/latex/figures/fig1_system_architecture.png +0 -0
- modules/caas/paper/latex/figures/fig2_context_triad.png +0 -0
- modules/caas/paper/latex/figures/fig3_ablation_results.png +0 -0
- modules/caas/paper/latex/figures/fig4_routing_latency.png +0 -0
- modules/caas/paper/latex/main.tex +468 -0
- modules/caas/paper/latex/references.bib +140 -0
- modules/caas/paper/method.md +350 -0
- modules/caas/paper/outline.md +123 -0
- modules/caas/paper/related_work.md +101 -0
- modules/caas/paper/tables/.gitkeep +0 -0
- modules/caas/paper/tables/results_tables.md +50 -0
- modules/caas/pyproject.toml +172 -0
- modules/caas/requirements.txt +11 -0
- modules/caas/src/caas/__init__.py +232 -0
- modules/caas/src/caas/api/__init__.py +7 -0
- modules/caas/src/caas/api/server.py +1326 -0
- modules/caas/src/caas/caching.py +832 -0
- modules/caas/src/caas/cli.py +208 -0
- modules/caas/src/caas/conversation.py +221 -0
- modules/caas/src/caas/decay.py +118 -0
- modules/caas/src/caas/detection/__init__.py +7 -0
- modules/caas/src/caas/detection/detector.py +236 -0
- modules/caas/src/caas/enrichment.py +127 -0
- modules/caas/src/caas/gateway/__init__.py +24 -0
- modules/caas/src/caas/gateway/trust_gateway.py +471 -0
- modules/caas/src/caas/hf_utils.py +477 -0
- modules/caas/src/caas/ingestion/__init__.py +21 -0
- modules/caas/src/caas/ingestion/processors.py +251 -0
- modules/caas/src/caas/ingestion/structure_parser.py +185 -0
- modules/caas/src/caas/models.py +354 -0
- modules/caas/src/caas/pragmatic_truth.py +441 -0
- modules/caas/src/caas/routing/__init__.py +8 -0
- modules/caas/src/caas/routing/heuristic_router.py +242 -0
- modules/caas/src/caas/storage/__init__.py +7 -0
- modules/caas/src/caas/storage/store.py +450 -0
- modules/caas/src/caas/triad.py +472 -0
- modules/caas/src/caas/tuning/__init__.py +7 -0
- modules/caas/src/caas/tuning/tuner.py +322 -0
- modules/caas/src/caas/vfs/__init__.py +12 -0
- modules/caas/src/caas/vfs/filesystem.py +450 -0
- modules/caas/tests/__init__.py +3 -0
- modules/caas/tests/conftest.py +8 -0
- modules/caas/tests/test_caching.py +628 -0
- modules/caas/tests/test_context_triad.py +385 -0
- modules/caas/tests/test_conversation_manager.py +289 -0
- modules/caas/tests/test_functionality.py +215 -0
- modules/caas/tests/test_heuristic_router.py +370 -0
- modules/caas/tests/test_metadata_injection.py +328 -0
- modules/caas/tests/test_pragmatic_truth.py +322 -0
- modules/caas/tests/test_structure_aware_indexing.py +283 -0
- modules/caas/tests/test_time_decay.py +268 -0
- modules/caas/tests/test_trust_gateway.py +445 -0
- modules/caas/tests/test_vfs.py +298 -0
- modules/cmvk/.github/FUNDING.yml +9 -0
- modules/cmvk/.github/dependabot.yml +54 -0
- modules/cmvk/.github/workflows/ci.yml +205 -0
- modules/cmvk/.github/workflows/publish.yml +143 -0
- modules/cmvk/.gitignore +147 -0
- modules/cmvk/.pre-commit-config.yaml +58 -0
- modules/cmvk/CHANGELOG.md +146 -0
- modules/cmvk/CITATION.cff +48 -0
- modules/cmvk/CONTRIBUTING.md +229 -0
- modules/cmvk/Dockerfile +87 -0
- modules/cmvk/HF_MODEL_CARD.md +185 -0
- modules/cmvk/LICENSE +21 -0
- modules/cmvk/README.md +149 -0
- modules/cmvk/SECURITY.md +114 -0
- modules/cmvk/config/prompts/generator_v1.txt +23 -0
- modules/cmvk/config/prompts/verifier_hostile.txt +32 -0
- modules/cmvk/config/settings.yaml +40 -0
- modules/cmvk/coverage_html/.gitignore +2 -0
- modules/cmvk/coverage_html/class_index.html +658 -0
- modules/cmvk/coverage_html/coverage_html_cb_188fc9a4.js +735 -0
- modules/cmvk/coverage_html/favicon_32_cb_c827f16f.png +0 -0
- modules/cmvk/coverage_html/function_index.html +1978 -0
- modules/cmvk/coverage_html/index.html +255 -0
- modules/cmvk/coverage_html/keybd_closed_cb_900cfef5.png +0 -0
- modules/cmvk/coverage_html/status.json +1 -0
- modules/cmvk/coverage_html/style_cb_5c747636.css +389 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38___init___py.html +315 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38_audit_py.html +499 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38_benchmarks_py.html +575 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38_constitutional_py.html +1001 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38_hf_utils_py.html +398 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38_metrics_py.html +570 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38_profiles_py.html +397 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38_types_py.html +109 -0
- modules/cmvk/coverage_html/z_2c49bd2ed3e01e38_verification_py.html +1053 -0
- modules/cmvk/docs/DIAGRAMS.md +325 -0
- modules/cmvk/docs/architecture.md +345 -0
- modules/cmvk/docs/features.md +308 -0
- modules/cmvk/docs/getting_started.md +279 -0
- modules/cmvk/docs/innovation_layer.md +377 -0
- modules/cmvk/docs/safety.md +281 -0
- modules/cmvk/docs/traceability.md +150 -0
- modules/cmvk/examples/basic_example.py +62 -0
- modules/cmvk/examples/demo_complete_pipeline.py +209 -0
- modules/cmvk/examples/demo_innovation_layer.py +197 -0
- modules/cmvk/examples/example.py +112 -0
- modules/cmvk/examples/model_diversity_comparison.py +110 -0
- modules/cmvk/examples/real_api_integration.py +121 -0
- modules/cmvk/examples/test_full_pipeline.py +303 -0
- modules/cmvk/experiments/FEATURE_2_LATERAL_THINKING.md +187 -0
- modules/cmvk/experiments/README.md +216 -0
- modules/cmvk/experiments/ablation_runner.py +666 -0
- modules/cmvk/experiments/baseline_runner.py +158 -0
- modules/cmvk/experiments/blind_spot_benchmark.py +364 -0
- modules/cmvk/experiments/datasets/README.md +85 -0
- modules/cmvk/experiments/datasets/humaneval_50.json +352 -0
- modules/cmvk/experiments/datasets/humaneval_full.json +1150 -0
- modules/cmvk/experiments/datasets/humaneval_sample.json +32 -0
- modules/cmvk/experiments/datasets/sabotage.json +262 -0
- modules/cmvk/experiments/datasets/sample.json +40 -0
- modules/cmvk/experiments/demo_with_traces.py +110 -0
- modules/cmvk/experiments/efficiency_curve.py +259 -0
- modules/cmvk/experiments/experiment_runner.py +243 -0
- modules/cmvk/experiments/paper_data_generator.py +183 -0
- modules/cmvk/experiments/reproduce_results.py +407 -0
- modules/cmvk/experiments/reproducible_runner.py +352 -0
- modules/cmvk/experiments/sabotage_stress_test.py +311 -0
- modules/cmvk/experiments/test_lateral_thinking.py +116 -0
- modules/cmvk/experiments/test_prosecutor.py +41 -0
- modules/cmvk/experiments/visualize_results.py +735 -0
- modules/cmvk/logs/traces/demo_HumanEval_0_20260121-204900.json +36 -0
- modules/cmvk/notebooks/analysis.ipynb +124 -0
- modules/cmvk/paper/PAPER.md +561 -0
- modules/cmvk/paper/arxiv_checklist.md +230 -0
- modules/cmvk/paper/cmvk_neurips.aux +77 -0
- modules/cmvk/paper/cmvk_neurips.bbl +81 -0
- modules/cmvk/paper/cmvk_neurips.blg +48 -0
- modules/cmvk/paper/cmvk_neurips.out +16 -0
- modules/cmvk/paper/cmvk_neurips.pdf +0 -0
- modules/cmvk/paper/cmvk_neurips.tex +309 -0
- modules/cmvk/paper/figures/ablation.png +0 -0
- modules/cmvk/paper/figures/ablation.svg +39 -0
- modules/cmvk/paper/figures/architecture.png +0 -0
- modules/cmvk/paper/figures/architecture.svg +115 -0
- modules/cmvk/paper/figures/results_bar.png +0 -0
- modules/cmvk/paper/figures/results_bar.svg +70 -0
- modules/cmvk/paper/generate_figures.py +383 -0
- modules/cmvk/paper/neurips_2024.sty +101 -0
- modules/cmvk/paper/references.bib +98 -0
- modules/cmvk/paper/structure.tex +200 -0
- modules/cmvk/pyproject.toml +189 -0
- modules/cmvk/requirements-dev.txt +19 -0
- modules/cmvk/requirements.txt +14 -0
- modules/cmvk/src/cmvk/__init__.py +216 -0
- modules/cmvk/src/cmvk/audit.py +400 -0
- modules/cmvk/src/cmvk/benchmarks.py +476 -0
- modules/cmvk/src/cmvk/constitutional.py +902 -0
- modules/cmvk/src/cmvk/hf_utils.py +299 -0
- modules/cmvk/src/cmvk/metrics.py +471 -0
- modules/cmvk/src/cmvk/profiles.py +298 -0
- modules/cmvk/src/cmvk/py.typed +0 -0
- modules/cmvk/src/cmvk/types.py +10 -0
- modules/cmvk/src/cmvk/verification.py +954 -0
- modules/cmvk/src/cross_model_verification_kernel/__init__.py +91 -0
- modules/cmvk/src/cross_model_verification_kernel/__main__.py +10 -0
- modules/cmvk/src/cross_model_verification_kernel/agents/__init__.py +16 -0
- modules/cmvk/src/cross_model_verification_kernel/agents/base_agent.py +142 -0
- modules/cmvk/src/cross_model_verification_kernel/agents/generator_openai.py +223 -0
- modules/cmvk/src/cross_model_verification_kernel/agents/verifier_anthropic.py +448 -0
- modules/cmvk/src/cross_model_verification_kernel/agents/verifier_gemini.py +481 -0
- modules/cmvk/src/cross_model_verification_kernel/cli.py +570 -0
- modules/cmvk/src/cross_model_verification_kernel/core/__init__.py +26 -0
- modules/cmvk/src/cross_model_verification_kernel/core/graph_memory.py +308 -0
- modules/cmvk/src/cross_model_verification_kernel/core/kernel.py +413 -0
- modules/cmvk/src/cross_model_verification_kernel/core/trace_logger.py +75 -0
- modules/cmvk/src/cross_model_verification_kernel/core/types.py +121 -0
- modules/cmvk/src/cross_model_verification_kernel/datasets/__init__.py +20 -0
- modules/cmvk/src/cross_model_verification_kernel/datasets/humaneval_loader.py +271 -0
- modules/cmvk/src/cross_model_verification_kernel/generator.py +118 -0
- modules/cmvk/src/cross_model_verification_kernel/kernel.py +292 -0
- modules/cmvk/src/cross_model_verification_kernel/models.py +111 -0
- modules/cmvk/src/cross_model_verification_kernel/py.typed +1 -0
- modules/cmvk/src/cross_model_verification_kernel/simple_kernel.py +185 -0
- modules/cmvk/src/cross_model_verification_kernel/tools/__init__.py +94 -0
- modules/cmvk/src/cross_model_verification_kernel/tools/huggingface_upload.py +394 -0
- modules/cmvk/src/cross_model_verification_kernel/tools/sandbox.py +159 -0
- modules/cmvk/src/cross_model_verification_kernel/tools/statistics.py +468 -0
- modules/cmvk/src/cross_model_verification_kernel/tools/visualizer.py +312 -0
- modules/cmvk/src/cross_model_verification_kernel/tools/web_search.py +86 -0
- modules/cmvk/src/cross_model_verification_kernel/verifier.py +257 -0
- modules/cmvk/tests/__init__.py +3 -0
- modules/cmvk/tests/conftest.py +61 -0
- modules/cmvk/tests/integration/__init__.py +1 -0
- modules/cmvk/tests/integration/test_anthropic_verifier.py +269 -0
- modules/cmvk/tests/integration/test_integration.py +53 -0
- modules/cmvk/tests/integration/test_lateral_thinking_integration.py +199 -0
- modules/cmvk/tests/integration/test_lateral_thinking_witness.py +208 -0
- modules/cmvk/tests/integration/test_prosecutor_mode.py +131 -0
- modules/cmvk/tests/test_constitutional.py +611 -0
- modules/cmvk/tests/test_enhanced_features.py +603 -0
- modules/cmvk/tests/test_verification.py +255 -0
- modules/cmvk/tests/unit/__init__.py +1 -0
- modules/cmvk/tests/unit/test_agents.py +64 -0
- modules/cmvk/tests/unit/test_cli.py +224 -0
- modules/cmvk/tests/unit/test_core.py +126 -0
- modules/cmvk/tests/unit/test_humaneval_loader.py +197 -0
- modules/cmvk/tests/unit/test_kernel.py +255 -0
- modules/cmvk/tests/unit/test_reproducibility.py +160 -0
- modules/cmvk/tests/unit/test_trace_logger.py +115 -0
- modules/cmvk/tests/unit/test_visualizer.py +218 -0
- modules/control-plane/.github/ISSUE_TEMPLATE/bug_report.yml +82 -0
- modules/control-plane/.github/ISSUE_TEMPLATE/config.yml +11 -0
- modules/control-plane/.github/ISSUE_TEMPLATE/feature_request.yml +104 -0
- modules/control-plane/.github/ISSUE_TEMPLATE/question.yml +70 -0
- modules/control-plane/.github/ISSUE_TEMPLATE/security_vulnerability.yml +84 -0
- modules/control-plane/.github/discussions.yml +73 -0
- modules/control-plane/.github/pull_request_template.md +82 -0
- modules/control-plane/.github/workflows/publish.yml +146 -0
- modules/control-plane/.github/workflows/release.yml +39 -0
- modules/control-plane/.github/workflows/tests.yml +58 -0
- modules/control-plane/.gitignore +55 -0
- modules/control-plane/CHANGELOG.md +203 -0
- modules/control-plane/CONTRIBUTING.md +311 -0
- modules/control-plane/CONTRIBUTORS.md +88 -0
- modules/control-plane/Dockerfile +82 -0
- modules/control-plane/LICENSE +21 -0
- modules/control-plane/MANIFEST.in +17 -0
- modules/control-plane/README.md +1264 -0
- modules/control-plane/ROADMAP.md +228 -0
- modules/control-plane/SECURITY.md +210 -0
- modules/control-plane/SUPPORT.md +106 -0
- modules/control-plane/acp-cli.py +212 -0
- modules/control-plane/benchmark/README.md +257 -0
- modules/control-plane/benchmark/__init__.py +19 -0
- modules/control-plane/benchmark/red_team_dataset.py +517 -0
- modules/control-plane/benchmark.py +563 -0
- modules/control-plane/build_and_publish.sh +130 -0
- modules/control-plane/docker-compose.yml +74 -0
- modules/control-plane/docs/ABLATION_STUDIES.md +528 -0
- modules/control-plane/docs/ADAPTER_GUIDE.md +544 -0
- modules/control-plane/docs/ADVANCED_FEATURES.md +543 -0
- modules/control-plane/docs/AIOS_COMPARISON.md +296 -0
- modules/control-plane/docs/BIBLIOGRAPHY.md +367 -0
- modules/control-plane/docs/CASE_STUDIES.md +645 -0
- modules/control-plane/docs/DOCKER_DEPLOYMENT.md +184 -0
- modules/control-plane/docs/ECOSYSTEM_STATUS.md +98 -0
- modules/control-plane/docs/HF_MODEL_CARD.md +168 -0
- modules/control-plane/docs/KERNEL_V1_RELEASE.md +454 -0
- modules/control-plane/docs/LAYER3_FRAMEWORK.md +227 -0
- modules/control-plane/docs/LIMITATIONS.md +523 -0
- modules/control-plane/docs/PYPI_PUBLISHING.md +195 -0
- modules/control-plane/docs/README.md +58 -0
- modules/control-plane/docs/RELATED_WORK.md +319 -0
- modules/control-plane/docs/RELEASE_v1.1.0.md +252 -0
- modules/control-plane/docs/REPRODUCIBILITY.md +540 -0
- modules/control-plane/docs/RESEARCH_FOUNDATION.md +197 -0
- modules/control-plane/docs/api/CORE.md +270 -0
- modules/control-plane/docs/architecture/architecture.md +120 -0
- modules/control-plane/docs/community/ANNOUNCEMENT_TEMPLATES.md +52 -0
- modules/control-plane/docs/guides/IMPLEMENTATION.md +225 -0
- modules/control-plane/docs/guides/PHILOSOPHY.md +354 -0
- modules/control-plane/docs/guides/QUICKSTART.md +217 -0
- modules/control-plane/examples/README.md +138 -0
- modules/control-plane/examples/a2a_demo.py +410 -0
- modules/control-plane/examples/adapter_demo.py +347 -0
- modules/control-plane/examples/advanced_features.py +403 -0
- modules/control-plane/examples/basic_usage.py +261 -0
- modules/control-plane/examples/benchmark_demo.py +186 -0
- modules/control-plane/examples/compliance_demo.py +333 -0
- modules/control-plane/examples/configuration.py +265 -0
- modules/control-plane/examples/getting_started.py +178 -0
- modules/control-plane/examples/hibernation_and_time_travel_demo.py +406 -0
- modules/control-plane/examples/interactive_tutorial.ipynb +497 -0
- modules/control-plane/examples/kernel_interceptor_demo.py +202 -0
- modules/control-plane/examples/kernel_v1_demo.py +273 -0
- modules/control-plane/examples/langchain_demo.py +281 -0
- modules/control-plane/examples/lifecycle_demo.py +724 -0
- modules/control-plane/examples/mcp_demo.py +378 -0
- modules/control-plane/examples/ml_safety_demo.py +157 -0
- modules/control-plane/examples/multimodal_demo.py +347 -0
- modules/control-plane/examples/observability_demo.py +370 -0
- modules/control-plane/examples/use_cases.py +336 -0
- modules/control-plane/experiments/long_horizon_purge.py +235 -0
- modules/control-plane/experiments/multi_agent_rag.py +165 -0
- modules/control-plane/experiments/reproduce_results.py +667 -0
- modules/control-plane/paper/ARXIV_SUBMISSION_INFO.txt +122 -0
- modules/control-plane/paper/ETHICS_STATEMENT.md +248 -0
- modules/control-plane/paper/PAPER_CHECKLIST.md +72 -0
- modules/control-plane/paper/Paper.pdf +0 -0
- modules/control-plane/paper/README.md +71 -0
- modules/control-plane/paper/appendix.md +152 -0
- modules/control-plane/paper/architecture.md +15 -0
- modules/control-plane/paper/arxiv/figures/ablation_chart.png +0 -0
- modules/control-plane/paper/arxiv/figures/architecture.png +0 -0
- modules/control-plane/paper/arxiv/figures/constraint_graphs.png +0 -0
- modules/control-plane/paper/arxiv/figures/results_chart.png +0 -0
- modules/control-plane/paper/arxiv/main.aux +97 -0
- modules/control-plane/paper/arxiv/main.bbl +112 -0
- modules/control-plane/paper/arxiv/main.blg +48 -0
- modules/control-plane/paper/arxiv/main.out +33 -0
- modules/control-plane/paper/arxiv/main.pdf +0 -0
- modules/control-plane/paper/arxiv/main.tex +479 -0
- modules/control-plane/paper/arxiv/references.bib +234 -0
- modules/control-plane/paper/arxiv_submission.tar +0 -0
- modules/control-plane/paper/arxiv_submission.zip +0 -0
- modules/control-plane/paper/build.sh +68 -0
- modules/control-plane/paper/figures/README.md +47 -0
- modules/control-plane/paper/figures/ablation_chart.pdf +0 -0
- modules/control-plane/paper/figures/ablation_chart.png +0 -0
- modules/control-plane/paper/figures/architecture.pdf +0 -0
- modules/control-plane/paper/figures/architecture.png +0 -0
- modules/control-plane/paper/figures/constraint_graphs.pdf +0 -0
- modules/control-plane/paper/figures/constraint_graphs.png +0 -0
- modules/control-plane/paper/figures/generate_figures.py +252 -0
- modules/control-plane/paper/figures/results_chart.pdf +0 -0
- modules/control-plane/paper/figures/results_chart.png +0 -0
- modules/control-plane/paper/main.md +273 -0
- modules/control-plane/paper/main.tex +214 -0
- modules/control-plane/paper/main_arxiv.aux +53 -0
- modules/control-plane/paper/main_arxiv.out +17 -0
- modules/control-plane/paper/main_arxiv.pdf +0 -0
- modules/control-plane/paper/main_arxiv.tex +264 -0
- modules/control-plane/paper/references.bib +234 -0
- modules/control-plane/pyproject.toml +124 -0
- modules/control-plane/reproducibility/ABLATIONS.md +136 -0
- modules/control-plane/reproducibility/README.md +288 -0
- modules/control-plane/reproducibility/commands.md +467 -0
- modules/control-plane/reproducibility/docker_config/Dockerfile +39 -0
- modules/control-plane/reproducibility/experiment_configs/purge_config.json +46 -0
- modules/control-plane/reproducibility/experiment_configs/rag_config.json +36 -0
- modules/control-plane/reproducibility/hardware_specs.md +317 -0
- modules/control-plane/reproducibility/requirements_frozen.txt +0 -0
- modules/control-plane/reproducibility/run_all_experiments.sh +45 -0
- modules/control-plane/reproducibility/seeds.json +106 -0
- modules/control-plane/scripts/prepare_pypi.py +46 -0
- modules/control-plane/scripts/prepare_release.py +176 -0
- modules/control-plane/scripts/upload_dataset_to_hf.py +316 -0
- modules/control-plane/setup.py +69 -0
- modules/control-plane/src/agent_control_plane/__init__.py +639 -0
- modules/control-plane/src/agent_control_plane/a2a_adapter.py +541 -0
- modules/control-plane/src/agent_control_plane/adapter.py +415 -0
- modules/control-plane/src/agent_control_plane/agent_hibernation.py +364 -0
- modules/control-plane/src/agent_control_plane/agent_kernel.py +464 -0
- modules/control-plane/src/agent_control_plane/compliance.py +718 -0
- modules/control-plane/src/agent_control_plane/constraint_graphs.py +475 -0
- modules/control-plane/src/agent_control_plane/control_plane.py +848 -0
- modules/control-plane/src/agent_control_plane/example_executors.py +193 -0
- modules/control-plane/src/agent_control_plane/execution_engine.py +229 -0
- modules/control-plane/src/agent_control_plane/flight_recorder.py +600 -0
- modules/control-plane/src/agent_control_plane/governance_layer.py +432 -0
- modules/control-plane/src/agent_control_plane/hf_utils.py +561 -0
- modules/control-plane/src/agent_control_plane/interfaces/__init__.py +53 -0
- modules/control-plane/src/agent_control_plane/interfaces/kernel_interface.py +359 -0
- modules/control-plane/src/agent_control_plane/interfaces/plugin_interface.py +495 -0
- modules/control-plane/src/agent_control_plane/interfaces/protocol_interfaces.py +385 -0
- modules/control-plane/src/agent_control_plane/kernel_space.py +707 -0
- modules/control-plane/src/agent_control_plane/langchain_adapter.py +422 -0
- modules/control-plane/src/agent_control_plane/lifecycle.py +3111 -0
- modules/control-plane/src/agent_control_plane/mcp_adapter.py +517 -0
- modules/control-plane/src/agent_control_plane/ml_safety.py +560 -0
- modules/control-plane/src/agent_control_plane/multimodal.py +724 -0
- modules/control-plane/src/agent_control_plane/mute_agent.py +419 -0
- modules/control-plane/src/agent_control_plane/observability.py +785 -0
- modules/control-plane/src/agent_control_plane/orchestrator.py +480 -0
- modules/control-plane/src/agent_control_plane/plugin_registry.py +748 -0
- modules/control-plane/src/agent_control_plane/policy_engine.py +525 -0
- modules/control-plane/src/agent_control_plane/shadow_mode.py +307 -0
- modules/control-plane/src/agent_control_plane/signals.py +491 -0
- modules/control-plane/src/agent_control_plane/supervisor_agents.py +427 -0
- modules/control-plane/src/agent_control_plane/time_travel_debugger.py +554 -0
- modules/control-plane/src/agent_control_plane/tool_registry.py +350 -0
- modules/control-plane/src/agent_control_plane/vfs.py +695 -0
- modules/control-plane/tests/README.md +33 -0
- modules/control-plane/tests/test_a2a_adapter.py +336 -0
- modules/control-plane/tests/test_adapter.py +422 -0
- modules/control-plane/tests/test_advanced_features.py +389 -0
- modules/control-plane/tests/test_benchmark.py +223 -0
- modules/control-plane/tests/test_compliance.py +214 -0
- modules/control-plane/tests/test_control_plane.py +295 -0
- modules/control-plane/tests/test_hibernation.py +274 -0
- modules/control-plane/tests/test_kernel_interception.py +284 -0
- modules/control-plane/tests/test_langchain_adapter.py +258 -0
- modules/control-plane/tests/test_lifecycle.py +1174 -0
- modules/control-plane/tests/test_mcp_adapter.py +293 -0
- modules/control-plane/tests/test_ml_safety.py +142 -0
- modules/control-plane/tests/test_multimodal.py +317 -0
- modules/control-plane/tests/test_new_features.py +435 -0
- modules/control-plane/tests/test_observability.py +338 -0
- modules/control-plane/tests/test_time_travel.py +387 -0
- modules/emk/.github/workflows/ci.yml +105 -0
- modules/emk/.github/workflows/publish.yml +144 -0
- modules/emk/.gitignore +74 -0
- modules/emk/CHANGELOG.md +41 -0
- modules/emk/CONTRIBUTING.md +295 -0
- modules/emk/IMPLEMENTATION.md +174 -0
- modules/emk/LICENSE +21 -0
- modules/emk/MANIFEST.in +8 -0
- modules/emk/README.md +135 -0
- modules/emk/RELEASE_NOTES.md +82 -0
- modules/emk/SECURITY.md +52 -0
- modules/emk/codecov.yml +39 -0
- modules/emk/docs/MEMORY_MANAGEMENT.md +285 -0
- modules/emk/emk/__init__.py +106 -0
- modules/emk/emk/hf_utils.py +419 -0
- modules/emk/emk/indexer.py +144 -0
- modules/emk/emk/py.typed +0 -0
- modules/emk/emk/schema.py +204 -0
- modules/emk/emk/sleep_cycle.py +345 -0
- modules/emk/emk/store.py +479 -0
- modules/emk/examples/basic_usage.py +123 -0
- modules/emk/examples/memory_features_demo.py +154 -0
- modules/emk/experiments/README.md +59 -0
- modules/emk/experiments/reproduce_results.py +461 -0
- modules/emk/experiments/results.json +61 -0
- modules/emk/paper/structure.tex +192 -0
- modules/emk/paper/whitepaper.md +273 -0
- modules/emk/pyproject.toml +91 -0
- modules/emk/setup.py +5 -0
- modules/emk/tests/test_file_adapter.py +195 -0
- modules/emk/tests/test_indexer.py +174 -0
- modules/emk/tests/test_init.py +55 -0
- modules/emk/tests/test_negative_memory.py +83 -0
- modules/emk/tests/test_schema.py +150 -0
- modules/emk/tests/test_semantic_rules.py +175 -0
- modules/emk/tests/test_sleep_cycle.py +335 -0
- modules/emk/tests/test_store_anti_patterns.py +239 -0
- modules/iatp/.github/workflows/docker-build.yml +124 -0
- modules/iatp/.github/workflows/publish.yml +174 -0
- modules/iatp/.github/workflows/python-package.yml +121 -0
- modules/iatp/.gitignore +67 -0
- modules/iatp/.pre-commit-config.yaml +64 -0
- modules/iatp/CHANGELOG.md +120 -0
- modules/iatp/Dockerfile +91 -0
- modules/iatp/IMPLEMENTATION_SUMMARY.md +218 -0
- modules/iatp/MANIFEST.in +9 -0
- modules/iatp/README.md +180 -0
- modules/iatp/docker/Dockerfile.agent +27 -0
- modules/iatp/docker/Dockerfile.sidecar-python +86 -0
- modules/iatp/docker/README.md +258 -0
- modules/iatp/docker-compose.yml +194 -0
- modules/iatp/docs/ARCHITECTURE.md +243 -0
- modules/iatp/docs/CLI_GUIDE.md +220 -0
- modules/iatp/docs/DEPLOYMENT.md +304 -0
- modules/iatp/examples/README.md +132 -0
- modules/iatp/examples/backend_agent.py +39 -0
- modules/iatp/examples/client.py +168 -0
- modules/iatp/examples/demo_attestation_reputation.py +274 -0
- modules/iatp/examples/demo_client.py +240 -0
- modules/iatp/examples/demo_rbac.py +143 -0
- modules/iatp/examples/integration_demo.py +245 -0
- modules/iatp/examples/manifests/coder_agent.json +20 -0
- modules/iatp/examples/manifests/reviewer_agent.json +19 -0
- modules/iatp/examples/manifests/secure_bank.json +14 -0
- modules/iatp/examples/manifests/standard_agent.json +14 -0
- modules/iatp/examples/manifests/untrusted_honeypot.json +14 -0
- modules/iatp/examples/run_secure_bank_sidecar.py +85 -0
- modules/iatp/examples/run_sidecar.py +105 -0
- modules/iatp/examples/run_untrusted_sidecar.py +77 -0
- modules/iatp/examples/secure_bank_agent.py +138 -0
- modules/iatp/examples/test_untrusted.py +82 -0
- modules/iatp/examples/untrusted_agent.py +119 -0
- modules/iatp/experiments/README.md +58 -0
- modules/iatp/experiments/cascading_hallucination/README.md +149 -0
- modules/iatp/experiments/cascading_hallucination/agent_a_user.py +41 -0
- modules/iatp/experiments/cascading_hallucination/agent_b_summarizer.py +54 -0
- modules/iatp/experiments/cascading_hallucination/agent_c_database.py +47 -0
- modules/iatp/experiments/cascading_hallucination/proof_of_concept.py +290 -0
- modules/iatp/experiments/cascading_hallucination/run_experiment.py +226 -0
- modules/iatp/experiments/cascading_hallucination/sidecar_c.py +61 -0
- modules/iatp/experiments/reproduce_results.py +574 -0
- modules/iatp/experiments/results.json +2336 -0
- modules/iatp/iatp/__init__.py +164 -0
- modules/iatp/iatp/attestation.py +401 -0
- modules/iatp/iatp/cli.py +253 -0
- modules/iatp/iatp/hf_utils.py +469 -0
- modules/iatp/iatp/ipc_pipes.py +578 -0
- modules/iatp/iatp/main.py +410 -0
- modules/iatp/iatp/models/__init__.py +445 -0
- modules/iatp/iatp/policy_engine.py +335 -0
- modules/iatp/iatp/py.typed +2 -0
- modules/iatp/iatp/recovery.py +319 -0
- modules/iatp/iatp/security/__init__.py +268 -0
- modules/iatp/iatp/sidecar/__init__.py +517 -0
- modules/iatp/iatp/telemetry/__init__.py +162 -0
- modules/iatp/iatp/tests/__init__.py +1 -0
- modules/iatp/iatp/tests/test_attestation.py +368 -0
- modules/iatp/iatp/tests/test_cli.py +129 -0
- modules/iatp/iatp/tests/test_models.py +128 -0
- modules/iatp/iatp/tests/test_policy_engine.py +345 -0
- modules/iatp/iatp/tests/test_recovery.py +279 -0
- modules/iatp/iatp/tests/test_security.py +220 -0
- modules/iatp/iatp/tests/test_sidecar.py +165 -0
- modules/iatp/iatp/tests/test_telemetry.py +173 -0
- modules/iatp/paper/BLOG.md +307 -0
- modules/iatp/paper/PAPER.md +236 -0
- modules/iatp/paper/RFC_SUBMISSION.md +299 -0
- modules/iatp/paper/whitepaper.md +369 -0
- modules/iatp/proto/README.md +200 -0
- modules/iatp/proto/generate_stubs.py +81 -0
- modules/iatp/proto/iatp.proto +552 -0
- modules/iatp/pyproject.toml +180 -0
- modules/iatp/requirements-dev.txt +2 -0
- modules/iatp/requirements.txt +6 -0
- modules/iatp/setup.py +60 -0
- modules/iatp/sidecar/README.md +487 -0
- modules/iatp/sidecar/go/Dockerfile +32 -0
- modules/iatp/sidecar/go/README.md +237 -0
- modules/iatp/sidecar/go/go.mod +8 -0
- modules/iatp/sidecar/go/main.go +488 -0
- modules/iatp/spec/001-handshake.md +436 -0
- modules/iatp/spec/002-reversibility.md +394 -0
- modules/iatp/spec/schema/capability_manifest.json +266 -0
- modules/iatp/test_integration.py +310 -0
- modules/mcp-kernel-server/README.md +261 -0
- modules/mcp-kernel-server/pyproject.toml +60 -0
- modules/mcp-kernel-server/src/mcp_kernel_server/__init__.py +26 -0
- modules/mcp-kernel-server/src/mcp_kernel_server/cli.py +229 -0
- modules/mcp-kernel-server/src/mcp_kernel_server/resources.py +215 -0
- modules/mcp-kernel-server/src/mcp_kernel_server/server.py +562 -0
- modules/mcp-kernel-server/src/mcp_kernel_server/tools.py +1172 -0
- modules/mute-agent/.github/workflows/safety_check.yml +45 -0
- modules/mute-agent/.gitignore +53 -0
- modules/mute-agent/ARCHITECTURE.md +531 -0
- modules/mute-agent/BENCHMARK_GUIDE.md +384 -0
- modules/mute-agent/COMPLETION_SUMMARY.md +293 -0
- modules/mute-agent/EXPERIMENT_SUMMARY.md +318 -0
- modules/mute-agent/IMPLEMENTATION_SUMMARY.md +212 -0
- modules/mute-agent/LICENSE +21 -0
- modules/mute-agent/PHASE3_SUMMARY.md +297 -0
- modules/mute-agent/README.md +360 -0
- modules/mute-agent/STEEL_MAN_RESULTS.md +353 -0
- modules/mute-agent/USAGE.md +505 -0
- modules/mute-agent/V2_IMPLEMENTATION_SUMMARY.md +253 -0
- modules/mute-agent/V2_STEEL_MAN_IMPLEMENTATION.md +274 -0
- modules/mute-agent/VERIFICATION_REPORT.md +435 -0
- modules/mute-agent/charts/cost_comparison.png +0 -0
- modules/mute-agent/charts/cost_vs_ambiguity.png +0 -0
- modules/mute-agent/charts/metrics_comparison.png +0 -0
- modules/mute-agent/charts/scenario_breakdown.png +0 -0
- modules/mute-agent/charts/trace_attack_blocked.html +140 -0
- modules/mute-agent/charts/trace_attack_blocked.png +0 -0
- modules/mute-agent/charts/trace_failure.html +140 -0
- modules/mute-agent/charts/trace_failure.png +0 -0
- modules/mute-agent/charts/trace_success.html +140 -0
- modules/mute-agent/charts/trace_success.png +0 -0
- modules/mute-agent/examples/__init__.py +1 -0
- modules/mute-agent/examples/advanced_example.py +384 -0
- modules/mute-agent/examples/graph_debugger_demo.py +241 -0
- modules/mute-agent/examples/listener_example.py +297 -0
- modules/mute-agent/examples/simple_example.py +242 -0
- modules/mute-agent/examples/steel_man_demo.py +297 -0
- modules/mute-agent/experiments/README.md +135 -0
- modules/mute-agent/experiments/__init__.py +3 -0
- modules/mute-agent/experiments/agent_comparison.csv +6 -0
- modules/mute-agent/experiments/agent_comparison_50runs.csv +6 -0
- modules/mute-agent/experiments/ambiguity_test.py +335 -0
- modules/mute-agent/experiments/ambiguity_test_results.csv +31 -0
- modules/mute-agent/experiments/ambiguity_test_results_50runs.csv +51 -0
- modules/mute-agent/experiments/baseline_agent.py +189 -0
- modules/mute-agent/experiments/benchmark.py +402 -0
- modules/mute-agent/experiments/demo.py +172 -0
- modules/mute-agent/experiments/generate_cost_curve.py +474 -0
- modules/mute-agent/experiments/jailbreak_test.py +137 -0
- modules/mute-agent/experiments/latent_state_scenario.py +361 -0
- modules/mute-agent/experiments/mute_agent_experiment.py +349 -0
- modules/mute-agent/experiments/run_extended_experiment.py +40 -0
- modules/mute-agent/experiments/run_v2_experiments.py +266 -0
- modules/mute-agent/experiments/run_v2_experiments_auto.py +247 -0
- modules/mute-agent/experiments/v2_scenarios/README.md +214 -0
- modules/mute-agent/experiments/v2_scenarios/__init__.py +4 -0
- modules/mute-agent/experiments/v2_scenarios/scenario_1_deep_dependency.py +325 -0
- modules/mute-agent/experiments/v2_scenarios/scenario_2_adversarial.py +328 -0
- modules/mute-agent/experiments/v2_scenarios/scenario_3_false_positive.py +303 -0
- modules/mute-agent/experiments/v2_scenarios/scenario_4_performance.py +319 -0
- modules/mute-agent/experiments/visualize.py +400 -0
- modules/mute-agent/mute_agent/__init__.py +66 -0
- modules/mute-agent/mute_agent/core/__init__.py +1 -0
- modules/mute-agent/mute_agent/core/execution_agent.py +164 -0
- modules/mute-agent/mute_agent/core/handshake_protocol.py +199 -0
- modules/mute-agent/mute_agent/core/reasoning_agent.py +236 -0
- modules/mute-agent/mute_agent/knowledge_graph/__init__.py +1 -0
- modules/mute-agent/mute_agent/knowledge_graph/graph_elements.py +63 -0
- modules/mute-agent/mute_agent/knowledge_graph/multidimensional_graph.py +168 -0
- modules/mute-agent/mute_agent/knowledge_graph/subgraph.py +222 -0
- modules/mute-agent/mute_agent/listener/__init__.py +41 -0
- modules/mute-agent/mute_agent/listener/adapters/__init__.py +29 -0
- modules/mute-agent/mute_agent/listener/adapters/base_adapter.py +187 -0
- modules/mute-agent/mute_agent/listener/adapters/caas_adapter.py +342 -0
- modules/mute-agent/mute_agent/listener/adapters/control_plane_adapter.py +434 -0
- modules/mute-agent/mute_agent/listener/adapters/iatp_adapter.py +330 -0
- modules/mute-agent/mute_agent/listener/adapters/scak_adapter.py +249 -0
- modules/mute-agent/mute_agent/listener/listener.py +608 -0
- modules/mute-agent/mute_agent/listener/state_observer.py +434 -0
- modules/mute-agent/mute_agent/listener/threshold_config.py +311 -0
- modules/mute-agent/mute_agent/super_system/__init__.py +1 -0
- modules/mute-agent/mute_agent/super_system/router.py +202 -0
- modules/mute-agent/mute_agent/visualization/__init__.py +8 -0
- modules/mute-agent/mute_agent/visualization/graph_debugger.py +495 -0
- modules/mute-agent/requirements-dev.txt +6 -0
- modules/mute-agent/requirements.txt +9 -0
- modules/mute-agent/setup.py +64 -0
- modules/mute-agent/src/__init__.py +0 -0
- modules/mute-agent/src/agents/__init__.py +0 -0
- modules/mute-agent/src/agents/baseline_agent.py +524 -0
- modules/mute-agent/src/agents/interactive_agent.py +113 -0
- modules/mute-agent/src/agents/mute_agent.py +622 -0
- modules/mute-agent/src/benchmarks/__init__.py +0 -0
- modules/mute-agent/src/benchmarks/evaluator.py +481 -0
- modules/mute-agent/src/benchmarks/scenarios.json +985 -0
- modules/mute-agent/src/core/__init__.py +0 -0
- modules/mute-agent/src/core/mock_state.py +320 -0
- modules/mute-agent/src/core/tools.py +441 -0
- modules/nexus/__init__.py +49 -0
- modules/nexus/arbiter.py +357 -0
- modules/nexus/client.py +464 -0
- modules/nexus/dmz.py +417 -0
- modules/nexus/escrow.py +428 -0
- modules/nexus/exceptions.py +284 -0
- modules/nexus/registry.py +391 -0
- modules/nexus/reputation.py +423 -0
- modules/nexus/schemas/__init__.py +49 -0
- modules/nexus/schemas/compliance.py +274 -0
- modules/nexus/schemas/escrow.py +249 -0
- modules/nexus/schemas/manifest.py +223 -0
- modules/nexus/schemas/receipt.py +206 -0
- modules/observability/README.md +192 -0
- modules/observability/alertmanager/alertmanager.yml +116 -0
- modules/observability/alerts/agent-os-alerts.yaml +197 -0
- modules/observability/docker-compose.yml +128 -0
- modules/observability/grafana/dashboards/agent-os-amb.json +448 -0
- modules/observability/grafana/dashboards/agent-os-cmvk.json +441 -0
- modules/observability/grafana/dashboards/agent-os-overview.json +268 -0
- modules/observability/grafana/dashboards/agent-os-performance.json +15 -0
- modules/observability/grafana/dashboards/agent-os-safety.json +50 -0
- modules/observability/grafana/provisioning/dashboards/dashboards.yml +15 -0
- modules/observability/grafana/provisioning/datasources/datasources.yml +33 -0
- modules/observability/otel/otel-collector-config.yml +61 -0
- modules/observability/prometheus/prometheus.yml +63 -0
- modules/observability/pyproject.toml +53 -0
- modules/observability/scripts/export_dashboards.py +55 -0
- modules/observability/src/agent_os_observability/__init__.py +25 -0
- modules/observability/src/agent_os_observability/dashboards.py +896 -0
- modules/observability/src/agent_os_observability/metrics.py +396 -0
- modules/observability/src/agent_os_observability/server.py +221 -0
- modules/observability/src/agent_os_observability/tracer.py +226 -0
- modules/primitives/.gitignore +8 -0
- modules/primitives/README.md +62 -0
- modules/primitives/agent_primitives/__init__.py +22 -0
- modules/primitives/agent_primitives/failures.py +82 -0
- modules/primitives/agent_primitives/py.typed +0 -0
- modules/primitives/pyproject.toml +68 -0
- modules/scak/.github/copilot-instructions.md +396 -0
- modules/scak/.github/workflows/release.yml +117 -0
- modules/scak/.gitignore +32 -0
- modules/scak/CHANGELOG.md +173 -0
- modules/scak/CITATION.cff +62 -0
- modules/scak/CONTRIBUTING.md +429 -0
- modules/scak/Dockerfile +58 -0
- modules/scak/ENTERPRISE_FEATURES.md +518 -0
- modules/scak/IMPLEMENTATION_SUMMARY.md +206 -0
- modules/scak/LIMITATIONS.md +565 -0
- modules/scak/MANIFEST.in +16 -0
- modules/scak/NOVELTY.md +535 -0
- modules/scak/README.md +928 -0
- modules/scak/RESEARCH.md +670 -0
- modules/scak/agent_kernel/__init__.py +66 -0
- modules/scak/agent_kernel/analyzer.py +432 -0
- modules/scak/agent_kernel/auditor.py +31 -0
- modules/scak/agent_kernel/completeness_auditor.py +234 -0
- modules/scak/agent_kernel/detector.py +200 -0
- modules/scak/agent_kernel/kernel.py +741 -0
- modules/scak/agent_kernel/memory_manager.py +82 -0
- modules/scak/agent_kernel/models.py +372 -0
- modules/scak/agent_kernel/nudge_mechanism.py +260 -0
- modules/scak/agent_kernel/outcome_analyzer.py +335 -0
- modules/scak/agent_kernel/patcher.py +579 -0
- modules/scak/agent_kernel/semantic_analyzer.py +313 -0
- modules/scak/agent_kernel/semantic_purge.py +346 -0
- modules/scak/agent_kernel/simulator.py +447 -0
- modules/scak/agent_kernel/teacher.py +82 -0
- modules/scak/agent_kernel/triage.py +149 -0
- modules/scak/build_and_publish.ps1 +74 -0
- modules/scak/build_and_publish.sh +74 -0
- modules/scak/cli.py +471 -0
- modules/scak/dashboard.py +462 -0
- modules/scak/datasets/DATASET_CARD.md +219 -0
- modules/scak/datasets/README.md +143 -0
- modules/scak/datasets/gaia_vague_queries/vague_queries.json +262 -0
- modules/scak/datasets/hf_upload/README.md +219 -0
- modules/scak/datasets/hf_upload/scak_gaia_laziness.jsonl +50 -0
- modules/scak/datasets/prepare_hf_datasets.py +145 -0
- modules/scak/datasets/red_team/jailbreak_patterns.json +202 -0
- modules/scak/docker-compose.yml +99 -0
- modules/scak/docs/Adaptive-Memory-Hierarchy.md +319 -0
- modules/scak/docs/Data-Contracts-and-Schemas.md +285 -0
- modules/scak/docs/Dual-Loop-Architecture.md +344 -0
- modules/scak/docs/Enhanced-Features.md +612 -0
- modules/scak/docs/LANGCHAIN_INTEGRATION.md +572 -0
- modules/scak/docs/README.md +128 -0
- modules/scak/docs/Reference-Implementations.md +163 -0
- modules/scak/docs/SCAK_V2.md +374 -0
- modules/scak/docs/Three-Failure-Types.md +178 -0
- modules/scak/examples/basic_example.py +155 -0
- modules/scak/examples/circuit_breaker_lazy_eval_demo.py +243 -0
- modules/scak/examples/langchain_integration_example.py +339 -0
- modules/scak/examples/layer4_demo.py +243 -0
- modules/scak/examples/production_features_demo.py +353 -0
- modules/scak/examples/quick_demo.py +79 -0
- modules/scak/examples/scak_v2_demo.py +252 -0
- modules/scak/experiments/README.md +438 -0
- modules/scak/experiments/ablation_studies/README.md +192 -0
- modules/scak/experiments/ablation_studies/ablation_no_audit.py +116 -0
- modules/scak/experiments/ablation_studies/ablation_no_purge.py +133 -0
- modules/scak/experiments/chaos_engineering/README.md +332 -0
- modules/scak/experiments/context_efficiency_test.py +328 -0
- modules/scak/experiments/gaia_benchmark/README.md +208 -0
- modules/scak/experiments/laziness_benchmark.py +179 -0
- modules/scak/experiments/long_horizon_task_experiment.py +252 -0
- modules/scak/experiments/multi_agent_rag_experiment.py +284 -0
- modules/scak/experiments/results/ablation_table.md +12 -0
- modules/scak/experiments/results/long_horizon.json +36 -0
- modules/scak/experiments/results/multi_agent_rag.json +66 -0
- modules/scak/experiments/run_comprehensive_ablations.py +332 -0
- modules/scak/experiments/test_auditor_patcher_integration.py +251 -0
- modules/scak/notebooks/getting_started.ipynb +33 -0
- modules/scak/paper/ARXIV_SUBMISSION_METADATA.txt +109 -0
- modules/scak/paper/PAPER_CHECKLIST.md +304 -0
- modules/scak/paper/Paper.pdf +0 -0
- modules/scak/paper/README.md +113 -0
- modules/scak/paper/appendix.md +351 -0
- modules/scak/paper/arxiv/bibliography.bib +284 -0
- modules/scak/paper/arxiv/fig1_ooda_architecture.pdf +0 -0
- modules/scak/paper/arxiv/fig2_memory_hierarchy.pdf +0 -0
- modules/scak/paper/arxiv/fig3_gaia_results.pdf +0 -0
- modules/scak/paper/arxiv/fig4_ablation_heatmap.pdf +0 -0
- modules/scak/paper/arxiv/fig5_context_reduction.pdf +0 -0
- modules/scak/paper/arxiv/fig6_mttr_boxplot.pdf +0 -0
- modules/scak/paper/arxiv/main.aux +103 -0
- modules/scak/paper/arxiv/main.bbl +113 -0
- modules/scak/paper/arxiv/main.blg +55 -0
- modules/scak/paper/arxiv/main.out +31 -0
- modules/scak/paper/arxiv/main.pdf +0 -0
- modules/scak/paper/arxiv/main.tex +482 -0
- modules/scak/paper/arxiv_submission/bibliography.bib +284 -0
- modules/scak/paper/arxiv_submission/fig1_ooda_architecture.pdf +0 -0
- modules/scak/paper/arxiv_submission/fig2_memory_hierarchy.pdf +0 -0
- modules/scak/paper/arxiv_submission/fig3_gaia_results.pdf +0 -0
- modules/scak/paper/arxiv_submission/fig4_ablation_heatmap.pdf +0 -0
- modules/scak/paper/arxiv_submission/fig5_context_reduction.pdf +0 -0
- modules/scak/paper/arxiv_submission/fig6_mttr_boxplot.pdf +0 -0
- modules/scak/paper/arxiv_submission/main.aux +103 -0
- modules/scak/paper/arxiv_submission/main.bbl +113 -0
- modules/scak/paper/arxiv_submission/main.blg +55 -0
- modules/scak/paper/arxiv_submission/main.out +31 -0
- modules/scak/paper/arxiv_submission/main.pdf +0 -0
- modules/scak/paper/arxiv_submission/main.tex +482 -0
- modules/scak/paper/arxiv_submission.tar.gz +0 -0
- modules/scak/paper/bibliography.bib +284 -0
- modules/scak/paper/build.sh +55 -0
- modules/scak/paper/figures/README.md +32 -0
- modules/scak/paper/figures/fig1_ooda_architecture.md +75 -0
- modules/scak/paper/figures/fig1_ooda_architecture.pdf +0 -0
- modules/scak/paper/figures/fig1_ooda_architecture.png +0 -0
- modules/scak/paper/figures/fig2_memory_hierarchy.md +83 -0
- modules/scak/paper/figures/fig2_memory_hierarchy.pdf +0 -0
- modules/scak/paper/figures/fig2_memory_hierarchy.png +0 -0
- modules/scak/paper/figures/fig3_gaia_results.md +64 -0
- modules/scak/paper/figures/fig3_gaia_results.pdf +0 -0
- modules/scak/paper/figures/fig3_gaia_results.png +0 -0
- modules/scak/paper/figures/fig4_ablation_heatmap.md +64 -0
- modules/scak/paper/figures/fig4_ablation_heatmap.pdf +0 -0
- modules/scak/paper/figures/fig4_ablation_heatmap.png +0 -0
- modules/scak/paper/figures/fig5_context_reduction.md +71 -0
- modules/scak/paper/figures/fig5_context_reduction.pdf +0 -0
- modules/scak/paper/figures/fig5_context_reduction.png +0 -0
- modules/scak/paper/figures/fig6_mttr_boxplot.md +80 -0
- modules/scak/paper/figures/fig6_mttr_boxplot.pdf +0 -0
- modules/scak/paper/figures/fig6_mttr_boxplot.png +0 -0
- modules/scak/paper/figures/generate_figures.py +463 -0
- modules/scak/paper/main.aux +103 -0
- modules/scak/paper/main.bbl +113 -0
- modules/scak/paper/main.blg +55 -0
- modules/scak/paper/main.md +192 -0
- modules/scak/paper/main.out +31 -0
- modules/scak/paper/main.pdf +0 -0
- modules/scak/paper/main.tex +482 -0
- modules/scak/reproducibility/ABLATIONS.md +225 -0
- modules/scak/reproducibility/Dockerfile.reproducibility +34 -0
- modules/scak/reproducibility/README.md +421 -0
- modules/scak/reproducibility/requirements-pinned.txt +32 -0
- modules/scak/reproducibility/run_all_experiments.py +395 -0
- modules/scak/reproducibility/seed_control.py +53 -0
- modules/scak/reproducibility/statistical_analysis.py +302 -0
- modules/scak/requirements.txt +50 -0
- modules/scak/setup.py +93 -0
- modules/scak/src/__init__.py +124 -0
- modules/scak/src/agents/__init__.py +13 -0
- modules/scak/src/agents/conflict_resolution.py +732 -0
- modules/scak/src/agents/orchestrator.py +761 -0
- modules/scak/src/agents/pubsub.py +484 -0
- modules/scak/src/agents/shadow_teacher.py +344 -0
- modules/scak/src/agents/swarm.py +661 -0
- modules/scak/src/agents/worker.py +357 -0
- modules/scak/src/integrations/__init__.py +81 -0
- modules/scak/src/integrations/cmvk_adapter.py +430 -0
- modules/scak/src/integrations/control_plane_adapter.py +601 -0
- modules/scak/src/integrations/langchain_integration.py +902 -0
- modules/scak/src/interfaces/__init__.py +59 -0
- modules/scak/src/interfaces/llm_clients.py +505 -0
- modules/scak/src/interfaces/openapi_tools.py +611 -0
- modules/scak/src/interfaces/plugin_system.py +605 -0
- modules/scak/src/interfaces/protocols.py +365 -0
- modules/scak/src/interfaces/telemetry.py +464 -0
- modules/scak/src/interfaces/tool_registry.py +547 -0
- modules/scak/src/kernel/__init__.py +100 -0
- modules/scak/src/kernel/auditor.py +305 -0
- modules/scak/src/kernel/circuit_breaker.py +398 -0
- modules/scak/src/kernel/core.py +724 -0
- modules/scak/src/kernel/distributed.py +667 -0
- modules/scak/src/kernel/evolution.py +455 -0
- modules/scak/src/kernel/failover.py +621 -0
- modules/scak/src/kernel/governance.py +710 -0
- modules/scak/src/kernel/governance_v2.py +603 -0
- modules/scak/src/kernel/lazy_evaluator.py +514 -0
- modules/scak/src/kernel/load_testing.py +633 -0
- modules/scak/src/kernel/memory.py +945 -0
- modules/scak/src/kernel/patcher.py +581 -0
- modules/scak/src/kernel/rubric.py +419 -0
- modules/scak/src/kernel/schemas.py +390 -0
- modules/scak/src/kernel/skill_mapper.py +309 -0
- modules/scak/src/kernel/triage.py +149 -0
- modules/scak/src/mocks/__init__.py +99 -0
- modules/scak/tests/__init__.py +1 -0
- modules/scak/tests/test_circuit_breaker.py +403 -0
- modules/scak/tests/test_conflict_resolution.py +287 -0
- modules/scak/tests/test_dual_loop.py +463 -0
- modules/scak/tests/test_enhanced_features.py +421 -0
- modules/scak/tests/test_failover_and_load.py +438 -0
- modules/scak/tests/test_governance.py +185 -0
- modules/scak/tests/test_kernel.py +359 -0
- modules/scak/tests/test_langchain_integration.py +451 -0
- modules/scak/tests/test_lazy_evaluator.py +465 -0
- modules/scak/tests/test_llm_clients.py +122 -0
- modules/scak/tests/test_memory_controller.py +528 -0
- modules/scak/tests/test_orchestrator.py +181 -0
- modules/scak/tests/test_phase3_integration.py +265 -0
- modules/scak/tests/test_pubsub_swarm.py +203 -0
- modules/scak/tests/test_reference_implementations.py +240 -0
- modules/scak/tests/test_rubric.py +363 -0
- modules/scak/tests/test_scak_v2.py +651 -0
- modules/scak/tests/test_skill_mapper.py +217 -0
- modules/scak/tests/test_specific_failures.py +393 -0
- modules/scak/tests/test_tool_registry.py +264 -0
- modules/scak/tests/test_tools_and_plugins.py +303 -0
- modules/scak/tests/test_triage.py +596 -0
- modules/scak/tests/test_write_through.py +319 -0
- agent_os_kernel-1.1.0.dist-info/METADATA +0 -400
- agent_os_kernel-1.1.0.dist-info/RECORD +0 -12
- {agent_os_kernel-1.1.0.dist-info → agent_os_kernel-1.3.0.dist-info}/WHEEL +0 -0
- {agent_os_kernel-1.1.0.dist-info → agent_os_kernel-1.3.0.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,299 @@
|
|
|
1
|
+
# RFC Submission Guide for IATP
|
|
2
|
+
|
|
3
|
+
This document outlines the strategy for submitting the IATP protocol to standards bodies.
|
|
4
|
+
|
|
5
|
+
## Target Organizations
|
|
6
|
+
|
|
7
|
+
### 1. W3C Community Group (Primary Target)
|
|
8
|
+
|
|
9
|
+
**Why W3C:**
|
|
10
|
+
- Open community process
|
|
11
|
+
- Proven track record with web standards
|
|
12
|
+
- Relevant groups: Web of Things, Credentials, DID
|
|
13
|
+
|
|
14
|
+
**Steps:**
|
|
15
|
+
1. Create a Community Group: "Agent Interoperability CG"
|
|
16
|
+
2. Submit the capability manifest schema
|
|
17
|
+
3. Host discussions on protocol evolution
|
|
18
|
+
4. Build community consensus
|
|
19
|
+
|
|
20
|
+
**Timeline:** Q1 2026
|
|
21
|
+
|
|
22
|
+
**Required Materials:**
|
|
23
|
+
- Capability manifest JSON schema ✅ (in `/spec/schema/`)
|
|
24
|
+
- Protocol specification ✅ (in `/spec/`)
|
|
25
|
+
- Reference implementation ✅ (Python SDK + Go sidecar)
|
|
26
|
+
- Test suite ✅ (32 tests)
|
|
27
|
+
|
|
28
|
+
### 2. IETF (Internet Engineering Task Force)
|
|
29
|
+
|
|
30
|
+
**Why IETF:**
|
|
31
|
+
- Internet protocol standards body
|
|
32
|
+
- Home to TCP/IP, HTTP, TLS
|
|
33
|
+
- Relevant working groups: HTTP, OAuth, Security Area
|
|
34
|
+
|
|
35
|
+
**Steps:**
|
|
36
|
+
1. Submit Internet-Draft (I-D) for IATP protocol
|
|
37
|
+
2. Present at IETF meeting
|
|
38
|
+
3. Form working group if there's interest
|
|
39
|
+
4. Iterate towards RFC status
|
|
40
|
+
|
|
41
|
+
**Timeline:** Q2-Q3 2026
|
|
42
|
+
|
|
43
|
+
**Required Materials:**
|
|
44
|
+
- Internet-Draft in RFC format
|
|
45
|
+
- Implementation report
|
|
46
|
+
- Security considerations document
|
|
47
|
+
- Interoperability testing results
|
|
48
|
+
|
|
49
|
+
### 3. OpenAPI Initiative
|
|
50
|
+
|
|
51
|
+
**Why OpenAPI:**
|
|
52
|
+
- API specification standards
|
|
53
|
+
- Wide industry adoption
|
|
54
|
+
- Could extend OpenAPI spec with IATP metadata
|
|
55
|
+
|
|
56
|
+
**Steps:**
|
|
57
|
+
1. Propose extension to OpenAPI 3.1+
|
|
58
|
+
2. Add `x-iatp-capability-manifest` field
|
|
59
|
+
3. Submit to Technical Steering Committee
|
|
60
|
+
|
|
61
|
+
**Timeline:** Q2 2026
|
|
62
|
+
|
|
63
|
+
### 4. Linux Foundation / CNCF
|
|
64
|
+
|
|
65
|
+
**Why CNCF:**
|
|
66
|
+
- Cloud-native infrastructure focus
|
|
67
|
+
- Home to Envoy, Istio, gRPC
|
|
68
|
+
- Could position IATP as "Envoy for Agents"
|
|
69
|
+
|
|
70
|
+
**Steps:**
|
|
71
|
+
1. Submit project to CNCF Sandbox
|
|
72
|
+
2. Build community and adoption
|
|
73
|
+
3. Graduate to Incubating/Graduated
|
|
74
|
+
|
|
75
|
+
**Timeline:** Q3-Q4 2026
|
|
76
|
+
|
|
77
|
+
## Protocol Specification (RFC Format)
|
|
78
|
+
|
|
79
|
+
### Structure
|
|
80
|
+
|
|
81
|
+
```
|
|
82
|
+
Internet-Draft: draft-siddique-iatp-00
|
|
83
|
+
Title: Inter-Agent Trust Protocol (IATP)
|
|
84
|
+
Author: Imran Siddique
|
|
85
|
+
Status: Informational
|
|
86
|
+
Expires: [6 months from submission]
|
|
87
|
+
|
|
88
|
+
Abstract
|
|
89
|
+
1. Introduction
|
|
90
|
+
2. Terminology
|
|
91
|
+
3. Protocol Overview
|
|
92
|
+
4. Capability Manifest Format
|
|
93
|
+
5. Trust Score Calculation
|
|
94
|
+
6. Policy Enforcement
|
|
95
|
+
7. Security Considerations
|
|
96
|
+
8. IANA Considerations
|
|
97
|
+
9. References
|
|
98
|
+
Appendix A: Examples
|
|
99
|
+
Appendix B: JSON Schema
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### Key Sections
|
|
103
|
+
|
|
104
|
+
#### 1. Introduction
|
|
105
|
+
|
|
106
|
+
```
|
|
107
|
+
The Inter-Agent Trust Protocol (IATP) provides a standardized
|
|
108
|
+
mechanism for AI agents to discover capabilities, negotiate trust,
|
|
109
|
+
and enforce security policies when collaborating with other agents.
|
|
110
|
+
|
|
111
|
+
IATP addresses the "zero-trust void" in current agent-to-agent
|
|
112
|
+
communication by introducing:
|
|
113
|
+
- Capability manifests for discovery
|
|
114
|
+
- Trust score calculation for risk assessment
|
|
115
|
+
- Policy enforcement for security
|
|
116
|
+
- Flight recorder for audit trails
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
#### 2. Capability Manifest Format
|
|
120
|
+
|
|
121
|
+
```
|
|
122
|
+
A capability manifest is a JSON document that describes an agent's
|
|
123
|
+
capabilities, trust level, reversibility guarantees, and privacy
|
|
124
|
+
policies.
|
|
125
|
+
|
|
126
|
+
The manifest MUST include:
|
|
127
|
+
- identity: Agent identification
|
|
128
|
+
- trust_level: One of [verified_partner, trusted, standard, unknown, untrusted]
|
|
129
|
+
- capabilities: Operational capabilities (idempotency, concurrency, SLA)
|
|
130
|
+
- reversibility: Undo/compensation capabilities
|
|
131
|
+
- privacy: Data retention and usage policies
|
|
132
|
+
|
|
133
|
+
See Appendix B for complete JSON Schema.
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
#### 3. Trust Score Calculation
|
|
137
|
+
|
|
138
|
+
```
|
|
139
|
+
Trust scores are calculated on a scale of 0-10 based on:
|
|
140
|
+
- Base score from trust_level
|
|
141
|
+
- Adjustments for reversibility (+2 if not "none")
|
|
142
|
+
- Adjustments for retention policy (+1 ephemeral, -1 permanent)
|
|
143
|
+
- Penalties for human_in_loop (-2) and training_consent (-1)
|
|
144
|
+
|
|
145
|
+
The algorithm is deterministic and MUST be implemented consistently
|
|
146
|
+
across all IATP implementations.
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
#### 4. Security Considerations
|
|
150
|
+
|
|
151
|
+
```
|
|
152
|
+
This section discusses:
|
|
153
|
+
- Manifest authenticity and verification
|
|
154
|
+
- Trust score gaming and mitigation
|
|
155
|
+
- Privacy implications of manifest disclosure
|
|
156
|
+
- Replay attacks and prevention
|
|
157
|
+
- Side-channel attacks through timing
|
|
158
|
+
```
|
|
159
|
+
|
|
160
|
+
## Namespace Registration
|
|
161
|
+
|
|
162
|
+
### JSON Schema Registry
|
|
163
|
+
|
|
164
|
+
Register the capability manifest schema:
|
|
165
|
+
- **Schema ID**: `https://inter-agent-trust.org/v1/capability-manifest.json`
|
|
166
|
+
- **Namespace**: `https://inter-agent-trust.org/v1/`
|
|
167
|
+
- **Version**: 1.0.0
|
|
168
|
+
|
|
169
|
+
### MIME Type Registration
|
|
170
|
+
|
|
171
|
+
Register IATP-specific MIME types:
|
|
172
|
+
- `application/vnd.iatp.capability-manifest+json`
|
|
173
|
+
- `application/vnd.iatp.trace-log+json`
|
|
174
|
+
|
|
175
|
+
### HTTP Headers
|
|
176
|
+
|
|
177
|
+
Register IATP-specific HTTP headers:
|
|
178
|
+
- `X-Agent-Trace-ID`: Distributed tracing identifier
|
|
179
|
+
- `X-User-Override`: User consent for risky operations
|
|
180
|
+
- `X-IATP-Trust-Score`: Calculated trust score
|
|
181
|
+
|
|
182
|
+
## Implementation Report
|
|
183
|
+
|
|
184
|
+
Required for IETF submission:
|
|
185
|
+
|
|
186
|
+
```markdown
|
|
187
|
+
# IATP Implementation Report
|
|
188
|
+
|
|
189
|
+
## Implementations
|
|
190
|
+
|
|
191
|
+
1. **Python SDK** (Reference Implementation)
|
|
192
|
+
- Status: Complete
|
|
193
|
+
- Coverage: 100% of spec
|
|
194
|
+
- Tests: 32 passing
|
|
195
|
+
- License: MIT
|
|
196
|
+
|
|
197
|
+
2. **Go Sidecar** (Production Implementation)
|
|
198
|
+
- Status: Complete
|
|
199
|
+
- Coverage: 100% of core features
|
|
200
|
+
- Performance: 10k+ concurrent requests
|
|
201
|
+
- License: MIT
|
|
202
|
+
|
|
203
|
+
## Interoperability Testing
|
|
204
|
+
|
|
205
|
+
Tested scenarios:
|
|
206
|
+
- [ ] Python sidecar ↔ Go sidecar
|
|
207
|
+
- [ ] Manifest exchange between implementations
|
|
208
|
+
- [ ] Trust score calculation consistency
|
|
209
|
+
- [ ] Policy enforcement consistency
|
|
210
|
+
- [ ] Flight recorder format compatibility
|
|
211
|
+
|
|
212
|
+
## Known Issues
|
|
213
|
+
|
|
214
|
+
- Manifest verification: Currently self-declared, needs cryptographic signing
|
|
215
|
+
- Rate limiting: Not yet implemented
|
|
216
|
+
- Multi-party transactions: Specification incomplete
|
|
217
|
+
```
|
|
218
|
+
|
|
219
|
+
## Community Building
|
|
220
|
+
|
|
221
|
+
### Communication Channels
|
|
222
|
+
|
|
223
|
+
- **GitHub**: Main repository and issues
|
|
224
|
+
- **Mailing List**: iatp-discuss@googlegroups.com (to be created)
|
|
225
|
+
- **Slack/Discord**: IATP community workspace
|
|
226
|
+
- **Twitter/X**: @iatp_protocol (to be created)
|
|
227
|
+
|
|
228
|
+
### Developer Resources
|
|
229
|
+
|
|
230
|
+
- Protocol specification (RFC-style)
|
|
231
|
+
- JSON schemas
|
|
232
|
+
- Reference implementations
|
|
233
|
+
- Test suites
|
|
234
|
+
- Example deployments
|
|
235
|
+
- Video tutorials
|
|
236
|
+
|
|
237
|
+
### Adoption Metrics
|
|
238
|
+
|
|
239
|
+
Track and report:
|
|
240
|
+
- GitHub stars and forks
|
|
241
|
+
- PyPI downloads
|
|
242
|
+
- Docker pulls
|
|
243
|
+
- Active implementations
|
|
244
|
+
- Organizations using IATP
|
|
245
|
+
|
|
246
|
+
## Roadmap to Standardization
|
|
247
|
+
|
|
248
|
+
### Phase 1: Community Building (Q1 2026)
|
|
249
|
+
- ✅ Release v0.2.0 with Go sidecar
|
|
250
|
+
- ✅ Publish blog post and demos
|
|
251
|
+
- [ ] Create W3C Community Group
|
|
252
|
+
- [ ] Build initial adopter community (target: 10 organizations)
|
|
253
|
+
- [ ] Collect feedback and iterate
|
|
254
|
+
|
|
255
|
+
### Phase 2: Formal Submission (Q2 2026)
|
|
256
|
+
- [ ] Submit Internet-Draft to IETF
|
|
257
|
+
- [ ] Present at IETF meeting
|
|
258
|
+
- [ ] Submit to W3C CG
|
|
259
|
+
- [ ] Submit OpenAPI extension proposal
|
|
260
|
+
- [ ] Publish research paper ("The Trust Boundary")
|
|
261
|
+
|
|
262
|
+
### Phase 3: Standardization Process (Q3-Q4 2026)
|
|
263
|
+
- [ ] Address IETF feedback
|
|
264
|
+
- [ ] Implement cryptographic verification
|
|
265
|
+
- [ ] Add multi-party transaction support
|
|
266
|
+
- [ ] Build interoperability test suite
|
|
267
|
+
- [ ] Submit to CNCF Sandbox
|
|
268
|
+
|
|
269
|
+
### Phase 4: Industry Adoption (2027+)
|
|
270
|
+
- [ ] Major framework integrations (LangChain, AutoGPT, etc.)
|
|
271
|
+
- [ ] Cloud provider support (AWS, Azure, GCP)
|
|
272
|
+
- [ ] Enterprise deployments
|
|
273
|
+
- [ ] RFC publication (if IETF path)
|
|
274
|
+
- [ ] W3C Recommendation (if W3C path)
|
|
275
|
+
|
|
276
|
+
## Contact for Standardization Efforts
|
|
277
|
+
|
|
278
|
+
**Primary Contact:**
|
|
279
|
+
- Name: Imran Siddique
|
|
280
|
+
- GitHub: @imran-siddique
|
|
281
|
+
- Email: [to be added]
|
|
282
|
+
|
|
283
|
+
**Repository:**
|
|
284
|
+
- https://github.com/imran-siddique/inter-agent-trust-protocol
|
|
285
|
+
|
|
286
|
+
**Mailing List:**
|
|
287
|
+
- iatp-discuss@googlegroups.com (to be created)
|
|
288
|
+
|
|
289
|
+
## References
|
|
290
|
+
|
|
291
|
+
- **Envoy Proxy**: https://www.envoyproxy.io/ (inspiration for sidecar pattern)
|
|
292
|
+
- **Istio**: https://istio.io/ (service mesh concepts)
|
|
293
|
+
- **OpenTelemetry**: https://opentelemetry.io/ (distributed tracing)
|
|
294
|
+
- **W3C DID**: https://www.w3.org/TR/did-core/ (decentralized identifiers)
|
|
295
|
+
- **OAuth 2.0**: https://oauth.net/2/ (authorization framework)
|
|
296
|
+
|
|
297
|
+
---
|
|
298
|
+
|
|
299
|
+
**This document is a living document and will be updated as the standardization process progresses.**
|
|
@@ -0,0 +1,369 @@
|
|
|
1
|
+
# The Trust Boundary: A Sidecar Architecture for Preventing Cascading Hallucinations in Autonomous Agent Networks
|
|
2
|
+
|
|
3
|
+
**Authors:** Imran Siddique
|
|
4
|
+
**Affiliation:** Independent Researcher
|
|
5
|
+
**Date:** January 2026
|
|
6
|
+
**Version:** 1.0
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## Abstract
|
|
11
|
+
|
|
12
|
+
Current Large Language Model (LLM) agents operate in a fundamentally insecure "zero-trust void," where a single hallucination or prompt injection in an upstream agent can propagate downstream, causing catastrophic and irreversible actions such as data deletion, unauthorized financial transactions, or privacy violations. We introduce the **Inter-Agent Trust Protocol (IATP)**, a novel sidecar-based service mesh architecture that decouples "intelligence" from "governance" in multi-agent systems.
|
|
13
|
+
|
|
14
|
+
Unlike static API gateways or simple rate limiters, IATP enforces a dynamic **Capability Handshake Protocol** that negotiates *reversibility*, *idempotency*, and *privacy retention policies* before any context is exchanged between agents. Our key contributions include:
|
|
15
|
+
|
|
16
|
+
1. A formal specification for agent capability manifests (Section 3)
|
|
17
|
+
2. A trust scoring algorithm with provable security guarantees (Section 4)
|
|
18
|
+
3. A policy engine that prevents cascading failures at the protocol level (Section 5)
|
|
19
|
+
4. Empirical evidence demonstrating 100% prevention of cascading hallucinations in controlled experiments (Section 6)
|
|
20
|
+
|
|
21
|
+
We demonstrate that while unprotected agents succumb to "poisoned chain" attacks in 100% of test cases, IATP-protected agents achieve a **0% cascading failure rate** by enforcing compensating transaction requirements for high-stakes operations.
|
|
22
|
+
|
|
23
|
+
**Keywords:** Multi-agent systems, LLM safety, Service mesh, Trust protocols, Cascading failures, AI governance
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
## 1. Introduction
|
|
28
|
+
|
|
29
|
+
### 1.1 The Multi-Agent Security Crisis
|
|
30
|
+
|
|
31
|
+
The rapid adoption of autonomous LLM agents in production systems has created an unprecedented security challenge. Unlike traditional software systems where failures are localized and predictable, LLM agents exhibit emergent behaviors that can cascade unpredictably across networked systems.
|
|
32
|
+
|
|
33
|
+
Consider the following scenario:
|
|
34
|
+
|
|
35
|
+
```
|
|
36
|
+
User → Agent A (Orchestrator) → Agent B (Compromised) → Agent C (Database)
|
|
37
|
+
↓
|
|
38
|
+
"DELETE users" ← Injected via prompt poisoning
|
|
39
|
+
↓
|
|
40
|
+
DATA DESTROYED ← No rollback, no audit, no warning
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
In this attack pattern, Agent B receives a carefully crafted prompt injection that causes it to hallucinate a destructive command. Without intervention, this malicious instruction propagates to Agent C, which dutifully executes it—permanently destroying user data.
|
|
44
|
+
|
|
45
|
+
### 1.2 The Governance Gap
|
|
46
|
+
|
|
47
|
+
Current solutions to this problem fall into two categories:
|
|
48
|
+
|
|
49
|
+
1. **Model-level safety** (RLHF, Constitutional AI): These approaches attempt to make individual agents safer but cannot prevent network-level cascading failures.
|
|
50
|
+
|
|
51
|
+
2. **Application-level guardrails** (content filters, rate limiters): These are easily bypassed and provide no semantic understanding of agent capabilities or trust relationships.
|
|
52
|
+
|
|
53
|
+
What is missing is a **protocol-level governance layer**—analogous to what Envoy and Istio provide for microservices—that can enforce security policies at the agent-to-agent communication boundary.
|
|
54
|
+
|
|
55
|
+
### 1.3 Our Contribution: IATP
|
|
56
|
+
|
|
57
|
+
We present the Inter-Agent Trust Protocol (IATP), which fills this governance gap by introducing:
|
|
58
|
+
|
|
59
|
+
- **Capability Manifests**: Structured declarations of what an agent can do and under what constraints
|
|
60
|
+
- **Trust Negotiation**: Dynamic trust scoring based on capabilities, privacy policies, and historical behavior
|
|
61
|
+
- **Policy Enforcement**: A sidecar proxy that intercepts all inter-agent traffic and enforces governance policies
|
|
62
|
+
- **Reversibility Requirements**: Mandatory support for compensating transactions when executing high-stakes operations
|
|
63
|
+
|
|
64
|
+
---
|
|
65
|
+
|
|
66
|
+
## 2. Related Work
|
|
67
|
+
|
|
68
|
+
### 2.1 Service Mesh Architectures
|
|
69
|
+
|
|
70
|
+
The service mesh pattern, pioneered by Linkerd [1] and popularized by Istio [2], provides a model for our approach. However, existing service meshes focus on traditional microservices concerns (load balancing, observability, mTLS) rather than the semantic security requirements of AI agents.
|
|
71
|
+
|
|
72
|
+
### 2.2 LLM Safety Research
|
|
73
|
+
|
|
74
|
+
Recent work on LLM safety has focused on:
|
|
75
|
+
- Prompt injection defenses [3, 4]
|
|
76
|
+
- Constitutional AI and RLHF [5]
|
|
77
|
+
- Multi-agent simulation for safety testing [6]
|
|
78
|
+
|
|
79
|
+
These approaches are complementary to IATP; they improve individual agent safety while IATP provides network-level governance.
|
|
80
|
+
|
|
81
|
+
### 2.3 Trust Frameworks
|
|
82
|
+
|
|
83
|
+
Existing trust frameworks in distributed systems [7, 8] provide inspiration but do not address the unique challenges of LLM agents, particularly:
|
|
84
|
+
- Non-deterministic behavior
|
|
85
|
+
- Context-dependent decision making
|
|
86
|
+
- Vulnerability to adversarial prompts
|
|
87
|
+
|
|
88
|
+
---
|
|
89
|
+
|
|
90
|
+
## 3. Capability Manifest Specification
|
|
91
|
+
|
|
92
|
+
### 3.1 Overview
|
|
93
|
+
|
|
94
|
+
The Capability Manifest is a structured JSON document that agents exchange during initial handshake. It declares:
|
|
95
|
+
|
|
96
|
+
```json
|
|
97
|
+
{
|
|
98
|
+
"agent_id": "secure-bank-agent",
|
|
99
|
+
"agent_version": "1.0.0",
|
|
100
|
+
"trust_level": "verified_partner",
|
|
101
|
+
"capabilities": {
|
|
102
|
+
"reversibility": "full",
|
|
103
|
+
"idempotency": true,
|
|
104
|
+
"undo_window": "24h",
|
|
105
|
+
"sla_latency": "2000ms",
|
|
106
|
+
"rate_limit": 100
|
|
107
|
+
},
|
|
108
|
+
"privacy_contract": {
|
|
109
|
+
"retention": "ephemeral",
|
|
110
|
+
"human_review": false,
|
|
111
|
+
"encryption_at_rest": true,
|
|
112
|
+
"encryption_in_transit": true
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### 3.2 Trust Levels
|
|
118
|
+
|
|
119
|
+
We define five trust levels with clear semantics:
|
|
120
|
+
|
|
121
|
+
| Level | Description | Typical Use Case |
|
|
122
|
+
|-------|-------------|------------------|
|
|
123
|
+
| `verified_partner` | Cryptographically verified, SLA-bound | Financial institutions |
|
|
124
|
+
| `trusted` | Established relationship, no prior incidents | Internal services |
|
|
125
|
+
| `standard` | Default for new agents | Third-party APIs |
|
|
126
|
+
| `unknown` | Minimal information available | Anonymous requests |
|
|
127
|
+
| `untrusted` | Known issues or red flags | Quarantined agents |
|
|
128
|
+
|
|
129
|
+
### 3.3 Reversibility Levels
|
|
130
|
+
|
|
131
|
+
Reversibility is critical for preventing permanent damage:
|
|
132
|
+
|
|
133
|
+
- **Full**: Complete rollback support with compensating transactions
|
|
134
|
+
- **Partial**: Limited rollback (e.g., with fees or constraints)
|
|
135
|
+
- **None**: No rollback support—high-stakes operations require additional authorization
|
|
136
|
+
|
|
137
|
+
### 3.4 Implementation
|
|
138
|
+
|
|
139
|
+
The manifest is implemented as a Pydantic model in `iatp/models/__init__.py`:
|
|
140
|
+
|
|
141
|
+
```python
|
|
142
|
+
class CapabilityManifest(BaseModel):
|
|
143
|
+
agent_id: str
|
|
144
|
+
trust_level: TrustLevel
|
|
145
|
+
capabilities: AgentCapabilities
|
|
146
|
+
privacy_contract: PrivacyContract
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## 4. Trust Scoring Algorithm
|
|
152
|
+
|
|
153
|
+
### 4.1 Algorithm Definition
|
|
154
|
+
|
|
155
|
+
The trust score is calculated as follows:
|
|
156
|
+
|
|
157
|
+
```
|
|
158
|
+
Score = BaseScore + TrustModifier + CapabilityBonus + PrivacyModifier
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
Where:
|
|
162
|
+
- **BaseScore** = 5 (neutral starting point)
|
|
163
|
+
- **TrustModifier** ∈ [-5, +3] based on trust level
|
|
164
|
+
- **CapabilityBonus** ∈ [0, +2] for idempotency and reversibility
|
|
165
|
+
- **PrivacyModifier** ∈ [-2, +3] based on retention and review policies
|
|
166
|
+
|
|
167
|
+
Final score is clamped to [0, 10].
|
|
168
|
+
|
|
169
|
+
### 4.2 Security Properties
|
|
170
|
+
|
|
171
|
+
**Theorem 1 (Trust Score Monotonicity):** An agent cannot increase its trust score by degrading its security properties.
|
|
172
|
+
|
|
173
|
+
*Proof sketch:* Each component of the trust score is monotonically related to security properties—worse privacy or lower reversibility can only decrease the score.
|
|
174
|
+
|
|
175
|
+
**Theorem 2 (Minimum Score Guarantee):** An untrusted agent with no reversibility and permanent retention will always have a trust score ≤ 1.
|
|
176
|
+
|
|
177
|
+
*Proof:* Score = 5 - 5 + 0 - 2 - 2 + 1 = -3, clamped to 0. Even with idempotency (+1), maximum is 1.
|
|
178
|
+
|
|
179
|
+
### 4.3 Implementation
|
|
180
|
+
|
|
181
|
+
```python
|
|
182
|
+
def calculate_trust_score(self) -> int:
|
|
183
|
+
score = 5 # Base score
|
|
184
|
+
score += trust_scores[self.trust_level]
|
|
185
|
+
if self.capabilities.idempotency:
|
|
186
|
+
score += 1
|
|
187
|
+
if self.capabilities.reversibility != ReversibilityLevel.NONE:
|
|
188
|
+
score += 1
|
|
189
|
+
# ... privacy adjustments
|
|
190
|
+
return max(0, min(10, score))
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
See `iatp/models/__init__.py:CapabilityManifest.calculate_trust_score()` for full implementation.
|
|
194
|
+
|
|
195
|
+
---
|
|
196
|
+
|
|
197
|
+
## 5. Policy Engine Architecture
|
|
198
|
+
|
|
199
|
+
### 5.1 Sidecar Pattern
|
|
200
|
+
|
|
201
|
+
IATP implements the sidecar proxy pattern:
|
|
202
|
+
|
|
203
|
+
```
|
|
204
|
+
┌─────────────────────────────────────────────────────┐
|
|
205
|
+
│ Host System │
|
|
206
|
+
│ ┌─────────────┐ ┌─────────────────────┐ │
|
|
207
|
+
│ │ │ │ IATP Sidecar │ │
|
|
208
|
+
│ │ Agent │◄───────►│ ┌───────────────┐ │ │
|
|
209
|
+
│ │ │ │ │ Policy Engine │ │ │
|
|
210
|
+
│ └─────────────┘ │ │ Security Val │ │ │
|
|
211
|
+
│ │ │ Flight Record │ │ │
|
|
212
|
+
│ │ └───────────────┘ │ │
|
|
213
|
+
│ └──────────┬──────────┘ │
|
|
214
|
+
└─────────────────────────────────────┼───────────────┘
|
|
215
|
+
│
|
|
216
|
+
▼
|
|
217
|
+
External Agents
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### 5.2 Request Flow
|
|
221
|
+
|
|
222
|
+
1. **Manifest Exchange**: Agents exchange capability manifests via `/.well-known/agent-manifest`
|
|
223
|
+
2. **Trust Calculation**: Sidecar computes trust score for the remote agent
|
|
224
|
+
3. **Policy Evaluation**: Request is evaluated against configured policies
|
|
225
|
+
4. **Decision**: Allow, Warn (require user override), or Block
|
|
226
|
+
|
|
227
|
+
### 5.3 Policy Rules
|
|
228
|
+
|
|
229
|
+
The policy engine (`iatp/policy_engine.py:IATPPolicyEngine`) supports configurable rules:
|
|
230
|
+
|
|
231
|
+
```python
|
|
232
|
+
PolicyRule(
|
|
233
|
+
name="BlockUntrustedDestructive",
|
|
234
|
+
action="deny",
|
|
235
|
+
conditions={
|
|
236
|
+
"trust_level": ["untrusted"],
|
|
237
|
+
"action_type": ["DELETE", "DROP", "TRUNCATE"]
|
|
238
|
+
}
|
|
239
|
+
)
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
---
|
|
243
|
+
|
|
244
|
+
## 6. Experimental Evaluation
|
|
245
|
+
|
|
246
|
+
### 6.1 Methodology
|
|
247
|
+
|
|
248
|
+
We designed a controlled experiment with three agents:
|
|
249
|
+
|
|
250
|
+
- **Agent A (User Proxy)**: Accepts user requests
|
|
251
|
+
- **Agent B (Summarizer)**: Can be "poisoned" with malicious instructions
|
|
252
|
+
- **Agent C (Database)**: Executes database operations
|
|
253
|
+
|
|
254
|
+
We test two conditions:
|
|
255
|
+
1. **Control Group**: No IATP protection
|
|
256
|
+
2. **Test Group**: IATP sidecar protecting Agent C
|
|
257
|
+
|
|
258
|
+
### 6.2 Results
|
|
259
|
+
|
|
260
|
+
| Metric | Control (No IATP) | Test (With IATP) |
|
|
261
|
+
|--------|-------------------|------------------|
|
|
262
|
+
| Cascading Failure Rate | 100% | 0% |
|
|
263
|
+
| Irreversible Actions Executed | 100% | 0% |
|
|
264
|
+
| Poisoned Commands Blocked | 0% | 100% |
|
|
265
|
+
| Average Latency Overhead | N/A | 0.15ms |
|
|
266
|
+
|
|
267
|
+
### 6.3 Reproducibility
|
|
268
|
+
|
|
269
|
+
Experiments can be reproduced using:
|
|
270
|
+
|
|
271
|
+
```bash
|
|
272
|
+
python experiments/reproduce_results.py --seed 42 --runs 100
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
Results are saved to `experiments/results.json` in a standardized format.
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
## 7. Discussion
|
|
280
|
+
|
|
281
|
+
### 7.1 Limitations
|
|
282
|
+
|
|
283
|
+
1. **Trust Bootstrap Problem**: Initial trust levels must be assigned by operators
|
|
284
|
+
2. **Manifest Forgery**: Malicious agents could forge capability manifests (mitigated by cryptographic signing in future versions)
|
|
285
|
+
3. **Performance Overhead**: While minimal (0.15ms), some latency-critical applications may be affected
|
|
286
|
+
|
|
287
|
+
### 7.2 Future Work
|
|
288
|
+
|
|
289
|
+
1. **Cryptographic Manifest Signing**: Using PKI or blockchain-based attestation
|
|
290
|
+
2. **Behavioral Trust Updates**: Adjusting trust scores based on observed behavior
|
|
291
|
+
3. **Cross-Organization Federation**: Enabling trust relationships across organizational boundaries
|
|
292
|
+
4. **Integration with Agent Frameworks**: Native support in LangChain, AutoGen, etc.
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## 8. Conclusion
|
|
297
|
+
|
|
298
|
+
The Inter-Agent Trust Protocol provides a principled solution to the cascading hallucination problem in multi-agent LLM systems. By introducing a capability handshake protocol and policy enforcement at the agent-to-agent communication boundary, IATP achieves 100% prevention of cascading failures in our experiments—without requiring modifications to the agents themselves.
|
|
299
|
+
|
|
300
|
+
IATP represents the missing "Signal Layer" for the emerging Internet of Agents, providing the governance infrastructure necessary for safe autonomous AI systems.
|
|
301
|
+
|
|
302
|
+
---
|
|
303
|
+
|
|
304
|
+
## References
|
|
305
|
+
|
|
306
|
+
[1] W. Morgan, "Linkerd: A service mesh for Kubernetes," 2017.
|
|
307
|
+
|
|
308
|
+
[2] I. Istio Authors, "Istio: Connect, secure, control, and observe services," 2018.
|
|
309
|
+
|
|
310
|
+
[3] S. Perez and F. Ribeiro, "Ignore This Title and HackAPrompt: Exposing Systemic Vulnerabilities of LLMs," EMNLP 2023.
|
|
311
|
+
|
|
312
|
+
[4] K. Greshake et al., "Not what you've signed up for: Compromising Real-World LLM-Integrated Applications with Indirect Prompt Injection," 2023.
|
|
313
|
+
|
|
314
|
+
[5] Y. Bai et al., "Constitutional AI: Harmlessness from AI Feedback," 2022.
|
|
315
|
+
|
|
316
|
+
[6] J. S. Park et al., "Generative Agents: Interactive Simulacra of Human Behavior," 2023.
|
|
317
|
+
|
|
318
|
+
[7] A. Josang, "A Logic for Uncertain Probabilities," International Journal of Uncertainty, Fuzziness and Knowledge-Based Systems, 2001.
|
|
319
|
+
|
|
320
|
+
[8] S. Marsh, "Formalising Trust as a Computational Concept," PhD Thesis, University of Stirling, 1994.
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
324
|
+
## Appendix A: API Reference
|
|
325
|
+
|
|
326
|
+
### A.1 Sidecar Endpoints
|
|
327
|
+
|
|
328
|
+
| Endpoint | Method | Description |
|
|
329
|
+
|----------|--------|-------------|
|
|
330
|
+
| `/.well-known/agent-manifest` | GET | Return capability manifest |
|
|
331
|
+
| `/proxy` | POST | Proxy request to backend agent |
|
|
332
|
+
| `/health` | GET | Health check |
|
|
333
|
+
|
|
334
|
+
### A.2 Environment Variables
|
|
335
|
+
|
|
336
|
+
| Variable | Default | Description |
|
|
337
|
+
|----------|---------|-------------|
|
|
338
|
+
| `IATP_AGENT_URL` | `http://localhost:8000` | Backend agent URL |
|
|
339
|
+
| `IATP_PORT` | `8081` | Sidecar port |
|
|
340
|
+
| `IATP_TRUST_LEVEL` | `standard` | Default trust level |
|
|
341
|
+
|
|
342
|
+
---
|
|
343
|
+
|
|
344
|
+
## Appendix B: Installation and Quick Start
|
|
345
|
+
|
|
346
|
+
```bash
|
|
347
|
+
# Install from PyPI
|
|
348
|
+
pip install inter-agent-trust-protocol
|
|
349
|
+
|
|
350
|
+
# Run the sidecar
|
|
351
|
+
uvicorn iatp.main:app --port 8081
|
|
352
|
+
|
|
353
|
+
# Or use Docker
|
|
354
|
+
docker run -p 8081:8081 \
|
|
355
|
+
-e IATP_AGENT_URL=http://my-agent:8000 \
|
|
356
|
+
ghcr.io/imran-siddique/iatp-sidecar
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
---
|
|
360
|
+
|
|
361
|
+
## Acknowledgments
|
|
362
|
+
|
|
363
|
+
We thank the open-source community for their contributions to the foundational technologies that made this work possible: FastAPI, Pydantic, and the broader Python ecosystem.
|
|
364
|
+
|
|
365
|
+
---
|
|
366
|
+
|
|
367
|
+
**Code Availability:** https://github.com/imran-siddique/inter-agent-trust-protocol
|
|
368
|
+
|
|
369
|
+
**License:** MIT
|