legion-mcp 0.6.5 → 0.6.6
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/lib/legion/mcp/actors/self_generate_cycle.rb +48 -0
- data/lib/legion/mcp/version.rb +1 -1
- data/lib/legion/mcp.rb +1 -0
- metadata +2 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 3e1c1371cb216ffb1b47a924ec9fd5d65b352b94a87e0103ef28d2f96aee77b1
|
|
4
|
+
data.tar.gz: 0e96367cb8c743f2408f95c9ccdf051ecd1ba991302963b4e5b5c500db5eb136
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ab78e2afd0d736017b922a12010c3feb9ca519a82599e163e6cdf187d448978b40a62a5efc2f0ebe7991424af5593effa6dfe89c17192eb721b809216ba80f01
|
|
7
|
+
data.tar.gz: 4ee7a30af588af08bf7090748dd700ff40863150bf4cbdaf147e5f073cb60c7bff82ac26758c650e325c4833b24fc5a2e4bd17ca341c8bbfede8e24e9d037677
|
data/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
## [Unreleased]
|
|
4
4
|
|
|
5
|
+
## [0.6.6] - 2026-03-28
|
|
6
|
+
|
|
7
|
+
### Added
|
|
8
|
+
- `Legion::MCP::Actor::SelfGenerateCycle` — periodic `Every`-style actor that calls `SelfGenerate.run_cycle` on a configurable interval (default 300 s, reads `codegen.self_generate.cycle_interval` from Settings)
|
|
9
|
+
|
|
5
10
|
## [0.6.5] - 2026-03-28
|
|
6
11
|
|
|
7
12
|
### Removed
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
return unless defined?(Legion::Extensions::Actors::Every)
|
|
4
|
+
|
|
5
|
+
module Legion
|
|
6
|
+
module MCP
|
|
7
|
+
module Actor
|
|
8
|
+
class SelfGenerateCycle < Legion::Extensions::Actors::Every
|
|
9
|
+
def runner_class = self.class
|
|
10
|
+
def runner_function = 'action'
|
|
11
|
+
def check_subtask? = false
|
|
12
|
+
def generate_task? = false
|
|
13
|
+
|
|
14
|
+
def time
|
|
15
|
+
if defined?(Legion::Settings) && !Legion::Settings[:codegen].nil?
|
|
16
|
+
Legion::Settings.dig(:codegen, :self_generate, :cycle_interval) || 300
|
|
17
|
+
else
|
|
18
|
+
300
|
|
19
|
+
end
|
|
20
|
+
rescue StandardError => e
|
|
21
|
+
log.warn(e.message)
|
|
22
|
+
300
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
def enabled?
|
|
26
|
+
SelfGenerate.enabled?
|
|
27
|
+
rescue StandardError => e
|
|
28
|
+
log.warn(e.message)
|
|
29
|
+
false
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def action(_payload = nil)
|
|
33
|
+
SelfGenerate.run_cycle
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
private
|
|
37
|
+
|
|
38
|
+
def log
|
|
39
|
+
return Legion::Logging if defined?(Legion::Logging)
|
|
40
|
+
|
|
41
|
+
@log ||= Object.new.tap do |nl|
|
|
42
|
+
%i[debug info warn error fatal].each { |m| nl.define_singleton_method(m) { |*| nil } }
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
data/lib/legion/mcp/version.rb
CHANGED
data/lib/legion/mcp.rb
CHANGED
|
@@ -11,6 +11,7 @@ require_relative 'mcp/tool_governance'
|
|
|
11
11
|
require_relative 'mcp/server'
|
|
12
12
|
require_relative 'mcp/override_broadcast'
|
|
13
13
|
require_relative 'mcp/client'
|
|
14
|
+
require_relative 'mcp/actors/self_generate_cycle' if defined?(Legion::Extensions::Actors::Every)
|
|
14
15
|
|
|
15
16
|
module Legion
|
|
16
17
|
module MCP
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: legion-mcp
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.6.
|
|
4
|
+
version: 0.6.6
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Esity
|
|
@@ -119,6 +119,7 @@ files:
|
|
|
119
119
|
- Rakefile
|
|
120
120
|
- legion-mcp.gemspec
|
|
121
121
|
- lib/legion/mcp.rb
|
|
122
|
+
- lib/legion/mcp/actors/self_generate_cycle.rb
|
|
122
123
|
- lib/legion/mcp/auth.rb
|
|
123
124
|
- lib/legion/mcp/catalog_bridge.rb
|
|
124
125
|
- lib/legion/mcp/client.rb
|