riffer-rig 0.6.0 → 0.7.0

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 (157) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +36 -0
  3. data/README.md +37 -4
  4. data/exe/riffer +1 -1
  5. data/lib/riffer/rig/bundled/agents_md.rb +7 -0
  6. data/lib/riffer/rig/bundled/bash.rb +5 -0
  7. data/lib/riffer/rig/bundled/edit.rb +5 -0
  8. data/lib/riffer/rig/bundled/mcp.rb +9 -0
  9. data/lib/riffer/rig/bundled/read.rb +5 -0
  10. data/lib/riffer/rig/bundled/skills.rb +10 -0
  11. data/lib/riffer/rig/bundled/write.rb +5 -0
  12. data/lib/riffer/rig/bundled.rb +7 -0
  13. data/lib/riffer/rig/cli/flags.rb +77 -0
  14. data/lib/riffer/rig/cli.rb +69 -106
  15. data/lib/riffer/rig/command/context.rb +70 -0
  16. data/lib/riffer/rig/command.rb +29 -0
  17. data/lib/riffer/rig/commands/model.rb +54 -0
  18. data/lib/riffer/rig/commands/skill.rb +27 -0
  19. data/lib/riffer/rig/commands.rb +4 -0
  20. data/lib/riffer/rig/credentials.rb +2 -2
  21. data/lib/riffer/rig/directories.rb +20 -0
  22. data/lib/riffer/rig/env/invalid.rb +13 -0
  23. data/lib/riffer/rig/env.rb +12 -1
  24. data/lib/riffer/rig/events/after_response.rb +25 -0
  25. data/lib/riffer/rig/events/after_tool_call.rb +31 -0
  26. data/lib/riffer/rig/events/before_prompt.rb +25 -0
  27. data/lib/riffer/rig/events/before_request.rb +25 -0
  28. data/lib/riffer/rig/events/before_tool_call.rb +28 -0
  29. data/lib/riffer/rig/events/command_output.rb +3 -2
  30. data/lib/riffer/rig/events/notify.rb +3 -2
  31. data/lib/riffer/rig/events/session_end.rb +3 -2
  32. data/lib/riffer/rig/events/session_start.rb +3 -2
  33. data/lib/riffer/rig/events/skill_activated.rb +3 -2
  34. data/lib/riffer/rig/events/turn_end.rb +3 -2
  35. data/lib/riffer/rig/extension/failure.rb +16 -0
  36. data/lib/riffer/rig/extension.rb +16 -1
  37. data/lib/riffer/rig/hosts/mirror.rb +6 -7
  38. data/lib/riffer/rig/hosts/null.rb +1 -1
  39. data/lib/riffer/rig/loader.rb +163 -0
  40. data/lib/riffer/rig/mcp/declaration.rb +23 -0
  41. data/lib/riffer/rig/mcp/server.rb +16 -0
  42. data/lib/riffer/rig/mcp.rb +12 -0
  43. data/lib/riffer/rig/prompts/agents_md.rb +32 -0
  44. data/lib/riffer/rig/prompts.rb +4 -0
  45. data/lib/riffer/rig/registrar.rb +120 -5
  46. data/lib/riffer/rig/runtime/blocked.rb +13 -0
  47. data/lib/riffer/rig/runtime/hooks.rb +78 -0
  48. data/lib/riffer/rig/runtime/request_guardrail.rb +24 -0
  49. data/lib/riffer/rig/runtime/tool_runtime.rb +44 -0
  50. data/lib/riffer/rig/runtime.rb +506 -57
  51. data/lib/riffer/rig/settings/document.rb +27 -16
  52. data/lib/riffer/rig/settings/pricing.rb +16 -5
  53. data/lib/riffer/rig/settings.rb +73 -43
  54. data/lib/riffer/rig/skills/sources.rb +28 -0
  55. data/lib/riffer/rig/skills.rb +12 -0
  56. data/lib/riffer/rig/{events/event.rb → support/equatable.rb} +2 -11
  57. data/lib/riffer/rig/{ui → terminal}/animator.rb +4 -4
  58. data/lib/riffer/rig/{ui → terminal}/banner.rb +17 -21
  59. data/lib/riffer/rig/{ui → terminal}/cursor.rb +4 -4
  60. data/lib/riffer/rig/terminal/host.rb +85 -0
  61. data/lib/riffer/rig/{ui → terminal}/palette.rb +1 -1
  62. data/lib/riffer/rig/{ui → terminal}/renderer.rb +115 -66
  63. data/lib/riffer/rig/{ui → terminal}/smoother.rb +4 -4
  64. data/lib/riffer/rig/{ui → terminal}/theme.rb +12 -12
  65. data/lib/riffer/rig/terminal.rb +207 -0
  66. data/lib/riffer/rig/tools/bash.rb +6 -4
  67. data/lib/riffer/rig/tools/edit.rb +3 -2
  68. data/lib/riffer/rig/tools/read.rb +3 -2
  69. data/lib/riffer/rig/tools/write.rb +3 -2
  70. data/lib/riffer/rig/version.rb +1 -1
  71. data/lib/riffer/rig.rb +8 -8
  72. data/sig/generated/riffer/rig/bundled/agents_md.rbs +5 -0
  73. data/sig/generated/riffer/rig/bundled/bash.rbs +5 -0
  74. data/sig/generated/riffer/rig/bundled/edit.rbs +5 -0
  75. data/sig/generated/riffer/rig/bundled/mcp.rbs +5 -0
  76. data/sig/generated/riffer/rig/bundled/read.rbs +5 -0
  77. data/sig/generated/riffer/rig/bundled/skills.rbs +5 -0
  78. data/sig/generated/riffer/rig/bundled/write.rbs +5 -0
  79. data/sig/generated/riffer/rig/bundled.rbs +5 -0
  80. data/sig/generated/riffer/rig/cli/flags.rbs +40 -0
  81. data/sig/generated/riffer/rig/cli.rbs +30 -35
  82. data/sig/generated/riffer/rig/command/context.rbs +50 -0
  83. data/sig/generated/riffer/rig/command.rbs +23 -0
  84. data/sig/generated/riffer/rig/commands/model.rbs +27 -0
  85. data/sig/generated/riffer/rig/commands/skill.rbs +12 -0
  86. data/sig/generated/riffer/rig/commands.rbs +4 -0
  87. data/sig/generated/riffer/rig/credentials.rbs +4 -4
  88. data/sig/generated/riffer/rig/directories.rbs +11 -0
  89. data/sig/generated/riffer/rig/env/invalid.rbs +10 -0
  90. data/sig/generated/riffer/rig/env.rbs +7 -1
  91. data/sig/generated/riffer/rig/events/after_response.rbs +18 -0
  92. data/sig/generated/riffer/rig/events/after_tool_call.rbs +24 -0
  93. data/sig/generated/riffer/rig/events/before_prompt.rbs +18 -0
  94. data/sig/generated/riffer/rig/events/before_request.rbs +18 -0
  95. data/sig/generated/riffer/rig/events/before_tool_call.rbs +21 -0
  96. data/sig/generated/riffer/rig/events/command_output.rbs +3 -1
  97. data/sig/generated/riffer/rig/events/notify.rbs +3 -1
  98. data/sig/generated/riffer/rig/events/session_end.rbs +3 -1
  99. data/sig/generated/riffer/rig/events/session_start.rbs +3 -1
  100. data/sig/generated/riffer/rig/events/skill_activated.rbs +3 -1
  101. data/sig/generated/riffer/rig/events/turn_end.rbs +3 -1
  102. data/sig/generated/riffer/rig/extension/failure.rbs +13 -0
  103. data/sig/generated/riffer/rig/extension.rbs +14 -1
  104. data/sig/generated/riffer/rig/hosts/mirror.rbs +9 -9
  105. data/sig/generated/riffer/rig/hosts/null.rbs +1 -1
  106. data/sig/generated/riffer/rig/loader.rbs +77 -0
  107. data/sig/generated/riffer/rig/mcp/declaration.rbs +18 -0
  108. data/sig/generated/riffer/rig/mcp/server.rbs +13 -0
  109. data/sig/generated/riffer/rig/mcp.rbs +8 -0
  110. data/sig/generated/riffer/rig/prompts/agents_md.rbs +19 -0
  111. data/sig/generated/riffer/rig/prompts.rbs +4 -0
  112. data/sig/generated/riffer/rig/registrar.rbs +78 -4
  113. data/sig/generated/riffer/rig/runtime/blocked.rbs +10 -0
  114. data/sig/generated/riffer/rig/runtime/hooks.rbs +49 -0
  115. data/sig/generated/riffer/rig/runtime/request_guardrail.rbs +16 -0
  116. data/sig/generated/riffer/rig/runtime/tool_runtime.rbs +23 -0
  117. data/sig/generated/riffer/rig/runtime.rbs +225 -22
  118. data/sig/generated/riffer/rig/settings/document.rbs +11 -11
  119. data/sig/generated/riffer/rig/settings/pricing.rbs +7 -2
  120. data/sig/generated/riffer/rig/settings.rbs +36 -23
  121. data/sig/generated/riffer/rig/skills/sources.rbs +18 -0
  122. data/sig/generated/riffer/rig/skills.rbs +7 -0
  123. data/sig/generated/riffer/rig/support/equatable.rbs +15 -0
  124. data/sig/generated/riffer/rig/{ui → terminal}/animator.rbs +5 -5
  125. data/sig/generated/riffer/rig/terminal/banner.rbs +39 -0
  126. data/sig/generated/riffer/rig/{ui → terminal}/cursor.rbs +5 -5
  127. data/sig/generated/riffer/rig/terminal/host.rbs +50 -0
  128. data/sig/generated/riffer/rig/{ui → terminal}/palette.rbs +2 -2
  129. data/sig/generated/riffer/rig/terminal/renderer.rbs +126 -0
  130. data/sig/generated/riffer/rig/{ui → terminal}/smoother.rbs +5 -5
  131. data/sig/generated/riffer/rig/{ui → terminal}/theme.rbs +5 -5
  132. data/sig/generated/riffer/rig/terminal.rbs +85 -0
  133. data/sig/generated/riffer/rig/tools/bash.rbs +2 -1
  134. data/sig/generated/riffer/rig.rbs +4 -0
  135. data/sig/manual/riffer/rig/commands/model.rbs +6 -0
  136. data/sig/manual/riffer/rig/commands/skill.rbs +6 -0
  137. data/sig/manual/riffer/rig/directories.rbs +6 -0
  138. data/sig/manual/riffer/rig/events.rbs +6 -0
  139. data/sig/manual/riffer/rig/hosts.rbs +7 -0
  140. data/sig/manual/riffer/rig/mcp.rbs +11 -0
  141. data/sig/manual/riffer/rig/prompts/agents_md.rbs +6 -0
  142. data/sig/manual/riffer/rig/{ui/banner.rbs → skills.rbs} +2 -2
  143. data/sig/manual/riffer/rig/support.rbs +8 -0
  144. data/sig/manual/riffer/rig/terminal/banner.rbs +6 -0
  145. metadata +140 -27
  146. data/lib/riffer/rig/coding_agent.rb +0 -53
  147. data/lib/riffer/rig/hosts/base.rb +0 -36
  148. data/lib/riffer/rig/repl.rb +0 -188
  149. data/lib/riffer/rig/token_tally.rb +0 -54
  150. data/sig/generated/riffer/rig/coding_agent.rbs +0 -9
  151. data/sig/generated/riffer/rig/events/event.rbs +0 -20
  152. data/sig/generated/riffer/rig/hosts/base.rbs +0 -26
  153. data/sig/generated/riffer/rig/repl.rbs +0 -69
  154. data/sig/generated/riffer/rig/token_tally.rbs +0 -42
  155. data/sig/generated/riffer/rig/ui/banner.rbs +0 -42
  156. data/sig/generated/riffer/rig/ui/renderer.rbs +0 -94
  157. data/sig/manual/riffer/rig/ui.rbs +0 -5
