diff options
| author | Craig Jennings <c@cjennings.net> | 2025-10-12 11:47:26 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2025-10-12 11:47:26 -0500 |
| commit | 0ac4c720098804310a38d33737f0a7b4072d0156 (patch) | |
| tree | e169826ed1e1346708aeb0b19b8af8ee286e6fa4 /gptel-tools/read_buffer.el | |
| download | dotemacs-0ac4c720098804310a38d33737f0a7b4072d0156.tar.gz dotemacs-0ac4c720098804310a38d33737f0a7b4072d0156.zip | |
changing repositories
Diffstat (limited to 'gptel-tools/read_buffer.el')
| -rw-r--r-- | gptel-tools/read_buffer.el | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/gptel-tools/read_buffer.el b/gptel-tools/read_buffer.el new file mode 100644 index 000000000..d01cee71b --- /dev/null +++ b/gptel-tools/read_buffer.el @@ -0,0 +1,27 @@ +;;; read_buffer.el --- Read buffer tool for GPTel -*- coding: utf-8; lexical-binding: t; -*- + +;;; Commentary: +;; + +;;; Code: + +(require 'gptel) + +(gptel-make-tool + :name "read_buffer" + :function (lambda (buffer) + (unless (buffer-live-p (get-buffer buffer)) + (error "Error: buffer %s is not live" buffer)) + (with-current-buffer buffer + (buffer-substring-no-properties (point-min) (point-max)))) + :description "return the contents of an emacs buffer" + :args (list '(:name "buffer" + :type string ; :type value must be a symbol + :description "the name of the buffer whose contents are to be retrieved")) + :category "emacs") + +;; Automatically add to gptel-tools on load +(add-to-list 'gptel-tools (gptel-get-tool '("emacs" "read_buffer"))) + +(provide 'read_buffer) +;;; read_buffer.el ends here. |
