@tpsdev-ai/flair 0.4.5 → 0.4.7

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/cli.js +12 -17
  2. package/package.json +5 -5
package/dist/cli.js CHANGED
@@ -1031,7 +1031,7 @@ program
1031
1031
  .action(async (opts) => {
1032
1032
  const platform = process.platform;
1033
1033
  const port = readPortFromConfig() ?? DEFAULT_PORT;
1034
- // Stop first
1034
+ // Stop first: remove launchd service on macOS, then kill by port on all platforms
1035
1035
  if (platform === "darwin") {
1036
1036
  const label = "ai.tpsdev.flair";
1037
1037
  const plistPath = join(homedir(), "Library", "LaunchAgents", `${label}.plist`);
@@ -1045,27 +1045,22 @@ program
1045
1045
  unlinkSync(plistPath);
1046
1046
  console.log("✅ Launchd service removed");
1047
1047
  }
1048
- else {
1049
- console.log("No launchd service found — skipping");
1050
- }
1051
1048
  }
1052
- else {
1053
- // Linux: kill by port
1054
- try {
1055
- const { execSync } = await import("node:child_process");
1056
- const lsof = execSync(`lsof -ti :${port}`, { encoding: "utf-8" }).trim();
1057
- if (lsof) {
1058
- for (const pid of lsof.split("\n")) {
1059
- try {
1060
- process.kill(Number(pid.trim()), "SIGTERM");
1061
- }
1062
- catch { }
1049
+ // Kill any process still on the port (covers direct-start, no-service, or failed unload)
1050
+ try {
1051
+ const { execSync } = await import("node:child_process");
1052
+ const lsof = execSync(`lsof -ti :${port}`, { encoding: "utf-8" }).trim();
1053
+ if (lsof) {
1054
+ for (const pid of lsof.split("\n")) {
1055
+ try {
1056
+ process.kill(Number(pid.trim()), "SIGTERM");
1063
1057
  }
1058
+ catch { }
1064
1059
  }
1060
+ console.log("✅ Flair process stopped");
1065
1061
  }
1066
- catch { /* not running */ }
1067
- console.log("✅ Flair process stopped");
1068
1062
  }
1063
+ catch { /* not running */ }
1069
1064
  // Remove config
1070
1065
  const cfgPath = configPath();
1071
1066
  if (existsSync(cfgPath)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tpsdev-ai/flair",
3
- "version": "0.4.5",
3
+ "version": "0.4.7",
4
4
  "description": "Identity, memory, and soul for AI agents. Cryptographic identity (Ed25519), semantic memory with local embeddings, and persistent personality — all in a single process.",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -48,14 +48,14 @@
48
48
  "node": ">=22"
49
49
  },
50
50
  "dependencies": {
51
- "@harperfast/harper": "5.0.0-beta.7",
51
+ "@harperfast/harper": "5.0.0-beta.8",
52
52
  "commander": "14.0.3",
53
- "harper-fabric-embeddings": "^0.2.2",
53
+ "harper-fabric-embeddings": "0.2.2",
54
54
  "tweetnacl": "1.0.3"
55
55
  },
56
56
  "devDependencies": {
57
57
  "@types/node": "24.11.0",
58
- "bun-types": "^1.3.10",
58
+ "bun-types": "1.3.11",
59
59
  "typescript": "5.9.3"
60
60
  },
61
61
  "trustedDependencies": [
@@ -66,6 +66,6 @@
66
66
  "plugins/*"
67
67
  ],
68
68
  "optionalDependencies": {
69
- "@node-llama-cpp/mac-arm64-metal": "^3.17.1"
69
+ "@node-llama-cpp/mac-arm64-metal": "3.18.1"
70
70
  }
71
71
  }