Commit 94bcc6c
Changed files (5)
lib/elelem/tools/fork.rb
@@ -2,8 +2,8 @@
module Elelem
module Tools
- def self.fork(agent, system_prompt:)
- Elelem::Agent.new(agent.provider, toolbox: agent.toolbox, output: agent.output, input: agent.input, system_prompt: system_prompt)
+ def self.fork(agent, template:)
+ Elelem::Agent.new(agent.provider, toolbox: agent.toolbox, output: agent.output, template: template)
end
end
end
lib/elelem/tools/init.rb
@@ -3,7 +3,7 @@
Elelem.configure do |config|
config.setup(:init) do |agent|
agent.commands.register("init", description: "Generate AGENTS.md") do
- system_prompt = <<~PROMPT
+ template = <<~PROMPT
AGENTS.md generator. Analyze codebase and write AGENTS.md to project root.
# AGENTS.md Spec (https://agents.md/)
@@ -25,7 +25,7 @@ Elelem.configure do |config|
Keep it minimal. No fluff.
PROMPT
- Elelem::Tools.fork(agent, system_prompt: system_prompt).turn("Generate AGENTS.md for this project")
+ Elelem::Tools.fork(agent, template: template).turn("Generate AGENTS.md for this project")
end
end
end
lib/elelem/tools/task.rb
@@ -6,7 +6,7 @@ Elelem.configure do |config|
description: "Delegate subtask to focused agent (complex searches, multi-file analysis)",
params: { prompt: { type: "string" } },
required: ["prompt"]) do |args|
- sub = Elelem::Tools.fork(agent, system_prompt: "Research agent. Search, analyze, report. Be concise.")
+ sub = Elelem::Tools.fork(agent, template: "Research agent. Search, analyze, report. Be concise.")
sub.turn(args["prompt"])
{ result: sub.conversation.last[:content] }
end
elelem-tools.gemspec
@@ -26,7 +26,7 @@ Gem::Specification.new do |spec|
end
spec.require_paths = ["lib"]
- spec.add_dependency "elelem", "~> 0.12"
+ spec.add_dependency "elelem", "~> 0.13"
spec.add_dependency "elelem-builtins", "~> 0.1"
spec.add_dependency "json", "~> 3.0"
spec.add_dependency "pathname", "~> 0.5"
Gemfile.lock
@@ -2,7 +2,7 @@ PATH
remote: .
specs:
elelem-tools (0.2.0)
- elelem (~> 0.12)
+ elelem (~> 0.13)
elelem-builtins (~> 0.1)
json (~> 3.0)
pathname (~> 0.5)
@@ -14,7 +14,7 @@ GEM
ast (2.4.3)
bigdecimal (4.1.2)
diff-lcs (1.6.2)
- elelem (0.12.0)
+ elelem (0.13.0)
erb (~> 6.0)
forwardable (~> 1.4)
io-console (~> 0.9)
@@ -133,7 +133,7 @@ CHECKSUMS
bigdecimal (4.1.2) sha256=53d217666027eab4280346fba98e7d5b66baaae1b9c3c1c0ffe89d48188a3fbd
bundler (4.0.20) sha256=7978a8ac648767f5e635bc522445b79e80a52b907a39a36c2d8085ed6bc762ae
diff-lcs (1.6.2) sha256=9ae0d2cba7d4df3075fe8cd8602a8604993efc0dfa934cff568969efb1909962
- elelem (0.12.0) sha256=dd779834b48a127fac27e01b56ee8add14979ca738aa348b5f2e28fcb6857581
+ elelem (0.13.0)
elelem-builtins (0.3.1) sha256=32d066baaa706896f5aa276d01b17aa38f4e822d0ca43636ed45e7cdc00f008c
elelem-tools (0.2.0)
erb (6.0.7) sha256=c5ca6dc25b0ef974a44dc8f59fe847577122483b1968a38dec305c60bf91ee92