pi-agent-toolkit 0.5.0 → 0.5.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.
Files changed (2) hide show
  1. package/dist/index.js +24 -4
  2. package/package.json +1 -1
package/dist/index.js CHANGED
@@ -1173,7 +1173,20 @@ function runStatus() {
1173
1173
  const entries = [];
1174
1174
  for (const component of registry) {
1175
1175
  const isInstalled = installedNames.has(component.name);
1176
+ const path = expectedPath(component);
1176
1177
  if (!isInstalled) {
1178
+ if (path) {
1179
+ const check2 = checkFile(path);
1180
+ if (check2.exists) {
1181
+ entries.push({
1182
+ name: component.name,
1183
+ category: component.category,
1184
+ status: "untracked",
1185
+ detail: check2.detail
1186
+ });
1187
+ continue;
1188
+ }
1189
+ }
1177
1190
  entries.push({
1178
1191
  name: component.name,
1179
1192
  category: component.category,
@@ -1181,7 +1194,6 @@ function runStatus() {
1181
1194
  });
1182
1195
  continue;
1183
1196
  }
1184
- const path = expectedPath(component);
1185
1197
  if (!path) {
1186
1198
  entries.push({
1187
1199
  name: component.name,
@@ -1212,17 +1224,25 @@ function runStatus() {
1212
1224
  for (const cat of categories) {
1213
1225
  const catEntries = entries.filter((e) => e.category === cat.key);
1214
1226
  if (catEntries.length === 0) continue;
1215
- const installed = catEntries.filter((e) => e.status !== "not-installed");
1227
+ const tracked = catEntries.filter((e) => e.status === "ok" || e.status === "missing");
1228
+ const untracked = catEntries.filter((e) => e.status === "untracked");
1216
1229
  const available = catEntries.filter((e) => e.status === "not-installed");
1230
+ const totalInstalled = tracked.length + untracked.length;
1217
1231
  console.log(
1218
- pc3.bold(pc3.cyan(cat.label)) + pc3.dim(` (${installed.length}/${catEntries.length} installed)`)
1232
+ pc3.bold(pc3.cyan(cat.label)) + pc3.dim(` (${totalInstalled}/${catEntries.length} installed)`)
1219
1233
  );
1220
- for (const entry of installed) {
1234
+ for (const entry of tracked) {
1221
1235
  const icon = entry.status === "ok" ? pc3.green("*") : pc3.red("!");
1222
1236
  const detail = entry.detail ? pc3.dim(` (${entry.detail})`) : "";
1223
1237
  const statusLabel = entry.status === "missing" ? pc3.red(" MISSING") : "";
1224
1238
  console.log(` ${icon} ${entry.name}${statusLabel}${detail}`);
1225
1239
  }
1240
+ for (const entry of untracked) {
1241
+ const detail = entry.detail ? pc3.dim(` (${entry.detail})`) : "";
1242
+ console.log(
1243
+ ` ${pc3.yellow("~")} ${entry.name}${detail} ${pc3.yellow("(not tracked by manifest)")}`
1244
+ );
1245
+ }
1226
1246
  if (available.length > 0) {
1227
1247
  console.log(
1228
1248
  pc3.dim(` ${available.length} more available: ${available.map((e) => e.name).join(", ")}`)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pi-agent-toolkit",
3
- "version": "0.5.0",
3
+ "version": "0.5.1",
4
4
  "description": "CLI to selectively install curated extensions, skills, and configs for the pi coding agent",
5
5
  "keywords": [
6
6
  "pi",