@edihasaj/recall 0.5.2

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 (63) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +409 -0
  3. package/dist/chunk-4CV4JOE5.js +27 -0
  4. package/dist/chunk-4CV4JOE5.js.map +1 -0
  5. package/dist/chunk-A5UIRZU6.js +469 -0
  6. package/dist/chunk-A5UIRZU6.js.map +1 -0
  7. package/dist/chunk-AYHFPCGY.js +964 -0
  8. package/dist/chunk-AYHFPCGY.js.map +1 -0
  9. package/dist/chunk-DNFKAHS6.js +204 -0
  10. package/dist/chunk-DNFKAHS6.js.map +1 -0
  11. package/dist/chunk-GC5XMBG4.js +551 -0
  12. package/dist/chunk-GC5XMBG4.js.map +1 -0
  13. package/dist/chunk-IILLSHLM.js +3021 -0
  14. package/dist/chunk-IILLSHLM.js.map +1 -0
  15. package/dist/chunk-LVQW6WHK.js +146 -0
  16. package/dist/chunk-LVQW6WHK.js.map +1 -0
  17. package/dist/chunk-LZ6PMQRX.js +955 -0
  18. package/dist/chunk-LZ6PMQRX.js.map +1 -0
  19. package/dist/chunk-PC43MBX5.js +2960 -0
  20. package/dist/chunk-PC43MBX5.js.map +1 -0
  21. package/dist/chunk-VEPXEHRZ.js +1763 -0
  22. package/dist/chunk-VEPXEHRZ.js.map +1 -0
  23. package/dist/cleanup-TVOX2S2S.js +28 -0
  24. package/dist/cleanup-TVOX2S2S.js.map +1 -0
  25. package/dist/cli.js +3425 -0
  26. package/dist/cli.js.map +1 -0
  27. package/dist/daemon.js +1298 -0
  28. package/dist/daemon.js.map +1 -0
  29. package/dist/dispatcher-UGMU6THT.js +15 -0
  30. package/dist/dispatcher-UGMU6THT.js.map +1 -0
  31. package/dist/keychain-5QG52ANO.js +22 -0
  32. package/dist/keychain-5QG52ANO.js.map +1 -0
  33. package/dist/mcp.js +21 -0
  34. package/dist/mcp.js.map +1 -0
  35. package/dist/quality-Z7LPMMBC.js +17 -0
  36. package/dist/quality-Z7LPMMBC.js.map +1 -0
  37. package/dist/sync-server.js +225 -0
  38. package/dist/sync-server.js.map +1 -0
  39. package/dist/tasks-UOLSPXJQ.js +61 -0
  40. package/dist/tasks-UOLSPXJQ.js.map +1 -0
  41. package/dist/usage-CY3V72YN.js +101 -0
  42. package/dist/usage-CY3V72YN.js.map +1 -0
  43. package/drizzle/0000_initial_create.sql +240 -0
  44. package/drizzle/0001_rich_liz_osborn.sql +21 -0
  45. package/drizzle/0002_unknown_spot.sql +18 -0
  46. package/drizzle/0003_red_wendigo.sql +19 -0
  47. package/drizzle/0004_early_carlie_cooper.sql +1 -0
  48. package/drizzle/0005_simple_emma_frost.sql +96 -0
  49. package/drizzle/0006_keen_mongoose.sql +2 -0
  50. package/drizzle/0007_flawless_maximus.sql +15 -0
  51. package/drizzle/meta/0000_snapshot.json +1630 -0
  52. package/drizzle/meta/0001_snapshot.json +1773 -0
  53. package/drizzle/meta/0002_snapshot.json +1891 -0
  54. package/drizzle/meta/0003_snapshot.json +2014 -0
  55. package/drizzle/meta/0004_snapshot.json +2022 -0
  56. package/drizzle/meta/0005_snapshot.json +2064 -0
  57. package/drizzle/meta/0006_snapshot.json +2078 -0
  58. package/drizzle/meta/0007_snapshot.json +2183 -0
  59. package/drizzle/meta/_journal.json +62 -0
  60. package/package.json +64 -0
  61. package/scripts/recall-claude +7 -0
  62. package/scripts/recall-codex +7 -0
  63. package/scripts/recall-session +71 -0
