agentnode-sdk 0.17.0__tar.gz → 0.19.0__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.
Files changed (219) hide show
  1. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/CHANGELOG.md +80 -0
  2. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/PKG-INFO +1 -1
  3. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/__init__.py +1 -1
  4. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/sandbox_commands.py +381 -305
  5. agentnode_sdk-0.19.0/agentnode_sdk/cli/setup_wizard.py +522 -0
  6. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/config.py +21 -0
  7. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/installer.py +29 -9
  8. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/agent_runner.py +17 -5
  9. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/mcp_runner.py +12 -6
  10. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/python_runner.py +7 -2
  11. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/policy.py +167 -114
  12. agentnode_sdk-0.19.0/dist-0.18.0/.gitignore +1 -0
  13. agentnode_sdk-0.19.0/dist-0.19.0/.gitignore +1 -0
  14. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/pyproject.toml +1 -1
  15. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_agent_sandbox_routing.py +507 -420
  16. agentnode_sdk-0.19.0/tests/test_host_trust_policy.py +91 -0
  17. agentnode_sdk-0.19.0/tests/test_host_trust_policy_routing.py +206 -0
  18. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_preinstall.py +23 -0
  19. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_sandbox_doctor.py +395 -250
  20. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_setup_wizard.py +487 -397
  21. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_toolpack_sandbox.py +486 -411
  22. agentnode_sdk-0.17.0/agentnode_sdk/cli/setup_wizard.py +0 -370
  23. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/.env.example +0 -0
  24. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/.gitignore +0 -0
  25. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/README.md +0 -0
  26. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/REGISTRY_SIGNING_ACTIVATION.md +0 -0
  27. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/REGISTRY_SIGNING_SPEC.md +0 -0
  28. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/THREAT_MODEL.md +0 -0
  29. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/TRUST_STACK.md +0 -0
  30. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode.lock +0 -0
  31. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/_fileutil.py +0 -0
  32. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/async_client.py +0 -0
  33. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/capability_graph.py +0 -0
  34. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/capability_taxonomy.py +0 -0
  35. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/__init__.py +0 -0
  36. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/__main__.py +0 -0
  37. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/audit.py +0 -0
  38. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/auth.py +0 -0
  39. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/cassette_audit.py +0 -0
  40. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/commands.py +0 -0
  41. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/complements.py +0 -0
  42. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/init.py +0 -0
  43. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/main.py +0 -0
  44. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/mcp_commands.py +0 -0
  45. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/mcp_status.py +0 -0
  46. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/mcp_submit.py +0 -0
  47. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/mcp_verify.py +0 -0
  48. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/output.py +0 -0
  49. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/publish.py +0 -0
  50. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/record_cases.py +0 -0
  51. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/serve.py +0 -0
  52. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/smart_run.py +0 -0
  53. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/templates.py +0 -0
  54. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/validate.py +0 -0
  55. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/cli/verify_local.py +0 -0
  56. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/client.py +0 -0
  57. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/compatibility.py +0 -0
  58. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/credential_handle.py +0 -0
  59. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/credential_resolver.py +0 -0
  60. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/credential_store.py +0 -0
  61. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/detect.py +0 -0
  62. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/exceptions.py +0 -0
  63. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/guard.py +0 -0
  64. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/input_guard.py +0 -0
  65. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/key_status.py +0 -0
  66. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/llm_providers.py +0 -0
  67. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/lock_integrity.py +0 -0
  68. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/mcp_server.py +0 -0
  69. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/models.py +0 -0
  70. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/planner.py +0 -0
  71. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/policy.py +0 -0
  72. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/references.py +0 -0
  73. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/registry_trust.py +0 -0
  74. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/resolve.py +0 -0
  75. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/resource_provider.py +0 -0
  76. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/risk_profile.py +0 -0
  77. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/run_log.py +0 -0
  78. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runner.py +0 -0
  79. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtime.py +0 -0
  80. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/__init__.py +0 -0
  81. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/agent_llm_broker.py +0 -0
  82. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/agent_llm_policy.py +0 -0
  83. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/agent_sandbox.py +0 -0
  84. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/mcp_consent.py +0 -0
  85. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/mcp_consent_store.py +0 -0
  86. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/runtimes/remote_runner.py +0 -0
  87. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/__init__.py +0 -0
  88. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/agent_container_wrapper.py +0 -0
  89. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/agent_rpc.py +0 -0
  90. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/agent_session.py +0 -0
  91. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/backend.py +0 -0
  92. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/container_backend.py +0 -0
  93. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/domain_policy.py +0 -0
  94. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/egress.py +0 -0
  95. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/egress_proxy.py +0 -0
  96. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/mcp_preinstall.py +0 -0
  97. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/sandbox/types.py +0 -0
  98. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/signature.py +0 -0
  99. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/signing_key.py +0 -0
  100. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/agentnode_sdk/skill.py +0 -0
  101. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/data/compatibility/current.json +0 -0
  102. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/sandbox-image/Dockerfile +0 -0
  103. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/sandbox-image/README.md +0 -0
  104. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/scripts/analyze_scores.py +0 -0
  105. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/scripts/batch_verify.py +0 -0
  106. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/scripts/ci_smoke_test.py +0 -0
  107. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/scripts/generate_compatibility_artifacts.py +0 -0
  108. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/scripts/merge_batches.py +0 -0
  109. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/scripts/verify_toolcalls.py +0 -0
  110. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/scripts/weekly_retest.sh +0 -0
  111. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/spikes/agent_sandbox_routing/README.md +0 -0
  112. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/spikes/agent_sandbox_routing/__init__.py +0 -0
  113. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/spikes/agent_sandbox_routing/container_agent_wrapper.py +0 -0
  114. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/spikes/agent_sandbox_routing/fake_llm.py +0 -0
  115. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/spikes/agent_sandbox_routing/host_driver.py +0 -0
  116. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/spikes/agent_sandbox_routing/trivial_agent.py +0 -0
  117. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/__init__.py +0 -0
  118. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/conftest.py +0 -0
  119. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/data/allowed_domains_vectors.json +0 -0
  120. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_agent_llm_broker.py +0 -0
  121. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_agent_llm_policy.py +0 -0
  122. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_agent_rpc.py +0 -0
  123. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_agent_runner.py +0 -0
  124. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_agent_sandbox_e2e.py +0 -0
  125. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_agent_sandbox_spike.py +0 -0
  126. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_agent_session_container.py +0 -0
  127. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_async_client.py +0 -0
  128. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_audit_ux.py +0 -0
  129. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_auth_cli_vault.py +0 -0
  130. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_auto_upgrade_policy.py +0 -0
  131. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_cli.py +0 -0
  132. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_cli_lock.py +0 -0
  133. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_cli_run_resolution.py +0 -0
  134. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_client.py +0 -0
  135. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_client_json_guard.py +0 -0
  136. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_client_sprint_b.py +0 -0
  137. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_config.py +0 -0
  138. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_consent_prompt.py +0 -0
  139. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_credential_handle.py +0 -0
  140. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_credential_integration.py +0 -0
  141. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_credential_resolver.py +0 -0
  142. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_credential_store.py +0 -0
  143. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_credential_vault.py +0 -0
  144. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_detect.py +0 -0
  145. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_detect_and_install.py +0 -0
  146. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_domain_policy.py +0 -0
  147. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_e2e_runtime.py +0 -0
  148. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_edge_cases.py +0 -0
  149. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_egress_domain_validation.py +0 -0
  150. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_egress_e2e.py +0 -0
  151. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_egress_lifecycle.py +0 -0
  152. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_egress_proxy_unit.py +0 -0
  153. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_egress_wrap.py +0 -0
  154. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_env_passthrough_wrap.py +0 -0
  155. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard.py +0 -0
  156. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_check.py +0 -0
  157. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_config_cache.py +0 -0
  158. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_policy.py +0 -0
  159. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_preview.py +0 -0
  160. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_schema.py +0 -0
  161. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_set.py +0 -0
  162. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_status.py +0 -0
  163. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_tool_override.py +0 -0
  164. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_tool_override_audit.py +0 -0
  165. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_tool_override_cli.py +0 -0
  166. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_guard_ux.py +0 -0
  167. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_input_guard.py +0 -0
  168. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_input_guard_escalation.py +0 -0
  169. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_install_hardening.py +0 -0
  170. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_installer_sprint_b.py +0 -0
  171. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_intelligence.py +0 -0
  172. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_key_status.py +0 -0
  173. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_llm_binding.py +0 -0
  174. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_llm_call_runlog.py +0 -0
  175. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_llm_providers.py +0 -0
  176. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_llm_vault_binding.py +0 -0
  177. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_lock_integrity.py +0 -0
  178. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_lock_runtime.py +0 -0
  179. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_allowed_domains_seal.py +0 -0
  180. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_audit.py +0 -0
  181. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_consent.py +0 -0
  182. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_consent_resolver.py +0 -0
  183. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_consent_store.py +0 -0
  184. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_credentialed_launch.py +0 -0
  185. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_doctor.py +0 -0
  186. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_preinstall_run.py +0 -0
  187. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_sandbox.py +0 -0
  188. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_mcp_server.py +0 -0
  189. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_observability.py +0 -0
  190. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_planner.py +0 -0
  191. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_policy.py +0 -0
  192. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_policy_integration.py +0 -0
  193. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_prompt_specs.py +0 -0
  194. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_provider_matrix.py +0 -0
  195. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_publish.py +0 -0
  196. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_references.py +0 -0
  197. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_registry_trust.py +0 -0
  198. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_remote_hardening.py +0 -0
  199. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_remote_runner.py +0 -0
  200. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_resource_provider.py +0 -0
  201. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_resource_specs.py +0 -0
  202. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_risk_profile.py +0 -0
  203. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_run_log.py +0 -0
  204. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_runner.py +0 -0
  205. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_runtime.py +0 -0
  206. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_runtime_audit.py +0 -0
  207. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_sandbox_backend.py +0 -0
  208. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_sandbox_e2e.py +0 -0
  209. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_sandbox_gate.py +0 -0
  210. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_security_hardening.py +0 -0
  211. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_signature.py +0 -0
  212. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_signing_key.py +0 -0
  213. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_skill.py +0 -0
  214. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_smart.py +0 -0
  215. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_stability.py +0 -0
  216. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_v02.py +0 -0
  217. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_validate.py +0 -0
  218. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/test_validate_skill.py +0 -0
  219. {agentnode_sdk-0.17.0 → agentnode_sdk-0.19.0}/tests/validation_lockfile.json +0 -0
