Skip to main content
Create agents tailored to your project’s specific improvement goals.

Interactive Setup

jfl peter agent create
Walks you through: name, metric, eval script, scope files, time budget.

Manual Setup

  1. Write an eval script in eval/:
#!/usr/bin/env bash
CLI_DIR="${AGENT_WORKTREE:-$HOME/your-project}"
# ... measure your metric ...
echo '{"my_metric": 0.42}'
  1. Create agent config in .jfl/agents/my-agent.toml:
[agent]
name = "my-agent"
scope = "quality"
metric = "my_metric"
direction = "maximize"
time_budget_seconds = 300
description = "What this agent should do to improve my_metric"

[eval]
script = "eval/my-eval.sh"
data = "eval/fixtures/my-agent-baseline.jsonl"

[constraints]
scope_files = ["src/**/*.ts"]
max_file_changes = 3
  1. Test the eval manually:
bash eval/my-eval.sh
# {"my_metric": 0.42}
  1. Run the agent:
jfl peter agent my-agent --rounds 1

Tips

  • Start with one metric — focused agents beat general-purpose ones
  • Verify gradient — run the eval, confirm the metric isn’t at ceiling
  • Narrow scope — fewer scope_files = more focused changes
  • Short rounds — 3-5 minutes per round is ideal for iteration speed