@@ -0,0 +1,5 @@
1
+ # Generated from lib/riffer/rig/bundled/agents_md.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Bundled
4
+ AgentsMd: Riffer::Rig::Extension
5
+ end
@@ -0,0 +1,5 @@
1
+ # Generated from lib/riffer/rig/bundled/bash.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Bundled
4
+ Bash: Riffer::Rig::Extension
5
+ end
@@ -0,0 +1,5 @@
1
+ # Generated from lib/riffer/rig/bundled/edit.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Bundled
4
+ Edit: Riffer::Rig::Extension
5
+ end
@@ -0,0 +1,5 @@
1
+ # Generated from lib/riffer/rig/bundled/mcp.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Bundled
4
+ Mcp: Riffer::Rig::Extension
5
+ end
@@ -0,0 +1,5 @@
1
+ # Generated from lib/riffer/rig/bundled/read.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Bundled
4
+ Read: Riffer::Rig::Extension
5
+ end
@@ -0,0 +1,5 @@
1
+ # Generated from lib/riffer/rig/bundled/skills.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Bundled
4
+ Skills: Riffer::Rig::Extension
5
+ end
@@ -0,0 +1,5 @@
1
+ # Generated from lib/riffer/rig/bundled/write.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Bundled
4
+ Write: Riffer::Rig::Extension
5
+ end
@@ -0,0 +1,5 @@
1
+ # Generated from lib/riffer/rig/bundled.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Bundled
4
+ BY_NAME: Hash[Symbol, Riffer::Rig::Extension]
5
+ end
@@ -0,0 +1,40 @@
1
+ # Generated from lib/riffer/rig/cli/flags.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::CLI::Flags
4
+ BANNER: String
5
+
6
+ # @dynamic model, extensions, skills, agents_md, tools, max_steps, help
7
+ attr_reader model: String?
8
+
9
+ attr_reader extensions: bool
10
+
11
+ attr_reader skills: bool
12
+
13
+ attr_reader agents_md: bool
14
+
15
+ attr_reader help: bool
16
+
17
+ attr_reader tools: Array[String]?
18
+
19
+ attr_reader max_steps: Integer?
20
+
21
+ # @rbs argv: Array[String]
22
+ # @rbs return: Riffer::Rig::CLI::Flags | String
23
+ def self.parse: (Array[String] argv) -> (Riffer::Rig::CLI::Flags | String)
24
+
25
+ # @rbs return: String
26
+ def self.usage: () -> String
27
+
28
+ # @rbs return: OptionParser
29
+ def self.parser: () -> OptionParser
30
+
31
+ # @rbs model: String?
32
+ # @rbs extensions: bool
33
+ # @rbs skills: bool
34
+ # @rbs agents_md: bool
35
+ # @rbs tools: Array[String]?
36
+ # @rbs max_steps: Integer?
37
+ # @rbs help: bool
38
+ # @rbs return: void
39
+ def initialize: (?model: String?, ?extensions: bool, ?skills: bool, ?agents_md: bool, ?tools: Array[String]?, ?max_steps: Integer?, ?help: bool) -> void
40
+ end
@@ -1,49 +1,44 @@
1
1
  # Generated from lib/riffer/rig/cli.rb with RBS::Inline
