agent-borg 3.3.2__tar.gz → 3.3.4__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.
- {agent_borg-3.3.2 → agent_borg-3.3.4}/LICENSE +1 -1
- agent_borg-3.3.4/PKG-INFO +411 -0
- agent_borg-3.3.4/README.md +367 -0
- agent_borg-3.3.4/agent_borg.egg-info/PKG-INFO +411 -0
- agent_borg-3.3.4/agent_borg.egg-info/SOURCES.txt +141 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/agent_borg.egg-info/entry_points.txt +1 -0
- agent_borg-3.3.4/agent_borg.egg-info/requires.txt +30 -0
- agent_borg-3.3.4/borg/__init__.py +49 -0
- agent_borg-3.3.4/borg/cli/__init__.py +11 -0
- agent_borg-3.3.4/borg/cli/__main__.py +11 -0
- agent_borg-3.3.4/borg/cli/doctor.py +169 -0
- agent_borg-3.3.4/borg/cli/install.py +25 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/cli.py +467 -90
- agent_borg-3.3.4/borg/core/__init__.py +29 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/apply.py +4 -57
- agent_borg-3.3.4/borg/core/atom_policy.py +84 -0
- agent_borg-3.3.4/borg/core/atom_retrieval.py +39 -0
- agent_borg-3.3.4/borg/core/atom_store.py +170 -0
- agent_borg-3.3.4/borg/core/atom_tenant.py +70 -0
- agent_borg-3.3.4/borg/core/confidence_gate.py +261 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/convert.py +21 -6
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/crypto.py +3 -1
- agent_borg-3.3.4/borg/core/dirs.py +124 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/embeddings.py +49 -17
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/failure_memory.py +8 -4
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/feedback_loop.py +30 -32
- agent_borg-3.3.4/borg/core/first_user_readiness.py +231 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/generate.py +49 -14
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/generator.py +22 -13
- agent_borg-3.3.4/borg/core/learning_atoms.py +248 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/mutation_engine.py +23 -125
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/openclaw_converter.py +2 -2
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/pack_taxonomy.py +6 -6
- agent_borg-3.3.4/borg/core/privacy.py +224 -0
- agent_borg-3.3.4/borg/core/prompt_injection.py +72 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/proof_gates.py +2 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/publish.py +85 -32
- agent_borg-3.3.4/borg/core/rescue.py +299 -0
- agent_borg-3.3.4/borg/core/runtime_fingerprint.py +172 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/search.py +11 -7
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/session.py +1 -1
- agent_borg-3.3.4/borg/core/telemetry.py +114 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/trace_matcher.py +27 -48
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/traces.py +32 -18
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/uri.py +93 -77
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/v3_integration.py +59 -64
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/db/embeddings.py +12 -12
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/db/migrations.py +73 -24
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/db/store.py +41 -14
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/fleet/syncer.py +7 -5
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/integrations/mcp_server.py +262 -291
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/borg/SKILL.md +3 -3
- agent_borg-3.3.4/borg/seeds_data/packs/systematic-debugging.workflow.yaml +43 -0
- agent_borg-3.3.4/pyproject.toml +80 -0
- agent_borg-3.3.2/PKG-INFO +0 -128
- agent_borg-3.3.2/README.md +0 -103
- agent_borg-3.3.2/agent_borg.egg-info/PKG-INFO +0 -128
- agent_borg-3.3.2/agent_borg.egg-info/SOURCES.txt +0 -287
- agent_borg-3.3.2/agent_borg.egg-info/requires.txt +0 -7
- agent_borg-3.3.2/borg/__init__.py +0 -8
- agent_borg-3.3.2/borg/cli/__init__.py +0 -42
- agent_borg-3.3.2/borg/cli/doctor.py +0 -111
- agent_borg-3.3.2/borg/cli/install.py +0 -151
- agent_borg-3.3.2/borg/core/action_policy.py +0 -24
- agent_borg-3.3.2/borg/core/canonical_truth.py +0 -66
- agent_borg-3.3.2/borg/core/dirs.py +0 -52
- agent_borg-3.3.2/borg/core/outcome_ledger.py +0 -68
- agent_borg-3.3.2/borg/core/privacy.py +0 -144
- agent_borg-3.3.2/borg/core/provider_router.py +0 -19
- agent_borg-3.3.2/borg/core/quality_gate.py +0 -60
- agent_borg-3.3.2/borg/core/rate_limiter.py +0 -69
- agent_borg-3.3.2/borg/core/response_formatter.py +0 -26
- agent_borg-3.3.2/borg/core/sanitizer.py +0 -62
- agent_borg-3.3.2/borg/core/status.py +0 -27
- agent_borg-3.3.2/borg/core/telemetry.py +0 -71
- agent_borg-3.3.2/borg/defi/__init__.py +0 -123
- agent_borg-3.3.2/borg/defi/alpha_signal.py +0 -1044
- agent_borg-3.3.2/borg/defi/api_clients/__init__.py +0 -27
- agent_borg-3.3.2/borg/defi/api_clients/alchemy.py +0 -346
- agent_borg-3.3.2/borg/defi/api_clients/arkham.py +0 -354
- agent_borg-3.3.2/borg/defi/api_clients/base.py +0 -377
- agent_borg-3.3.2/borg/defi/api_clients/birdeye.py +0 -224
- agent_borg-3.3.2/borg/defi/api_clients/cache.py +0 -282
- agent_borg-3.3.2/borg/defi/api_clients/defillama.py +0 -211
- agent_borg-3.3.2/borg/defi/api_clients/dexscreener.py +0 -167
- agent_borg-3.3.2/borg/defi/api_clients/goplus.py +0 -401
- agent_borg-3.3.2/borg/defi/api_clients/helius.py +0 -310
- agent_borg-3.3.2/borg/defi/cli.py +0 -161
- agent_borg-3.3.2/borg/defi/cron/__init__.py +0 -64
- agent_borg-3.3.2/borg/defi/cron/alpha_cron.py +0 -177
- agent_borg-3.3.2/borg/defi/cron/delivery.py +0 -215
- agent_borg-3.3.2/borg/defi/cron/liquidation_cron.py +0 -66
- agent_borg-3.3.2/borg/defi/cron/live_scans.py +0 -442
- agent_borg-3.3.2/borg/defi/cron/portfolio_cron.py +0 -106
- agent_borg-3.3.2/borg/defi/cron/risk_cron.py +0 -144
- agent_borg-3.3.2/borg/defi/cron/state.py +0 -182
- agent_borg-3.3.2/borg/defi/cron/whale_cron.py +0 -110
- agent_borg-3.3.2/borg/defi/cron/yield_cron.py +0 -106
- agent_borg-3.3.2/borg/defi/data_models.py +0 -447
- agent_borg-3.3.2/borg/defi/dojo_bridge.py +0 -696
- agent_borg-3.3.2/borg/defi/liquidation_watcher.py +0 -682
- agent_borg-3.3.2/borg/defi/lp_manager.py +0 -868
- agent_borg-3.3.2/borg/defi/mcp_tools.py +0 -158
- agent_borg-3.3.2/borg/defi/mev/__init__.py +0 -25
- agent_borg-3.3.2/borg/defi/mev/flashbots.py +0 -234
- agent_borg-3.3.2/borg/defi/mev/jito.py +0 -169
- agent_borg-3.3.2/borg/defi/portfolio_monitor.py +0 -681
- agent_borg-3.3.2/borg/defi/risk_engine.py +0 -725
- agent_borg-3.3.2/borg/defi/security/__init__.py +0 -36
- agent_borg-3.3.2/borg/defi/security/keystore.py +0 -559
- agent_borg-3.3.2/borg/defi/security/tx_guard.py +0 -581
- agent_borg-3.3.2/borg/defi/strategy_backtester.py +0 -814
- agent_borg-3.3.2/borg/defi/strategy_selector.py +0 -702
- agent_borg-3.3.2/borg/defi/swap_executor.py +0 -1438
- agent_borg-3.3.2/borg/defi/tests/__init__.py +0 -1
- agent_borg-3.3.2/borg/defi/tests/test_alchemy.py +0 -426
- agent_borg-3.3.2/borg/defi/tests/test_alpha_signal.py +0 -905
- agent_borg-3.3.2/borg/defi/tests/test_api_clients.py +0 -558
- agent_borg-3.3.2/borg/defi/tests/test_arkham.py +0 -651
- agent_borg-3.3.2/borg/defi/tests/test_base_client.py +0 -292
- agent_borg-3.3.2/borg/defi/tests/test_cache.py +0 -503
- agent_borg-3.3.2/borg/defi/tests/test_cli.py +0 -279
- agent_borg-3.3.2/borg/defi/tests/test_cron.py +0 -708
- agent_borg-3.3.2/borg/defi/tests/test_cron_delivery.py +0 -246
- agent_borg-3.3.2/borg/defi/tests/test_cron_state.py +0 -315
- agent_borg-3.3.2/borg/defi/tests/test_data_models.py +0 -754
- agent_borg-3.3.2/borg/defi/tests/test_dojo_bridge.py +0 -976
- agent_borg-3.3.2/borg/defi/tests/test_e2e_live.py +0 -304
- agent_borg-3.3.2/borg/defi/tests/test_goplus.py +0 -469
- agent_borg-3.3.2/borg/defi/tests/test_keystore_unit.py +0 -536
- agent_borg-3.3.2/borg/defi/tests/test_liquidation_watcher.py +0 -776
- agent_borg-3.3.2/borg/defi/tests/test_live_scans.py +0 -1048
- agent_borg-3.3.2/borg/defi/tests/test_lp_manager.py +0 -740
- agent_borg-3.3.2/borg/defi/tests/test_mcp_tools.py +0 -335
- agent_borg-3.3.2/borg/defi/tests/test_mev.py +0 -721
- agent_borg-3.3.2/borg/defi/tests/test_portfolio_monitor.py +0 -621
- agent_borg-3.3.2/borg/defi/tests/test_risk_engine.py +0 -729
- agent_borg-3.3.2/borg/defi/tests/test_strategy_backtester.py +0 -728
- agent_borg-3.3.2/borg/defi/tests/test_strategy_selector.py +0 -1009
- agent_borg-3.3.2/borg/defi/tests/test_swap_executor.py +0 -1219
- agent_borg-3.3.2/borg/defi/tests/test_tx_guard_unit.py +0 -651
- agent_borg-3.3.2/borg/defi/tests/test_v2_borg_bridge.py +0 -374
- agent_borg-3.3.2/borg/defi/tests/test_v2_circuit_breaker.py +0 -590
- agent_borg-3.3.2/borg/defi/tests/test_v2_drift.py +0 -393
- agent_borg-3.3.2/borg/defi/tests/test_v2_integration.py +0 -610
- agent_borg-3.3.2/borg/defi/tests/test_v2_models.py +0 -537
- agent_borg-3.3.2/borg/defi/tests/test_v2_outcome_store.py +0 -364
- agent_borg-3.3.2/borg/defi/tests/test_v2_pack_store.py +0 -379
- agent_borg-3.3.2/borg/defi/tests/test_v2_recommender.py +0 -859
- agent_borg-3.3.2/borg/defi/tests/test_v2_reputation.py +0 -413
- agent_borg-3.3.2/borg/defi/tests/test_v2_seed_packs.py +0 -285
- agent_borg-3.3.2/borg/defi/tests/test_v2_warnings.py +0 -428
- agent_borg-3.3.2/borg/defi/tests/test_whale_tracker.py +0 -515
- agent_borg-3.3.2/borg/defi/tests/test_yield_scanner.py +0 -593
- agent_borg-3.3.2/borg/defi/v2/__init__.py +0 -27
- agent_borg-3.3.2/borg/defi/v2/borg_bridge.py +0 -300
- agent_borg-3.3.2/borg/defi/v2/circuit_breaker.py +0 -397
- agent_borg-3.3.2/borg/defi/v2/daily_brief.py +0 -129
- agent_borg-3.3.2/borg/defi/v2/drift.py +0 -151
- agent_borg-3.3.2/borg/defi/v2/models.py +0 -388
- agent_borg-3.3.2/borg/defi/v2/outcome_store.py +0 -168
- agent_borg-3.3.2/borg/defi/v2/pack_store.py +0 -180
- agent_borg-3.3.2/borg/defi/v2/recommender.py +0 -582
- agent_borg-3.3.2/borg/defi/v2/reputation.py +0 -216
- agent_borg-3.3.2/borg/defi/v2/seed_packs.py +0 -399
- agent_borg-3.3.2/borg/defi/v2/warnings.py +0 -216
- agent_borg-3.3.2/borg/defi/whale_tracker.py +0 -585
- agent_borg-3.3.2/borg/defi/yield_scanner.py +0 -405
- agent_borg-3.3.2/borg/integrations/__init__.py +0 -0
- agent_borg-3.3.2/borg/tests/__init__.py +0 -0
- agent_borg-3.3.2/borg/tests/fixtures/openclaw/quick_validate.py +0 -159
- agent_borg-3.3.2/borg/tests/test_agent_hook.py +0 -378
- agent_borg-3.3.2/borg/tests/test_aggregator.py +0 -468
- agent_borg-3.3.2/borg/tests/test_analytics.py +0 -506
- agent_borg-3.3.2/borg/tests/test_apply.py +0 -674
- agent_borg-3.3.2/borg/tests/test_change_awareness.py +0 -360
- agent_borg-3.3.2/borg/tests/test_classify_error.py +0 -359
- agent_borg-3.3.2/borg/tests/test_cli.py +0 -669
- agent_borg-3.3.2/borg/tests/test_conditions.py +0 -490
- agent_borg-3.3.2/borg/tests/test_contextual_selector.py +0 -957
- agent_borg-3.3.2/borg/tests/test_convert.py +0 -353
- agent_borg-3.3.2/borg/tests/test_convert_openclaw.py +0 -729
- agent_borg-3.3.2/borg/tests/test_dirs.py +0 -55
- agent_borg-3.3.2/borg/tests/test_dojo_pipeline.py +0 -1000
- agent_borg-3.3.2/borg/tests/test_e2e_learning_loop.py +0 -1122
- agent_borg-3.3.2/borg/tests/test_e2e_learning_loop_v3.py +0 -987
- agent_borg-3.3.2/borg/tests/test_failure_memory.py +0 -528
- agent_borg-3.3.2/borg/tests/test_feedback_loop.py +0 -1175
- agent_borg-3.3.2/borg/tests/test_fleet_syncer.py +0 -400
- agent_borg-3.3.2/borg/tests/test_generate.py +0 -303
- agent_borg-3.3.2/borg/tests/test_generator.py +0 -346
- agent_borg-3.3.2/borg/tests/test_golden_queries.py +0 -95
- agent_borg-3.3.2/borg/tests/test_invariants.py +0 -98
- agent_borg-3.3.2/borg/tests/test_mcp_hardening.py +0 -296
- agent_borg-3.3.2/borg/tests/test_mcp_server.py +0 -861
- agent_borg-3.3.2/borg/tests/test_mcp_server_extended.py +0 -2073
- agent_borg-3.3.2/borg/tests/test_mutation_engine.py +0 -1017
- agent_borg-3.3.2/borg/tests/test_nudge.py +0 -481
- agent_borg-3.3.2/borg/tests/test_observe_search_roundtrip.py +0 -151
- agent_borg-3.3.2/borg/tests/test_openclaw_converter.py +0 -454
- agent_borg-3.3.2/borg/tests/test_pack_compatibility.py +0 -359
- agent_borg-3.3.2/borg/tests/test_perf_candidate_cache.py +0 -58
- agent_borg-3.3.2/borg/tests/test_privacy.py +0 -362
- agent_borg-3.3.2/borg/tests/test_proof_gates.py +0 -486
- agent_borg-3.3.2/borg/tests/test_publish.py +0 -581
- agent_borg-3.3.2/borg/tests/test_publish_flow_debug.py +0 -63
- agent_borg-3.3.2/borg/tests/test_publish_flow_integration.py +0 -279
- agent_borg-3.3.2/borg/tests/test_publish_sybil.py +0 -428
- agent_borg-3.3.2/borg/tests/test_pull_network.py +0 -182
- agent_borg-3.3.2/borg/tests/test_reputation.py +0 -430
- agent_borg-3.3.2/borg/tests/test_reputation_integration.py +0 -1080
- agent_borg-3.3.2/borg/tests/test_safety.py +0 -564
- agent_borg-3.3.2/borg/tests/test_schema.py +0 -435
- agent_borg-3.3.2/borg/tests/test_search.py +0 -1330
- agent_borg-3.3.2/borg/tests/test_semantic_search.py +0 -423
- agent_borg-3.3.2/borg/tests/test_session.py +0 -570
- agent_borg-3.3.2/borg/tests/test_start_signals.py +0 -375
- agent_borg-3.3.2/borg/tests/test_store.py +0 -946
- agent_borg-3.3.2/borg/tests/test_store_concurrency.py +0 -344
- agent_borg-3.3.2/borg/tests/test_telemetry.py +0 -410
- agent_borg-3.3.2/borg/tests/test_uri.py +0 -263
- agent_borg-3.3.2/borg/tests/test_v3_integration.py +0 -707
- agent_borg-3.3.2/borg/tests/test_version_consistency.py +0 -27
- agent_borg-3.3.2/borg/tests/test_wiring.py +0 -312
- agent_borg-3.3.2/pyproject.toml +0 -47
- agent_borg-3.3.2/tests/test_e2e_verify.py +0 -845
- {agent_borg-3.3.2 → agent_borg-3.3.4}/agent_borg.egg-info/dependency_links.txt +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/agent_borg.egg-info/top_level.txt +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/benchmark/skills/test_skills.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/benchmarks/__init__.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/benchmarks/report.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/benchmarks/runner.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/benchmarks/scorer.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/benchmarks/tasks.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/benchmarks/tests/__init__.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/benchmarks/tests/test_benchmarks.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/agentskills_converter.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/aggregator.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/bm25_index.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/causal.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/changes.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/clustering.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/cold_start.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/conditions.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/contextual_selector.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/negative_traces.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/safety.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/schema.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/seed_loader.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/seeds.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/semantic_search.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/signals.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/stack.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/synthesis.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/core/temporal.py +0 -0
- {agent_borg-3.3.2/borg/core → agent_borg-3.3.4/borg/db}/__init__.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/db/analytics.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/db/reputation.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/__init__.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/auto_fixer.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/cron_runner.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/data_models.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/failure_classifier.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/learning_curve.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/pipeline.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/report_generator.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/session_reader.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/skill_gap_detector.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/tests/__init__.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/tests/test_auto_fixer.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/tests/test_failure_classifier.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/tests/test_learning_curve.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/tests/test_pipeline.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/tests/test_report_generator.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/tests/test_session_reader.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/dojo/tests/test_skill_gap_detector.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/eval/__init__.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/eval/ab_test.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/eval/e1a_seed_pack_validation.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/eval/production_smoke_test.py +0 -0
- {agent_borg-3.3.2/borg/db → agent_borg-3.3.4/borg/integrations}/__init__.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/integrations/agent_hook.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/integrations/http_server.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/integrations/nudge.py +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/borg-autopilot/SKILL.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/circular-dependency-migration.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/code-review.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/collective_seed.json +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/configuration-error.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/defi-risk-check.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/defi-yield-strategy.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/extended_seeds.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/import-cycle.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/migration-state-desync.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/missing-dependency.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/missing-foreign-key.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/null-pointer-chain.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/bash-permission-denied.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/django-circular-dependency.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/django-migration-state.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/django-null-pointer.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/django-schema-drift.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/docker-no-space.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/git-merge-conflict.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/pytest-flaky-test.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/python-import-cycle.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/packs/python-missing-dependency.yaml +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/permission-denied.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/race-condition.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/schema-drift.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/systematic-debugging.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/test-driven-development.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/timeout-hang.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/borg/seeds_data/type-mismatch.md +0 -0
- {agent_borg-3.3.2 → agent_borg-3.3.4}/setup.cfg +0 -0
|
@@ -0,0 +1,411 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: agent-borg
|
|
3
|
+
Version: 3.3.4
|
|
4
|
+
Summary: Collective memory MCP server for AI coding agents
|
|
5
|
+
Author: Borg contributors
|
|
6
|
+
License-Expression: MIT
|
|
7
|
+
Project-URL: Homepage, https://github.com/borg-farther/Borg-Directory
|
|
8
|
+
Project-URL: Repository, https://github.com/borg-farther/Borg-Directory
|
|
9
|
+
Project-URL: Documentation, https://github.com/borg-farther/Borg-Directory#readme
|
|
10
|
+
Project-URL: Issues, https://github.com/borg-farther/Borg-Directory/issues
|
|
11
|
+
Keywords: mcp,ai-agents,debugging,agent-tools,collective-memory
|
|
12
|
+
Classifier: Development Status :: 4 - Beta
|
|
13
|
+
Classifier: Intended Audience :: Developers
|
|
14
|
+
Classifier: Programming Language :: Python :: 3
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
16
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
17
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
18
|
+
Classifier: Topic :: Software Development :: Debuggers
|
|
19
|
+
Requires-Python: >=3.10
|
|
20
|
+
Description-Content-Type: text/markdown
|
|
21
|
+
License-File: LICENSE
|
|
22
|
+
Requires-Dist: pyyaml>=6.0
|
|
23
|
+
Provides-Extra: semantic
|
|
24
|
+
Requires-Dist: sentence-transformers>=2.2.0; extra == "semantic"
|
|
25
|
+
Requires-Dist: numpy>=1.24.0; extra == "semantic"
|
|
26
|
+
Requires-Dist: scikit-learn>=1.3.0; extra == "semantic"
|
|
27
|
+
Provides-Extra: embeddings
|
|
28
|
+
Requires-Dist: sentence-transformers>=2.2.0; extra == "embeddings"
|
|
29
|
+
Requires-Dist: numpy>=1.24.0; extra == "embeddings"
|
|
30
|
+
Requires-Dist: scikit-learn>=1.3.0; extra == "embeddings"
|
|
31
|
+
Provides-Extra: crypto
|
|
32
|
+
Requires-Dist: pynacl>=1.5.0; extra == "crypto"
|
|
33
|
+
Provides-Extra: dev
|
|
34
|
+
Requires-Dist: pytest>=8.0.0; extra == "dev"
|
|
35
|
+
Requires-Dist: tomli>=2.0.0; python_version < "3.11" and extra == "dev"
|
|
36
|
+
Provides-Extra: all
|
|
37
|
+
Requires-Dist: pytest>=8.0.0; extra == "all"
|
|
38
|
+
Requires-Dist: tomli>=2.0.0; python_version < "3.11" and extra == "all"
|
|
39
|
+
Requires-Dist: sentence-transformers>=2.2.0; extra == "all"
|
|
40
|
+
Requires-Dist: numpy>=1.24.0; extra == "all"
|
|
41
|
+
Requires-Dist: scikit-learn>=1.3.0; extra == "all"
|
|
42
|
+
Requires-Dist: pynacl>=1.5.0; extra == "all"
|
|
43
|
+
Dynamic: license-file
|
|
44
|
+
|
|
45
|
+
# Borg — collective memory for AI agents
|
|
46
|
+
|
|
47
|
+
Borg helps coding agents avoid rediscovering the same fixes and dead ends.
|
|
48
|
+
Give it an error or task; it returns an `ACTION / STOP / VERIFY` packet, or a clear `NO_CONFIDENT_MATCH` when it does not know.
|
|
49
|
+
|
|
50
|
+
**Install package:** `agent-borg`
|
|
51
|
+
**Installed CLI:** `borg`
|
|
52
|
+
**MCP server command:** `borg-mcp`
|
|
53
|
+
**Canonical repo:** https://github.com/borg-farther/Borg-Directory
|
|
54
|
+
**Canonical/no-loss policy:** [`docs/CANONICAL_REPO.md`](docs/CANONICAL_REPO.md)
|
|
55
|
+
|
|
56
|
+
Name warning: Borg is the product name and `borg` is the command, but the package you install is **`agent-borg`**.
|
|
57
|
+
Do **not** run `pip install borg`, `brew install borgbackup`, `apt install borgbackup`, `apt-get install borgbackup`, `dnf install borgbackup`, or `pacman -S borg`; those install unrelated Borg/BorgBackup software and will not provide Borg's AI-agent MCP tools.
|
|
58
|
+
|
|
59
|
+
Borg is not marketed here as a magic success-rate booster. Current local security/readiness gates are green; statistically significant external agent-level lift is still unproven.
|
|
60
|
+
|
|
61
|
+
## For people running AI agents
|
|
62
|
+
|
|
63
|
+
If you run Claude Code, Hermes Agent, OpenClaw, or any MCP-capable coding agent, connect Borg once as a local MCP server.
|
|
64
|
+
Choose the setup path by the **agent host** you run, not by the model inside it. If you use Hermes with Claude, GPT, OpenRouter, or another provider, follow the **Hermes Agent** path.
|
|
65
|
+
|
|
66
|
+
Why: the agent can check prior fixes and dead ends before burning tool calls. It gets `ACTION / STOP / VERIFY`, can avoid repeated failed loops, and should disclose `NO_CONFIDENT_MATCH` when Borg has no good hit.
|
|
67
|
+
|
|
68
|
+
How:
|
|
69
|
+
|
|
70
|
+
1. Install `agent-borg` and verify `borg-mcp`.
|
|
71
|
+
2. Connect your agent host:
|
|
72
|
+
- Claude Code: `borg setup-claude --scope user --verify --fix`
|
|
73
|
+
- Hermes Agent, including Hermes with Claude/GPT models: add `mcp_servers.borg` in `~/.hermes/config.yaml`
|
|
74
|
+
- OpenClaw / generic MCP: add `mcpServers.borg` with `"command": "borg-mcp"`
|
|
75
|
+
3. Restart the agent and ask: `what MCP tools do you have from Borg?`
|
|
76
|
+
|
|
77
|
+
Details: [`docs/MCP_SETUP.md`](docs/MCP_SETUP.md).
|
|
78
|
+
|
|
79
|
+
---
|
|
80
|
+
|
|
81
|
+
## 1. Install `agent-borg`
|
|
82
|
+
|
|
83
|
+
Requires Python 3.10+. For normal users, prefer `pipx`: it installs the CLI cleanly without polluting your system Python.
|
|
84
|
+
|
|
85
|
+
### macOS
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
python3 --version # must be 3.10+
|
|
89
|
+
brew install pipx
|
|
90
|
+
pipx ensurepath
|
|
91
|
+
pipx install agent-borg
|
|
92
|
+
exec "$SHELL" -l
|
|
93
|
+
|
|
94
|
+
command -v borg
|
|
95
|
+
command -v borg-mcp
|
|
96
|
+
borg version
|
|
97
|
+
borg-doctor --json
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
No Homebrew?
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
python3 -m pip install --user pipx
|
|
104
|
+
python3 -m pipx ensurepath
|
|
105
|
+
python3 -m pipx install agent-borg
|
|
106
|
+
exec "$SHELL" -l
|
|
107
|
+
|
|
108
|
+
command -v borg
|
|
109
|
+
borg version
|
|
110
|
+
borg-doctor --json
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Do not run `brew install borgbackup`; that installs BorgBackup, not this project.
|
|
114
|
+
|
|
115
|
+
### Linux
|
|
116
|
+
|
|
117
|
+
Debian/Ubuntu:
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
python3 --version # must be 3.10+
|
|
121
|
+
sudo apt update
|
|
122
|
+
sudo apt install -y pipx
|
|
123
|
+
pipx ensurepath
|
|
124
|
+
pipx install agent-borg
|
|
125
|
+
exec "$SHELL" -l
|
|
126
|
+
|
|
127
|
+
command -v borg
|
|
128
|
+
command -v borg-mcp
|
|
129
|
+
borg version
|
|
130
|
+
borg-doctor --json
|
|
131
|
+
```
|
|
132
|
+
|
|
133
|
+
Fedora/RHEL:
|
|
134
|
+
|
|
135
|
+
```bash
|
|
136
|
+
sudo dnf install -y pipx
|
|
137
|
+
pipx ensurepath
|
|
138
|
+
pipx install agent-borg
|
|
139
|
+
exec "$SHELL" -l
|
|
140
|
+
|
|
141
|
+
command -v borg
|
|
142
|
+
borg version
|
|
143
|
+
borg-doctor --json
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
Arch:
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
sudo pacman -Syu --needed python-pipx
|
|
150
|
+
pipx ensurepath
|
|
151
|
+
pipx install agent-borg
|
|
152
|
+
exec "$SHELL" -l
|
|
153
|
+
|
|
154
|
+
command -v borg
|
|
155
|
+
borg version
|
|
156
|
+
borg-doctor --json
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
If your distro has no `pipx` package:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
python3 -m pip install --user pipx
|
|
163
|
+
python3 -m pipx ensurepath
|
|
164
|
+
python3 -m pipx install agent-borg
|
|
165
|
+
exec "$SHELL" -l
|
|
166
|
+
|
|
167
|
+
command -v borg
|
|
168
|
+
borg version
|
|
169
|
+
borg-doctor --json
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
Do not run `apt install borgbackup`, `apt-get install borgbackup`, `dnf install borgbackup`, or `pacman -S borg`; those install BorgBackup/other packages, not this project.
|
|
173
|
+
|
|
174
|
+
### Windows PowerShell
|
|
175
|
+
|
|
176
|
+
```powershell
|
|
177
|
+
py -3 --version # must be 3.10+
|
|
178
|
+
py -m pip install --user pipx
|
|
179
|
+
py -m pipx ensurepath
|
|
180
|
+
py -m pipx install agent-borg
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
Close and reopen PowerShell, then verify:
|
|
184
|
+
|
|
185
|
+
```powershell
|
|
186
|
+
where.exe borg
|
|
187
|
+
where.exe borg-mcp
|
|
188
|
+
borg version
|
|
189
|
+
borg-doctor --json
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
If `py` is unavailable, replace `py` with `python`.
|
|
193
|
+
|
|
194
|
+
### Optional Python-environment install
|
|
195
|
+
|
|
196
|
+
If you intentionally want Borg inside the active Python environment instead of an isolated CLI install:
|
|
197
|
+
|
|
198
|
+
```bash
|
|
199
|
+
python3 -m pip install agent-borg
|
|
200
|
+
python3 -m pip install 'agent-borg[embeddings]' # optional semantic search
|
|
201
|
+
python3 -m pip install 'agent-borg[crypto]' # optional Ed25519 signing support
|
|
202
|
+
python3 -m pip install 'agent-borg[all]' # optional dev + semantic + crypto
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
Windows PowerShell:
|
|
206
|
+
|
|
207
|
+
```powershell
|
|
208
|
+
py -m pip install agent-borg
|
|
209
|
+
py -m pip install "agent-borg[embeddings]"
|
|
210
|
+
py -m pip install "agent-borg[crypto]"
|
|
211
|
+
py -m pip install "agent-borg[all]"
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
For controlled or offline environments:
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
python -m pip download agent-borg -d ./wheelhouse
|
|
218
|
+
python -m pip install --no-index --find-links ./wheelhouse agent-borg
|
|
219
|
+
borg version
|
|
220
|
+
borg-doctor --json
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
Full install guide: [`docs/INSTALL.md`](docs/INSTALL.md).
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
## 2. First useful command
|
|
228
|
+
|
|
229
|
+
```bash
|
|
230
|
+
borg rescue "ModuleNotFoundError: No module named flask"
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
Expected shape:
|
|
234
|
+
|
|
235
|
+
```text
|
|
236
|
+
ACTION: what to try next
|
|
237
|
+
STOP: what dead-end to avoid
|
|
238
|
+
VERIFY: exact check to rerun
|
|
239
|
+
CONFIDENCE: tested / observed / inferred / NO_CONFIDENT_MATCH
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
More day-one commands:
|
|
243
|
+
|
|
244
|
+
```bash
|
|
245
|
+
pytest -q 2>&1 | borg rescue --json
|
|
246
|
+
borg search "django migration table already exists"
|
|
247
|
+
borg try systematic-debugging
|
|
248
|
+
borg apply systematic-debugging --task "Fix Django migration table already exists error"
|
|
249
|
+
borg first-10 --json
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
Python API:
|
|
253
|
+
|
|
254
|
+
```python
|
|
255
|
+
import borg
|
|
256
|
+
|
|
257
|
+
hits = borg.check("TypeError: unsupported operand type(s)", top_k=3)
|
|
258
|
+
for hit in hits:
|
|
259
|
+
print(hit.get("name"), hit.get("tier"))
|
|
260
|
+
```
|
|
261
|
+
|
|
262
|
+
---
|
|
263
|
+
|
|
264
|
+
## 3. Connect an agent with MCP
|
|
265
|
+
|
|
266
|
+
Prerequisite: `borg version` and `borg-doctor --json` pass in the same environment that launches your agent host.
|
|
267
|
+
|
|
268
|
+
Claude Code one-command setup:
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
borg setup-claude --scope user --verify --fix
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
Expected output includes:
|
|
275
|
+
|
|
276
|
+
```text
|
|
277
|
+
Verify: PASS (initialize handshake ok)
|
|
278
|
+
```
|
|
279
|
+
|
|
280
|
+
Then fully quit and restart Claude Code so it reloads PATH and MCP config.
|
|
281
|
+
In a new Claude Code session, ask:
|
|
282
|
+
|
|
283
|
+
```text
|
|
284
|
+
what MCP tools do you have from Borg?
|
|
285
|
+
```
|
|
286
|
+
|
|
287
|
+
Expected: Claude lists Borg tools such as `borg_rescue`, `borg_observe`, and `borg_search`, or `/mcp list` shows a `borg` server.
|
|
288
|
+
|
|
289
|
+
Hermes Agent uses `mcp_servers.borg` in `~/.hermes/config.yaml`. OpenClaw and most other MCP-capable agents use an `mcpServers.borg` JSON block.
|
|
290
|
+
|
|
291
|
+
Manual MCP config for any stdio MCP client:
|
|
292
|
+
|
|
293
|
+
```json
|
|
294
|
+
{
|
|
295
|
+
"mcpServers": {
|
|
296
|
+
"borg": {
|
|
297
|
+
"command": "borg-mcp",
|
|
298
|
+
"args": [],
|
|
299
|
+
"env": { "BORG_HOME": "/absolute/path/to/.borg" }
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
}
|
|
303
|
+
```
|
|
304
|
+
|
|
305
|
+
If the MCP client cannot find `borg-mcp`, first locate it:
|
|
306
|
+
|
|
307
|
+
macOS/Linux:
|
|
308
|
+
|
|
309
|
+
```bash
|
|
310
|
+
command -v borg-mcp
|
|
311
|
+
```
|
|
312
|
+
|
|
313
|
+
Windows PowerShell:
|
|
314
|
+
|
|
315
|
+
```powershell
|
|
316
|
+
where.exe borg-mcp
|
|
317
|
+
```
|
|
318
|
+
|
|
319
|
+
Then use that absolute path as the MCP `command`. Avoid bare `python`/`python3` in MCP config unless you are certain that exact interpreter has `agent-borg` installed.
|
|
320
|
+
Use absolute paths in MCP env blocks. Do not rely on `~` expansion inside MCP clients.
|
|
321
|
+
|
|
322
|
+
More setup detail: [`docs/MCP_SETUP.md`](docs/MCP_SETUP.md).
|
|
323
|
+
|
|
324
|
+
---
|
|
325
|
+
|
|
326
|
+
## 4. Prime the agent
|
|
327
|
+
|
|
328
|
+
Put this in `CLAUDE.md`, an agent system prompt, or the first user message:
|
|
329
|
+
|
|
330
|
+
```text
|
|
331
|
+
Before attempting technical fixes for errors, bugs, installs, configs, deployments, or tests, call Borg first. Prefer borg_rescue(input="<exact error or failing command output>") when there is a concrete failure; use borg_observe(task="<exact task or error>", context="<tech stack>") at task start. Treat Borg output as advisory: follow ACTION when relevant, avoid STOP/AVOID patterns, disclose NO_CONFIDENT_MATCH or weak guidance, and verify with the exact failing command or smallest regression test. After the outcome, record it with borg_feedback if you used a pack session, or borg_record_failure if you are recording a concrete error-pattern success/failure.
|
|
332
|
+
```
|
|
333
|
+
|
|
334
|
+
Why: agents often do not discover optional tools unless explicitly primed.
|
|
335
|
+
|
|
336
|
+
---
|
|
337
|
+
|
|
338
|
+
## 5. What is ready now
|
|
339
|
+
|
|
340
|
+
Ready for **controlled first-10 beta sharing**:
|
|
341
|
+
|
|
342
|
+
- Install, CLI, Python API, and MCP entrypoints are present.
|
|
343
|
+
- First-user rescue path returns ACTION / STOP / VERIFY.
|
|
344
|
+
- Security/privacy/prompt-injection surface: PASS.
|
|
345
|
+
- GitHub CI and security gates are green on the current default branch.
|
|
346
|
+
- First-10 beta contract is published: [`docs/FIRST_10_BETA_READINESS.md`](docs/FIRST_10_BETA_READINESS.md).
|
|
347
|
+
|
|
348
|
+
Not yet claimed:
|
|
349
|
+
|
|
350
|
+
- Statistically significant agent-level success lift.
|
|
351
|
+
- Real external-user network effects.
|
|
352
|
+
- Public self-serve launch readiness.
|
|
353
|
+
- Broad non-Python coverage.
|
|
354
|
+
- Global/federated multi-node reliability.
|
|
355
|
+
|
|
356
|
+
Public self-serve launch remains gated by real external-user evidence. Current threshold: At least 6 of the first 10 users get one relevant ACTION/STOP/VERIFY moment without maintainer handholding, and every miss is recorded as NO_CONFIDENT_MATCH or explicit negative feedback instead of being hidden.
|
|
357
|
+
|
|
358
|
+
Current public status: [`docs/READINESS.md`](docs/READINESS.md).
|
|
359
|
+
|
|
360
|
+
---
|
|
361
|
+
|
|
362
|
+
## 6. Security and privacy
|
|
363
|
+
|
|
364
|
+
Start here:
|
|
365
|
+
|
|
366
|
+
- [`docs/SECURITY_HARDENING_BASELINE.md`](docs/SECURITY_HARDENING_BASELINE.md)
|
|
367
|
+
- [`docs/PRIVACY_MODEL.md`](docs/PRIVACY_MODEL.md)
|
|
368
|
+
- [`docs/PROMPT_INJECTION_THREAT_MODEL.md`](docs/PROMPT_INJECTION_THREAT_MODEL.md)
|
|
369
|
+
- [`docs/TRUST_AND_PROMOTION.md`](docs/TRUST_AND_PROMOTION.md)
|
|
370
|
+
- [`docs/REVOCATION_AND_DELETION.md`](docs/REVOCATION_AND_DELETION.md)
|
|
371
|
+
|
|
372
|
+
Do not paste API keys, passwords, cookies, tokens, private repo contents, customer data, or unsanitized private stack traces into public issues.
|
|
373
|
+
|
|
374
|
+
---
|
|
375
|
+
|
|
376
|
+
## 7. Clean evaluator smoke path
|
|
377
|
+
|
|
378
|
+
Use the package name `agent-borg`; the CLI command after install is `borg`. Do not substitute `borg`, `borgbackup`, Homebrew BorgBackup, or apt/dnf/pacman BorgBackup.
|
|
379
|
+
|
|
380
|
+
```bash
|
|
381
|
+
python3 -m venv /tmp/borg-smoke
|
|
382
|
+
. /tmp/borg-smoke/bin/activate
|
|
383
|
+
python -m pip install --upgrade pip
|
|
384
|
+
python -m pip install agent-borg
|
|
385
|
+
borg version
|
|
386
|
+
borg-doctor --json
|
|
387
|
+
borg rescue "ModuleNotFoundError: No module named flask" --json
|
|
388
|
+
borg search "django migration table already exists"
|
|
389
|
+
borg first-10 --json
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
Then connect MCP with `borg setup-claude --scope user --verify --fix`, fully restart Claude Code, and verify Claude lists Borg tools such as `borg_rescue`, `borg_observe`, and `borg_search`.
|
|
393
|
+
|
|
394
|
+
A good first evaluation is whether Borg reduces redundant investigation, not whether it magically solves every bug.
|
|
395
|
+
|
|
396
|
+
---
|
|
397
|
+
|
|
398
|
+
## Docs
|
|
399
|
+
|
|
400
|
+
- [`docs/INSTALL.md`](docs/INSTALL.md) — OS-specific install guide and wrong-package troubleshooting
|
|
401
|
+
- [`docs/QUICKSTART.md`](docs/QUICKSTART.md) — short copy-paste path
|
|
402
|
+
- [`docs/TRYING_BORG.md`](docs/TRYING_BORG.md) — detailed first-user setup
|
|
403
|
+
- [`docs/MCP_SETUP.md`](docs/MCP_SETUP.md) — MCP setup details
|
|
404
|
+
- [`docs/READINESS.md`](docs/READINESS.md) — current readiness status
|
|
405
|
+
- [`docs/archive/`](docs/archive/) — historical audits, experiments, and internal planning artifacts; not current product claims
|
|
406
|
+
|
|
407
|
+
---
|
|
408
|
+
|
|
409
|
+
## License
|
|
410
|
+
|
|
411
|
+
MIT. See [`LICENSE`](LICENSE).
|