solana-agent 17.1.6__tar.gz → 17.1.8__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 (37) hide show
  1. {solana_agent-17.1.6 → solana_agent-17.1.8}/PKG-INFO +1 -1
  2. {solana_agent-17.1.6 → solana_agent-17.1.8}/pyproject.toml +2 -2
  3. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/domains/agent.py +0 -6
  4. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/plugins/plugins.py +10 -0
  5. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/plugins/registry.py +5 -3
  6. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/services/agent.py +1 -1
  7. {solana_agent-17.1.6 → solana_agent-17.1.8}/LICENSE +0 -0
  8. {solana_agent-17.1.6 → solana_agent-17.1.8}/README.md +0 -0
  9. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/__init__.py +0 -0
  10. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/adapters/__init__.py +0 -0
  11. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/adapters/llm_adapter.py +0 -0
  12. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/adapters/mongodb_adapter.py +0 -0
  13. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/client/__init__.py +0 -0
  14. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/client/solana_agent.py +0 -0
  15. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/domains/__init__.py +0 -0
  16. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/domains/routing.py +0 -0
  17. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/factories/__init__.py +0 -0
  18. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/factories/agent_factory.py +0 -0
  19. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/__init__.py +0 -0
  20. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/client/client.py +0 -0
  21. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/providers/data_storage.py +0 -0
  22. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/providers/llm.py +0 -0
  23. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/providers/memory.py +0 -0
  24. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/repositories/agent.py +0 -0
  25. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/services/agent.py +0 -0
  26. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/services/query.py +0 -0
  27. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/interfaces/services/routing.py +0 -0
  28. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/plugins/__init__.py +0 -0
  29. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/plugins/manager.py +0 -0
  30. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/plugins/tools/__init__.py +0 -0
  31. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/plugins/tools/auto_tool.py +0 -0
  32. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/repositories/__init__.py +0 -0
  33. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/repositories/agent.py +0 -0
  34. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/repositories/memory.py +0 -0
  35. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/services/__init__.py +0 -0
  36. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/services/query.py +0 -0
  37. {solana_agent-17.1.6 → solana_agent-17.1.8}/solana_agent/services/routing.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: solana-agent
3
- Version: 17.1.6
3
+ Version: 17.1.8
4
4
  Summary: Agentic IQ
5
5
  License: MIT
6
6
  Keywords: ai,openai,ai agents,agi
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "solana-agent"
3
- version = "17.1.6"
3
+ version = "17.1.8"
4
4
  description = "Agentic IQ"
5
5
  authors = ["Bevan Hunt <bevan@bevanhunt.com>"]
6
6
  license = "MIT"
@@ -27,7 +27,7 @@ zep-python = "^2.0.2"
27
27
  [tool.poetry.dev-dependencies]
28
28
  pytest = "^8.3.5"
29
29
  pytest-cov = "^6.0.0"
30
- pytest-asyncio = "^0.25.3"
30
+ pytest-asyncio = "^0.26.0"
31
31
  pytest-github-actions-annotate-failures = "^0.3.0"
32
32
 
33
33
  [build-system]
@@ -53,12 +53,6 @@ class AIAgent(BaseModel):
53
53
  instructions: str = Field(...,
54
54
  description="Base instructions for the agent")
55
55
  specialization: str = Field(..., description="Agent's specialized domain")
56
- created_at: datetime = Field(
57
- default_factory=datetime.now, description="Creation timestamp")
58
- updated_at: datetime = Field(
59
- default_factory=datetime.now, description="Last update timestamp")
60
- description: Optional[str] = Field(
61
- None, description="Agent description or summary")
62
56
 
63
57
  @field_validator("name", "specialization")
64
58
  @classmethod
@@ -116,3 +116,13 @@ class PluginManager(ABC):
116
116
  def list_plugins(self) -> List[Dict[str, Any]]:
117
117
  """List all registered plugins with their details."""
118
118
  pass
119
+
120
+ @abstractmethod
121
+ def execute_tool(self, tool_name: str, **kwargs) -> Dict[str, Any]:
122
+ """Execute a tool with the given parameters."""
123
+ pass
124
+
125
+ @abstractmethod
126
+ def configure(self, config: Dict[str, Any]) -> None:
127
+ """Configure the plugin manager and all plugins."""
128
+ pass
@@ -13,17 +13,19 @@ from solana_agent.interfaces.plugins.plugins import Tool
13
13
  class ToolRegistry(ToolRegistryInterface):
14
14
  """Instance-based registry that manages tools and their access permissions."""
15
15
 
16
- def __init__(self):
16
+ def __init__(self, config: Dict[str, Any] = None):
17
17
  """Initialize an empty tool registry."""
18
18
  self._tools = {} # name -> tool instance
19
19
  self._agent_tools = {} # agent_name -> [tool_names]
20
+ self._config = config or {}
20
21
 
21
22
  def register_tool(self, tool: Tool) -> bool:
22
23
  """Register a tool with this registry."""
23
24
  try:
25
+ tool.configure(self._config)
26
+
24
27
  self._tools[tool.name] = tool
25
- print(f"Successfully registered tool: {tool.name}")
26
- print(f"Current tools in registry: {list(self._tools.keys())}")
28
+ print(f"Successfully registered and configured tool: {tool.name}")
27
29
  return True
28
30
  except Exception as e:
29
31
  print(f"Error registering tool: {str(e)}")
@@ -40,7 +40,7 @@ class AgentService(AgentServiceInterface):
40
40
  self.organization_mission = organization_mission
41
41
  self.config = config or {}
42
42
  self.last_text_response = ""
43
- self.tool_registry = ToolRegistry()
43
+ self.tool_registry = ToolRegistry(config=self.config)
44
44
 
45
45
  # Will be set by factory if plugin system is enabled
46
46
  self.plugin_manager = None
File without changes
File without changes