Compare commits
421
Commits
v0.4.0
..
f2a7a05fc0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f2a7a05fc0 | ||
|
|
ea851242c5 | ||
|
|
539134c6bb | ||
|
|
161ba88037 | ||
|
|
9e1768cfd6 | ||
|
|
04ff3d963b | ||
|
|
5ce635565d | ||
|
|
54e426bdf9 | ||
|
|
7ca94f7d1b | ||
|
|
652c75292e | ||
|
|
a2274b00da | ||
|
|
0311d5e07d | ||
|
|
0f968cb752 | ||
|
|
b876853f23 | ||
|
|
754d973fd6 | ||
|
|
8b061b200f | ||
|
|
60e867689a | ||
|
|
bbcab3bbc3 | ||
|
|
61e7e7b421 | ||
|
|
d4e527ccfe | ||
|
|
ce572f8764 | ||
|
|
c8dde13d01 | ||
|
|
eace8f9115 | ||
|
|
d46b9fec32 | ||
|
|
fd0e4e6d0e | ||
|
|
28262cd860 | ||
|
|
f66bcfbf7a | ||
|
|
76549a9911 | ||
|
|
a3bfa2fbe9 | ||
|
|
76ee1ec7f1 | ||
|
|
f32608169d | ||
|
|
1f4f4dfb75 | ||
|
|
ad7f71df56 | ||
|
|
de2a8dcf89 | ||
|
|
82a060b277 | ||
|
|
b5cd58ad6c | ||
|
|
7c1f387a03 | ||
|
|
ad650116f3 | ||
|
|
9c22b41a13 | ||
|
|
aa8c526bc8 | ||
|
|
5bc6d75b1c | ||
|
|
9fb52852ef | ||
|
|
dce7d7f869 | ||
|
|
240281c4fa | ||
|
|
d3f154d117 | ||
|
|
876c5556c5 | ||
|
|
f14c006d28 | ||
|
|
fce08140bf | ||
|
|
87ab900481 | ||
|
|
a615559d9c | ||
|
|
adfab18f47 | ||
|
|
57c0f87e3d | ||
|
|
0b821444d1 | ||
|
|
c486685489 | ||
|
|
d47371f5a0 | ||
|
|
3ef20fc2fe | ||
|
|
cd896ea795 | ||
|
|
eb4234f8f8 | ||
|
|
5847e59c78 | ||
|
|
f0304fdaee | ||
|
|
149b10754d | ||
|
|
70cde455ab | ||
|
|
5f044cab2b | ||
|
|
e36af11e98 | ||
|
|
cc8b48c355 | ||
|
|
23dc624163 | ||
|
|
68f20fd6bd | ||
|
|
8bb55ffd75 | ||
|
|
a423181451 | ||
|
|
a30a090112 | ||
|
|
dfd1334dec | ||
|
|
c3ebceb76d | ||
|
|
41b2638bdd | ||
|
|
79c8f3ddd5 | ||
|
|
47db8e4781 | ||
|
|
275d67c4f4 | ||
|
|
3e5216d82d | ||
|
|
3601ded960 | ||
|
|
b308c39d6d | ||
|
|
ca52629a24 | ||
|
|
5a4bf2eb95 | ||
|
|
c9b3e85a1f | ||
|
|
34cb54c47c | ||
|
|
1e801f42a8 | ||
|
|
80858fdb7b | ||
|
|
03690bc605 | ||
|
|
62201cc931 | ||
|
|
3e3f09d29b | ||
|
|
fa203722b2 | ||
|
|
c48118265a | ||
|
|
fd9b40726b | ||
|
|
b200bf10a4 | ||
|
|
ca03f6f9d7 | ||
|
|
34967f0d97 | ||
|
|
a4365928d7 | ||
|
|
d442dff423 | ||
|
|
9bb35c82a8 | ||
|
|
ee16ada962 | ||
|
|
2a58d8398a | ||
|
|
a4fe1ee956 | ||
|
|
f74808c796 | ||
|
|
98983be609 | ||
|
|
1bb281b2a0 | ||
|
|
6c5f696f99 | ||
|
|
344bb51c9e | ||
|
|
371329ec9a | ||
|
|
6dfb9f0601 | ||
|
|
c64494043f | ||
|
|
30d2ade7a9 | ||
|
|
6c2c6f9908 | ||
|
|
dc86aaa835 | ||
|
|
ddabba2dde | ||
|
|
0bb3da091b | ||
|
|
a2b283783a | ||
|
|
1dc68ca875 | ||
|
|
227969f3cf | ||
|
|
b32bcf8fbc | ||
|
|
07bd03625b | ||
|
|
c85adfd00e | ||
|
|
5b1ddf1848 | ||
|
|
473ec251e0 | ||
|
|
402c5a1ec7 | ||
|
|
4f5ead8545 | ||
|
|
36cced560a | ||
|
|
0d6efbf1f3 | ||
|
|
bbfb489a67 | ||
|
|
0f7548685c | ||
|
|
fab266f7b9 | ||
|
|
48bb2fce87 | ||
|
|
ad2ab6ed49 | ||
|
|
bb2cad0526 | ||
|
|
0db5f634a4 | ||
|
|
dbda5abdab | ||
|
|
3a040ae3bb | ||
|
|
deb25f639f | ||
|
|
10c38fa612 | ||
|
|
3a734e27dc | ||
|
|
41200a71f6 | ||
|
|
b19655087e | ||
|
|
c13cb18d93 | ||
|
|
0925acf86a | ||
|
|
f8cbb1549e | ||
|
|
a46f6da0d8 | ||
|
|
7c9fb8eb71 | ||
|
|
223e7ca4c5 | ||
|
|
0fdb1bbc42 | ||
|
|
16cdf47101 | ||
|
|
6555ecfafc | ||
|
|
a586ca40e2 | ||
|
|
435667fac8 | ||
|
|
fd3385bad8 | ||
|
|
16adae7bc3 | ||
|
|
639f6e2a1a | ||
|
|
cc4d2f6256 | ||
|
|
d8d757b060 | ||
|
|
32a9861369 | ||
|
|
922fa05b06 | ||
|
|
4cc6bccf87 | ||
|
|
de3012e664 | ||
|
|
3daac0b1cf | ||
|
|
4260088ed1 | ||
|
|
cb24c7ac91 | ||
|
|
5fcba4c5ab | ||
|
|
024dd5ff59 | ||
|
|
0e931a472e | ||
|
|
3ff6e3cca9 | ||
|
|
2e30b19479 | ||
|
|
208ed838e6 | ||
|
|
8380ae5d7a | ||
|
|
97b902441e | ||
|
|
15df5be307 | ||
|
|
658f8f32dd | ||
|
|
f3ee71d3f2 | ||
|
|
719b482be9 | ||
|
|
f7b589ac2b | ||
|
|
cea08d804e | ||
|
|
53cc3a27fe | ||
|
|
0f3cf511e0 | ||
|
|
f8b965d801 | ||
|
|
2cb68846b6 | ||
|
|
1e18c7a7e2 | ||
|
|
caeed16d36 | ||
|
|
7ab36dce90 | ||
|
|
f8a72f819e | ||
|
|
306a880257 | ||
|
|
59cca849a8 | ||
|
|
42a1665960 | ||
|
|
687a4ea3bc | ||
|
|
77c1c2aa6f | ||
|
|
3d0bbd59d1 | ||
|
|
39f1511fea | ||
|
|
b5b3dc5ba8 | ||
|
|
ad8be61a3b | ||
|
|
4f4db10c8d | ||
|
|
a430d59e9c | ||
|
|
5f1734d69a | ||
|
|
a34adc5adf | ||
|
|
96c1d47d7f | ||
|
|
7701a02b16 | ||
|
|
ece9cadad5 | ||
|
|
738f39917d | ||
|
|
b95649177d | ||
|
|
6f977307e6 | ||
|
|
9a715b2fb2 | ||
|
|
930861d49b | ||
|
|
31987c9f94 | ||
|
|
fe7401c935 | ||
|
|
543e62fe7d | ||
|
|
0ec8cd4d00 | ||
|
|
a469a6cf06 | ||
|
|
0e67e0f85a | ||
|
|
bf862d8021 | ||
|
|
c070d151fa | ||
|
|
3147ad59f3 | ||
|
|
f9d2adf33a | ||
|
|
eaa224aeb9 | ||
|
|
81a81d035e | ||
|
|
5c5d70e4d0 | ||
|
|
ad563d4263 | ||
|
|
016501ef4f | ||
|
|
0b36d17ea0 | ||
|
|
faf92f9fe8 | ||
|
|
2c7abace37 | ||
|
|
3a7128f3de | ||
|
|
0b8bae64d1 | ||
|
|
9c4543ceb5 | ||
|
|
0b7bb7a816 | ||
|
|
ee496e5792 | ||
|
|
05cb8548cf | ||
|
|
57d62087f5 | ||
|
|
a1f8250f58 | ||
|
|
194849eaab | ||
|
|
f8330523db | ||
|
|
2a7af1531d | ||
|
|
8f858a3d3c | ||
|
|
51211ab1a6 | ||
|
|
4dad7d6c78 | ||
|
|
1fa9886e7a | ||
|
|
2370525f38 | ||
|
|
3a131f19ee | ||
|
|
f59286e7a7 | ||
|
|
79b0d044a8 | ||
|
|
423921276d | ||
|
|
b0799e7fc6 | ||
|
|
1b4adec4c3 | ||
|
|
de0d8114b3 | ||
|
|
113db42ff5 | ||
|
|
3715725cbb | ||
|
|
f08d91936b | ||
|
|
76c2dde2aa | ||
|
|
e9a53afc88 | ||
|
|
2d4b576977 | ||
|
|
9d70569878 | ||
|
|
e08220f059 | ||
|
|
a9179a53cc | ||
|
|
d1c3adc565 | ||
|
|
10d49c86c4 | ||
|
|
562caeaa16 | ||
|
|
1ea5003c0c | ||
|
|
7175f86906 | ||
|
|
2541f574f6 | ||
|
|
b3c327914a | ||
|
|
4bc7661efa | ||
|
|
f075a6f0a3 | ||
|
|
c2e8e85b32 | ||
|
|
aff14c9b88 | ||
|
|
72e99734e6 | ||
|
|
1af148e767 | ||
|
|
da3c766cfa | ||
|
|
181acf61d2 | ||
|
|
ff472c61d9 | ||
|
|
83c13f32e8 | ||
|
|
108203f763 | ||
|
|
970705377a | ||
|
|
35018c1462 | ||
|
|
0f345a5042 | ||
|
|
68ec599793 | ||
|
|
a9d5f8a4d7 | ||
|
|
c9bc9952df | ||
|
|
80ae76b6ec | ||
|
|
57da3f43e8 | ||
|
|
365d4510a5 | ||
|
|
565b37c14a | ||
|
|
190c15d214 | ||
|
|
faf8fdb213 | ||
|
|
fdc38a0b18 | ||
|
|
c7d72ac22d | ||
|
|
c1a4d021a1 | ||
|
|
9cb4e4d1bc | ||
|
|
62ce4f34f8 | ||
|
|
b914e90da5 | ||
|
|
fdc312306d | ||
|
|
9852245469 | ||
|
|
2cb099e378 | ||
|
|
fba8e26f5b | ||
|
|
60dc712bdd | ||
|
|
ba6d8002e1 | ||
|
|
c9781d0062 | ||
|
|
48a9f84d6c | ||
|
|
b874be4b36 | ||
|
|
3d34d6e273 | ||
|
|
040ce15b55 | ||
|
|
411812875a | ||
|
|
06bacd47ad | ||
|
|
7056818808 | ||
|
|
67b4510d94 | ||
|
|
2e74619b03 | ||
|
|
727ff52ff7 | ||
|
|
33cb6aaf1f | ||
|
|
2dfab3d399 | ||
|
|
bcbd0e7be1 | ||
|
|
8ccc61e831 | ||
|
|
a1656da7a2 | ||
|
|
499d396802 | ||
|
|
bdfc9ca062 | ||
|
|
120368178d | ||
|
|
783dc76285 | ||
|
|
cf1f5d39a1 | ||
|
|
beb4c54ea5 | ||
|
|
9573c88efd | ||
|
|
7b339e35f8 | ||
|
|
ed3f4b23f8 | ||
|
|
8b2c23f598 | ||
|
|
5f227988bb | ||
|
|
82e2bcbce4 | ||
|
|
4277226ca1 | ||
|
|
21ccc7af86 | ||
|
|
f1a2570d41 | ||
|
|
e977864158 | ||
|
|
4b8085b142 | ||
|
|
832bc419dd | ||
|
|
0ceae6a98f | ||
|
|
922e4f4b1a | ||
|
|
7b68077f7a | ||
|
|
7f359af72c | ||
|
|
1330ff72ce | ||
|
|
288e1fa234 | ||
|
|
71f33cb87a | ||
|
|
afeb634b94 | ||
|
|
72ad69b401 | ||
|
|
c1ac4d9032 | ||
|
|
9f9ef10da9 | ||
|
|
a44e58547e | ||
|
|
7d5e5fce76 | ||
|
|
610bebaae1 | ||
|
|
aa1b7d57a4 | ||
|
|
2c8daca20c | ||
|
|
a13f771925 | ||
|
|
0b23f1174b | ||
|
|
f09a06365b | ||
|
|
e9071c8b82 | ||
|
|
5959cbd809 | ||
|
|
19597735b8 | ||
|
|
aa171c6e6d | ||
|
|
22939a53a9 | ||
|
|
f076373859 | ||
|
|
528c3ae657 | ||
|
|
e0e0f519fb | ||
|
|
8feb292738 | ||
|
|
17abfe9aa4 | ||
|
|
441e472328 | ||
|
|
89cf081749 | ||
|
|
872ac62e81 | ||
|
|
9de95ca21d | ||
|
|
3af07cabe8 | ||
|
|
5719ff2e79 | ||
|
|
84556cb706 | ||
|
|
0983868196 | ||
|
|
382926243c | ||
|
|
467afb6767 | ||
|
|
73356b4a76 | ||
|
|
34d4681b38 | ||
|
|
aa980b0a96 | ||
|
|
397db60782 | ||
|
|
57c5c35c37 | ||
|
|
7ab9fea439 | ||
|
|
4c0514d8e9 | ||
|
|
2fb9d2fa86 | ||
|
|
f57a134bc0 | ||
|
|
2ceb0808c8 | ||
|
|
c9b90e8411 | ||
|
|
8d03b2fc72 | ||
|
|
b172fe8fbf | ||
|
|
bdd3aaa0ab | ||
|
|
64cbac0dd9 | ||
|
|
50903c3d03 | ||
|
|
680b71e13d | ||
|
|
a410818015 | ||
|
|
6c5bc51a0a | ||
|
|
38d114808e | ||
|
|
bb37513ef5 | ||
|
|
85533f665e | ||
|
|
b790041d95 | ||
|
|
bb5419967f | ||
|
|
21b00c6333 | ||
|
|
4050997d7b | ||
|
|
7d7477f4ec | ||
|
|
7d81b45f92 | ||
|
|
83f3790d2f | ||
|
|
4ad20c380d | ||
|
|
a895da9e47 | ||
|
|
1bfd2b7370 | ||
|
|
6631ff53f2 | ||
|
|
6244e337b0 | ||
|
|
d199e9ebe6 | ||
|
|
ca5bfd6e8f | ||
|
|
c8984cf91a | ||
|
|
bf4422ed0d | ||
|
|
e41fbed9cc | ||
|
|
4e6e8a845f | ||
|
|
e24c056191 | ||
|
|
b56fe7d3cd | ||
|
|
f4c5d9f0d7 | ||
|
|
f9dc61e906 | ||
|
|
ed8dc34ff6 | ||
|
|
a2b57caff5 | ||
|
|
19a680442d | ||
|
|
394f1f92a0 | ||
|
|
044f34b029 | ||
|
|
a250fe98bb | ||
|
|
a7c770120a |
@@ -1,102 +1,3 @@
|
|||||||
## v0.4.0 (2026-05-23)
|
|
||||||
|
|
||||||
### Feat
|
|
||||||
|
|
||||||
- LLM node failures propgate up
|
|
||||||
- Added .install remote tab completions to the REPL
|
|
||||||
- feature complete install remote with category selection
|
|
||||||
- Support to interactively add secrets to Loki that are missing from MCP configs when merging
|
|
||||||
- Added MCP config merging support for remote asset installations
|
|
||||||
- install remote now writes files to disk
|
|
||||||
- Created basic install_remote functions
|
|
||||||
- Created a more comprehensive and immediately useful default config for first runs
|
|
||||||
- Created an example graph-based agent called deep-research
|
|
||||||
- Improved coder agent that is now a graph-based agent
|
|
||||||
- Removed indicatif spinners. The UX just won't stop clobbering for parallel graph nodes
|
|
||||||
- Added agent variables support for graph agents and improved script executor to use the same environment variables as normal agent tool calling for further flexibility
|
|
||||||
- Improved UX with colored spinners for parallel graph agents and no clobbering outputs for sub-agents
|
|
||||||
- created new graph-based deep-research agent
|
|
||||||
- improved UX for parallel graph execution
|
|
||||||
- added branch progress tracker for better visualization of parallel graph super-steps
|
|
||||||
- Removed the jira-helper agent and replaced it with the atlassian role
|
|
||||||
- created the RenderMode enum to suppress stdout streaming during parallel graph super-steps
|
|
||||||
- Full support for map node types
|
|
||||||
- implemented the frontier-based scheduling for the graph executor with simplified state management (gotta love .clone)
|
|
||||||
- validation support for parallel graph execution; restricted map nodes to only run for nodes without next targets and not supporting chained map nodes
|
|
||||||
- created the staging area for state merges per super-step and created the built-in reducers (and their application) for the state merge phase of a super step
|
|
||||||
- scaffolding work for fan-out nodes for parallel branch execution support and stubbed out Map node types
|
|
||||||
- Loki can now update itself via .update and --update commands
|
|
||||||
- added a .edit command for editing the MCP configuration file
|
|
||||||
- Created a new .install command to install bundled assets on-demand
|
|
||||||
- migrated llm node validation to graph loading time instead of graph runtime
|
|
||||||
- ripped out user input timeout scaffolding for approval and input node types; implementation can't be done cleanly
|
|
||||||
- added additional support for all RAG-configuration fields in RAG nodes
|
|
||||||
- initial support for RAG nodes in the graph execution system
|
|
||||||
- implemented structured logging for graph execution
|
|
||||||
- merged normal agent config and graph agent configs into one file (either/or)
|
|
||||||
- added structured-output extraction for llm and agent nodes
|
|
||||||
- created full llm node runtime implementation
|
|
||||||
- scaffolded together the initial llm node type and its executor
|
|
||||||
- wired together graph execution and agent graph dispatch
|
|
||||||
- implemented support for the graph executor
|
|
||||||
- created the approval node executor and the input node executor for user interaction
|
|
||||||
- Added initial support for native Loki agent nodes in the graph-based agent system
|
|
||||||
- Added direct script invocation support for graph-based agents
|
|
||||||
- Added graph validation
|
|
||||||
- Implemented state management for agent graphs
|
|
||||||
- initial agent graph scaffolding
|
|
||||||
- add auto-continue support to all contexts
|
|
||||||
- dynamic tab completions now show the sessions for a given agent instead of only listing global sessions
|
|
||||||
- legacy SSE support for MCP server configurations
|
|
||||||
- support http/sse transport types for MCP server configurations so it fully supports claude desktop-style MCP configs
|
|
||||||
- 99% complete migration to new state structs to get away from God-Config struct; i.e. AppConfig, AppState, and RequestContext
|
|
||||||
- Automatic runtime customization using shebangs
|
|
||||||
- Created a demo TypeScript tool and a get_current_weather function in TypeScript
|
|
||||||
- Updated the Python demo tool to show all possible parameter types and variations
|
|
||||||
- Added TypeScript tool support using the refactored common ScriptedLanguage trait
|
|
||||||
|
|
||||||
### Fix
|
|
||||||
|
|
||||||
- Generified the functions usage of script detection for an executable bit on unix systems
|
|
||||||
- merge required claude code system prompt into instructions
|
|
||||||
- updated argc argument passing in run-tool and run-agent scripts
|
|
||||||
- Added additional graph validation for parallel reads and writes with dependencies between nodes states
|
|
||||||
- bug in next_single method and improved outcome handling for LLM node execution
|
|
||||||
- inline RAG bug when globbing files by extension without subdirectory globbing
|
|
||||||
- update the estimate_token_length function to use the standard word count method
|
|
||||||
- removed unnecessary regenerate logic for sessions and use the same logic for all contexts; prevents a panic on empty message list
|
|
||||||
- error when users try to start a session on a graph agent
|
|
||||||
- added on_other field for approval nodes so users can specify an alternative free-text target when none of the options match what they want
|
|
||||||
- accidentally added back in full agent tools on LLM nodes
|
|
||||||
- Improve the coder agent's usage of tools
|
|
||||||
- make the agent__collect escalation-aware so it doesn't freeze on sub-agent escalations
|
|
||||||
- check for an existing session before starting up MCP servers when switching to a role
|
|
||||||
- do not switch to agent if a session is active.
|
|
||||||
- Do not append todo instructions when function calling is disabled
|
|
||||||
- a bug in the dynamic completions because the crate name is loki-ai but the binary is named loki
|
|
||||||
- bug found by copilot that would create a lock on the PollSender for sse-based MCP servers
|
|
||||||
- Accidental shadow of temp_file function for Windows function calling
|
|
||||||
- upgraded to newer rmcp version to get native-tls support
|
|
||||||
- RagCache was not being used for agent and sub-agent instantiation
|
|
||||||
- TypeScript function args were being passed as objects rather than direct parameters
|
|
||||||
- Added in forgotten wrapper scripts for TypeScript tools
|
|
||||||
- don't shadow variables in binary path handling for Windows
|
|
||||||
- Tool call improvements for Windows systems
|
|
||||||
|
|
||||||
### Refactor
|
|
||||||
|
|
||||||
- migrated llm nodes to use Roles to simplify instructions handling and to function like inline roles
|
|
||||||
- migrated the next_node and apply_state_updates logic for LLM nodes into the LlmExecutor
|
|
||||||
- fully complete state re-architecting
|
|
||||||
- Fully ripped out the god Config struct
|
|
||||||
- Deprecated old Config struct initialization logic
|
|
||||||
- migrate functions and MCP servers to AppConfig
|
|
||||||
- Migrate the vault/bare_init logic
|
|
||||||
- created a single install_builtins free function to remove from Config::init
|
|
||||||
- partial migration to init in AppConfig
|
|
||||||
- Extracted common Python parser logic into a common.rs module
|
|
||||||
- python tools now use tree-sitter queries instead of AST
|
|
||||||
|
|
||||||
## v0.3.0 (2026-04-02)
|
## v0.3.0 (2026-04-02)
|
||||||
|
|
||||||
### Feat
|
### Feat
|
||||||
|
|||||||
Generated
+1
-1
@@ -3317,7 +3317,7 @@ dependencies = [
|
|||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "loki-ai"
|
name = "loki-ai"
|
||||||
version = "0.4.0"
|
version = "0.3.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"ansi_colours",
|
"ansi_colours",
|
||||||
"anyhow",
|
"anyhow",
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
[package]
|
[package]
|
||||||
name = "loki-ai"
|
name = "loki-ai"
|
||||||
version = "0.4.0"
|
version = "0.3.0"
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
authors = ["Alex Clarke <alex.j.tusa@gmail.com>"]
|
authors = ["Alex Clarke <alex.j.tusa@gmail.com>"]
|
||||||
description = "An all-in-one, batteries included LLM CLI Tool"
|
description = "An all-in-one, batteries included LLM CLI Tool"
|
||||||
|
|||||||
@@ -11,7 +11,7 @@ Agents, and More.
|
|||||||
|
|
||||||
It is designed to include a number of useful agents, roles, macros, and more so users can get up and running with Loki
|
It is designed to include a number of useful agents, roles, macros, and more so users can get up and running with Loki
|
||||||
in as little time as possible. You can also install entire bundles of agents, roles, macros, tools, and MCP servers from
|
in as little time as possible. You can also install entire bundles of agents, roles, macros, tools, and MCP servers from
|
||||||
any git repository. See [Sharing Configurations](https://github.com/Dark-Alex-17/loki/wiki/Sharing-Configurations) for more information.
|
any git repository — see [Sharing Configurations](#sharing-configurations).
|
||||||
|
|
||||||

|

|
||||||
|
|
||||||
@@ -176,12 +176,11 @@ subscribers, Google Gemini), you can authenticate with your existing subscriptio
|
|||||||
# In your config.yaml
|
# In your config.yaml
|
||||||
clients:
|
clients:
|
||||||
- type: claude
|
- type: claude
|
||||||
name: my-claude-oauth
|
|
||||||
auth: oauth # Indicate you want to authenticate with OAuth instead of an API key
|
auth: oauth # Indicate you want to authenticate with OAuth instead of an API key
|
||||||
```
|
```
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
loki --authenticate my-claude-oauth
|
loki --authenticate claude
|
||||||
# Or via the REPL: .authenticate
|
# Or via the REPL: .authenticate
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|||||||
@@ -2969,7 +2969,6 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[serial]
|
#[serial]
|
||||||
fn rebuild_tool_scope_mcp_disabled_skips_servers() {
|
fn rebuild_tool_scope_mcp_disabled_skips_servers() {
|
||||||
let _guard = TestConfigDirGuard::new();
|
|
||||||
let app_state = app_state_with_mcp_config(false, &["github", "slack"]);
|
let app_state = app_state_with_mcp_config(false, &["github", "slack"]);
|
||||||
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
||||||
let app = ctx.app.config.clone();
|
let app = ctx.app.config.clone();
|
||||||
@@ -2983,7 +2982,6 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[serial]
|
#[serial]
|
||||||
fn rebuild_tool_scope_no_enabled_servers_yields_empty_runtime() {
|
fn rebuild_tool_scope_no_enabled_servers_yields_empty_runtime() {
|
||||||
let _guard = TestConfigDirGuard::new();
|
|
||||||
let app_state = app_state_with_mcp_config(true, &["github"]);
|
let app_state = app_state_with_mcp_config(true, &["github"]);
|
||||||
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
||||||
let app = ctx.app.config.clone();
|
let app = ctx.app.config.clone();
|
||||||
@@ -2997,7 +2995,6 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[serial]
|
#[serial]
|
||||||
fn rebuild_tool_scope_no_mcp_config_yields_empty_runtime() {
|
fn rebuild_tool_scope_no_mcp_config_yields_empty_runtime() {
|
||||||
let _guard = TestConfigDirGuard::new();
|
|
||||||
let app_state = app_state_with_mcp_config(true, &[]);
|
let app_state = app_state_with_mcp_config(true, &[]);
|
||||||
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
||||||
let app = ctx.app.config.clone();
|
let app = ctx.app.config.clone();
|
||||||
@@ -3011,7 +3008,6 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[serial]
|
#[serial]
|
||||||
fn rebuild_tool_scope_preserves_tool_tracker() {
|
fn rebuild_tool_scope_preserves_tool_tracker() {
|
||||||
let _guard = TestConfigDirGuard::new();
|
|
||||||
let app_state = app_state_with_mcp_config(false, &[]);
|
let app_state = app_state_with_mcp_config(false, &[]);
|
||||||
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
||||||
let dummy = ToolCall {
|
let dummy = ToolCall {
|
||||||
@@ -3039,7 +3035,6 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[serial]
|
#[serial]
|
||||||
fn rebuild_tool_scope_repl_mode_appends_user_interaction_functions() {
|
fn rebuild_tool_scope_repl_mode_appends_user_interaction_functions() {
|
||||||
let _guard = TestConfigDirGuard::new();
|
|
||||||
let app_state = app_state_with_mcp_config(false, &[]);
|
let app_state = app_state_with_mcp_config(false, &[]);
|
||||||
let mut ctx = RequestContext::new(app_state, WorkingMode::Repl);
|
let mut ctx = RequestContext::new(app_state, WorkingMode::Repl);
|
||||||
let app = ctx.app.config.clone();
|
let app = ctx.app.config.clone();
|
||||||
@@ -3063,7 +3058,6 @@ mod tests {
|
|||||||
#[test]
|
#[test]
|
||||||
#[serial]
|
#[serial]
|
||||||
fn rebuild_tool_scope_cmd_mode_no_user_interaction_functions() {
|
fn rebuild_tool_scope_cmd_mode_no_user_interaction_functions() {
|
||||||
let _guard = TestConfigDirGuard::new();
|
|
||||||
let app_state = app_state_with_mcp_config(false, &[]);
|
let app_state = app_state_with_mcp_config(false, &[]);
|
||||||
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
let mut ctx = RequestContext::new(app_state, WorkingMode::Cmd);
|
||||||
let app = ctx.app.config.clone();
|
let app = ctx.app.config.clone();
|
||||||
|
|||||||
Reference in New Issue
Block a user