activematrix 0.0.0 → 0.0.2

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 (60) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +218 -51
  3. data/lib/active_matrix/agent_manager.rb +275 -0
  4. data/lib/active_matrix/agent_registry.rb +154 -0
  5. data/lib/{matrix_sdk → active_matrix}/api.rb +18 -22
  6. data/lib/{matrix_sdk → active_matrix}/bot/base.rb +42 -39
  7. data/lib/{matrix_sdk → active_matrix}/bot/main.rb +4 -5
  8. data/lib/active_matrix/bot/multi_instance_base.rb +189 -0
  9. data/lib/active_matrix/bot.rb +7 -0
  10. data/lib/{matrix_sdk → active_matrix}/client.rb +21 -34
  11. data/lib/active_matrix/client_pool.rb +194 -0
  12. data/lib/{matrix_sdk → active_matrix}/errors.rb +4 -4
  13. data/lib/active_matrix/event_router.rb +215 -0
  14. data/lib/active_matrix/logging.rb +56 -0
  15. data/lib/active_matrix/memory/agent_memory.rb +128 -0
  16. data/lib/active_matrix/memory/base.rb +101 -0
  17. data/lib/active_matrix/memory/conversation_memory.rb +161 -0
  18. data/lib/active_matrix/memory/global_memory.rb +153 -0
  19. data/lib/active_matrix/memory.rb +28 -0
  20. data/lib/{matrix_sdk → active_matrix}/mxid.rb +2 -2
  21. data/lib/{matrix_sdk → active_matrix}/protocols/as.rb +1 -1
  22. data/lib/{matrix_sdk → active_matrix}/protocols/cs.rb +6 -8
  23. data/lib/{matrix_sdk → active_matrix}/protocols/is.rb +1 -1
  24. data/lib/{matrix_sdk → active_matrix}/protocols/msc.rb +6 -8
  25. data/lib/{matrix_sdk → active_matrix}/protocols/ss.rb +2 -2
  26. data/lib/active_matrix/railtie.rb +18 -0
  27. data/lib/{matrix_sdk → active_matrix}/response.rb +2 -2
  28. data/lib/{matrix_sdk → active_matrix}/room.rb +148 -72
  29. data/lib/{matrix_sdk → active_matrix}/rooms/space.rb +3 -7
  30. data/lib/{matrix_sdk → active_matrix}/user.rb +23 -15
  31. data/lib/active_matrix/util/account_data_cache.rb +129 -0
  32. data/lib/active_matrix/util/cacheable.rb +73 -0
  33. data/lib/{matrix_sdk → active_matrix}/util/events.rb +8 -8
  34. data/lib/{matrix_sdk → active_matrix}/util/extensions.rb +6 -15
  35. data/lib/active_matrix/util/state_event_cache.rb +167 -0
  36. data/lib/{matrix_sdk → active_matrix}/util/uri.rb +4 -4
  37. data/lib/active_matrix/version.rb +5 -0
  38. data/lib/active_matrix.rb +81 -0
  39. data/lib/generators/active_matrix/bot/bot_generator.rb +38 -0
  40. data/lib/generators/active_matrix/bot/templates/bot.rb.erb +111 -0
  41. data/lib/generators/active_matrix/bot/templates/bot_spec.rb.erb +68 -0
  42. data/lib/generators/active_matrix/install/install_generator.rb +44 -0
  43. data/lib/generators/active_matrix/install/templates/README +30 -0
  44. data/lib/generators/active_matrix/install/templates/active_matrix.rb +33 -0
  45. data/lib/generators/active_matrix/install/templates/agent_memory.rb +47 -0
  46. data/lib/generators/active_matrix/install/templates/conversation_context.rb +72 -0
  47. data/lib/generators/active_matrix/install/templates/create_agent_memories.rb +17 -0
  48. data/lib/generators/active_matrix/install/templates/create_conversation_contexts.rb +21 -0
  49. data/lib/generators/active_matrix/install/templates/create_global_memories.rb +20 -0
  50. data/lib/generators/active_matrix/install/templates/create_matrix_agents.rb +26 -0
  51. data/lib/generators/active_matrix/install/templates/global_memory.rb +70 -0
  52. data/lib/generators/active_matrix/install/templates/matrix_agent.rb +127 -0
  53. metadata +168 -30
  54. data/lib/matrix_sdk/bot.rb +0 -4
  55. data/lib/matrix_sdk/util/account_data_cache.rb +0 -91
  56. data/lib/matrix_sdk/util/state_event_cache.rb +0 -92
  57. data/lib/matrix_sdk/util/tinycache.rb +0 -140
  58. data/lib/matrix_sdk/util/tinycache_adapter.rb +0 -87
  59. data/lib/matrix_sdk/version.rb +0 -5
  60. data/lib/matrix_sdk.rb +0 -75
