antigravity-sdk 0.1.9 โ 0.2.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.
- checksums.yaml +4 -4
- data/lib/antigravity/agent.rb +2 -8
- data/lib/antigravity/emojis.rb +36 -0
- data/lib/antigravity/message.rb +2 -8
- data/lib/antigravity/sidecar.rb +2 -8
- data/lib/antigravity/skill.rb +2 -8
- data/lib/antigravity/tool.rb +3 -11
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: fbeafe860899a22961b7c19a418337cb456594d683708d49b06b293711429c57
|
|
4
|
+
data.tar.gz: 7e0caad86e9aa6dd49e2f541ddb041ee9fc0518a21575bfe634b43cb3e879e94
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 624c1c92b64d248113fd1ef0bd02367c84097666a873b0cecda4063107719406533861faa4cd9baf401afe91ae91e7f2fe185d811027adc7521a09e4e51fa1ae
|
|
7
|
+
data.tar.gz: def792e62ad5f0c2b0c7198022453c5d28ccdf7b9c70668ce79207b81589e778310cd0779a58d13301902663b6c0b59e2db15ef57fcb99cc92105b41c505dbb8
|
data/lib/antigravity/agent.rb
CHANGED
|
@@ -2,17 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
module Antigravity
|
|
4
4
|
class Agent
|
|
5
|
+
include Emojifiable
|
|
6
|
+
|
|
5
7
|
attr_accessor :model, :system_instruction, :api_key
|
|
6
8
|
attr_reader :tools, :skills, :hooks, :sidecars, :client, :logger_guard
|
|
7
9
|
|
|
8
|
-
def self.emoji
|
|
9
|
-
Antigravity.emoji(:gem)
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
def emoji
|
|
13
|
-
self.class.emoji
|
|
14
|
-
end
|
|
15
|
-
|
|
16
10
|
def initialize(model: nil, auto_logger: true, &block)
|
|
17
11
|
@model = model || Antigravity.config.default_model
|
|
18
12
|
@api_key = Antigravity.config.api_key
|
data/lib/antigravity/emojis.rb
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
module Antigravity
|
|
4
4
|
EMOJIS = {
|
|
5
5
|
gem: "๐",
|
|
6
|
+
agent: "๐",
|
|
6
7
|
prompt: "๐ฌ",
|
|
7
8
|
response: "๐ค",
|
|
8
9
|
thinking: "๐ค",
|
|
@@ -12,6 +13,7 @@ module Antigravity
|
|
|
12
13
|
sidecar: "๐",
|
|
13
14
|
logger: "๐ชต",
|
|
14
15
|
skill: "๐",
|
|
16
|
+
guard: "๐ก๏ธ",
|
|
15
17
|
test: "๐งช",
|
|
16
18
|
success: "โ
"
|
|
17
19
|
}.freeze
|
|
@@ -20,5 +22,39 @@ module Antigravity
|
|
|
20
22
|
def emoji(key)
|
|
21
23
|
EMOJIS[key.to_sym] || "๐"
|
|
22
24
|
end
|
|
25
|
+
|
|
26
|
+
def emoji_for(target)
|
|
27
|
+
key = case target
|
|
28
|
+
when Message, Chunk
|
|
29
|
+
target.respond_to?(:role) && target.role == :user ? :prompt : :response
|
|
30
|
+
when Symbol, String
|
|
31
|
+
target
|
|
32
|
+
else
|
|
33
|
+
klass = target.is_a?(Class) || target.is_a?(Module) ? target : target.class
|
|
34
|
+
matched_part = klass.name&.split("::")&.reverse&.find do |part|
|
|
35
|
+
%w[Agent Tool Sidecar Skill Message Guard Logger].include?(part)
|
|
36
|
+
end
|
|
37
|
+
matched_part ? matched_part.downcase.to_sym : :gem
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
emoji(key)
|
|
41
|
+
end
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
# Mixin providing polymorphic .emoji class and instance methods
|
|
45
|
+
module Emojifiable
|
|
46
|
+
def emoji
|
|
47
|
+
Antigravity.emoji_for(self)
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
module ClassMethods
|
|
51
|
+
def emoji
|
|
52
|
+
Antigravity.emoji_for(self)
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def self.included(base)
|
|
57
|
+
base.extend(ClassMethods)
|
|
58
|
+
end
|
|
23
59
|
end
|
|
24
60
|
end
|
data/lib/antigravity/message.rb
CHANGED
|
@@ -2,15 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
module Antigravity
|
|
4
4
|
class Message
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
def self.emoji
|
|
8
|
-
Antigravity.emoji(:response)
|
|
9
|
-
end
|
|
5
|
+
include Emojifiable
|
|
10
6
|
|
|
11
|
-
|
|
12
|
-
role == :user ? Antigravity.emoji(:prompt) : Antigravity.emoji(:response)
|
|
13
|
-
end
|
|
7
|
+
attr_accessor :role, :content, :thinking, :tool_calls, :model_id, :tokens
|
|
14
8
|
|
|
15
9
|
def initialize(role: :assistant, content: "", thinking: "", tool_calls: [], model_id: nil)
|
|
16
10
|
@role = role
|
data/lib/antigravity/sidecar.rb
CHANGED
|
@@ -8,15 +8,9 @@ module Antigravity
|
|
|
8
8
|
module Sidecar
|
|
9
9
|
# Base class for non-blocking agent sidecars
|
|
10
10
|
class Base
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
def self.emoji
|
|
14
|
-
Antigravity.emoji(:sidecar)
|
|
15
|
-
end
|
|
11
|
+
include Emojifiable
|
|
16
12
|
|
|
17
|
-
|
|
18
|
-
self.class.emoji
|
|
19
|
-
end
|
|
13
|
+
attr_reader :name, :queue, :worker_thread
|
|
20
14
|
|
|
21
15
|
def initialize(name = "SidecarWorker")
|
|
22
16
|
@name = name
|
data/lib/antigravity/skill.rb
CHANGED
|
@@ -4,15 +4,9 @@ require "yaml"
|
|
|
4
4
|
|
|
5
5
|
module Antigravity
|
|
6
6
|
class Skill
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
def self.emoji
|
|
10
|
-
Antigravity.emoji(:skill)
|
|
11
|
-
end
|
|
7
|
+
include Emojifiable
|
|
12
8
|
|
|
13
|
-
|
|
14
|
-
self.class.emoji
|
|
15
|
-
end
|
|
9
|
+
attr_reader :name, :description, :instructions, :path
|
|
16
10
|
|
|
17
11
|
def initialize(path)
|
|
18
12
|
@path = File.expand_path(path)
|
data/lib/antigravity/tool.rb
CHANGED
|
@@ -2,20 +2,16 @@
|
|
|
2
2
|
|
|
3
3
|
module Antigravity
|
|
4
4
|
class Tool
|
|
5
|
+
include Emojifiable
|
|
6
|
+
|
|
5
7
|
class << self
|
|
6
8
|
def inherited(subclass)
|
|
7
9
|
subclass.extend(ClassMethods)
|
|
8
10
|
end
|
|
9
|
-
|
|
10
|
-
def emoji
|
|
11
|
-
Antigravity.emoji(:tool)
|
|
12
|
-
end
|
|
13
11
|
end
|
|
14
12
|
|
|
15
13
|
module ClassMethods
|
|
16
|
-
|
|
17
|
-
Antigravity.emoji(:tool)
|
|
18
|
-
end
|
|
14
|
+
include Emojifiable::ClassMethods
|
|
19
15
|
|
|
20
16
|
def name(val = nil, desc: nil)
|
|
21
17
|
if val
|
|
@@ -69,10 +65,6 @@ module Antigravity
|
|
|
69
65
|
end
|
|
70
66
|
end
|
|
71
67
|
|
|
72
|
-
def emoji
|
|
73
|
-
self.class.emoji
|
|
74
|
-
end
|
|
75
|
-
|
|
76
68
|
def tool_name
|
|
77
69
|
self.class.name
|
|
78
70
|
end
|