2
2
 
3
3
  module Riffer::Rig::CLI
4
- # @rbs output: IO
4
+ PRINT_FLAGS: Array[String]
5
+
6
+ ACP_COMMAND: ::String
7
+
8
+ USAGE_ERROR: ::Integer
9
+
10
+ # @rbs argv: Array[String]
5
11
  # @rbs input: IO
6
- # @rbs model: String
7
- # @rbs env: Riffer::Rig::Env
12
+ # @rbs output: IO
13
+ # @rbs error: IO
14
+ # @rbs env: Riffer::Rig::Env | Riffer::Rig::Env::Invalid
15
+ # @rbs cwd: String
16
+ # @rbs home: String
8
17
  # @rbs return: Integer
9
- def start: (?output: IO, ?input: IO, ?model: String, ?env: Riffer::Rig::Env) -> Integer
18
+ def start: (?Array[String] argv, ?input: IO, ?output: IO, ?error: IO, ?env: Riffer::Rig::Env | Riffer::Rig::Env::Invalid, ?cwd: String, ?home: String) -> Integer
10
19
 
11
20
  private
12
21
 
13
- # @rbs provider: String
14
- # @rbs theme: Riffer::Rig::UI::Theme
15
- # @rbs output: IO
22
+ # @rbs flags: Riffer::Rig::CLI::Flags
16
23
  # @rbs input: IO
