Nodecode is an open-source Lisp agent whose only tool is eval, so it rewrites itself to add skills
Shown on HN Oct 26, the MIT-licensed agent runs as one SBCL process and its model's single tool evaluates Lisp in that running image, so anything you ask it to learn (say, a read-pdf function) runs at once, is saved as a git-committed file and reloads after a restart. Your terminal, a web tab, your phone and Discord, Telegram or Slack bots all attach to the same process, so a tool written in one shows up in all of them (docs).