@tommy-ca/lazypi 0.8.0 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +14 -5
- package/bin/lazypi.mjs +12 -18
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -54,11 +54,20 @@ There is nothing to "uninstall" for LazyPi itself — `npx` doesn't leave it aro
|
|
|
54
54
|
|
|
55
55
|
Run the built-in health check with `npx @tommy-ca/lazypi doctor`.
|
|
56
56
|
|
|
57
|
-
**Stale
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
57
|
+
**Stale cached run after a release?** Both runners cache resolved versions: `bunx`
|
|
58
|
+
serves from its package cache and `npx` reuses the extracted copy in
|
|
59
|
+
`~/.npm/_npx`, so a bare `npx @tommy-ca/lazypi` / `bunx @tommy-ca/lazypi` can
|
|
60
|
+
keep serving the previous release until the cache is cleared. Run
|
|
61
|
+
`bun pm cache rm` (and/or delete the stale `~/.npm/_npx` entry), pin
|
|
62
|
+
`@tommy-ca/lazypi@latest`, and check `npx @tommy-ca/lazypi --version` to see
|
|
63
|
+
which release is actually running.
|
|
64
|
+
|
|
65
|
+
**`lazypi: not found` when running npx inside the LazyPi repo?** npm exec
|
|
66
|
+
matches the spec against the local tree, and the checkout itself is
|
|
67
|
+
`@tommy-ca/lazypi@<version>` — so it skips the npx install and tries to run
|
|
68
|
+
`lazypi` from `./node_modules/.bin`, which never exists for the project's own
|
|
69
|
+
name. Run npx from any other directory (e.g. `~`); bunx and pinned-version
|
|
70
|
+
specs behave the same way, so `cd` out of the checkout first.
|
|
62
71
|
|
|
63
72
|
## Site / docs
|
|
64
73
|
|
package/bin/lazypi.mjs
CHANGED
|
@@ -26,26 +26,25 @@ import {
|
|
|
26
26
|
const CATEGORIES = ["core"];
|
|
27
27
|
|
|
28
28
|
export const PACKAGES = [
|
|
29
|
-
{ id: "subagents", category: "core", source: "npm:pi-subagents",
|
|
30
|
-
{ id: "pi-ask-user", category: "core", source: "npm:pi-ask-user",
|
|
31
|
-
{ id: "pi-skillful", category: "core", source: "npm:pi-skillful",
|
|
32
|
-
{ id: "mention-skill", category: "core", source: "npm:@zigai/pi-mention-skill",
|
|
33
|
-
{ id: "goal", category: "core", source: "npm:@narumitw/pi-goal",
|
|
29
|
+
{ id: "subagents", category: "core", source: "npm:pi-subagents", description: "Sub-agent execution", hint: "Run isolated sub-agents for parallel work." },
|
|
30
|
+
{ id: "pi-ask-user", category: "core", source: "npm:pi-ask-user", description: "Ask-user prompts", hint: "Interactive user questions for agent workflows." },
|
|
31
|
+
{ id: "pi-skillful", category: "core", source: "npm:pi-skillful", description: "Skill visibility", hint: "Discover skills above the git root, hide unused skills, and expand /skill:name inline." },
|
|
32
|
+
{ id: "mention-skill", category: "core", source: "npm:@zigai/pi-mention-skill", description: "$ skill mention", hint: "Fuzzy-search skills with $ and expand them into the prompt; hidden skills stay reachable." },
|
|
33
|
+
{ id: "goal", category: "core", source: "npm:@narumitw/pi-goal", description: "Long-objective gate", hint: "Stop on done, blocked, or external wait for long tasks." },
|
|
34
34
|
{
|
|
35
35
|
id: "btw",
|
|
36
36
|
category: "core",
|
|
37
37
|
source: "npm:@narumitw/pi-btw",
|
|
38
38
|
legacySources: ["npm:pi-btw"],
|
|
39
|
-
essential: true,
|
|
40
39
|
description: "Side-chat popover",
|
|
41
40
|
hint: "Ask quick questions without polluting your conversation history.",
|
|
42
41
|
},
|
|
43
|
-
{ id: "context-usage", category: "core", source: "npm:pi-context-usage",
|
|
44
|
-
{ id: "simplify", category: "core", source: "npm:pi-simplify",
|
|
45
|
-
{ id: "web-access", category: "core", source: "npm:pi-web-access",
|
|
46
|
-
{ id: "fff", category: "core", source: "npm:@ff-labs/pi-fff",
|
|
47
|
-
{ id: "dynamic-workflows", category: "core", source: "npm:@quintinshaw/pi-dynamic-workflows",
|
|
48
|
-
{ id: "ponytail", category: "core", source: "npm:@dietrichgebert/ponytail",
|
|
42
|
+
{ id: "context-usage", category: "core", source: "npm:pi-context-usage", description: "Context budget", hint: "See what is burning the context window before it fills." },
|
|
43
|
+
{ id: "simplify", category: "core", source: "npm:pi-simplify", description: "Code simplify review", hint: "Reviews recently changed code for clarity, consistency, and maintainability." },
|
|
44
|
+
{ id: "web-access", category: "core", source: "npm:pi-web-access", description: "Web search and page fetch", hint: "Built-in web search and URL fetching." },
|
|
45
|
+
{ id: "fff", category: "core", source: "npm:@ff-labs/pi-fff", description: "FFF fuzzy search", hint: "Additive fffind / ffgrep / fff-multi-grep beside the built-in tools; /fff-health checks the index." },
|
|
46
|
+
{ id: "dynamic-workflows", category: "core", source: "npm:@quintinshaw/pi-dynamic-workflows", description: "Workflow engine", hint: "Fan work out across subagents: /workflows TUI, deep-research, resume, token accounting." },
|
|
47
|
+
{ id: "ponytail", category: "core", source: "npm:@dietrichgebert/ponytail", description: "Lazy senior dev mode", hint: "Enforces minimal, stdlib-first code; /ponytail review, audit, and a debt ledger." },
|
|
49
48
|
];
|
|
50
49
|
|
|
51
50
|
// ---------------------------------------------------------------------------
|
|
@@ -315,11 +314,6 @@ function readInstalledSources(local) {
|
|
|
315
314
|
return { sources, path: current.path, exists: true };
|
|
316
315
|
}
|
|
317
316
|
|
|
318
|
-
function runPi(args) {
|
|
319
|
-
const result = spawnCommand("pi", args, { stdio: "inherit" });
|
|
320
|
-
return result.status ?? 1;
|
|
321
|
-
}
|
|
322
|
-
|
|
323
317
|
function commandPath(name) {
|
|
324
318
|
const command = platform() === "win32" ? "where" : "which";
|
|
325
319
|
const probe = spawnCommand(command, [name], { encoding: "utf8" });
|
|
@@ -751,7 +745,7 @@ async function cmdUpdate(flags) {
|
|
|
751
745
|
|
|
752
746
|
console.log(bold("pi update"));
|
|
753
747
|
|
|
754
|
-
return
|
|
748
|
+
return spawnCommand("pi", flags.local ? ["update", "--extensions"] : ["update"], { stdio: "inherit" }).status ?? 1;
|
|
755
749
|
}
|
|
756
750
|
|
|
757
751
|
// ---------------------------------------------------------------------------
|