code-puppy-core-plugins 0.0.83__tar.gz → 0.0.84__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 (397) hide show
  1. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/PKG-INFO +1 -1
  2. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/README.md +11 -0
  3. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/agent.py +3 -0
  4. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/bridge.py +43 -0
  5. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/capabilities.py +17 -0
  6. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/pyproject.toml +1 -1
  7. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/.gitignore +0 -0
  8. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/LICENSE +0 -0
  9. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/README.md +0 -0
  10. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/THIRD_PARTY_NOTICES.md +0 -0
  11. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/__init__.py +0 -0
  12. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/__init__.py +0 -0
  13. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/commands.py +0 -0
  14. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/content.py +0 -0
  15. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/io_delegation.py +0 -0
  16. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/mcp_config.py +0 -0
  17. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/permissions.py +0 -0
  18. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/persistence.py +0 -0
  19. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/register_callbacks.py +0 -0
  20. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/replay.py +0 -0
  21. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/session.py +0 -0
  22. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/session_config.py +0 -0
  23. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/acp/state.py +0 -0
  24. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_creator_skill/SKILL.md +0 -0
  25. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_creator_skill/__init__.py +0 -0
  26. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_creator_skill/register_callbacks.py +0 -0
  27. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/__init__.py +0 -0
  28. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/config.py +0 -0
  29. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/discovery.py +0 -0
  30. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/enabled_skills.py +0 -0
  31. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/metadata.py +0 -0
  32. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/prompt_builder.py +0 -0
  33. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/provider.py +0 -0
  34. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/register_callbacks.py +0 -0
  35. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/skill_commands.py +0 -0
  36. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/agent_skills/skills_menu.py +0 -0
  37. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/attachment_references/__init__.py +0 -0
  38. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/attachment_references/register_callbacks.py +0 -0
  39. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/attachment_references/tool.py +0 -0
  40. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/auto_continue/__init__.py +0 -0
  41. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/auto_continue/classifier.py +0 -0
  42. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/auto_continue/register_callbacks.py +0 -0
  43. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/aws_bedrock/__init__.py +0 -0
  44. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/aws_bedrock/config.py +0 -0
  45. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/aws_bedrock/register_callbacks.py +0 -0
  46. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/aws_bedrock/utils.py +0 -0
  47. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/azure_foundry/README.md +0 -0
  48. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/azure_foundry/__init__.py +0 -0
  49. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/azure_foundry/config.py +0 -0
  50. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/azure_foundry/discovery.py +0 -0
  51. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/azure_foundry/register_callbacks.py +0 -0
  52. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/azure_foundry/token.py +0 -0
  53. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/azure_foundry/utils.py +0 -0
  54. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/background_agents/README.md +0 -0
  55. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/background_agents/__init__.py +0 -0
  56. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/background_agents/register_callbacks.py +0 -0
  57. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/btw/__init__.py +0 -0
  58. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/btw/inline_view.py +0 -0
  59. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/btw/register_callbacks.py +0 -0
  60. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/btw/side_query.py +0 -0
  61. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/IMAGEGEN_SKILL.md +0 -0
  62. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/__init__.py +0 -0
  63. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/config.py +0 -0
  64. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/image_generation.py +0 -0
  65. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/image_tool.py +0 -0
  66. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/model_catalog.py +0 -0
  67. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/oauth_flow.py +0 -0
  68. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/register_callbacks.py +0 -0
  69. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/test_plugin.py +0 -0
  70. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/usage.py +0 -0
  71. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/chatgpt_oauth/utils.py +0 -0
  72. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_hooks/__init__.py +0 -0
  73. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_hooks/config.py +0 -0
  74. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_hooks/register_callbacks.py +0 -0
  75. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_hooks/trust.py +0 -0
  76. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/README.md +0 -0
  77. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/SETUP.md +0 -0
  78. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/__init__.py +0 -0
  79. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/config.py +0 -0
  80. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/fast_mode.py +0 -0
  81. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/model_filter.py +0 -0
  82. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/model_provider.py +0 -0
  83. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/prompt_handler.py +0 -0
  84. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/register_callbacks.py +0 -0
  85. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/runtime_credentials.py +0 -0
  86. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/test_plugin.py +0 -0
  87. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/token_refresh_heartbeat.py +0 -0
  88. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/token_store.py +0 -0
  89. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/claude_code_oauth/utils.py +0 -0
  90. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/AGENTS_AND_TOOLS.md +0 -0
  91. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/MODELS_AND_MCP.md +0 -0
  92. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/PLUGINS_AND_CALLBACKS.md +0 -0
  93. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/SESSIONS_AND_HISTORY.md +0 -0
  94. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/SKILL.md +0 -0
  95. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/SKILLS_SYSTEM.md +0 -0
  96. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/SYSTEM_PROMPT_CONFIG_AND_I18N.md +0 -0
  97. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/__init__.py +0 -0
  98. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/code_puppy_agent/register_callbacks.py +0 -0
  99. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/completion_notification/__init__.py +0 -0
  100. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/completion_notification/config.py +0 -0
  101. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/completion_notification/locales/en-US.json +0 -0
  102. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/completion_notification/locales/es.json +0 -0
  103. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/completion_notification/locales/fr-CA.json +0 -0
  104. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/completion_notification/notifier.py +0 -0
  105. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/completion_notification/register_callbacks.py +0 -0
  106. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/FOCUS_INVESTIGATION.md +0 -0
  107. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/NativeCapture.swift +0 -0
  108. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/PARITY.md +0 -0
  109. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/README.md +0 -0
  110. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/WINDOWS.md +0 -0
  111. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/__init__.py +0 -0
  112. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/accessibility.py +0 -0
  113. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/activation.py +0 -0
  114. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/backend.py +0 -0
  115. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/backend_types.py +0 -0
  116. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/batch.py +0 -0
  117. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/capture.py +0 -0
  118. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/commands.py +0 -0
  119. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/geometry.py +0 -0
  120. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/inline_image.py +0 -0
  121. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/keycodes.py +0 -0
  122. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/locales/en-US.json +0 -0
  123. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/locales/es.json +0 -0
  124. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/locales/fr-CA.json +0 -0
  125. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/macos_backend.py +0 -0
  126. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/permissions.py +0 -0
  127. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/policy.py +0 -0
  128. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/register_callbacks.py +0 -0
  129. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/safety.py +0 -0
  130. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/settle.py +0 -0
  131. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/state.py +0 -0
  132. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/tools.py +0 -0
  133. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/windows_accessibility.py +0 -0
  134. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/windows_activation.py +0 -0
  135. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/windows_backend.py +0 -0
  136. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/windows_capture.py +0 -0
  137. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/windows_input.py +0 -0
  138. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/windows_native.py +0 -0
  139. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/computer_use/windows_runtime.py +0 -0
  140. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/context_indicator/__init__.py +0 -0
  141. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/context_indicator/register_callbacks.py +0 -0
  142. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/context_indicator/usage.py +0 -0
  143. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/copilot_auth/__init__.py +0 -0
  144. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/copilot_auth/config.py +0 -0
  145. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/copilot_auth/reasoning_client.py +0 -0
  146. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/copilot_auth/register_callbacks.py +0 -0
  147. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/copilot_auth/responses_stream.py +0 -0
  148. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/copilot_auth/utils.py +0 -0
  149. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/customizable_commands/__init__.py +0 -0
  150. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/customizable_commands/register_callbacks.py +0 -0
  151. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/__init__.py +0 -0
  152. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/cancel.py +0 -0
  153. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/commands.py +0 -0
  154. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/config.py +0 -0
  155. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/lifecycle.py +0 -0
  156. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/register_callbacks.py +0 -0
  157. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/runtime.py +0 -0
  158. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/startup_lock.py +0 -0
  159. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/workflow_ids.py +0 -0
  160. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/dbos_durable_exec/wrapper.py +0 -0
  161. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/destructive_command_guard/AGENTS.md +0 -0
  162. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/destructive_command_guard/__init__.py +0 -0
  163. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/destructive_command_guard/detector.py +0 -0
  164. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/destructive_command_guard/register_callbacks.py +0 -0
  165. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/emoji_filter/__init__.py +0 -0
  166. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/emoji_filter/config.py +0 -0
  167. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/emoji_filter/register_callbacks.py +0 -0
  168. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/emoji_filter/stripper.py +0 -0
  169. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/empty_html_comment_filter/register_callbacks.py +0 -0
  170. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/example_custom_command/README.md +0 -0
  171. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/example_custom_command/register_callbacks.py +0 -0
  172. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/file_permission_handler/__init__.py +0 -0
  173. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/file_permission_handler/register_callbacks.py +0 -0
  174. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/__init__.py +0 -0
  175. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/_docs/README.md +0 -0
  176. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/_docs/cheatsheet.md +0 -0
  177. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/_docs/pipeline.md +0 -0
  178. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/_docs/synopsis.md +0 -0
  179. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/about.md +0 -0
  180. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/address-feedback.md +0 -0
  181. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/ask.md +0 -0
  182. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/aug.md +0 -0
  183. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/auto-pilot.md +0 -0
  184. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/cheatsheet.md +0 -0
  185. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/commit.md +0 -0
  186. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/config.md +0 -0
  187. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/create-pr.md +0 -0
  188. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/exec.md +0 -0
  189. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/new.md +0 -0
  190. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/qa.md +0 -0
  191. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/rebase.md +0 -0
  192. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/review.md +0 -0
  193. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/split.md +0 -0
  194. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/squash-commits.md +0 -0
  195. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/status.md +0 -0
  196. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/commands/flux/tests.md +0 -0
  197. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/scripts/flux_about.py +0 -0
  198. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/scripts/flux_cheatsheet.py +0 -0
  199. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/bundled/scripts/flux_status.py +0 -0
  200. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/installer.py +0 -0
  201. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/flux_bootstrap/register_callbacks.py +0 -0
  202. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/force_push_guard/__init__.py +0 -0
  203. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/force_push_guard/detector.py +0 -0
  204. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/force_push_guard/register_callbacks.py +0 -0
  205. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/fork/__init__.py +0 -0
  206. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/fork/register_callbacks.py +0 -0
  207. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/frontend_emitter/__init__.py +0 -0
  208. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/frontend_emitter/emitter.py +0 -0
  209. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/frontend_emitter/register_callbacks.py +0 -0
  210. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/frontend_emitter/session_context.py +0 -0
  211. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/grok_oauth/__init__.py +0 -0
  212. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/grok_oauth/config.py +0 -0
  213. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/grok_oauth/oauth_flow.py +0 -0
  214. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/grok_oauth/register_callbacks.py +0 -0
  215. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/grok_oauth/utils.py +0 -0
  216. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/README.md +0 -0
  217. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/__init__.py +0 -0
  218. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/client.py +0 -0
  219. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/command_intent.py +0 -0
  220. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/launch_command.py +0 -0
  221. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/launcher.py +0 -0
  222. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/register_callbacks.py +0 -0
  223. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/reporter.py +0 -0
  224. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/restore.py +0 -0
  225. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/smoke.py +0 -0
  226. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/herdr/sources.py +0 -0
  227. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/hook_creator/__init__.py +0 -0
  228. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/hook_creator/register_callbacks.py +0 -0
  229. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/hook_manager/__init__.py +0 -0
  230. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/hook_manager/config.py +0 -0
  231. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/hook_manager/hooks_menu.py +0 -0
  232. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/hook_manager/register_callbacks.py +0 -0
  233. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/hook_manager/trust_handler.py +0 -0
  234. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/__init__.py +0 -0
  235. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/chunks.py +0 -0
  236. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/config.py +0 -0
  237. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/judge.py +0 -0
  238. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/locales/en-US.json +0 -0
  239. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/register_callbacks.py +0 -0
  240. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/retrieve.py +0 -0
  241. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/search.py +0 -0
  242. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/structure.py +0 -0
  243. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/tool.py +0 -0
  244. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/jev_grep/treesitter.py +0 -0
  245. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_oauth/__init__.py +0 -0
  246. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_oauth/oauth.py +0 -0
  247. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_oauth/query_tool.py +0 -0
  248. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_oauth/register_callbacks.py +0 -0
  249. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_sessions/__init__.py +0 -0
  250. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_sessions/mirror.py +0 -0
  251. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_sessions/query.py +0 -0
  252. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_sessions/register_callbacks.py +0 -0
  253. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/logfire_sessions/sync.py +0 -0
  254. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/mcp_binding_prompt/README.md +0 -0
  255. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/mcp_binding_prompt/__init__.py +0 -0
  256. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/mcp_binding_prompt/custom_install.py +0 -0
  257. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/mcp_binding_prompt/http_form.py +0 -0
  258. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/mcp_binding_prompt/register_callbacks.py +0 -0
  259. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/meta_oauth/__init__.py +0 -0
  260. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/meta_oauth/config.py +0 -0
  261. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/meta_oauth/oauth_flow.py +0 -0
  262. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/meta_oauth/register_callbacks.py +0 -0
  263. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/meta_oauth/utils.py +0 -0
  264. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/namespace_skill_search/README.md +0 -0
  265. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/namespace_skill_search/__init__.py +0 -0
  266. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/namespace_skill_search/namespaces.py +0 -0
  267. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/namespace_skill_search/register_callbacks.py +0 -0
  268. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/namespace_skill_search/search_tool.py +0 -0
  269. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/no_tools/__init__.py +0 -0
  270. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/no_tools/register_callbacks.py +0 -0
  271. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/oauth_pasteback.py +0 -0
  272. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/oauth_puppy_html.py +0 -0
  273. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/obsidian_agent/README.md +0 -0
  274. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/obsidian_agent/__init__.py +0 -0
  275. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/obsidian_agent/agent_obsidian.py +0 -0
  276. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/obsidian_agent/register_callbacks.py +0 -0
  277. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/ollama/__init__.py +0 -0
  278. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/ollama/register_callbacks.py +0 -0
  279. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/ollama_setup/__init__.py +0 -0
  280. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/ollama_setup/completer.py +0 -0
  281. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/ollama_setup/register_callbacks.py +0 -0
  282. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/openrouter_oauth/__init__.py +0 -0
  283. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/openrouter_oauth/config.py +0 -0
  284. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/openrouter_oauth/oauth_flow.py +0 -0
  285. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/openrouter_oauth/register_callbacks.py +0 -0
  286. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/openrouter_oauth/test_plugin.py +0 -0
  287. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_list/__init__.py +0 -0
  288. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_list/plugin_contributions.py +0 -0
  289. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_list/plugin_meta.py +0 -0
  290. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_list/plugin_text_utils.py +0 -0
  291. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_list/plugins_menu.py +0 -0
  292. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_list/plugins_menu_render.py +0 -0
  293. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_list/project_trust_flow.py +0 -0
  294. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_list/register_callbacks.py +0 -0
  295. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/plugin_settings.py +0 -0
  296. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/pop_command/__init__.py +0 -0
  297. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/pop_command/register_callbacks.py +0 -0
  298. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/profiles/README.md +0 -0
  299. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/profiles/__init__.py +0 -0
  300. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/profiles/config.py +0 -0
  301. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/profiles/locales/en-US.json +0 -0
  302. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/profiles/menu.py +0 -0
  303. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/profiles/register_callbacks.py +0 -0
  304. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/prompt_newline/__init__.py +0 -0
  305. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/prompt_newline/config.py +0 -0
  306. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/prompt_newline/register_callbacks.py +0 -0
  307. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/prune/__init__.py +0 -0
  308. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/prune/prune_menu.py +0 -0
  309. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/prune/prune_model.py +0 -0
  310. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/prune/prune_render.py +0 -0
  311. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/prune/register_callbacks.py +0 -0
  312. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/README.md +0 -0
  313. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/__init__.py +0 -0
  314. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/commands.py +0 -0
  315. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/config.py +0 -0
  316. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/kennel.py +0 -0
  317. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/packer.py +0 -0
  318. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/recorder.py +0 -0
  319. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/register_callbacks.py +0 -0
  320. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/retriever.py +0 -0
  321. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/schema.py +0 -0
  322. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/state.py +0 -0
  323. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/tools.py +0 -0
  324. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_kennel/wings.py +0 -0
  325. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_spinner/README.md +0 -0
  326. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_spinner/__init__.py +0 -0
  327. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_spinner/builtin_frames.py +0 -0
  328. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_spinner/commands.py +0 -0
  329. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_spinner/picker.py +0 -0
  330. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_spinner/register_callbacks.py +0 -0
  331. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/puppy_spinner/spinners.py +0 -0
  332. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/qa_kitten_skill/SKILL.md +0 -0
  333. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/qa_kitten_skill/__init__.py +0 -0
  334. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/qa_kitten_skill/register_callbacks.py +0 -0
  335. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/quick_resume/__init__.py +0 -0
  336. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/quick_resume/register_callbacks.py +0 -0
  337. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/review_pr/__init__.py +0 -0
  338. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/review_pr/register_callbacks.py +0 -0
  339. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/session_namer/__init__.py +0 -0
  340. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/session_namer/namer.py +0 -0
  341. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/session_namer/register_callbacks.py +0 -0
  342. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/spill/LICENSE.deepseek +0 -0
  343. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/spill/__init__.py +0 -0
  344. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/spill/register_callbacks.py +0 -0
  345. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/spill/store.py +0 -0
  346. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/stack_dump/__init__.py +0 -0
  347. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/stack_dump/register_callbacks.py +0 -0
  348. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/statusline/__init__.py +0 -0
  349. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/statusline/config.py +0 -0
  350. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/statusline/payload.py +0 -0
  351. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/statusline/prompt_patch.py +0 -0
  352. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/statusline/register_callbacks.py +0 -0
  353. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/statusline/runner.py +0 -0
  354. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/statusline/statusline_command.py +0 -0
  355. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/steer_queue/__init__.py +0 -0
  356. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/steer_queue/queue_menu.py +0 -0
  357. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/steer_queue/register_callbacks.py +0 -0
  358. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/subagent_panel/README.md +0 -0
  359. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/subagent_panel/__init__.py +0 -0
  360. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/subagent_panel/coalesce_patch.py +0 -0
  361. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/subagent_panel/panel_render.py +0 -0
  362. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/subagent_panel/register_callbacks.py +0 -0
  363. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/subagent_panel/resume_repaint.py +0 -0
  364. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/subagent_panel/state.py +0 -0
  365. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/switch_agent_resume/__init__.py +0 -0
  366. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/switch_agent_resume/register_callbacks.py +0 -0
  367. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/termflow_tui.py +0 -0
  368. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/README.md +0 -0
  369. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/__init__.py +0 -0
  370. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/bundled_palettes.py +0 -0
  371. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/content_styles.py +0 -0
  372. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/osc_palette.py +0 -0
  373. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/picker.py +0 -0
  374. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/prompt_toolkit_theme.py +0 -0
  375. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/register_callbacks.py +0 -0
  376. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/rich_themes.py +0 -0
  377. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/theme/themes.py +0 -0
  378. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/timestamp_heartbeat/__init__.py +0 -0
  379. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/timestamp_heartbeat/register_callbacks.py +0 -0
  380. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/universal_constructor/__init__.py +0 -0
  381. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/universal_constructor/models.py +0 -0
  382. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/universal_constructor/provider.py +0 -0
  383. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/universal_constructor/register_callbacks.py +0 -0
  384. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/universal_constructor/registry.py +0 -0
  385. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/universal_constructor/sandbox.py +0 -0
  386. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/web_retriever_skill/SKILL.md +0 -0
  387. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/web_retriever_skill/__init__.py +0 -0
  388. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/web_retriever_skill/register_callbacks.py +0 -0
  389. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/wiggum/__init__.py +0 -0
  390. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/wiggum/goal_runs.py +0 -0
  391. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/wiggum/judge.py +0 -0
  392. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/wiggum/judge_config.py +0 -0
  393. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/wiggum/judges_menu.py +0 -0
  394. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/wiggum/register_callbacks.py +0 -0
  395. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/wiggum/state.py +0 -0
  396. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/yolo_cli/__init__.py +0 -0
  397. {code_puppy_core_plugins-0.0.83 → code_puppy_core_plugins-0.0.84}/code_puppy_core_plugins/yolo_cli/register_callbacks.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: code-puppy-core-plugins