17
- # @rbs env: Riffer::Rig::Env
18
- # @rbs return: Hash[Symbol, String]?
19
- def credentials_for: (String provider, Riffer::Rig::UI::Theme theme, output: IO, input: IO, env: Riffer::Rig::Env) -> Hash[Symbol, String]?
20
-
21
- # @rbs provider: String
22
- # @rbs resolution: Riffer::Rig::Credentials::Resolution
23
- # @rbs theme: Riffer::Rig::UI::Theme
24
24
  # @rbs output: IO
25
- # @rbs input: IO
26
- # @rbs return: Hash[Symbol, String]?
27
- def onboard: (String provider, Riffer::Rig::Credentials::Resolution resolution, Riffer::Rig::UI::Theme theme, output: IO, input: IO) -> Hash[Symbol, String]?
28
-
29
- # @rbs provider: String
30
- # @rbs field: Riffer::Rig::ProviderSetup::Field
31
- # @rbs theme: Riffer::Rig::UI::Theme
32
- # @rbs output: IO
33
- # @rbs input: IO
34
- # @rbs return: String
35
- def prompt: (String provider, Riffer::Rig::ProviderSetup::Field field, Riffer::Rig::UI::Theme theme, output: IO, input: IO) -> String
25
+ # @rbs env: Riffer::Rig::Env | Riffer::Rig::Env::Invalid
26
+ # @rbs cwd: String
27
+ # @rbs home: String
28
+ # @rbs return: Integer
29
+ def terminal: (Riffer::Rig::CLI::Flags flags, input: IO, output: IO, env: Riffer::Rig::Env | Riffer::Rig::Env::Invalid, cwd: String, home: String) -> Integer
36
30
 
37
- # @rbs input: IO
38
- # @rbs return: String?
39
- def read_secret: (IO input) -> String?
31
+ # @rbs name: String
32
+ # @rbs error: IO
33
+ # @rbs return: Integer
34
+ def unavailable: (String name, IO error) -> Integer
40
35
 
41
- # @rbs theme: Riffer::Rig::UI::Theme
42
- # @rbs animator: Riffer::Rig::UI::Animator
43
- # @rbs model: String
44
- # @rbs return: void
45
- def reveal_banner: (Riffer::Rig::UI::Theme theme, Riffer::Rig::UI::Animator animator, String model) -> void
36
+ # @rbs message: String
37
+ # @rbs error: IO
38
+ # @rbs return: Integer
39
+ def refuse: (String message, IO error) -> Integer
46
40
 
47
- # @rbs return: String
48
- def count_skills: () -> String
41
+ # @rbs output: IO
42
+ # @rbs return: Integer
43
+ def help: (IO output) -> Integer
49
44
  end
