:type string
:description "The project's directory to change to before running the command. Defaults to '.'"
))
+ :include t
:category "rust") ; Group under rust tools
(gptel-make-tool
:type string
:description "The project's directory to change to before running the command. Defaults to '.'"
))
+ :include t
:category "rust") ; Group under rust tools
(gptel-make-tool
:type string
:description "The project's directory to change to before running the command. Defaults to '.'"
))
+ :include t
:category "rust") ; Group under rust tools
(gptel-make-tool
:description "The string to search for in the cargo registry"
)
)
+ :include t
:category "rust")
;; https://github.com/skissue/llm-tool-collection
:description "The URL to open"
)
)
+ :include t
:category "www")
(gptel-make-tool
:function (lambda ()
(pwd)
)
+ :include t
:category "filesystem"
:confirm nil
:description "Returns the current working directory."
(with-temp-buffer
(insert-file-contents (expand-file-name path))
(buffer-string)))
+ :include t
:category "filesystem"
:confirm nil
:description "Read the contents of a file and return its content as a string."
"\n")
(error "%s is not a directory" expanded-path)))
)
+ :include t
:category "filesystem"
:confirm nil
:description "List the contents of a specified directory."
:description "Content to write to the file"
)
)
+ :include t
:category "filesystem")
(gptel-make-tool
(with-current-buffer output-buffer (buffer-string))
)
)
- :description "Patch files in the working directory. A patch should only have one hunk; if multiple hunks are required, generate multiple patches. If the patch fails to apply, generate a new patch and try again. Remember that a patch should always end with a newline"
+ :description "Patch files in the working directory. A patch must end with a newline and only have one hunk. If multiple hunks are required, generate multiple patches. If the patch fails to apply, generate a different patch and try again."
:args (list '(:name "workingdirectory"
:type string
:description "The project's directory to change to before running the command. Defaults to '.'"
)
)
:confirm t
+ :include t
:category "filesystem")
(gptel-make-preset 'rustdev
:description "The string to search for in the email headers and body"
)
)
+ :include t
:category "mail")
(gptel-make-tool
:description "The base ledger file"
)
)
+ :include t
:category "ledger")
(gptel-make-preset 'ledger
(with-current-buffer output-buffer (buffer-string))
))
:description "Run the given query in the sample PostgreSQL database. It can be DML (select, update) or DDL (e.g. create table, alter index)"
- :confirm nil
+ :confirm t
:args (list '(:name "query"
:type string
:description "The query to run"
)
)
+ :include t
:category "database")
(gptel-make-tool
:name "db_get_schema"
:function (lambda ()
(let ((output-buffer (generate-new-buffer "*query-output*")))
- (call-process-region "" nil "pg_dump" nil output-buffer t "llm")
+ (call-process-region "" nil "pg_dump" nil output-buffer t "--schema-only" "llm")
;; (message "Get schema output: %s" (with-current-buffer output-buffer (buffer-string)))
(with-current-buffer output-buffer (buffer-string))
))
:description "Dump the schema of the sample PostgreSQL database"
:confirm nil
:args nil
+ :include t
:category "database")