@@ -1,5 +1,85 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.19.0 — Full setup wizard coverage
4
+
5
+ ### Added
6
+
7
+ - Expanded `agentnode setup` to cover the full first-class configuration surface
8
+ with multiple-choice prompts and clearly marked recommended defaults.
9
+ - Added a Guard posture step with Balanced, Strict, Permissive and Customize-each
10
+ options.
11
+ - Added setup support for `sandbox.host_trust_policy`.
12
+ - Added an optional Advanced gate for niche first-class settings.
13
+
14
+ ### Changed
15
+
16
+ - Promoted minimum trust level to a direct setup screen.
17
+ - Added consistent `(recommended)` labels across setup choices.
18
+ - A stored LLM key provider can now be offered as the default LLM provider,
19
+ matching the existing Ollama behavior.
20
+
21
+ ### Hardened
22
+
23
+ - Invalid interactive menu input now re-prompts instead of silently falling back
24
+ to the recommended option — a typo can no longer set a security choice unnoticed.
25
+ - Non-interactive (non-TTY) setup continues to take the recommended defaults and
26
+ never hangs.
27
+ - Accepting all recommended choices reproduces the current default configuration,
28
+ so upgrading changes nothing until you opt in.
29
+
30
+ ### Notes
31
+
32
+ - Deeply nested configuration (`llm.providers`, the `agent_sandbox.llm` ceiling,
33
+ and `guard` overrides / rate limits) remains CLI/manual-only by design and is
34
+ surfaced as follow-up commands rather than turned into a wizard editor.
35
+ - This release changes only the setup wizard; runtime behavior and the default
36
+ configuration are unchanged.
37
+
38
+ ## 0.18.0 — User-controlled host-trust policy
39
+
40
+ ### Added
41
+
42
+ - **`sandbox.host_trust_policy`** — a new config key that lets you decide which
43
+ trust tiers may run directly on your host: `default` (curated + trusted on the
44
+ host, today's behavior), `curated_only` (trusted is sandboxed), or `none`
45
+ (everything is sandboxed). Set it with
46
+ `agentnode config set sandbox.host_trust_policy curated_only`. AgentNode trusting
47
+ a package's code is not the same as you trusting it with your machine — this
48
+ setting closes that gap.
49
+ - **`agentnode sandbox doctor <slug>` is now host-trust-policy aware** — it explains
50
+ when a package is sandboxed by the policy and distinguishes "reinstall to rebuild
51
+ the sandbox volume" from "the publisher must pin this MCP" from a `none`/system-
52
+ package warning, and flags that a sandboxed agent runs the strict profile.
53
+ - New `docs/security/host-trust-policy.md`.
54
+
55
+ ### Changed
56
+
57
+ - Toolpacks, MCP servers, and agents all honor `sandbox.host_trust_policy` through
58
+ one shared decision. Under a stricter policy the installer builds the sealed
59
+ sandbox volume for trusted/curated packages at install time, and the lockfile
60
+ records `build_mode`, `pinnable`, and `effective_host_trust_policy_at_install`
61
+ (mutable metadata — the runtime still re-verifies the volume itself).
62
+
63
+ ### Hardened
64
+
65
+ - A tier the active policy sandboxes is **fail-closed**: if it cannot actually be
66
+ isolated (no container runtime, no built volume, a non-pinnable MCP) it is
67
+ refused, never run on the host as a fallback.
68
+
69
+ ### BREAKING / Upgrade Notes
70
+
71
+ - **Not breaking by default.** The default policy is `default`, which is exactly
72
+ today's behavior — nothing changes until you opt in.
73
+ - **Opting into `curated_only`/`none` isolates more strongly and can break
74
+ trusted/curated packages** that expect the host filesystem, broad tools, host LLM
75
+ keys, or network — the sandbox has none of these. **Agents are the strictest
76
+ case:** a sandboxed agent runs the same strict community profile (declared tools
77
+ only, default-deny host-brokered LLM, `network=none`, read-only `/pack`), with no
78
+ special rights for trusted agents. After tightening the policy, **reinstall**
79
+ affected packages so their sealed volume is built (`agentnode install <slug>`);
80
+ run `agentnode sandbox doctor <slug>` to see what each package needs. Community
81
+ agents remain governed by the separate opt-in `agent_sandbox.enabled` flag.
82
+
3
83
  ## 0.17.0 — MCP network isolation
4
84
 
5
85
  ### Changed
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: agentnode-sdk
3
- Version: 0.17.0
3
+ Version: 0.19.0
4
4
  Summary: Python SDK for AgentNode — the open upgrade and discovery infrastructure for AI agents.
5
5
  Project-URL: Homepage, https://agentnode.net
6
6
  Project-URL: Repository, https://github.com/agentnode-ai/agentnode
@@ -38,7 +38,7 @@ from agentnode_sdk.runtime import AgentNodeRuntime
38
38
  Client = AgentNodeClient
39
39
  ToolError = AgentNodeToolError
40
40
 
41
- __version__ = "0.17.0"
41
+ __version__ = "0.19.0"
42
42
  __all__ = [
43
43
  "AgentNode",
44
44
  "AsyncAgentNode",