@@ -0,0 +1,50 @@
1
+ # Generated from lib/riffer/rig/command/context.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Command::Context
4
+ @command: String
5
+
6
+ @emit: ^(Riffer::Rig::Events::_Event) -> void
7
+
8
+ @turn: ^(String) -> void
9
+
10
+ # @dynamic args, runtime, host, settings
11
+ attr_reader args: String
12
+
13
+ attr_reader runtime: Riffer::Rig::Runtime
14
+
15
+ attr_reader host: Riffer::Rig::Hosts::_Host
16
+
17
+ attr_reader settings: Hash[Symbol, untyped]
18
+
19
+ # @rbs command: String
20
+ # @rbs args: String
21
+ # @rbs runtime: Riffer::Rig::Runtime
22
+ # @rbs host: Riffer::Rig::Hosts::_Host
23
+ # @rbs settings: Hash[Symbol, untyped]
24
+ # @rbs emit: ^(Riffer::Rig::Events::_Event) -> void
25
+ # @rbs turn: ^(String) -> void
26
+ # @rbs return: void
27
+ def initialize: (String command, String args, runtime: Riffer::Rig::Runtime, host: Riffer::Rig::Hosts::_Host, settings: Hash[Symbol, untyped], emit: ^(Riffer::Rig::Events::_Event) -> void, turn: ^(String) -> void) -> void
28
+
29
+ # @rbs text: String
30
+ # @rbs return: nil
31
+ def say: (String text) -> nil
32
+
33
+ # @rbs event: Riffer::Rig::Events::_Event
34
+ # @rbs return: nil
35
+ def emit: (Riffer::Rig::Events::_Event event) -> nil
36
+
37
+ # @rbs text: String
38
+ # @rbs return: nil
39
+ def prompt: (String text) -> nil
40
+
41
+ # @rbs question: String?
42
+ # @rbs options: Array[String]?
43
+ # @rbs secret: bool
44
+ # @rbs return: String?
45
+ def ask: (?String? question, ?options: Array[String]?, ?secret: bool) -> String?
46
+
47
+ # @rbs question: String?
48
+ # @rbs return: bool
49
+ def confirm: (?String? question) -> bool
50
+ end
@@ -0,0 +1,23 @@
1
+ # Generated from lib/riffer/rig/command.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Command
4
+ @block: ^(Riffer::Rig::Command::Context) -> void
5
+
6
+ # @dynamic name, description, extension
7
+ attr_reader name: String
8
+
9
+ attr_reader description: String
10
+
11
+ attr_reader extension: String
12
+
13
+ # @rbs name: String
14
+ # @rbs description: String
15
+ # @rbs extension: String
16
+ # @rbs &block: (Riffer::Rig::Command::Context) -> void
17
+ # @rbs return: void
18
+ def initialize: (String name, description: String, extension: String) { (Riffer::Rig::Command::Context) -> void } -> void
19
+
20
+ # @rbs ctx: Riffer::Rig::Command::Context
21
+ # @rbs return: void
22
+ def call: (Riffer::Rig::Command::Context ctx) -> void
23
+ end
@@ -0,0 +1,27 @@
1
+ # Generated from lib/riffer/rig/commands/model.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Commands::Model
4
+ HINT: String
5
+
6
+ SAVE_UNAVAILABLE: ::String
7
+
8
+ # @rbs return: Riffer::Rig::Command
9
+ def command: () -> Riffer::Rig::Command
10
+
11
+ # @rbs ctx: Riffer::Rig::Command::Context
12
+ # @rbs return: void
13
+ def run: (Riffer::Rig::Command::Context ctx) -> void
14
+
15
+ private
16
+
17
+ # @rbs model: String
18
+ # @rbs provider: String
19
+ # @rbs missing: Array[Symbol]
20
+ # @rbs return: String
21
+ def refusal: (String model, String provider, Array[Symbol] missing) -> String
22
+
23
+ # @rbs provider: String
24
+ # @rbs credentials: Hash[Symbol, Hash[Symbol, String]]
25
+ # @rbs return: Array[Symbol]
26
+ def missing_credentials: (String provider, Hash[Symbol, Hash[Symbol, String]] credentials) -> Array[Symbol]
27
+ end
@@ -0,0 +1,12 @@
1
+ # Generated from lib/riffer/rig/commands/skill.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Commands::Skill
4
+ # @rbs skill: Riffer::Skills::Frontmatter
5
+ # @rbs return: Riffer::Rig::Command
6
+ def command: (Riffer::Skills::Frontmatter skill) -> Riffer::Rig::Command
7
+
8
+ # @rbs ctx: Riffer::Rig::Command::Context
9
+ # @rbs skill: Riffer::Skills::Frontmatter
10
+ # @rbs return: void
11
+ def run: (Riffer::Rig::Command::Context ctx, Riffer::Skills::Frontmatter skill) -> void
12
+ end
@@ -0,0 +1,4 @@
1
+ # Generated from lib/riffer/rig/commands.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Commands
4
+ end
@@ -6,13 +6,13 @@ module Riffer::Rig::Credentials
6
6
  ENTRY_TYPE: ::String
7
7
 
8
8
  # @rbs identifier: String | Symbol
