Module: Antigravity

Defined in:
lib/antigravity.rb,
lib/antigravity/base.rb,
lib/antigravity/tool.rb,
lib/antigravity/agent.rb,
lib/antigravity/hooks.rb,
lib/antigravity/skill.rb,
lib/antigravity/client.rb,
lib/antigravity/config.rb,
lib/antigravity/emojis.rb,
lib/antigravity/errors.rb,
lib/antigravity/guards.rb,
lib/antigravity/harness.rb,
lib/antigravity/message.rb,
lib/antigravity/sidecar.rb,
lib/antigravity/version.rb,
lib/antigravity/protocol.rb,
lib/antigravity/tool_runner.rb,
lib/antigravity/conversation.rb,
lib/antigravity/skill_resolver.rb,
lib/antigravity/connection/binary_fetcher.rb,
lib/antigravity/connection/local_connection.rb,
lib/antigravity/connection/websocket_client.rb

Defined Under Namespace

Modules: Connection, Emojifiable, Guards, Sidecar Classes: Agent, Base, Chunk, Client, Config, ConfigError, ConnectionError, Conversation, Error, Harness, HarnessHandshakeError, HarnessNotFoundError, Hooks, Message, Protocol, ProtocolError, Skill, SkillResolver, Tool, ToolError, ToolNotFoundError, ToolRunner

Constant Summary collapse

EMOJIS =
{
  antigravity: "๐Ÿ›ฐ๏ธ",
  gem: "๐Ÿ’Ž",
  agent: "๐Ÿ•ต๏ธโ€โ™‚๏ธ",
  prompt: "๐Ÿ’ฌ",
  response: "๐Ÿค–",
  thinking: "๐Ÿค”",
  tool: "๐Ÿ› ๏ธ",
  tool_result: "๐Ÿ“ฆ",
  tool_blocked: "โŒ",
  sidecar: "๐Ÿš—",
  logger: "๐Ÿชต",
  skill: "๐Ÿ“",
  check: "โœ…",
  magnifying: "๐Ÿ”",
  workspace: "๐Ÿ“‚",
  message: "๐Ÿ’ฌ",
  guard: "๐Ÿ›ก๏ธ",
  test: "๐Ÿงช",
  success: "โœ…",
  unknown: "๐Ÿคท"
}.freeze
EMOJI_CLASS_MAP =

Name fragments we recognise in the class hierarchy

{
  "Agent" => :agent,
  "Tool" => :tool,
  "Sidecar" => :sidecar,
  "Runner" => :sidecar,
  "Skill" => :skill,
  "Message" => :message,
  "Chunk" => :message,
  "Guard" => :guard,
  "Logger" => :logger
}.freeze
VERSION =
File.read(File.expand_path("../../VERSION", __dir__)).strip rescue "0.1.0"

Class Method Summary collapse

Class Method Details

.configObject



37
38
39
# File 'lib/antigravity.rb', line 37

def config
  @config ||= Config.new
end

.configure {|config| ... } ⇒ Object

Yields:



33
34
35
# File 'lib/antigravity.rb', line 33

def configure
  yield(config)
end

.emoji(key) ⇒ Object



41
42
43
# File 'lib/antigravity/emojis.rb', line 41

def emoji(key)
  EMOJIS[key.to_sym] || EMOJIS[:unknown]
end

.emoji_for(target) ⇒ Object



45
46
47
48
# File 'lib/antigravity/emojis.rb', line 45

def emoji_for(target)
  key = resolve_emoji_key(target)
  emoji(key)
end