3
- Version: 0.0.83
3
+ Version: 0.0.84
4
4
  Summary: Official plugin bundle for Code Puppy
5
5
  Project-URL: Repository, https://github.com/mpfaffenberger/code_puppy_core_plugins
6
6
  Project-URL: Homepage, https://github.com/mpfaffenberger/code_puppy_core_plugins
@@ -245,6 +245,17 @@ only an [RFD](https://agentclientprotocol.com), not in stable v1 — no client,
245
245
  including Zed, implements it yet). When elicitation lands and the SDK exposes a
246
246
  connection method for it, this block becomes a real native picker.
247
247
 
248
+ ### Clients that present the questions themselves
249
+
250
+ A client with its own question UI can opt in at `initialize` by setting
251
+ `clientCapabilities._meta.codePuppyQuestionCards` to `true`. For that client the
252
+ `EventBridge` sends `ask_user_question` as a **completed** `tool_call` whose
253
+ `rawInput` holds the questions, still blocks the terminal picker, and gives the
254
+ model a `tool_result` (core's `pre_tool_call` handled-result contract) telling
255
+ it to end the turn and wait. The client renders the questions and sends the
256
+ answers as the user's next prompt. Clients that don't set the flag see no
257
+ change.
258
+
248
259
  ---
249
260
 
250
261
  ## Testing
@@ -114,6 +114,9 @@ class CodePuppyAgent(Agent):
114
114
  the client advertises). Everything else stays local.
