__init__.py 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. """Experimental application framework API (no compatibility promise before M6)."""
  2. from importlib import import_module
  3. from cyber_agent.application.models import (
  4. AgentApplication,
  5. AgentRole,
  6. ApplicationRef,
  7. ProviderRef,
  8. RoleRunLimits,
  9. RunLimits,
  10. SkillSpec,
  11. ToolSet,
  12. ToolSpec,
  13. )
  14. _LAZY_EXPORTS = {
  15. "ApplicationBinding": ("cyber_agent.application.runtime", "ApplicationBinding"),
  16. "ApplicationRegistry": ("cyber_agent.application.runtime", "ApplicationRegistry"),
  17. "ApplicationRuntime": ("cyber_agent.application.runtime", "ApplicationRuntime"),
  18. "ApplicationServices": ("cyber_agent.application.runtime", "ApplicationServices"),
  19. "CandidateAdoptionReceipt": ("cyber_agent.application.candidate", "CandidateAdoptionReceipt"),
  20. "CandidateAdoptionRequest": ("cyber_agent.application.candidate", "CandidateAdoptionRequest"),
  21. "CandidateLedger": ("cyber_agent.application.candidate", "CandidateLedger"),
  22. "CandidatePointer": ("cyber_agent.application.candidate", "CandidatePointer"),
  23. "CandidateRef": ("cyber_agent.application.candidate", "CandidateRef"),
  24. "CandidateRepository": ("cyber_agent.application.candidate", "CandidateRepository"),
  25. "CandidateVersionRequest": ("cyber_agent.application.candidate", "CandidateVersionRequest"),
  26. "ContextMaterial": ("cyber_agent.application.ports", "ContextMaterial"),
  27. "ContextRequest": ("cyber_agent.application.ports", "ContextRequest"),
  28. "ContextResourceDescriptor": ("cyber_agent.application.ports", "ContextResourceDescriptor"),
  29. "TaskContextProvider": ("cyber_agent.application.ports", "TaskContextProvider"),
  30. }
  31. def __getattr__(name):
  32. target = _LAZY_EXPORTS.get(name)
  33. if target is None:
  34. raise AttributeError(name)
  35. module_name, attribute = target
  36. value = getattr(import_module(module_name), attribute)
  37. globals()[name] = value
  38. return value
  39. __all__ = [
  40. "AgentApplication",
  41. "AgentRole",
  42. "ApplicationRef",
  43. "ApplicationBinding",
  44. "ApplicationRegistry",
  45. "ApplicationRuntime",
  46. "ApplicationServices",
  47. "CandidateAdoptionReceipt",
  48. "CandidateAdoptionRequest",
  49. "CandidateLedger",
  50. "CandidatePointer",
  51. "CandidateRef",
  52. "CandidateRepository",
  53. "CandidateVersionRequest",
  54. "ContextMaterial",
  55. "ContextRequest",
  56. "ContextResourceDescriptor",
  57. "ProviderRef",
  58. "RoleRunLimits",
  59. "RunLimits",
  60. "SkillSpec",
  61. "TaskContextProvider",
  62. "ToolSet",
  63. "ToolSpec",
  64. ]