agentorch 2.0.1__tar.gz → 2.0.2__tar.gz
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.
- {agentorch-2.0.1 → agentorch-2.0.2}/PKG-INFO +65 -8
- {agentorch-2.0.1 → agentorch-2.0.2}/README.md +64 -7
- {agentorch-2.0.1 → agentorch-2.0.2}/agentorch.egg-info/PKG-INFO +65 -8
- {agentorch-2.0.1 → agentorch-2.0.2}/agentorch.egg-info/SOURCES.txt +12 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/swe_bench/patch_utils.py +39 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/swe_bench/run_devtorch.py +24 -0
- agentorch-2.0.2/devtorch_cli/__main__.py +6 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_cli/main.py +12 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/cloud/client_config.py +12 -2
- agentorch-2.0.2/devtorch_core/cloud/client_configs/.opencode.json +14 -0
- agentorch-2.0.2/devtorch_core/cloud/devtorch-mcp-bridge.js +340 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/mcp/server.py +113 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning_plus/__init__.py +10 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning_plus/augmenter.py +81 -1
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning_plus/config.py +9 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/__init__.py +39 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/api.py +199 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/composer.py +50 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/extractor.py +80 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/models.py +116 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/recorder.py +81 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/relevance.py +59 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/state.py +86 -0
- agentorch-2.0.2/devtorch_core/reasoning_plus/learning/store.py +93 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/pyproject.toml +1 -1
- agentorch-2.0.2/tests/test_cloud_bridge.py +332 -0
- agentorch-2.0.2/tests/test_s24_reasoning_plus_learning.py +509 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s7_mcp_hooks.py +5 -2
- agentorch-2.0.1/devtorch_core/cloud/client_configs/.opencode.json +0 -14
- agentorch-2.0.1/devtorch_core/cloud/devtorch-mcp-bridge.js +0 -115
- {agentorch-2.0.1 → agentorch-2.0.2}/MANIFEST.in +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/agentorch.egg-info/dependency_links.txt +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/agentorch.egg-info/entry_points.txt +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/agentorch.egg-info/requires.txt +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/agentorch.egg-info/top_level.txt +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/hidden_profile/run_baseline.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/hidden_profile/run_devtorch.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/hidden_profile/score.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/swe_bench/compare.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/swe_bench/context_utils.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/swe_bench/evaluate.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/swe_bench/run_baseline.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/benchmarks/swe_bench/seed_gcc.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_cli/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/aggphi_textual.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/base.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/config.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/dispatcher.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/jira.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/linear.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/pagerduty.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/slack.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/alerts/teams.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/broadcast/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/broadcast/broadcaster.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/broadcast/watcher.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/capability.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/cloud/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/cloud/client_configs/.claude-opencode-fallback.json +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/cloud/client_configs/.claude-stdio.json +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/cloud/client_configs/.cursor-mcp.json +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/cloud/client_configs/.opencode-bridge.json +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/cloud/client_configs/.vscode-mcp.json +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/codex/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/codex/__main__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/codex/capture.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/codex/proxy.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/consolidation/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/consolidation/synthesizer.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/consolidation/workflow.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/dashboard_api.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/deltaf.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/disclosure.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/divergence/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/divergence/detector.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/gateway/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/gateway/key_manager.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/gateway/metrics_webhook.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/gateway/policy.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/gateway/server.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/gateway/sso.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/gcc.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/github/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/github/app.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/github/comment_builder.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/github/pat.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/github/pr_parser.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/gitlab/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/hitl/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/hitl/channels.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/hitl/orchestrator.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/hooks/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/hooks/claude_code.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/hooks/git_commit.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/hooks/installer.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/hooks/runner.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/identity/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/identity/agent.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/identity/providers.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/invariants.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/mcp/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/mcp/auth.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/aggregate.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/calibrate.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/calibration.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/credibility.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/dhs.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/mcs.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/roi.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/session_writer.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/shadow_ai.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/metrics/sprint_writer.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/observability/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/observability/datadog.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/observability/formatter.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/observability/report.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/observability/servicenow.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/observability/splunk.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/observability/webhook.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/parser/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/parser/blocks.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/parser/inference.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/parser/thinking.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/projects.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/prompt_artifact.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/proxy/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/proxy/routes/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/proxy/routes/anthropic.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/proxy/routes/gemini.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/proxy/routes/openai.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/proxy/server.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/rdp.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning/entry.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning/store.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning_plus/capture.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning_plus/context.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/reasoning_plus/prompt.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/rep.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/rep_network/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/rep_network/merge.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/rep_network/node.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/rep_network/server.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/rep_network/sync.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/sensitivity.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/signing.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/sis.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/storage.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/theta.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/theta_synthesis.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/variance.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/wrapper/__init__.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/wrapper/anthropic.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/wrapper/base.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/wrapper/bedrock.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/wrapper/gemini.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/wrapper/ollama.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/devtorch_core/wrapper/openai.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/docs/generate_faq_pdf.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/docs/paper/figures/fig_architecture.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/docs/paper/figures/fig_comparison.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/docs/paper/figures/fig_coordination.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/docs/paper/figures/fig_hashchain.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/docs/paper/figures/fig_racp_flow.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/setup.cfg +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/conftest.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_backend_factory.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_broadcast.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_cloud_auth.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_cloud_integration.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_cloud_sse.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_cloud_storage.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_doctor_ci.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_getting_started.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_github_app.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_github_pat.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_hidden_profile_benchmark.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_rep_merge.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s0_gcc.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s10_jetbrains.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s10_vscode.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s11_codex.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s11_hooks_installer.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s12_github.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s12_gitlab.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s13_dashboard_api.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s13_forensic.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s14_audit_export.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s14_ciso_api.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s15_rep_network.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s16_alerts.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s17a_metrics.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s17b_observability.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s17b_sso.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s18_credibility.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s18_identity.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s19_projects.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s19_reasoning_query.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s1_branch_merge.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s20_divergence.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s20_metrics.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s20_wrapper_capture.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s21_hitl.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s22_swe_bench.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s22_swe_bench_dry_run.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s23_reasoning_plus.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s2_context.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s3_sensitivity.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s4_invariants.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s4_variance_lock.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s5_privacy_disclosure.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s5_rep_sis.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s6_debug.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s7_ollama_wrapper.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s7_parser.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s7_proxy.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s7_wrappers.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s7ent_gateway.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s7ent_helm.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s8_aggphi.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s8_theta_synthesis.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_s9_gaps.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_setup_command.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_setup_targets.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_signing.py +0 -0
- {agentorch-2.0.1 → agentorch-2.0.2}/tests/test_storage_azure.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentorch
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.2
|
|
4
4
|
Summary: DevTorch — AI reasoning capture, audit trail, and governance for agent-assisted development
|
|
5
5
|
Author-email: Hemant Joshi <hemant@flotorch.ai>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -52,10 +52,10 @@ Requires-Dist: agentorch[cloud,mcp,proxy,wrapper]; extra == "all"
|
|
|
52
52
|
|
|
53
53
|
**Local-first AI agent governance.** DevTorch gives multi-agent systems a shared on-disk audit trail, coordination vector, privacy controls, and LLM integration layer — all without a remote service.
|
|
54
54
|
|
|
55
|
-
> **Latest release:** `agentorch 2.0.
|
|
55
|
+
> **Latest release:** `agentorch 2.0.2` — MCP bridge with automatic local fallback, plus upgrade/reinstall docs for all IDE integrations. Install or upgrade with `pip install -U agentorch`.
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
|
-
pip install -U agentorch>=2.0.
|
|
58
|
+
pip install -U agentorch>=2.0.2
|
|
59
59
|
devtorch init
|
|
60
60
|
devtorch setup # connects to Claude Code, Cursor, or Antigravity
|
|
61
61
|
devtorch debug timeline
|
|
@@ -78,13 +78,13 @@ devtorch debug timeline
|
|
|
78
78
|
|
|
79
79
|
### Reasoning Plus
|
|
80
80
|
|
|
81
|
-
Reasoning Plus is DevTorch’s default augmentation mode: before every LLM call, it gathers smart context from your workspace
|
|
81
|
+
Reasoning Plus is DevTorch’s default augmentation mode: before every LLM call, it gathers smart context from your workspace, asks the model to produce inline `<thinking>` reasoning, and learns from previous calls by re-injecting relevant reasoning into subsequent prompts. The reasoning is captured to `.GCC/` automatically and stripped from the response your tool sees.
|
|
82
82
|
|
|
83
83
|
```bash
|
|
84
84
|
devtorch reasoning-plus status # show current settings
|
|
85
85
|
devtorch reasoning-plus enable # turn on per project
|
|
86
86
|
devtorch reasoning-plus disable # turn off per project
|
|
87
|
-
devtorch reasoning-plus config --smart-top-n 3 --smart-max-lines 150
|
|
87
|
+
devtorch reasoning-plus config --smart-top-n 3 --smart-max-lines 150 --learning-top-n 3
|
|
88
88
|
```
|
|
89
89
|
|
|
90
90
|
Set `DEVTORCH_REASONING_PLUS=0` to disable it for a single session. See [REASONING_PLUS.md](REASONING_PLUS.md) for details.
|
|
@@ -113,6 +113,35 @@ pip install agentorch[all] # everything
|
|
|
113
113
|
|
|
114
114
|
---
|
|
115
115
|
|
|
116
|
+
## Upgrade from an older version
|
|
117
|
+
|
|
118
|
+
DevTorch preserves your `.GCC/` store across upgrades. Newer releases add IDE configs, hooks, or governance instructions, so you should re-run `devtorch setup` after upgrading.
|
|
119
|
+
|
|
120
|
+
**Upgrade any time:**
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
pip install -U agentorch>=2.0.2
|
|
124
|
+
cd /path/to/your/project
|
|
125
|
+
devtorch setup # or: devtorch setup --target <ide>
|
|
126
|
+
devtorch doctor
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
`devtorch setup` is idempotent:
|
|
130
|
+
- It rewrites `CLAUDE.md` / `AGENTS.md` with the latest governance instructions.
|
|
131
|
+
- It regenerates IDE-specific config files (`.claude/settings.json`, `.cursor/mcp.json`, `opencode.json`, etc.).
|
|
132
|
+
- It leaves existing `.GCC/` data untouched.
|
|
133
|
+
|
|
134
|
+
**If you use the cloud MCP server**, re-run the client config installer after upgrade to get the latest bridge and fallback settings:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
export DEVTORCH_MCP_DOMAIN=devtorch-mcp.your-domain.com
|
|
138
|
+
devtorch cloud client-config <ide> --org <org> --repo <repo> --api-key <api-key>
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Supported `<ide>` values: `opencode`, `claude`, `cursor`, `vscode`, `stdio`.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
116
145
|
## Getting Started
|
|
117
146
|
|
|
118
147
|
DevTorch takes **5 minutes to set up**. Pick your AI coding tool below.
|
|
@@ -155,6 +184,8 @@ Open Claude Code in your project. On the first task Claude will call `devtorch_c
|
|
|
155
184
|
|
|
156
185
|
**What you get:** Full RACP integration — reasoning commits, sensitivity events, coordination vector Θ, divergence detection, HITL conflict resolution.
|
|
157
186
|
|
|
187
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup` will rewrite `.claude/hooks.json`, `.claude/settings.json`, and `CLAUDE.md` with the latest versions.
|
|
188
|
+
|
|
158
189
|
---
|
|
159
190
|
|
|
160
191
|
### Cursor
|
|
@@ -197,6 +228,8 @@ devtorch doctor
|
|
|
197
228
|
|
|
198
229
|
**What you get:** MCP tools, VS Code sidebar, optional HTTP proxy for passive capture of all LLM calls (`devtorch proxy start`).
|
|
199
230
|
|
|
231
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup --target cursor` will regenerate `.cursor/mcp.json` and update `CLAUDE.md`.
|
|
232
|
+
|
|
200
233
|
---
|
|
201
234
|
|
|
202
235
|
### Google Antigravity
|
|
@@ -227,11 +260,13 @@ devtorch doctor
|
|
|
227
260
|
|
|
228
261
|
**What you get:** Full RACP integration. The multi-agent nature of Antigravity makes Θ accumulation especially valuable — multiple agents share the same reasoning state through `devtorch_context`.
|
|
229
262
|
|
|
263
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup --target antigravity` will regenerate the MCP config and update `AGENTS.md`.
|
|
264
|
+
|
|
230
265
|
---
|
|
231
266
|
|
|
232
267
|
### OpenCode
|
|
233
268
|
|
|
234
|
-
OpenCode connects to
|
|
269
|
+
OpenCode connects to DevTorch through the local stdio ↔ SSE bridge. The bridge talks to the cloud MCP server first, and if the cloud is unreachable or slow it automatically falls back to the local `devtorch` CLI so your `.GCC/` audit trail is never lost.
|
|
235
270
|
|
|
236
271
|
**Step 1 — Install DevTorch**
|
|
237
272
|
```bash
|
|
@@ -251,7 +286,7 @@ devtorch cloud client-config opencode --org myorg --repo myrepo --api-key <api-k
|
|
|
251
286
|
```
|
|
252
287
|
|
|
253
288
|
This creates:
|
|
254
|
-
- `opencode.json` — the OpenCode MCP server config
|
|
289
|
+
- `opencode.json` — the OpenCode MCP server config (uses the local bridge)
|
|
255
290
|
- `AGENTS.md` — DevTorch governance instructions for the model
|
|
256
291
|
|
|
257
292
|
**Step 3 — Verify**
|
|
@@ -261,7 +296,9 @@ devtorch doctor
|
|
|
261
296
|
|
|
262
297
|
Open the project in OpenCode. The DevTorch MCP tools will be listed, and the model will be instructed to call `devtorch_context` at the start of each task and `devtorch_commit` before every file edit.
|
|
263
298
|
|
|
264
|
-
**What you get:** Cloud-hosted MCP server integration, automatic reasoning commits via `AGENTS.md` instructions, and a shared Θ state across sessions.
|
|
299
|
+
**What you get:** Cloud-hosted MCP server integration with automatic local fallback, automatic reasoning commits via `AGENTS.md` instructions, and a shared Θ state across sessions.
|
|
300
|
+
|
|
301
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch cloud client-config opencode --org <org> --repo <repo> --api-key <api-key>` will regenerate `opencode.json` with the latest bridge and fallback settings. **Restart OpenCode** after updating the config.
|
|
265
302
|
|
|
266
303
|
---
|
|
267
304
|
|
|
@@ -293,6 +330,8 @@ devtorch sensitivity add --source you --concept auth --confidence 0.9 --disclosu
|
|
|
293
330
|
|
|
294
331
|
**What you get:** Sidebar panel (read-only), git-commit-level event capture, manual reasoning commits. Full capture requires switching to Claude Code, Cursor, Kiro, or Antigravity.
|
|
295
332
|
|
|
333
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup` will reinstall the git hook and update the governance instructions.
|
|
334
|
+
|
|
296
335
|
---
|
|
297
336
|
|
|
298
337
|
### AWS Kiro
|
|
@@ -356,6 +395,8 @@ devtorch doctor
|
|
|
356
395
|
|
|
357
396
|
**What you get:** Full RACP integration equivalent to Claude Code — MCP tools, steering-document governance, agent action hooks.
|
|
358
397
|
|
|
398
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2`, then re-run the manual steps above and refresh your steering document with the latest `AGENTS.md` text.
|
|
399
|
+
|
|
359
400
|
---
|
|
360
401
|
|
|
361
402
|
### AWS Bedrock (Python SDK)
|
|
@@ -387,6 +428,8 @@ All `invoke_model()` and `converse()` calls are identical. DevTorch injects the
|
|
|
387
428
|
devtorch doctor
|
|
388
429
|
```
|
|
389
430
|
|
|
431
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
432
|
+
|
|
390
433
|
---
|
|
391
434
|
|
|
392
435
|
### Azure AI Foundry (Python SDK)
|
|
@@ -419,6 +462,8 @@ client = AzureOpenAI(
|
|
|
419
462
|
devtorch doctor
|
|
420
463
|
```
|
|
421
464
|
|
|
465
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
466
|
+
|
|
422
467
|
---
|
|
423
468
|
|
|
424
469
|
### OpenAI Codex CLI
|
|
@@ -443,6 +488,8 @@ codex "Add error handling to the payment service"
|
|
|
443
488
|
|
|
444
489
|
All Codex calls are intercepted by the proxy, which injects the RACP prefix and captures responses into `.GCC/`.
|
|
445
490
|
|
|
491
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2`.
|
|
492
|
+
|
|
446
493
|
---
|
|
447
494
|
|
|
448
495
|
### Ollama (local models)
|
|
@@ -475,6 +522,8 @@ devtorch doctor
|
|
|
475
522
|
|
|
476
523
|
No API key required. Fully local — RACP context and captures stay on-device.
|
|
477
524
|
|
|
525
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
526
|
+
|
|
478
527
|
---
|
|
479
528
|
|
|
480
529
|
### Cloud MCP server (team-wide shared governance)
|
|
@@ -516,6 +565,14 @@ Supported `<ide>` values: `opencode`, `claude`, `cursor`, `vscode`, `stdio`.
|
|
|
516
565
|
|
|
517
566
|
**Full walkthrough:** `IDE_SETUP.md` has step-by-step setup for OpenCode, Claude Code, Cursor, VS Code, Kiro, Antigravity, JetBrains, and generic MCP clients.
|
|
518
567
|
|
|
568
|
+
> **Updating from an older version:** You do **not** need to redeploy the Cloudflare Worker for client-side changes. Just regenerate the IDE config on each machine after upgrading `agentorch`:
|
|
569
|
+
> ```bash
|
|
570
|
+
> pip install -U agentorch>=2.0.2
|
|
571
|
+
> export DEVTORCH_MCP_DOMAIN=devtorch-mcp.YOUR_ACCOUNT.workers.dev
|
|
572
|
+
> /path/to/DevTorch/Implementation/deploy/cloudflare-worker/install-client-config.sh \
|
|
573
|
+
> <ide> <org> <repo> <api-key>
|
|
574
|
+
> ```
|
|
575
|
+
|
|
519
576
|
---
|
|
520
577
|
|
|
521
578
|
### Platform comparison
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
**Local-first AI agent governance.** DevTorch gives multi-agent systems a shared on-disk audit trail, coordination vector, privacy controls, and LLM integration layer — all without a remote service.
|
|
4
4
|
|
|
5
|
-
> **Latest release:** `agentorch 2.0.
|
|
5
|
+
> **Latest release:** `agentorch 2.0.2` — MCP bridge with automatic local fallback, plus upgrade/reinstall docs for all IDE integrations. Install or upgrade with `pip install -U agentorch`.
|
|
6
6
|
|
|
7
7
|
```bash
|
|
8
|
-
pip install -U agentorch>=2.0.
|
|
8
|
+
pip install -U agentorch>=2.0.2
|
|
9
9
|
devtorch init
|
|
10
10
|
devtorch setup # connects to Claude Code, Cursor, or Antigravity
|
|
11
11
|
devtorch debug timeline
|
|
@@ -28,13 +28,13 @@ devtorch debug timeline
|
|
|
28
28
|
|
|
29
29
|
### Reasoning Plus
|
|
30
30
|
|
|
31
|
-
Reasoning Plus is DevTorch’s default augmentation mode: before every LLM call, it gathers smart context from your workspace
|
|
31
|
+
Reasoning Plus is DevTorch’s default augmentation mode: before every LLM call, it gathers smart context from your workspace, asks the model to produce inline `<thinking>` reasoning, and learns from previous calls by re-injecting relevant reasoning into subsequent prompts. The reasoning is captured to `.GCC/` automatically and stripped from the response your tool sees.
|
|
32
32
|
|
|
33
33
|
```bash
|
|
34
34
|
devtorch reasoning-plus status # show current settings
|
|
35
35
|
devtorch reasoning-plus enable # turn on per project
|
|
36
36
|
devtorch reasoning-plus disable # turn off per project
|
|
37
|
-
devtorch reasoning-plus config --smart-top-n 3 --smart-max-lines 150
|
|
37
|
+
devtorch reasoning-plus config --smart-top-n 3 --smart-max-lines 150 --learning-top-n 3
|
|
38
38
|
```
|
|
39
39
|
|
|
40
40
|
Set `DEVTORCH_REASONING_PLUS=0` to disable it for a single session. See [REASONING_PLUS.md](REASONING_PLUS.md) for details.
|
|
@@ -63,6 +63,35 @@ pip install agentorch[all] # everything
|
|
|
63
63
|
|
|
64
64
|
---
|
|
65
65
|
|
|
66
|
+
## Upgrade from an older version
|
|
67
|
+
|
|
68
|
+
DevTorch preserves your `.GCC/` store across upgrades. Newer releases add IDE configs, hooks, or governance instructions, so you should re-run `devtorch setup` after upgrading.
|
|
69
|
+
|
|
70
|
+
**Upgrade any time:**
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
pip install -U agentorch>=2.0.2
|
|
74
|
+
cd /path/to/your/project
|
|
75
|
+
devtorch setup # or: devtorch setup --target <ide>
|
|
76
|
+
devtorch doctor
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
`devtorch setup` is idempotent:
|
|
80
|
+
- It rewrites `CLAUDE.md` / `AGENTS.md` with the latest governance instructions.
|
|
81
|
+
- It regenerates IDE-specific config files (`.claude/settings.json`, `.cursor/mcp.json`, `opencode.json`, etc.).
|
|
82
|
+
- It leaves existing `.GCC/` data untouched.
|
|
83
|
+
|
|
84
|
+
**If you use the cloud MCP server**, re-run the client config installer after upgrade to get the latest bridge and fallback settings:
|
|
85
|
+
|
|
86
|
+
```bash
|
|
87
|
+
export DEVTORCH_MCP_DOMAIN=devtorch-mcp.your-domain.com
|
|
88
|
+
devtorch cloud client-config <ide> --org <org> --repo <repo> --api-key <api-key>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
Supported `<ide>` values: `opencode`, `claude`, `cursor`, `vscode`, `stdio`.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
66
95
|
## Getting Started
|
|
67
96
|
|
|
68
97
|
DevTorch takes **5 minutes to set up**. Pick your AI coding tool below.
|
|
@@ -105,6 +134,8 @@ Open Claude Code in your project. On the first task Claude will call `devtorch_c
|
|
|
105
134
|
|
|
106
135
|
**What you get:** Full RACP integration — reasoning commits, sensitivity events, coordination vector Θ, divergence detection, HITL conflict resolution.
|
|
107
136
|
|
|
137
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup` will rewrite `.claude/hooks.json`, `.claude/settings.json`, and `CLAUDE.md` with the latest versions.
|
|
138
|
+
|
|
108
139
|
---
|
|
109
140
|
|
|
110
141
|
### Cursor
|
|
@@ -147,6 +178,8 @@ devtorch doctor
|
|
|
147
178
|
|
|
148
179
|
**What you get:** MCP tools, VS Code sidebar, optional HTTP proxy for passive capture of all LLM calls (`devtorch proxy start`).
|
|
149
180
|
|
|
181
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup --target cursor` will regenerate `.cursor/mcp.json` and update `CLAUDE.md`.
|
|
182
|
+
|
|
150
183
|
---
|
|
151
184
|
|
|
152
185
|
### Google Antigravity
|
|
@@ -177,11 +210,13 @@ devtorch doctor
|
|
|
177
210
|
|
|
178
211
|
**What you get:** Full RACP integration. The multi-agent nature of Antigravity makes Θ accumulation especially valuable — multiple agents share the same reasoning state through `devtorch_context`.
|
|
179
212
|
|
|
213
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup --target antigravity` will regenerate the MCP config and update `AGENTS.md`.
|
|
214
|
+
|
|
180
215
|
---
|
|
181
216
|
|
|
182
217
|
### OpenCode
|
|
183
218
|
|
|
184
|
-
OpenCode connects to
|
|
219
|
+
OpenCode connects to DevTorch through the local stdio ↔ SSE bridge. The bridge talks to the cloud MCP server first, and if the cloud is unreachable or slow it automatically falls back to the local `devtorch` CLI so your `.GCC/` audit trail is never lost.
|
|
185
220
|
|
|
186
221
|
**Step 1 — Install DevTorch**
|
|
187
222
|
```bash
|
|
@@ -201,7 +236,7 @@ devtorch cloud client-config opencode --org myorg --repo myrepo --api-key <api-k
|
|
|
201
236
|
```
|
|
202
237
|
|
|
203
238
|
This creates:
|
|
204
|
-
- `opencode.json` — the OpenCode MCP server config
|
|
239
|
+
- `opencode.json` — the OpenCode MCP server config (uses the local bridge)
|
|
205
240
|
- `AGENTS.md` — DevTorch governance instructions for the model
|
|
206
241
|
|
|
207
242
|
**Step 3 — Verify**
|
|
@@ -211,7 +246,9 @@ devtorch doctor
|
|
|
211
246
|
|
|
212
247
|
Open the project in OpenCode. The DevTorch MCP tools will be listed, and the model will be instructed to call `devtorch_context` at the start of each task and `devtorch_commit` before every file edit.
|
|
213
248
|
|
|
214
|
-
**What you get:** Cloud-hosted MCP server integration, automatic reasoning commits via `AGENTS.md` instructions, and a shared Θ state across sessions.
|
|
249
|
+
**What you get:** Cloud-hosted MCP server integration with automatic local fallback, automatic reasoning commits via `AGENTS.md` instructions, and a shared Θ state across sessions.
|
|
250
|
+
|
|
251
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch cloud client-config opencode --org <org> --repo <repo> --api-key <api-key>` will regenerate `opencode.json` with the latest bridge and fallback settings. **Restart OpenCode** after updating the config.
|
|
215
252
|
|
|
216
253
|
---
|
|
217
254
|
|
|
@@ -243,6 +280,8 @@ devtorch sensitivity add --source you --concept auth --confidence 0.9 --disclosu
|
|
|
243
280
|
|
|
244
281
|
**What you get:** Sidebar panel (read-only), git-commit-level event capture, manual reasoning commits. Full capture requires switching to Claude Code, Cursor, Kiro, or Antigravity.
|
|
245
282
|
|
|
283
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup` will reinstall the git hook and update the governance instructions.
|
|
284
|
+
|
|
246
285
|
---
|
|
247
286
|
|
|
248
287
|
### AWS Kiro
|
|
@@ -306,6 +345,8 @@ devtorch doctor
|
|
|
306
345
|
|
|
307
346
|
**What you get:** Full RACP integration equivalent to Claude Code — MCP tools, steering-document governance, agent action hooks.
|
|
308
347
|
|
|
348
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2`, then re-run the manual steps above and refresh your steering document with the latest `AGENTS.md` text.
|
|
349
|
+
|
|
309
350
|
---
|
|
310
351
|
|
|
311
352
|
### AWS Bedrock (Python SDK)
|
|
@@ -337,6 +378,8 @@ All `invoke_model()` and `converse()` calls are identical. DevTorch injects the
|
|
|
337
378
|
devtorch doctor
|
|
338
379
|
```
|
|
339
380
|
|
|
381
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
382
|
+
|
|
340
383
|
---
|
|
341
384
|
|
|
342
385
|
### Azure AI Foundry (Python SDK)
|
|
@@ -369,6 +412,8 @@ client = AzureOpenAI(
|
|
|
369
412
|
devtorch doctor
|
|
370
413
|
```
|
|
371
414
|
|
|
415
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
416
|
+
|
|
372
417
|
---
|
|
373
418
|
|
|
374
419
|
### OpenAI Codex CLI
|
|
@@ -393,6 +438,8 @@ codex "Add error handling to the payment service"
|
|
|
393
438
|
|
|
394
439
|
All Codex calls are intercepted by the proxy, which injects the RACP prefix and captures responses into `.GCC/`.
|
|
395
440
|
|
|
441
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2`.
|
|
442
|
+
|
|
396
443
|
---
|
|
397
444
|
|
|
398
445
|
### Ollama (local models)
|
|
@@ -425,6 +472,8 @@ devtorch doctor
|
|
|
425
472
|
|
|
426
473
|
No API key required. Fully local — RACP context and captures stay on-device.
|
|
427
474
|
|
|
475
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
476
|
+
|
|
428
477
|
---
|
|
429
478
|
|
|
430
479
|
### Cloud MCP server (team-wide shared governance)
|
|
@@ -466,6 +515,14 @@ Supported `<ide>` values: `opencode`, `claude`, `cursor`, `vscode`, `stdio`.
|
|
|
466
515
|
|
|
467
516
|
**Full walkthrough:** `IDE_SETUP.md` has step-by-step setup for OpenCode, Claude Code, Cursor, VS Code, Kiro, Antigravity, JetBrains, and generic MCP clients.
|
|
468
517
|
|
|
518
|
+
> **Updating from an older version:** You do **not** need to redeploy the Cloudflare Worker for client-side changes. Just regenerate the IDE config on each machine after upgrading `agentorch`:
|
|
519
|
+
> ```bash
|
|
520
|
+
> pip install -U agentorch>=2.0.2
|
|
521
|
+
> export DEVTORCH_MCP_DOMAIN=devtorch-mcp.YOUR_ACCOUNT.workers.dev
|
|
522
|
+
> /path/to/DevTorch/Implementation/deploy/cloudflare-worker/install-client-config.sh \
|
|
523
|
+
> <ide> <org> <repo> <api-key>
|
|
524
|
+
> ```
|
|
525
|
+
|
|
469
526
|
---
|
|
470
527
|
|
|
471
528
|
### Platform comparison
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: agentorch
|
|
3
|
-
Version: 2.0.
|
|
3
|
+
Version: 2.0.2
|
|
4
4
|
Summary: DevTorch — AI reasoning capture, audit trail, and governance for agent-assisted development
|
|
5
5
|
Author-email: Hemant Joshi <hemant@flotorch.ai>
|
|
6
6
|
License: Apache-2.0
|
|
@@ -52,10 +52,10 @@ Requires-Dist: agentorch[cloud,mcp,proxy,wrapper]; extra == "all"
|
|
|
52
52
|
|
|
53
53
|
**Local-first AI agent governance.** DevTorch gives multi-agent systems a shared on-disk audit trail, coordination vector, privacy controls, and LLM integration layer — all without a remote service.
|
|
54
54
|
|
|
55
|
-
> **Latest release:** `agentorch 2.0.
|
|
55
|
+
> **Latest release:** `agentorch 2.0.2` — MCP bridge with automatic local fallback, plus upgrade/reinstall docs for all IDE integrations. Install or upgrade with `pip install -U agentorch`.
|
|
56
56
|
|
|
57
57
|
```bash
|
|
58
|
-
pip install -U agentorch>=2.0.
|
|
58
|
+
pip install -U agentorch>=2.0.2
|
|
59
59
|
devtorch init
|
|
60
60
|
devtorch setup # connects to Claude Code, Cursor, or Antigravity
|
|
61
61
|
devtorch debug timeline
|
|
@@ -78,13 +78,13 @@ devtorch debug timeline
|
|
|
78
78
|
|
|
79
79
|
### Reasoning Plus
|
|
80
80
|
|
|
81
|
-
Reasoning Plus is DevTorch’s default augmentation mode: before every LLM call, it gathers smart context from your workspace
|
|
81
|
+
Reasoning Plus is DevTorch’s default augmentation mode: before every LLM call, it gathers smart context from your workspace, asks the model to produce inline `<thinking>` reasoning, and learns from previous calls by re-injecting relevant reasoning into subsequent prompts. The reasoning is captured to `.GCC/` automatically and stripped from the response your tool sees.
|
|
82
82
|
|
|
83
83
|
```bash
|
|
84
84
|
devtorch reasoning-plus status # show current settings
|
|
85
85
|
devtorch reasoning-plus enable # turn on per project
|
|
86
86
|
devtorch reasoning-plus disable # turn off per project
|
|
87
|
-
devtorch reasoning-plus config --smart-top-n 3 --smart-max-lines 150
|
|
87
|
+
devtorch reasoning-plus config --smart-top-n 3 --smart-max-lines 150 --learning-top-n 3
|
|
88
88
|
```
|
|
89
89
|
|
|
90
90
|
Set `DEVTORCH_REASONING_PLUS=0` to disable it for a single session. See [REASONING_PLUS.md](REASONING_PLUS.md) for details.
|
|
@@ -113,6 +113,35 @@ pip install agentorch[all] # everything
|
|
|
113
113
|
|
|
114
114
|
---
|
|
115
115
|
|
|
116
|
+
## Upgrade from an older version
|
|
117
|
+
|
|
118
|
+
DevTorch preserves your `.GCC/` store across upgrades. Newer releases add IDE configs, hooks, or governance instructions, so you should re-run `devtorch setup` after upgrading.
|
|
119
|
+
|
|
120
|
+
**Upgrade any time:**
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
pip install -U agentorch>=2.0.2
|
|
124
|
+
cd /path/to/your/project
|
|
125
|
+
devtorch setup # or: devtorch setup --target <ide>
|
|
126
|
+
devtorch doctor
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
`devtorch setup` is idempotent:
|
|
130
|
+
- It rewrites `CLAUDE.md` / `AGENTS.md` with the latest governance instructions.
|
|
131
|
+
- It regenerates IDE-specific config files (`.claude/settings.json`, `.cursor/mcp.json`, `opencode.json`, etc.).
|
|
132
|
+
- It leaves existing `.GCC/` data untouched.
|
|
133
|
+
|
|
134
|
+
**If you use the cloud MCP server**, re-run the client config installer after upgrade to get the latest bridge and fallback settings:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
export DEVTORCH_MCP_DOMAIN=devtorch-mcp.your-domain.com
|
|
138
|
+
devtorch cloud client-config <ide> --org <org> --repo <repo> --api-key <api-key>
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
Supported `<ide>` values: `opencode`, `claude`, `cursor`, `vscode`, `stdio`.
|
|
142
|
+
|
|
143
|
+
---
|
|
144
|
+
|
|
116
145
|
## Getting Started
|
|
117
146
|
|
|
118
147
|
DevTorch takes **5 minutes to set up**. Pick your AI coding tool below.
|
|
@@ -155,6 +184,8 @@ Open Claude Code in your project. On the first task Claude will call `devtorch_c
|
|
|
155
184
|
|
|
156
185
|
**What you get:** Full RACP integration — reasoning commits, sensitivity events, coordination vector Θ, divergence detection, HITL conflict resolution.
|
|
157
186
|
|
|
187
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup` will rewrite `.claude/hooks.json`, `.claude/settings.json`, and `CLAUDE.md` with the latest versions.
|
|
188
|
+
|
|
158
189
|
---
|
|
159
190
|
|
|
160
191
|
### Cursor
|
|
@@ -197,6 +228,8 @@ devtorch doctor
|
|
|
197
228
|
|
|
198
229
|
**What you get:** MCP tools, VS Code sidebar, optional HTTP proxy for passive capture of all LLM calls (`devtorch proxy start`).
|
|
199
230
|
|
|
231
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup --target cursor` will regenerate `.cursor/mcp.json` and update `CLAUDE.md`.
|
|
232
|
+
|
|
200
233
|
---
|
|
201
234
|
|
|
202
235
|
### Google Antigravity
|
|
@@ -227,11 +260,13 @@ devtorch doctor
|
|
|
227
260
|
|
|
228
261
|
**What you get:** Full RACP integration. The multi-agent nature of Antigravity makes Θ accumulation especially valuable — multiple agents share the same reasoning state through `devtorch_context`.
|
|
229
262
|
|
|
263
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup --target antigravity` will regenerate the MCP config and update `AGENTS.md`.
|
|
264
|
+
|
|
230
265
|
---
|
|
231
266
|
|
|
232
267
|
### OpenCode
|
|
233
268
|
|
|
234
|
-
OpenCode connects to
|
|
269
|
+
OpenCode connects to DevTorch through the local stdio ↔ SSE bridge. The bridge talks to the cloud MCP server first, and if the cloud is unreachable or slow it automatically falls back to the local `devtorch` CLI so your `.GCC/` audit trail is never lost.
|
|
235
270
|
|
|
236
271
|
**Step 1 — Install DevTorch**
|
|
237
272
|
```bash
|
|
@@ -251,7 +286,7 @@ devtorch cloud client-config opencode --org myorg --repo myrepo --api-key <api-k
|
|
|
251
286
|
```
|
|
252
287
|
|
|
253
288
|
This creates:
|
|
254
|
-
- `opencode.json` — the OpenCode MCP server config
|
|
289
|
+
- `opencode.json` — the OpenCode MCP server config (uses the local bridge)
|
|
255
290
|
- `AGENTS.md` — DevTorch governance instructions for the model
|
|
256
291
|
|
|
257
292
|
**Step 3 — Verify**
|
|
@@ -261,7 +296,9 @@ devtorch doctor
|
|
|
261
296
|
|
|
262
297
|
Open the project in OpenCode. The DevTorch MCP tools will be listed, and the model will be instructed to call `devtorch_context` at the start of each task and `devtorch_commit` before every file edit.
|
|
263
298
|
|
|
264
|
-
**What you get:** Cloud-hosted MCP server integration, automatic reasoning commits via `AGENTS.md` instructions, and a shared Θ state across sessions.
|
|
299
|
+
**What you get:** Cloud-hosted MCP server integration with automatic local fallback, automatic reasoning commits via `AGENTS.md` instructions, and a shared Θ state across sessions.
|
|
300
|
+
|
|
301
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch cloud client-config opencode --org <org> --repo <repo> --api-key <api-key>` will regenerate `opencode.json` with the latest bridge and fallback settings. **Restart OpenCode** after updating the config.
|
|
265
302
|
|
|
266
303
|
---
|
|
267
304
|
|
|
@@ -293,6 +330,8 @@ devtorch sensitivity add --source you --concept auth --confidence 0.9 --disclosu
|
|
|
293
330
|
|
|
294
331
|
**What you get:** Sidebar panel (read-only), git-commit-level event capture, manual reasoning commits. Full capture requires switching to Claude Code, Cursor, Kiro, or Antigravity.
|
|
295
332
|
|
|
333
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2 && devtorch setup` will reinstall the git hook and update the governance instructions.
|
|
334
|
+
|
|
296
335
|
---
|
|
297
336
|
|
|
298
337
|
### AWS Kiro
|
|
@@ -356,6 +395,8 @@ devtorch doctor
|
|
|
356
395
|
|
|
357
396
|
**What you get:** Full RACP integration equivalent to Claude Code — MCP tools, steering-document governance, agent action hooks.
|
|
358
397
|
|
|
398
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2`, then re-run the manual steps above and refresh your steering document with the latest `AGENTS.md` text.
|
|
399
|
+
|
|
359
400
|
---
|
|
360
401
|
|
|
361
402
|
### AWS Bedrock (Python SDK)
|
|
@@ -387,6 +428,8 @@ All `invoke_model()` and `converse()` calls are identical. DevTorch injects the
|
|
|
387
428
|
devtorch doctor
|
|
388
429
|
```
|
|
389
430
|
|
|
431
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
432
|
+
|
|
390
433
|
---
|
|
391
434
|
|
|
392
435
|
### Azure AI Foundry (Python SDK)
|
|
@@ -419,6 +462,8 @@ client = AzureOpenAI(
|
|
|
419
462
|
devtorch doctor
|
|
420
463
|
```
|
|
421
464
|
|
|
465
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
466
|
+
|
|
422
467
|
---
|
|
423
468
|
|
|
424
469
|
### OpenAI Codex CLI
|
|
@@ -443,6 +488,8 @@ codex "Add error handling to the payment service"
|
|
|
443
488
|
|
|
444
489
|
All Codex calls are intercepted by the proxy, which injects the RACP prefix and captures responses into `.GCC/`.
|
|
445
490
|
|
|
491
|
+
> **Updating from an older version:** `pip install -U agentorch>=2.0.2`.
|
|
492
|
+
|
|
446
493
|
---
|
|
447
494
|
|
|
448
495
|
### Ollama (local models)
|
|
@@ -475,6 +522,8 @@ devtorch doctor
|
|
|
475
522
|
|
|
476
523
|
No API key required. Fully local — RACP context and captures stay on-device.
|
|
477
524
|
|
|
525
|
+
> **Updating from an older version:** `pip install -U agentorch[wrapper]>=2.0.2`.
|
|
526
|
+
|
|
478
527
|
---
|
|
479
528
|
|
|
480
529
|
### Cloud MCP server (team-wide shared governance)
|
|
@@ -516,6 +565,14 @@ Supported `<ide>` values: `opencode`, `claude`, `cursor`, `vscode`, `stdio`.
|
|
|
516
565
|
|
|
517
566
|
**Full walkthrough:** `IDE_SETUP.md` has step-by-step setup for OpenCode, Claude Code, Cursor, VS Code, Kiro, Antigravity, JetBrains, and generic MCP clients.
|
|
518
567
|
|
|
568
|
+
> **Updating from an older version:** You do **not** need to redeploy the Cloudflare Worker for client-side changes. Just regenerate the IDE config on each machine after upgrading `agentorch`:
|
|
569
|
+
> ```bash
|
|
570
|
+
> pip install -U agentorch>=2.0.2
|
|
571
|
+
> export DEVTORCH_MCP_DOMAIN=devtorch-mcp.YOUR_ACCOUNT.workers.dev
|
|
572
|
+
> /path/to/DevTorch/Implementation/deploy/cloudflare-worker/install-client-config.sh \
|
|
573
|
+
> <ide> <org> <repo> <api-key>
|
|
574
|
+
> ```
|
|
575
|
+
|
|
519
576
|
---
|
|
520
577
|
|
|
521
578
|
### Platform comparison
|
|
@@ -18,6 +18,7 @@ benchmarks/swe_bench/run_baseline.py
|
|
|
18
18
|
benchmarks/swe_bench/run_devtorch.py
|
|
19
19
|
benchmarks/swe_bench/seed_gcc.py
|
|
20
20
|
devtorch_cli/__init__.py
|
|
21
|
+
devtorch_cli/__main__.py
|
|
21
22
|
devtorch_cli/main.py
|
|
22
23
|
devtorch_core/__init__.py
|
|
23
24
|
devtorch_core/aggphi_textual.py
|
|
@@ -131,6 +132,15 @@ devtorch_core/reasoning_plus/capture.py
|
|
|
131
132
|
devtorch_core/reasoning_plus/config.py
|
|
132
133
|
devtorch_core/reasoning_plus/context.py
|
|
133
134
|
devtorch_core/reasoning_plus/prompt.py
|
|
135
|
+
devtorch_core/reasoning_plus/learning/__init__.py
|
|
136
|
+
devtorch_core/reasoning_plus/learning/api.py
|
|
137
|
+
devtorch_core/reasoning_plus/learning/composer.py
|
|
138
|
+
devtorch_core/reasoning_plus/learning/extractor.py
|
|
139
|
+
devtorch_core/reasoning_plus/learning/models.py
|
|
140
|
+
devtorch_core/reasoning_plus/learning/recorder.py
|
|
141
|
+
devtorch_core/reasoning_plus/learning/relevance.py
|
|
142
|
+
devtorch_core/reasoning_plus/learning/state.py
|
|
143
|
+
devtorch_core/reasoning_plus/learning/store.py
|
|
134
144
|
devtorch_core/rep_network/__init__.py
|
|
135
145
|
devtorch_core/rep_network/merge.py
|
|
136
146
|
devtorch_core/rep_network/node.py
|
|
@@ -153,6 +163,7 @@ tests/conftest.py
|
|
|
153
163
|
tests/test_backend_factory.py
|
|
154
164
|
tests/test_broadcast.py
|
|
155
165
|
tests/test_cloud_auth.py
|
|
166
|
+
tests/test_cloud_bridge.py
|
|
156
167
|
tests/test_cloud_integration.py
|
|
157
168
|
tests/test_cloud_sse.py
|
|
158
169
|
tests/test_cloud_storage.py
|
|
@@ -190,6 +201,7 @@ tests/test_s21_hitl.py
|
|
|
190
201
|
tests/test_s22_swe_bench.py
|
|
191
202
|
tests/test_s22_swe_bench_dry_run.py
|
|
192
203
|
tests/test_s23_reasoning_plus.py
|
|
204
|
+
tests/test_s24_reasoning_plus_learning.py
|
|
193
205
|
tests/test_s2_context.py
|
|
194
206
|
tests/test_s3_sensitivity.py
|
|
195
207
|
tests/test_s4_invariants.py
|
|
@@ -9,6 +9,10 @@ import shutil
|
|
|
9
9
|
import subprocess
|
|
10
10
|
import tempfile
|
|
11
11
|
from pathlib import Path
|
|
12
|
+
from typing import TYPE_CHECKING
|
|
13
|
+
|
|
14
|
+
if TYPE_CHECKING:
|
|
15
|
+
from devtorch_core.reasoning_plus.learning import ReasoningPlusLearning
|
|
12
16
|
|
|
13
17
|
|
|
14
18
|
def extract_file_paths_from_patch(patch_text: str) -> list[str]:
|
|
@@ -292,15 +296,21 @@ def self_correct_patch(
|
|
|
292
296
|
base_commit: str,
|
|
293
297
|
original_patch: str,
|
|
294
298
|
max_retries: int = 2,
|
|
299
|
+
learning: "ReasoningPlusLearning | None" = None,
|
|
300
|
+
session_id: str = "",
|
|
295
301
|
) -> tuple[str, int, bool, str]:
|
|
296
302
|
"""
|
|
297
303
|
Try to fix a malformed patch by asking the model again.
|
|
298
304
|
|
|
305
|
+
If a `learning` object is provided, each failed attempt is recorded and the
|
|
306
|
+
distilled learnings are injected into the next correction prompt.
|
|
307
|
+
|
|
299
308
|
Returns (final_patch, attempts_used, applies_cleanly, last_error).
|
|
300
309
|
"""
|
|
301
310
|
patch = normalize_patch(original_patch)
|
|
302
311
|
attempts = 0
|
|
303
312
|
last_error = ""
|
|
313
|
+
previous_error = ""
|
|
304
314
|
|
|
305
315
|
for attempt in range(1, max_retries + 1):
|
|
306
316
|
temp_repo = None
|
|
@@ -311,6 +321,23 @@ def self_correct_patch(
|
|
|
311
321
|
return patch, attempts, True, ""
|
|
312
322
|
last_error = error
|
|
313
323
|
|
|
324
|
+
# Record the failed patch application as a learning opportunity.
|
|
325
|
+
if learning and previous_error != error:
|
|
326
|
+
try:
|
|
327
|
+
call_id = learning.record_call(
|
|
328
|
+
call_type="tool",
|
|
329
|
+
name="git_apply_check",
|
|
330
|
+
reasoning=f"The patch failed to apply: {error}",
|
|
331
|
+
input=patch,
|
|
332
|
+
output=error,
|
|
333
|
+
outcome="failure",
|
|
334
|
+
session_id=session_id,
|
|
335
|
+
)
|
|
336
|
+
learning.extract_learnings(call_id)
|
|
337
|
+
except Exception:
|
|
338
|
+
pass
|
|
339
|
+
previous_error = error
|
|
340
|
+
|
|
314
341
|
correction_prompt = (
|
|
315
342
|
"Your previous patch failed to apply to the repository. "
|
|
316
343
|
"Please produce a corrected unified diff patch that applies cleanly. "
|
|
@@ -318,6 +345,18 @@ def self_correct_patch(
|
|
|
318
345
|
f"Apply error:\n{error}\n\n"
|
|
319
346
|
"Original issue and files are above."
|
|
320
347
|
)
|
|
348
|
+
|
|
349
|
+
# Inject relevant learnings from previous attempts into the correction prompt.
|
|
350
|
+
if learning:
|
|
351
|
+
try:
|
|
352
|
+
learnings = learning.get_relevant_learnings(
|
|
353
|
+
correction_prompt,
|
|
354
|
+
top_n=learning._config.learning_top_n,
|
|
355
|
+
)
|
|
356
|
+
correction_prompt = learning.compose_user_prompt(correction_prompt, learnings)
|
|
357
|
+
except Exception:
|
|
358
|
+
pass
|
|
359
|
+
|
|
321
360
|
response = client.messages.create(
|
|
322
361
|
model=model,
|
|
323
362
|
max_tokens=4096,
|