9
- # @rbs host: Riffer::Rig::Hosts::Base
9
+ # @rbs host: Riffer::Rig::Hosts::_Host
10
10
  # @rbs setup: Riffer::Rig::ProviderSetup
11
11
  # @rbs env: Riffer::Rig::Env
12
12
  # @rbs auth_path: String
13
13
  # @rbs settings_path: String
14
14
  # @rbs return: Resolution
15
- def resolve: (String | Symbol identifier, host: Riffer::Rig::Hosts::Base, ?setup: Riffer::Rig::ProviderSetup, ?env: Riffer::Rig::Env, ?auth_path: String, ?settings_path: String) -> Resolution
15
+ def resolve: (String | Symbol identifier, host: Riffer::Rig::Hosts::_Host, ?setup: Riffer::Rig::ProviderSetup, ?env: Riffer::Rig::Env, ?auth_path: String, ?settings_path: String) -> Resolution
16
16
 
17
17
  # @rbs identifier: String | Symbol
18
18
  # @rbs values: Hash[Symbol, String]
@@ -45,9 +45,9 @@ module Riffer::Rig::Credentials
45
45
 
46
46
  # @rbs fields: Array[Riffer::Rig::ProviderSetup::Field]
47
47
  # @rbs identifier: String | Symbol
48
- # @rbs host: Riffer::Rig::Hosts::Base
48
+ # @rbs host: Riffer::Rig::Hosts::_Host
49
49
  # @rbs return: Hash[Symbol, String]
50
- def ask_for: (Array[Riffer::Rig::ProviderSetup::Field] fields, String | Symbol identifier, Riffer::Rig::Hosts::Base host) -> Hash[Symbol, String]
50
+ def ask_for: (Array[Riffer::Rig::ProviderSetup::Field] fields, String | Symbol identifier, Riffer::Rig::Hosts::_Host host) -> Hash[Symbol, String]
51
51
 
52
52
  # @rbs field: Riffer::Rig::ProviderSetup::Field
53
53
  # @rbs secrets: Hash[String, String]
@@ -0,0 +1,11 @@
1
+ # Generated from lib/riffer/rig/directories.rb with RBS::Inline
2
+
3
+ module Riffer::Rig::Directories
4
+ # @rbs dir: String
5
+ # @rbs return: Array[String]
6
+ def ancestors: (String dir) -> Array[String]
7
+
8
+ # @rbs cwd: String
9
+ # @rbs return: Array[String]
10
+ def up_to_repo_root: (String cwd) -> Array[String]
11
+ end
@@ -0,0 +1,10 @@
1
+ # Generated from lib/riffer/rig/env/invalid.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Env::Invalid
4
+ # @dynamic message
5
+ attr_reader message: String
6
+
7
+ # @rbs message: String
8
+ # @rbs return: void
9
+ def initialize: (String message) -> void
10
+ end
@@ -3,9 +3,15 @@
3
3
  class Riffer::Rig::Env
4
4
  @source: Hash[String, String]
5
5
 
6
- # @dynamic no_color
6
+ # @dynamic no_color, model
7
7
  attr_reader no_color: bool
8
8
 
9
+ attr_reader model: String?
10
+
11
+ # @rbs source: Hash[String, String]
12
+ # @rbs return: Riffer::Rig::Env | Riffer::Rig::Env::Invalid
13
+ def self.load: (?Hash[String, String] source) -> (Riffer::Rig::Env | Riffer::Rig::Env::Invalid)
14
+
9
15
  # @rbs source: Hash[String, String]
10
16
  # @rbs return: void
11
17
  def initialize: (?Hash[String, String] source) -> void