@@ -0,0 +1,62 @@
1
+ {
2
+ "version": "7",
3
+ "dialect": "sqlite",
4
+ "entries": [
5
+ {
6
+ "idx": 0,
7
+ "version": "6",
8
+ "when": 1776435812464,
9
+ "tag": "0000_initial_create",
10
+ "breakpoints": true
11
+ },
12
+ {
13
+ "idx": 1,
14
+ "version": "6",
15
+ "when": 1776866038225,
16
+ "tag": "0001_rich_liz_osborn",
17
+ "breakpoints": true
18
+ },
19
+ {
20
+ "idx": 2,
21
+ "version": "6",
22
+ "when": 1777411056856,
23
+ "tag": "0002_unknown_spot",
24
+ "breakpoints": true
25
+ },
26
+ {
27
+ "idx": 3,
28
+ "version": "6",
29
+ "when": 1777412971682,
30
+ "tag": "0003_red_wendigo",
31
+ "breakpoints": true
32
+ },
33
+ {
34
+ "idx": 4,
35
+ "version": "6",
36
+ "when": 1777414004114,
37
+ "tag": "0004_early_carlie_cooper",
38
+ "breakpoints": true
39
+ },
40
+ {
41
+ "idx": 5,
42
+ "version": "6",
43
+ "when": 1777670658264,
44
+ "tag": "0005_simple_emma_frost",
45
+ "breakpoints": true
46
+ },
47
+ {
48
+ "idx": 6,
49
+ "version": "6",
50
+ "when": 1777671089706,
51
+ "tag": "0006_keen_mongoose",
52
+ "breakpoints": true
53
+ },
54
+ {
55
+ "idx": 7,
56
+ "version": "6",
57
+ "when": 1777672300900,
58
+ "tag": "0007_flawless_maximus",
59
+ "breakpoints": true
60
+ }
61
+ ]
62
+ }
package/package.json ADDED
@@ -0,0 +1,64 @@
1
+ {
2
+ "name": "@edihasaj/recall",
3
+ "version": "0.5.2",
4
+ "description": "Cross-tool coding memory and instruction compiler",
5
+ "license": "MIT",
6
+ "homepage": "https://recallmemory.dev/",
7
+ "repository": {
8
+ "type": "git",
9
+ "url": "https://github.com/edihasaj/recall.git"
10
+ },
11
+ "bugs": {
12
+ "url": "https://github.com/edihasaj/recall/issues"
13
+ },
14
+ "type": "module",
15
+ "publishConfig": {
16
+ "access": "public"
17
+ },
18
+ "bin": {
19
+ "recall": "./dist/cli.js"
20
+ },
21
+ "files": [
22
+ "dist",
23
+ "drizzle",
24
+ "scripts/recall-claude",
25
+ "scripts/recall-codex",
26
+ "scripts/recall-session",
27
+ "README.md",
28
+ "LICENSE"
29
+ ],
30
+ "scripts": {
31
+ "build": "tsup && node -e \"const f='dist/cli.js';const c=require('fs').readFileSync(f,'utf8');if(!c.startsWith('#!'))require('fs').writeFileSync(f,'#!/usr/bin/env node\\n'+c);require('fs').chmodSync(f,0o755)\"",
32
+ "build:app": "bash scripts/build-app.sh",
33
+ "install:app": "bash scripts/install-app.sh",
34
+ "dev": "tsup --watch",
35
+ "docs:check": "node scripts/check-docs-site.mjs",
36
+ "docs:og": "npx -y playwright screenshot --viewport-size=1200,630 --wait-for-timeout 1800 file://$PWD/docs/og.html docs/og-image.png",
37
+ "homebrew:cask": "node scripts/render-homebrew-cask.mjs",
38
+ "db:generate": "drizzle-kit generate",
39
+ "db:push": "drizzle-kit migrate",
40
+ "typecheck": "tsc --noEmit",
41
+ "test": "vitest run",
42
+ "test:watch": "vitest"
43
+ },
44
+ "engines": {
45
+ "node": ">=22.0.0"
46
+ },
47
+ "dependencies": {
48
+ "@huggingface/transformers": "^4.1.0",
49
+ "@modelcontextprotocol/sdk": "^1.12.1",
50
+ "better-sqlite3": "^11.8.1",
51
+ "commander": "^13.1.0",
52
+ "drizzle-orm": "^0.45.2",
53
+ "sqlite-vec": "^0.1.9",
54
+ "zod": "^3.24.4"
55
+ },
56
+ "devDependencies": {
57
+ "@types/better-sqlite3": "^7.6.13",
58
+ "@types/node": "^22.15.3",
59
+ "drizzle-kit": "^0.31.1",
60
+ "tsup": "^8.4.0",
61
+ "typescript": "^5.8.3",
62
+ "vitest": "^3.1.2"
63
+ }
64
+ }
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
5
+ RECALL_TARGET_CMD="${RECALL_CLAUDE_BIN:-claude}" \
6
+ RECALL_CLIENT_NAME="claude" \
7
+ exec "${script_dir}/recall-session" "$@"
@@ -0,0 +1,7 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ script_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
5
+ RECALL_TARGET_CMD="${RECALL_CODEX_BIN:-codex}" \
6
+ RECALL_CLIENT_NAME="codex" \
7
+ exec "${script_dir}/recall-session" "$@"
@@ -0,0 +1,71 @@
1
+ #!/usr/bin/env bash
2
+ set -euo pipefail
3
+
4
+ daemon_url="${RECALL_DAEMON_URL:-http://localhost:7890}"
5
+ target_cmd="${RECALL_TARGET_CMD:-${1:-}}"
6
+
7
+ if [[ -z "$target_cmd" ]]; then
8
+ echo "usage: recall-session <command> [args...]" >&2
9
+ exit 1
10
+ fi
11
+
12
+ if [[ -z "${RECALL_TARGET_CMD:-}" ]]; then
13
+ shift
14
+ fi
15
+
16
+ client_name="${RECALL_CLIENT_NAME:-$target_cmd}"
17
+ session_id="${RECALL_SESSION_ID:-${client_name}-$(date +%Y%m%dT%H%M%S)-$$}"
18
+ repo_path="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"
19
+
20
+ json_start() {
21
+ SESSION_ID="$session_id" \
22
+ CLIENT_NAME="$client_name" \
23
+ REPO_PATH="$repo_path" \
24
+ ARGV_JSON="$argv_json" \
25
+ node <<'NODE'
26
+ process.stdout.write(JSON.stringify({
27
+ session_id: process.env.SESSION_ID,
28
+ client: process.env.CLIENT_NAME,
29
+ repo_path: process.env.REPO_PATH,
30
+ meta: {
31
+ argv: JSON.parse(process.env.ARGV_JSON || "[]"),
32
+ },
33
+ }));
34
+ NODE
35
+ }
36
+
37
+ json_end() {
38
+ SESSION_ID="$session_id" \
39
+ CLIENT_NAME="$client_name" \
40
+ REPO_PATH="$repo_path" \
41
+ EXIT_CODE="${1:-0}" \
42
+ node <<'NODE'
43
+ process.stdout.write(JSON.stringify({
44
+ session_id: process.env.SESSION_ID,
45
+ client: process.env.CLIENT_NAME,
46
+ repo_path: process.env.REPO_PATH,
47
+ payload: {
48
+ exit_code: Number(process.env.EXIT_CODE || "0"),
49
+ },
50
+ }));
51
+ NODE
52
+ }
53
+
54
+ post() {
55
+ local endpoint="$1"
56
+ local body="$2"
57
+ curl -fsS -X POST "${daemon_url}${endpoint}" \
58
+ -H 'Content-Type: application/json' \
59
+ -d "$body" >/dev/null 2>&1 || true
60
+ }
61
+
62
+ cleanup() {
63
+ local exit_code="${1:-$?}"
64
+ trap - EXIT
65
+ post "/session/end" "$(json_end "$exit_code")"
66
+ }
67
+
68
+ trap 'cleanup $?' EXIT
69
+ argv_json="$(node -e 'process.stdout.write(JSON.stringify(process.argv.slice(1)))' -- "$@")"
70
+ post "/session/start" "$(json_start)"
71
+ "$target_cmd" "$@"