data/lib/matrix_sdk.rb DELETED
@@ -1,75 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require 'matrix_sdk/util/extensions'
4
- require 'matrix_sdk/util/uri'
5
- require 'matrix_sdk/version'
6
-
7
- require 'json'
8
-
9
- autoload :Logging, 'logging'
10
-
11
- module MatrixSdk
12
- autoload :Api, 'matrix_sdk/api'
13
- # autoload :ApplicationService, 'matrix_sdk/application_service'
14
- autoload :Client, 'matrix_sdk/client'
15
- autoload :MXID, 'matrix_sdk/mxid'
16
- autoload :Response, 'matrix_sdk/response'
17
- autoload :Room, 'matrix_sdk/room'
18
- autoload :User, 'matrix_sdk/user'
19
-
20
- autoload :MatrixError, 'matrix_sdk/errors'
21
- autoload :MatrixRequestError, 'matrix_sdk/errors'
22
- autoload :MatrixNotAuthorizedError, 'matrix_sdk/errors'
23
- autoload :MatrixForbiddenError, 'matrix_sdk/errors'
24
- autoload :MatrixNotFoundError, 'matrix_sdk/errors'
25
- autoload :MatrixConflictError, 'matrix_sdk/errors'
26
- autoload :MatrixTooManyRequestsError, 'matrix_sdk/errors'
27
- autoload :MatrixConnectionError, 'matrix_sdk/errors'
28
- autoload :MatrixTimeoutError, 'matrix_sdk/errors'
29
- autoload :MatrixUnexpectedResponseError, 'matrix_sdk/errors'
30
-
31
- module Bot
32
- autoload :Base, 'matrix_sdk/bot/base'
33
- end
34
-
35
- module Rooms
36
- autoload :Space, 'matrix_sdk/rooms/space'
37
- end
38
-
39
- module Util
40
- autoload :AccountDataCache, 'matrix_sdk/util/account_data_cache'
41
- autoload :StateEventCache, 'matrix_sdk/util/state_event_cache'
42
- autoload :Tinycache, 'matrix_sdk/util/tinycache'
43
- autoload :TinycacheAdapter, 'matrix_sdk/util/tinycache_adapter'
44
- end
45
-
46
- module Protocols
47
- autoload :AS, 'matrix_sdk/protocols/as'
48
- autoload :CS, 'matrix_sdk/protocols/cs'
49
- autoload :IS, 'matrix_sdk/protocols/is'
50
- autoload :SS, 'matrix_sdk/protocols/ss'
51
-
52
- # Non-final protocol extensions
53
- autoload :MSC, 'matrix_sdk/protocols/msc'
54
- end
55
-
56
- def self.debug!
57
- logger.level = :debug
58
- end
59
-
60
- def self.logger
61
- @logger ||= ::Logging.logger[self].tap do |logger|
62
- logger.add_appenders ::Logging.appenders.stdout
63
- logger.level = :info
64
- end
65
- end
66
-
67
- def self.logger=(global_logger)
68
- @logger = global_logger
69
- @global_logger = !global_logger.nil?
70
- end
71
-
72
- def self.global_logger?
73
- @global_logger ||= false
74
- end
75
- end