@@ -0,0 +1,18 @@
1
+ # Generated from lib/riffer/rig/events/after_response.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Events::AfterResponse
4
+ include Riffer::Rig::Support::Equatable
5
+
6
+ # @dynamic message
7
+ attr_reader message: ::Riffer::Messages::Assistant
8
+
9
+ # @rbs message: ::Riffer::Messages::Assistant
10
+ # @rbs return: void
11
+ def initialize: (::Riffer::Messages::Assistant message) -> void
12
+
13
+ # @rbs return: Symbol
14
+ def type: () -> Symbol
15
+
16
+ # @rbs return: Hash[Symbol, untyped]
17
+ def to_h: () -> Hash[Symbol, untyped]
18
+ end
@@ -0,0 +1,24 @@
1
+ # Generated from lib/riffer/rig/events/after_tool_call.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Events::AfterToolCall
4
+ include Riffer::Rig::Support::Equatable
5
+
6
+ # @dynamic tool, args, result
7
+ attr_reader tool: String
8
+
9
+ attr_reader args: Hash[Symbol, untyped]
10
+
11
+ attr_reader result: ::Riffer::Tools::Response
12
+
13
+ # @rbs tool: String
14
+ # @rbs args: Hash[Symbol, untyped]
15
+ # @rbs result: ::Riffer::Tools::Response
16
+ # @rbs return: void
17
+ def initialize: (String tool, Hash[Symbol, untyped] args, ::Riffer::Tools::Response result) -> void
18
+
19
+ # @rbs return: Symbol
20
+ def type: () -> Symbol
21
+
22
+ # @rbs return: Hash[Symbol, untyped]
23
+ def to_h: () -> Hash[Symbol, untyped]
24
+ end
@@ -0,0 +1,18 @@
1
+ # Generated from lib/riffer/rig/events/before_prompt.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Events::BeforePrompt
4
+ include Riffer::Rig::Support::Equatable
5
+
6
+ # @dynamic text
7
+ attr_reader text: String
8
+
9
+ # @rbs text: String
10
+ # @rbs return: void
11
+ def initialize: (String text) -> void
12
+
13
+ # @rbs return: Symbol
14
+ def type: () -> Symbol
15
+
16
+ # @rbs return: Hash[Symbol, untyped]
17
+ def to_h: () -> Hash[Symbol, untyped]
18
+ end
@@ -0,0 +1,18 @@
1
+ # Generated from lib/riffer/rig/events/before_request.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Events::BeforeRequest
4
+ include Riffer::Rig::Support::Equatable
5
+
6
+ # @dynamic messages
7
+ attr_reader messages: Array[::Riffer::Messages::Base]
8
+
9
+ # @rbs messages: Array[::Riffer::Messages::Base]
10
+ # @rbs return: void
11
+ def initialize: (Array[::Riffer::Messages::Base] messages) -> void
12
+
13
+ # @rbs return: Symbol
14
+ def type: () -> Symbol
15
+
16
+ # @rbs return: Hash[Symbol, untyped]
17
+ def to_h: () -> Hash[Symbol, untyped]
18
+ end
@@ -0,0 +1,21 @@
1
+ # Generated from lib/riffer/rig/events/before_tool_call.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Events::BeforeToolCall
4
+ include Riffer::Rig::Support::Equatable
5
+
6
+ # @dynamic tool, args
7
+ attr_reader tool: String
8
+
9
+ attr_reader args: Hash[Symbol, untyped]
10
+
11
+ # @rbs tool: String
12
+ # @rbs args: Hash[Symbol, untyped]
13
+ # @rbs return: void
14
+ def initialize: (String tool, Hash[Symbol, untyped] args) -> void
15
+
16
+ # @rbs return: Symbol
17
+ def type: () -> Symbol
18
+
19
+ # @rbs return: Hash[Symbol, untyped]
20
+ def to_h: () -> Hash[Symbol, untyped]
21
+ end
@@ -1,6 +1,8 @@
1
1
  # Generated from lib/riffer/rig/events/command_output.rb with RBS::Inline
2
2
 
3
- class Riffer::Rig::Events::CommandOutput < Riffer::Rig::Events::Event
3
+ class Riffer::Rig::Events::CommandOutput
4
+ include Riffer::Rig::Support::Equatable
5
+
4
6
  # @dynamic command, text
5
7
  attr_reader command: String
6
8
 
@@ -1,6 +1,8 @@
1
1
  # Generated from lib/riffer/rig/events/notify.rb with RBS::Inline
2
2
 
3
- class Riffer::Rig::Events::Notify < Riffer::Rig::Events::Event
3
+ class Riffer::Rig::Events::Notify
4
+ include Riffer::Rig::Support::Equatable
5
+
4
6
  # @dynamic message, level
5
7
  attr_reader message: String?
6
8
 
@@ -1,6 +1,8 @@
1
1
  # Generated from lib/riffer/rig/events/session_end.rb with RBS::Inline
2
2
 
3
- class Riffer::Rig::Events::SessionEnd < Riffer::Rig::Events::Event
3
+ class Riffer::Rig::Events::SessionEnd
4
+ include Riffer::Rig::Support::Equatable
5
+
4
6
  # @dynamic reason
5
7
  attr_reader reason: Symbol
6
8
 
@@ -1,6 +1,8 @@
1
1
  # Generated from lib/riffer/rig/events/session_start.rb with RBS::Inline
2
2
 
3
- class Riffer::Rig::Events::SessionStart < Riffer::Rig::Events::Event
3
+ class Riffer::Rig::Events::SessionStart
4
+ include Riffer::Rig::Support::Equatable
5
+
4
6
  # @dynamic id, reason
5
7
  attr_reader id: String
6
8
 
@@ -1,6 +1,8 @@
1
1
  # Generated from lib/riffer/rig/events/skill_activated.rb with RBS::Inline
2
2
 
3
- class Riffer::Rig::Events::SkillActivated < Riffer::Rig::Events::Event
3
+ class Riffer::Rig::Events::SkillActivated
4
+ include Riffer::Rig::Support::Equatable
5
+
4
6
  # @dynamic name
5
7
  attr_reader name: String
6
8
 
