main
 1# frozen_string_literal: true
 2
 3require_relative "lib/elelem/version"
 4
 5Gem::Specification.new do |spec|
 6  spec.name = "elelem"
 7  spec.version = Elelem::VERSION
 8  spec.authors = ["mo khan"]
 9  spec.email = ["mo@mokhan.ca"]
10
11  spec.summary = "A minimal coding agent for LLMs."
12  spec.description = "A minimal coding agent supporting Ollama, Anthropic, OpenAI, and VertexAI."
13  spec.homepage = "https://src.mokhan.ca/xlgmokha/elelem"
14  spec.license = "MIT"
15  spec.required_ruby_version = ">= 3.4.0"
16  spec.required_rubygems_version = ">= 3.3.11"
17  spec.metadata["allowed_push_host"] = "https://rubygems.org"
18  spec.metadata["homepage_uri"] = spec.homepage
19  spec.metadata["source_code_uri"] = "https://src.mokhan.ca/xlgmokha/elelem"
20  spec.metadata["changelog_uri"] = "https://src.mokhan.ca/xlgmokha/elelem/blob/main/CHANGELOG.md.html"
21
22  spec.files = [
23    "CHANGELOG.md",
24    "LICENSE.txt",
25    "README.md",
26    "Rakefile",
27    "exe/elelem",
28    "lib/elelem.rb",
29    "lib/elelem/agent.rb",
30    "lib/elelem/application.rb",
31    "lib/elelem/conversation.rb",
32    "lib/elelem/system_prompt.erb",
33    "lib/elelem/tool.rb",
34    "lib/elelem/toolbox.rb",
35    "lib/elelem/version.rb",
36  ]
37  spec.bindir = "exe"
38  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
39  spec.require_paths = ["lib"]
40
41  spec.add_dependency "cli-ui", "~> 2.0"
42  spec.add_dependency "erb", "~> 6.0"
43  spec.add_dependency "fileutils", "~> 1.0"
44  spec.add_dependency "json", "~> 2.0"
45  spec.add_dependency "json-schema", "~> 6.0"
46  spec.add_dependency "logger", "~> 1.0"
47  spec.add_dependency "net-llm", "~> 0.5", ">= 0.5.0"
48  spec.add_dependency "open3", "~> 0.1"
49  spec.add_dependency "pathname", "~> 0.1"
50  spec.add_dependency "reline", "~> 0.6"
51  spec.add_dependency "set", "~> 1.0"
52  spec.add_dependency "thor", "~> 1.0"
53  spec.add_dependency "timeout", "~> 0.1"
54end