Refactor pi plan mode
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
let
|
||||
cfg = config.dot.pi;
|
||||
piPath = "${config.dot.dotfilesPath}/modules/pi/agent";
|
||||
piWorkMode = config.dot.llm.pi.workMode or false;
|
||||
in
|
||||
{
|
||||
options.dot.pi = {
|
||||
@@ -12,14 +13,15 @@ in
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
# Out-of-store symlinks so the files stay editable without a nix rebuild.
|
||||
# Only the managed files are linked; pi's runtime files (auth.json,
|
||||
# sessions/, models-store.json) are left untouched in ~/.pi/agent.
|
||||
home.file = {
|
||||
".pi/agent/settings.json".source =
|
||||
config.lib.file.mkOutOfStoreSymlink "${piPath}/settings.json";
|
||||
config.lib.file.mkOutOfStoreSymlink
|
||||
"${piPath}/${if piWorkMode then "settings.work" else "settings.home"}.json";
|
||||
".pi/agent/extensions".source =
|
||||
config.lib.file.mkOutOfStoreSymlink "${piPath}/extensions";
|
||||
config.lib.file.mkOutOfStoreSymlink "${piPath}/extensions-common";
|
||||
} // lib.optionalAttrs piWorkMode {
|
||||
".pi/agent/extensions-work".source =
|
||||
config.lib.file.mkOutOfStoreSymlink "${piPath}/extensions-work";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user