@@ -1,6 +1,8 @@
1
1
  # Generated from lib/riffer/rig/events/turn_end.rb with RBS::Inline
2
2
 
3
- class Riffer::Rig::Events::TurnEnd < Riffer::Rig::Events::Event
3
+ class Riffer::Rig::Events::TurnEnd
4
+ include Riffer::Rig::Support::Equatable
5
+
4
6
  # @dynamic stop_reason, usage
5
7
  attr_reader stop_reason: Symbol
6
8
 
@@ -0,0 +1,13 @@
1
+ # Generated from lib/riffer/rig/extension/failure.rb with RBS::Inline
2
+
3
+ class Riffer::Rig::Extension::Failure
4
+ # @dynamic extension, error
5
+ attr_reader extension: Riffer::Rig::Extension
6
+
7
+ attr_reader error: StandardError
8
+
9
+ # @rbs extension: Riffer::Rig::Extension
10
+ # @rbs error: StandardError
11
+ # @rbs return: void
12
+ def initialize: (extension: Riffer::Rig::Extension, error: StandardError) -> void
13
+ end
@@ -1,17 +1,24 @@
1
1
  # Generated from lib/riffer/rig/extension.rb with RBS::Inline
2
2
 
3
3
  class Riffer::Rig::Extension
4
+ class RequirementError < StandardError
5
+ end
6
+
4
7
  @name: String
5
8
 
6
9
  @requires: Gem::Requirement?
7
10
 
11
+ @mismatch: RequirementError?
12
+
8
13
  @block: ^(::Riffer::Rig::Registrar) -> void
9
14
 
10
- # @dynamic name, requires
15
+ # @dynamic name, requires, mismatch
11
16
  attr_reader name: String
12
17
 
13
18
  attr_reader requires: Gem::Requirement?
14
19
 
20
+ attr_reader mismatch: RequirementError?
21
+
15
22
  # @rbs name: String
16
23
  # @rbs requires: String?
17
24
  # @rbs &block: (::Riffer::Rig::Registrar) -> void
@@ -21,4 +28,10 @@ class Riffer::Rig::Extension
21
28
  # @rbs registrar: Riffer::Rig::Registrar
22
29
  # @rbs return: void
23
30
  def run: (Riffer::Rig::Registrar registrar) -> void
31
+
32
+ private
33
+
34
+ # @rbs requirement: Gem::Requirement?
35
+ # @rbs return: RequirementError?
36
+ def check: (Gem::Requirement? requirement) -> RequirementError?
24
37
  end
@@ -1,16 +1,16 @@
1
1
  # Generated from lib/riffer/rig/hosts/mirror.rb with RBS::Inline
2
2
 
3
- class Riffer::Rig::Hosts::Mirror < Riffer::Rig::Hosts::Base
4
- @host: Riffer::Rig::Hosts::Base
3
+ class Riffer::Rig::Hosts::Mirror
4
+ @host: Riffer::Rig::Hosts::_Host
5
5
 
6
- @queue: Array[Riffer::Rig::Events::Event]
6
+ @queue: Array[Riffer::Rig::Events::_Event]
7
7
 
8
8
  # @dynamic capabilities
9
9
  attr_reader capabilities: Set[Symbol]
10
10
 
11
- # @rbs host: Riffer::Rig::Hosts::Base
11
+ # @rbs host: Riffer::Rig::Hosts::_Host
12
12
  # @rbs return: void
13
- def initialize: (Riffer::Rig::Hosts::Base host) -> void
13
+ def initialize: (Riffer::Rig::Hosts::_Host host) -> void
14
14
 
15
15
  # @rbs question: String?
16
16
  # @rbs options: Array[String]?
@@ -32,10 +32,10 @@ class Riffer::Rig::Hosts::Mirror < Riffer::Rig::Hosts::Base
32
32
  # @rbs return: void
33
33
  def progress: (?String? label) ?{ () -> void } -> void
34
34
 
35
- # @rbs event: Riffer::Rig::Events::Event
35
+ # @rbs event: Riffer::Rig::Events::_Event
36
36
  # @rbs return: void
37
- def queue: (Riffer::Rig::Events::Event event) -> void
37
+ def queue: (Riffer::Rig::Events::_Event event) -> void
38
38
 
39
- # @rbs return: Array[Riffer::Rig::Events::Event]
40
- def drain: () -> Array[Riffer::Rig::Events::Event]
39
+ # @rbs return: Array[Riffer::Rig::Events::_Event]
40
+ def drain: () -> Array[Riffer::Rig::Events::_Event]
41
41
  end
@@ -1,6 +1,6 @@
1
1
  # Generated from lib/riffer/rig/hosts/null.rb with RBS::Inline
2
2
 
3
- class Riffer::Rig::Hosts::Null < Riffer::Rig::Hosts::Base
3
+ class Riffer::Rig::Hosts::Null
4
4
  # @rbs return: Set[Symbol]
5
5
  def capabilities: () -> Set[Symbol]
6
6