115
115
  """
116
116
  self._client_caps = client_capabilities
117
+ self._bridge.question_cards_enabled = capabilities.client_presents_questions(
118
+ client_capabilities
119
+ )
117
120
  io_delegation.install(client_capabilities)
118
121
  return InitializeResponse(
119
122
  protocol_version=PROTOCOL_VERSION,
@@ -24,6 +24,7 @@ from __future__ import annotations
24
24
 
25
25
  import logging
26
26
  import os
27
+ import uuid
27
28
  from typing import Any, Dict, List, Optional
28
29
 
29
30
  from acp.helpers import (
@@ -89,9 +90,22 @@ _INTERACTIVE_BLOCK = {
89
90
  }
90
91
 
91
92
 
93
+ # Tool result for a question the client is presenting (see
94
+ # ``capabilities.client_presents_questions``).
95
+ _CLIENT_QUESTION_RESULT = (
96
+ "The client is showing these questions to the user in its own question "
97
+ "UI. End this turn and wait for the user's answers, which arrive in their "
98
+ "next message. Do not repeat the questions in text or call this tool again."
99
+ )
100
+
101
+
92
102
  class EventBridge:
93
103
  """Forward Code Puppy runtime hook events to the client as updates."""
94
104
 
105
+ #: Set at ``initialize`` when the client opted in to presenting
106
+ #: ``ask_user_question`` itself.
107
+ question_cards_enabled = False
108
+
95
109
  def register(self) -> None:
96
110
  """Register the runtime hooks. Call once when the connection opens."""
97
111
  register_callback("stream_event", self._on_stream_event)
@@ -179,6 +193,8 @@ class EventBridge:
179
193
  session_id = state.get_active_session_id()
180
194
  if session_id is None:
181
195
  return None
196
+ if tool_name == "ask_user_question" and self.question_cards_enabled:
197
+ return await self._present_question(session_id, tool_args)
182
198
  if tool_name in _INTERACTIVE_TOOLS:
183
199
  return dict(_INTERACTIVE_BLOCK)
184
200
  tool_call_id = state.push_tool_call(tool_name)
@@ -192,6 +208,33 @@ class EventBridge:
192
208
  )
193
209
  await self._send(session_id, update)
194
210
 
211
+ async def _present_question(
212
+ self, session_id: str, tool_args: Dict[str, Any]
213
+ ) -> Dict[str, Any]:
214
+ """Hand ``ask_user_question`` to a client that presents it itself.
215
+
216
+ The client gets a completed tool call whose ``rawInput`` carries the
217
+ questions. The terminal picker is still blocked (stdin is the
218
+ JSON-RPC pipe), and the model receives ``tool_result`` -- "wait for
219
+ the answers" -- as the tool's return value instead of a policy deny.
220
+ """
221
+ await self._send(
222
+ session_id,
223
+ start_tool_call(
224
+ uuid.uuid4().hex,
225
+ "ask_user_question",
226
+ kind="other",
227
+ status="completed",
228
+ raw_input=tool_args if isinstance(tool_args, dict) else {},
229
+ ),
230
+ )
231
+ return {
232
+ "blocked": True,
233
+ "tool_result": _CLIENT_QUESTION_RESULT,
234
+ # Shown instead on cores without ``tool_result`` support.
235
+ "error_message": _CLIENT_QUESTION_RESULT,
236
+ }
237
+
195
238
  async def _on_post_tool_call(
196
239
  self,
197
240
  tool_name: str,
@@ -57,6 +57,23 @@ def agent_capabilities() -> AgentCapabilities:
57
57
  )
58
58
 
59
59
 
60
+ # ``clientCapabilities._meta`` key a client sets to show ``ask_user_question``
61
+ # itself. Such a client renders the tool call's ``rawInput`` (the questions) as
62
+ # its own question UI and sends the answers in its next prompt.
63
+ QUESTION_CARDS_META_KEY = "codePuppyQuestionCards"
64
+
65
+
66
+ def client_presents_questions(caps: ClientCapabilities | None) -> bool:
67
+ """True when the client opted in to presenting ``ask_user_question``.
68
+
69
+ Opt-in only: a client that does not set the flag keeps the existing
70
+ behavior (the model is told to ask in plain text). Defensive like
71
+ ``client_io_caps`` -- anything but a literal ``True`` reads as "no".
72
+ """
73
+ meta = getattr(caps, "field_meta", None) if caps is not None else None
74
+ return isinstance(meta, dict) and meta.get(QUESTION_CARDS_META_KEY) is True
75
+
76
+
60
77
  def client_io_caps(caps: ClientCapabilities | None) -> Tuple[bool, bool, bool]:
61
78
  """Return ``(fs_read, fs_write, terminal)`` from the client's capabilities.
62
79
 
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
4
4
 
5
5
  [project]
6
6
  name = "code-puppy-core-plugins"
7
- version = "0.0.83"
7
+ version = "0.0.84"
8
8
  description = "Official plugin bundle for Code Puppy"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11,<3.15"