Simon Willison
9e25055765
Turn incorrect tool names into errors, closes #1104
2025-05-27 09:29:05 -07:00
Simon Willison
2bc6d7679c
New default tool, llm_time, closes #1103
2025-05-26 23:00:18 -07:00
Simon Willison
d1c5c688e2
Error on llm -c with a Toolbox, closes #1101
...
Refs #1092
2025-05-26 21:51:16 -07:00
Simon Willison
e4ecb86421
Log tool_instances to database ( #1098 )
...
* Log tool_instances to database, closes #1089
* Tested for both sync and async models
2025-05-26 21:01:55 -07:00
Simon Willison
c9e8593095
Assert specific order again thanks to monotonic ULIDs, refs #1099
2025-05-26 20:03:22 -07:00
Simon Willison
1dc7a1d1f9
Monotonic ULIDs, refs #1099
2025-05-26 19:49:42 -07:00
Simon Willison
57459c0a6e
Fix the tests I broke in #1096
2025-05-26 19:02:14 -07:00
Simon Willison
9bbb37fae0
New default llm_version tool, closes #1096
...
Refs https://github.com/simonw/llm/issues/1095#issuecomment-2910574597
2025-05-26 13:30:47 -07:00
Simon Willison
e23e13e6c7
Test for async toolbox, docs for toolboxes in general
...
Closes #1090 , refs #997
2025-05-26 10:23:03 -07:00
Simon Willison
00f44a848a
Test that async def methods work on Toolbox
2025-05-26 10:08:31 -07:00
Simon Willison
7eb8acb767
llm.get_key() is now a documented utility, closes #1094
...
Refs #1093 , https://github.com/simonw/llm-tools-datasette/issues/2
2025-05-26 09:39:40 -07:00
Simon Willison
bb336d33a0
Toolbox class for class-based tool collections ( #1086 )
...
* Toolbox class for class-based tool collections
Refs #1059 , #1058 , #1057
2025-05-25 22:42:52 -07:00
Simon Willison
abc4f473f4
--td now pretty-prints JSON if possible, closes #1083
2025-05-25 12:59:48 -07:00
Simon Willison
7837335eea
Remove colon in Token usage header for consistency
...
More consistent with other headings in logs now.
2025-05-24 16:55:05 -07:00
André Arko
fc44fd6a0d
llm chat now respects default model options ( #985 )
2025-05-24 14:24:53 -07:00
Simon Willison
713ee9b032
Ignore order in test, refs #1073 , #1079
2025-05-24 13:18:09 -07:00
Simon Willison
3d25708acd
Instantiate from spec utility function, refs #1059
...
Code by o3, docstring by Claude Sonnet 4
2025-05-24 08:21:33 -07:00
Simon Willison
deafb7e76a
Removed unused fixture
2025-05-24 00:03:27 -07:00
Simon Willison
b6f4838b17
Test for fragments in chat, refs #1044 , #1048
2025-05-23 23:48:48 -07:00
Dan Turkel
88d3e11c65
Support fragments in chat through -f, --sf, and !fragments ( #1048 )
...
* add vscode and uv artifacts to gitignore
* !fragment feature
* Update fragment command to accept multiple fragments
* Add support for multiple fragments in !fragment command, factor out fragment processing
* Add support for fragment/system fragment arguments in chat command
* update docs
---------
Co-authored-by: Simon Willison <swillison@gmail.com>
2025-05-23 23:31:16 -07:00
Simon Willison
4281fd5101
Fixed test for #1073
2025-05-23 23:26:33 -07:00
Dan Turkel
1d5d73481a
Filter IDs with --prefix in llm similar ( #1052 )
2025-05-23 22:54:55 -07:00
Simon Willison
70092f2e78
llm logs --tools flag, closes #1072
2025-05-23 21:58:24 -07:00
Simon Willison
8a1fc5a90e
llm logs --tool/-T option, closes #1013
2025-05-23 21:46:10 -07:00
Simon Willison
36477cf9e5
llm chat -c and llm -c carry forward tools, closes #1020
2025-05-23 21:10:51 -07:00
Simon Willison
3cbc37a470
Log tool plugin to database
...
Refs https://github.com/simonw/llm/issues/1020#issuecomment-2905968166
2025-05-23 15:59:43 -07:00
Simon Willison
d2886d4692
Record which plugin a tool came from, including in DB - refs #1020
2025-05-23 15:44:12 -07:00
Simon Willison
f6fefb3816
llm schemas list --json/--nl options, closes #1070
2025-05-23 15:17:32 -07:00
Simon Willison
3e3492898c
Conversations using tools in Python API
...
Refs #1033
2025-05-21 23:05:16 -07:00
Simon Willison
5f44f89de2
Ident + tests for tool logging, closes #1042
2025-05-21 22:04:12 -07:00
Simon Willison
e90705ebf1
Respect name= for register_tools, closes #1032
2025-05-21 21:53:22 -07:00
Simon Willison
3cb875fa3d
Async tool support ( #1063 )
...
* Sync models can now call async tools, refs #987
* Test for async tool functions in sync context, refs #987
* Test for asyncio tools, plus test that they run in parallel
* Docs for async tool usage
2025-05-21 21:42:19 -07:00
Simon Willison
0ee1ba3a65
Ditch SimpleEcho entirely for Echo, closes #1061
2025-05-20 22:02:04 -07:00
Simon Willison
bd2180df7d
llm chat --tool and --functions ( #1062 )
...
* Tool support for llm chat, closes #1004
2025-05-20 21:30:27 -07:00
Simon Willison
e48a5b9f11
Rename "echo" to "simple-echo", refs #1061
2025-05-20 20:55:54 -07:00
Simon Willison
4be2bbdc0e
Ensure test does not fail due to random sort order of plugins
2025-05-20 20:53:35 -07:00
Simon Willison
f879b816e4
llm plugins --hook X option, closes #1047
2025-05-18 14:50:34 -04:00
Simon Willison
88b806ae1a
Got multi-tool OpenAI chat working, in no-stream mode too
...
Refs #1017 , #1019
2025-05-13 17:19:30 -07:00
Simon Willison
a880c123bd
--tools is now --functions, can be path, can be multiple
...
Closes #1016
2025-05-13 17:19:30 -07:00
Simon Willison
a50de8b57a
ChainResponse.log_to_db() method and test, refs #1017 , #1003
2025-05-13 17:19:30 -07:00
Simon Willison
5162cabbe1
First test for tools, plus vcr+syrupy, refs #1017
2025-05-13 17:19:30 -07:00
Simon Willison
7efe51fcb4
Rename --python-tools to --tools, closes #1008
2025-05-13 17:19:30 -07:00
Simon Willison
4abd6e0faf
Made a start on tools.md docs, refs #997
...
Also documented register_tools() plugin hook, refs #991
2025-05-13 17:19:30 -07:00
Simon Willison
0f114be5f0
--python-tools option on prompt and tools, closes #995
2025-05-13 17:19:30 -07:00
Simon Willison
8d5fc87028
llm tools and llm tools --json, closes #994
2025-05-13 17:19:30 -07:00
Simon Willison
290c0f13f3
register_tools() hook, get_tools() utility
...
Refs #991
2025-05-13 17:19:30 -07:00
Sukhbinder Singh
8c7d33ee52
Fixes --continue bug and adds --database argument to llm chat
...
* Fix database bug in continue conversation and adds --database to llm chat
* Move the --database to proper place and update help.
Closes #933
2025-05-04 15:57:13 -07:00
Simon Willison
e02863c1ca
Fragment plugins can now optionally return attachments ( #974 )
...
Closes #972
2025-05-04 14:50:27 -07:00
Simon Willison
768a1789a2
llm fragments list should order fragments by date
...
Closes #973
2025-05-04 12:46:27 -07:00
Benedikt Willi
7dcfa31143
Add '!edit' command to modify prompts in chat sessions using default editor ( #969 )
...
* Add '!edit' command to modify prompts in chat sessions
2025-05-04 10:19:48 -07:00