Commit Graph

31 Commits

Author SHA1 Message Date
Saumya 2e31dd4593 fix agent creation error 2025-08-24 22:34:32 +05:30
Saumya 5339f51206 modify dockerfile for web dev agent 2025-08-15 10:42:34 +05:30
Krishav Raj Singh b0f830df56 final 2025-08-11 13:51:28 +05:30
Krishav Raj Singh 796f1ef9f4 replace sb_browser_tool with stagehand_browser_tool 2025-08-10 22:00:28 +05:30
mykonos-ibiza 564c3ad63f Refactor imports and enhance XML formatting in utils
- Updated import statements in `example.py` to remove relative imports for better clarity.
- Introduced ANSI color formatting for various log messages in `utils.py` to improve readability.
- Added XML formatting functionality to `print_stream` for better output presentation when handling XML content.
- Implemented syntax highlighting for XML tags and attributes to enhance visual distinction in logs.
2025-08-01 19:29:09 +05:30
mykonos-ibiza dfab627eba Add message deletion functionality and refactor related methods
- Introduced a new endpoint in the API to delete messages from a thread, enhancing message management capabilities.
- Added a `del_message` method in the `Thread` class to facilitate message deletion.
- Updated the `ThreadsClient` class to include a method for deleting messages from a thread, ensuring consistent API interaction.
- Refactored the `Agent` class to rename the `tool_details` method to `details`, improving clarity in method naming.
2025-08-01 15:35:09 +05:30
mykonos-ibiza 403561f823 Add README and update API URL in Kortix class
- Introduced a new README.md file for the Kortix SDK, detailing installation instructions, quick start examples, and environment setup.
- Updated the default API URL in the Kortix class constructor from `http://localhost:8000/api` to `https://suna.so/api`, ensuring consistency with the production environment.
2025-08-01 03:30:25 +05:30
mykonos-ibiza c94a0becd9 Enhance agent data handling in from_dict method
- Updated the `from_dict` method in the `agents.py` file to support the conversion of `custom_mcps` and ensure proper handling of nested `MCPConfig` objects.
- Improved data extraction by filtering out unnecessary fields and providing default values for missing configurations, enhancing robustness in agent initialization.
2025-08-01 02:36:21 +05:30
mykonos-ibiza 95b8349e5e Enhance tool enabling logic in KortixAgent class
- Updated the `create` method in the `KortixAgent` class to improve the handling of `allowed_tools`, allowing for more granular control over the enabled state of `AgentPressTools` and `MCPTools`.
- Refactored internal logic to ensure tools are enabled or disabled based on the `allowed_tools` parameter, enhancing flexibility and robustness in tool management.
2025-08-01 02:22:59 +05:30
mykonos-ibiza fac860a308 Enhance tool management in KortixAgent class
- Added support for an optional `allowed_tools` parameter in the `create` method of the `KortixAgent` class to control the enabled state of `AgentPressTools` and `MCPTools`.
- Updated internal logic to conditionally enable tools based on the provided `allowed_tools`, improving flexibility in tool configuration.
2025-08-01 02:13:32 +05:30
mykonos-ibiza e1c1e19dee Refactor agent version handling and improve logging
- Updated the `update_agent` function to access `version_number` and `version_name` directly from the `new_version` object, enhancing clarity and consistency in version management.
- Improved logging statements to reflect the changes in how version details are accessed, ensuring accurate log messages for created versions.
2025-08-01 02:10:40 +05:30
mykonos-ibiza 8793dfcd25 Update Agent class's update method to support optional parameters
- Modified the `update` method in the `Agent` class to accept optional parameters for `name`, `system_prompt`, and `mcp_tools`, enhancing flexibility in agent property updates.
- Adjusted internal logic to handle cases where `mcp_tools` is not provided, improving robustness in tool management.
2025-08-01 01:43:22 +05:30
mykonos-ibiza 2302b656f0 Add update method to Agent class for modifying agent properties
- Implemented an `update` method in the `Agent` class to allow modification of agent properties such as name, system prompt, and associated tools.
- Enhanced tool management by configuring `AgentPressTools` and `MCPTools` for the update process.
- Updated the `create` method in `KortixAgent` to maintain consistency with the new method signature.
2025-08-01 01:40:31 +05:30
mykonos-ibiza 4ca74e9907 Refactor tool management and remove unused files
- Renamed `KortixMCPTools` to `MCPTools` for consistency across the SDK.
- Updated import statements and `__all__` definitions to reflect the new class name.
- Removed unused files including `.kvstore.json`, `example_stream.txt`, `play.py`, `stream.py`, and `stream_test.py` to streamline the project structure and eliminate redundancy.
2025-08-01 01:33:20 +05:30
mykonos-ibiza 4da30a7b9a Refactor KortixMCP to KortixMCPTools and update imports
- Renamed `KortixMCP` to `KortixMCPTools` across the SDK for consistency.
- Updated import statements in relevant files to reflect the new class name.
- Modified the `create` method in `KortixAgent` to use `mcp_tools` instead of `tools`, enhancing clarity in tool management.
2025-08-01 01:31:05 +05:30
mykonos-ibiza bef187319f Update dependencies and refactor KortixMCP initialization
- Added `fastmcp` as a dependency in `pyproject.toml` and updated the lock file accordingly.
- Refactored the `KortixMCP` class constructor to directly instantiate `FastMCPClient` and modified the tool management logic to handle cases where allowed tools are not specified.
- Improved code readability by renaming variables and streamlining the initialization process.
2025-08-01 01:23:20 +05:30
mykonos-ibiza 05d111def6 Refactor KortixMCP initialization and tool management
- Updated the constructor of `KortixMCP` to accept a `FastMCPClient` and a list of allowed tools.
- Modified the `initialize` method to retrieve tools from the new client and filter enabled tools based on the allowed list.
- Improved code readability and organization by renaming variables for clarity.
2025-08-01 01:17:32 +05:30
mykonos-ibiza eb53999291 Refactor whitespace and formatting in async stream printer
- Cleaned up whitespace throughout the `print_stream` function for improved readability.
- Standardized output formatting for function call detection and tool result messages, enhancing clarity in logs.
- Ensured consistent handling of empty lines and message content, contributing to better overall code quality.
2025-07-31 23:33:30 +05:30
mykonos-ibiza ac9dbd7127 Enhance assistant message processing in async stream printer
- Introduced chunk accumulation for assistant messages to handle multi-part responses more effectively.
- Implemented a function to rebuild full text from sorted chunks, improving the accuracy of message content.
- Added state management for parsing function calls, allowing detection and handling of tool usage within messages.
- Updated output formatting to provide clearer logs for assistant messages and tool interactions.
2025-07-31 23:28:17 +05:30
mykonos-ibiza be05cc8348 Update assistant message handling in async stream printer
- Modified the `print_stream` function to include a check for `message_id` before processing assistant messages, ensuring only valid messages are printed.
- Changed output labels from `[MESSAGE]` to `[ASSISTANT]` for clarity in logs, improving the distinction between different message types.
2025-07-31 23:11:39 +05:30
mykonos-ibiza 891e232ce2 Enhance JSON parsing and output formatting in async stream printer
- Updated the `print_stream` function to utilize a new utility function `try_parse_json` for safer JSON parsing, improving error handling for invalid input.
- Enhanced output formatting for various event types, including status updates, assistant messages, and tool execution results, ensuring clearer and more informative logs.
- Added checks for empty content and improved handling of parsing failures to maintain robustness in stream processing.
2025-07-31 23:09:12 +05:30
mykonos-ibiza 076064a976 Add async stream printer utility for handling event streams
- Introduced a new utility function `print_stream` in `utils.py` to process and print events from an asynchronous string generator.
- The function handles various event types including status updates, assistant responses, and tool execution results, providing formatted output for each case.
- Added error handling for JSON parsing to ensure robustness against invalid input.
2025-07-31 22:17:00 +05:30
mykonos-ibiza 84fe3795c1 fix(api): configure timeout settings for streaming requests
- Added timeout settings to the `stream_from_url` function to prevent ReadTimeout errors during streaming operations.
- Configured connection, read, write, and pool timeouts for improved reliability in data retrieval.
2025-07-29 21:28:22 +05:30
mykonos-ibiza aa75f47ac3 feat(kortix): enhance streaming capabilities and add utility functions
- Introduced a new `stream.py` module for processing streamed data, including classes for handling different message types.
- Added a local key-value store for managing agent and thread IDs.
- Implemented a real-time stream processor with callbacks for handling various events.
- Created example scripts for testing the streaming functionality and integrated weather tool.
- Updated import statements for better organization and clarity.
2025-07-29 21:23:37 +05:30
mykonos-ibiza 53fb20aa6a refactor(api): update import statements to use relative paths
- Changed import statements in `agents.py` and `threads.py` to utilize relative paths for improved module organization and clarity.
2025-07-29 21:15:28 +05:30
mykonos-ibiza 8a6f23080e refactor(kortix): reorganize imports and introduce new Kortix class
- Updated import statements to use relative paths for better module resolution.
- Deleted the empty `api` and `kortix` directories to clean up the structure.
- Introduced the `Kortix` class to manage agents and threads, enhancing the SDK's core functionality.
2025-07-29 21:11:50 +05:30
mykonos-ibiza 8869138a7e feat(api-keys): implement API key management system
- Added a new API keys service with endpoints for creating, listing, revoking, and deleting API keys.
- Integrated API key validation and caching for performance.
- Updated backend configuration to include API key secret and throttling settings.
- Created frontend components for managing API keys, including a user interface for creating and displaying keys.
- Introduced a new database migration for the API keys table with necessary constraints and security policies.
- Enhanced authentication methods to support API key usage alongside JWT.
2025-07-29 19:38:37 +05:30
mykonos-ibiza e3cd8c066f feat(kortix): add local key-value store and enhance weather tool functionality
- Introduced a new local key-value store configuration file to manage agent and thread IDs.
- Updated the weather retrieval tool to return a different weather condition.
- Integrated a real-time stream processor for improved message handling and status updates in the main function.
2025-07-29 14:33:37 +05:30
mykonos-ibiza 7050490d03 feat(api): enhance thread creation and agent functionality
- Updated the `create_thread` endpoint to set a default name if none is provided.
- Modified the `Agent` class to use a dictionary for `agentpress_tools` instead of a custom type.
- Improved the `LocalKVStore` initialization to use a hidden filename.
- Added a new weather retrieval tool to the MCP.
- Updated agent and thread setup in the main function for better clarity and functionality.
- Refactored message handling in the `ThreadsClient` to use query parameters for message posting.
2025-07-29 14:23:12 +05:30
mykonos-ibiza f45d106d39 feat(kortix): implement core functionality for agent and thread management
- Introduced the `Kortix` class to manage agents and threads with API integration.
- Enhanced the `Agent` class to support running agents with prompts and managing threads.
- Added streaming capabilities for real-time message processing.
- Created example scripts for testing agent functionality and stream processing.
- Updated models and tools to improve integration and usability.
2025-07-29 12:13:25 +05:30
mykonos-ibiza 57aa08fdaa feat(sdk): restructure SDK into new directory with updated API and models
- Moved existing components to a new `sdk` directory for better organization.
- Introduced new API structure for agent and thread management.
- Added models for tools and messages to enhance functionality.
- Implemented a local key-value store for persistent data management.
- Updated README and project files to reflect new structure and usage.
2025-07-29 00:41:33 +05:30