@cachly-dev/mcp-server 0.10.65 → 0.10.67
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/dist/src/embeddings.js +10 -0
- package/dist/src/embeddings.js.map +1 -1
- package/dist/src/handlers/brain.js +2 -1
- package/dist/src/handlers/brain.js.map +1 -1
- package/dist/src/handlers/cache.js +4 -0
- package/dist/src/handlers/cache.js.map +1 -1
- package/dist/src/handlers/tco.js +1 -0
- package/dist/src/handlers/tco.js.map +1 -1
- package/dist/src/index.js +2 -2
- package/dist/src/index.js.map +1 -1
- package/package.json +7 -1
- package/server.json +2 -2
- package/.env.test.example +0 -23
- package/.github/ISSUE_TEMPLATE/bug_report.md +0 -50
- package/.github/ISSUE_TEMPLATE/config.yml +0 -8
- package/.github/ISSUE_TEMPLATE/feature_request.md +0 -25
- package/.github/workflows/eas-build-android.yml +0 -58
- package/.github/workflows/eas-update.yml +0 -55
- package/.github/workflows/publish.yml +0 -72
- package/BENCH.md +0 -113
- package/CHANGELOG.md +0 -653
- package/Dockerfile +0 -16
- package/LAUNCH_TEXTS.md +0 -182
- package/PROGRESS.md +0 -141
- package/STRATEGY.md +0 -228
- package/VISION_10X.md +0 -133
- package/apps/travel-chaos-organizer/.env.example +0 -49
- package/apps/travel-chaos-organizer/DEPLOY.md +0 -328
- package/apps/travel-chaos-organizer/Makefile +0 -57
- package/apps/travel-chaos-organizer/README.md +0 -159
- package/apps/travel-chaos-organizer/backend/.env.example +0 -10
- package/apps/travel-chaos-organizer/backend/Dockerfile +0 -25
- package/apps/travel-chaos-organizer/backend/alembic/env.py +0 -56
- package/apps/travel-chaos-organizer/backend/alembic/script.py.mako +0 -24
- package/apps/travel-chaos-organizer/backend/alembic/versions/.gitkeep +0 -0
- package/apps/travel-chaos-organizer/backend/alembic/versions/0001_stripe_customer_id.py +0 -24
- package/apps/travel-chaos-organizer/backend/alembic/versions/0002_telegram_chat_id.py +0 -24
- package/apps/travel-chaos-organizer/backend/alembic.ini +0 -39
- package/apps/travel-chaos-organizer/backend/app/__init__.py +0 -0
- package/apps/travel-chaos-organizer/backend/app/auth/__init__.py +0 -0
- package/apps/travel-chaos-organizer/backend/app/auth/keycloak.py +0 -81
- package/apps/travel-chaos-organizer/backend/app/config.py +0 -66
- package/apps/travel-chaos-organizer/backend/app/db/__init__.py +0 -0
- package/apps/travel-chaos-organizer/backend/app/db/database.py +0 -20
- package/apps/travel-chaos-organizer/backend/app/db/migrations/001_init.sql +0 -71
- package/apps/travel-chaos-organizer/backend/app/db/migrations/002_telemetry_freemium.sql +0 -31
- package/apps/travel-chaos-organizer/backend/app/db/migrations/003_telegram_chat_id.sql +0 -4
- package/apps/travel-chaos-organizer/backend/app/db/migrations/004_stripe_and_email.sql +0 -5
- package/apps/travel-chaos-organizer/backend/app/limiter.py +0 -4
- package/apps/travel-chaos-organizer/backend/app/logging_config.py +0 -25
- package/apps/travel-chaos-organizer/backend/app/main.py +0 -77
- package/apps/travel-chaos-organizer/backend/app/models/__init__.py +0 -0
- package/apps/travel-chaos-organizer/backend/app/models/schemas.py +0 -142
- package/apps/travel-chaos-organizer/backend/app/routers/__init__.py +0 -0
- package/apps/travel-chaos-organizer/backend/app/routers/admin.py +0 -237
- package/apps/travel-chaos-organizer/backend/app/routers/cache.py +0 -13
- package/apps/travel-chaos-organizer/backend/app/routers/events.py +0 -29
- package/apps/travel-chaos-organizer/backend/app/routers/export.py +0 -122
- package/apps/travel-chaos-organizer/backend/app/routers/inbox.py +0 -122
- package/apps/travel-chaos-organizer/backend/app/routers/items.py +0 -130
- package/apps/travel-chaos-organizer/backend/app/routers/mail.py +0 -108
- package/apps/travel-chaos-organizer/backend/app/routers/parse.py +0 -303
- package/apps/travel-chaos-organizer/backend/app/routers/payments.py +0 -179
- package/apps/travel-chaos-organizer/backend/app/routers/trips.py +0 -134
- package/apps/travel-chaos-organizer/backend/app/routers/users.py +0 -169
- package/apps/travel-chaos-organizer/backend/app/routers/waitlist.py +0 -37
- package/apps/travel-chaos-organizer/backend/app/services/__init__.py +0 -0
- package/apps/travel-chaos-organizer/backend/app/services/cache.py +0 -131
- package/apps/travel-chaos-organizer/backend/app/services/drip.py +0 -128
- package/apps/travel-chaos-organizer/backend/app/services/email.py +0 -61
- package/apps/travel-chaos-organizer/backend/app/services/errors.py +0 -44
- package/apps/travel-chaos-organizer/backend/app/services/notifier.py +0 -10
- package/apps/travel-chaos-organizer/backend/app/services/ollama.py +0 -101
- package/apps/travel-chaos-organizer/backend/app/services/parser.py +0 -22
- package/apps/travel-chaos-organizer/backend/app/services/quota.py +0 -85
- package/apps/travel-chaos-organizer/backend/app/services/sentry.py +0 -11
- package/apps/travel-chaos-organizer/backend/app/services/telemetry.py +0 -35
- package/apps/travel-chaos-organizer/backend/pytest.ini +0 -4
- package/apps/travel-chaos-organizer/backend/requirements-dev.txt +0 -6
- package/apps/travel-chaos-organizer/backend/requirements.txt +0 -25
- package/apps/travel-chaos-organizer/backend/tests/__init__.py +0 -0
- package/apps/travel-chaos-organizer/backend/tests/conftest.py +0 -223
- package/apps/travel-chaos-organizer/backend/tests/test_admin.py +0 -99
- package/apps/travel-chaos-organizer/backend/tests/test_cache.py +0 -142
- package/apps/travel-chaos-organizer/backend/tests/test_drip.py +0 -32
- package/apps/travel-chaos-organizer/backend/tests/test_e2e_chain.py +0 -121
- package/apps/travel-chaos-organizer/backend/tests/test_export.py +0 -48
- package/apps/travel-chaos-organizer/backend/tests/test_inbox.py +0 -107
- package/apps/travel-chaos-organizer/backend/tests/test_items.py +0 -138
- package/apps/travel-chaos-organizer/backend/tests/test_mail.py +0 -113
- package/apps/travel-chaos-organizer/backend/tests/test_ollama.py +0 -145
- package/apps/travel-chaos-organizer/backend/tests/test_parse_url.py +0 -98
- package/apps/travel-chaos-organizer/backend/tests/test_parser.py +0 -72
- package/apps/travel-chaos-organizer/backend/tests/test_payments.py +0 -163
- package/apps/travel-chaos-organizer/backend/tests/test_quota.py +0 -46
- package/apps/travel-chaos-organizer/backend/tests/test_search.py +0 -67
- package/apps/travel-chaos-organizer/backend/tests/test_trips.py +0 -123
- package/apps/travel-chaos-organizer/backend/tests/test_users.py +0 -52
- package/apps/travel-chaos-organizer/backups/.gitkeep +0 -0
- package/apps/travel-chaos-organizer/caddy/Caddyfile +0 -27
- package/apps/travel-chaos-organizer/docker-compose.node1.yml +0 -31
- package/apps/travel-chaos-organizer/docker-compose.override.yml +0 -14
- package/apps/travel-chaos-organizer/docker-compose.yml +0 -128
- package/apps/travel-chaos-organizer/frontend/.env.example +0 -13
- package/apps/travel-chaos-organizer/frontend/app/(app)/_layout.tsx +0 -80
- package/apps/travel-chaos-organizer/frontend/app/(app)/inbox.tsx +0 -166
- package/apps/travel-chaos-organizer/frontend/app/(app)/search.tsx +0 -130
- package/apps/travel-chaos-organizer/frontend/app/(app)/settings.tsx +0 -381
- package/apps/travel-chaos-organizer/frontend/app/(app)/trips/[id].tsx +0 -346
- package/apps/travel-chaos-organizer/frontend/app/(app)/trips.tsx +0 -363
- package/apps/travel-chaos-organizer/frontend/app/(app)/upgrade/cancel.tsx +0 -34
- package/apps/travel-chaos-organizer/frontend/app/(app)/upgrade/success.tsx +0 -35
- package/apps/travel-chaos-organizer/frontend/app/(auth)/login.tsx +0 -91
- package/apps/travel-chaos-organizer/frontend/app/_layout.tsx +0 -71
- package/apps/travel-chaos-organizer/frontend/app/auth.tsx +0 -29
- package/apps/travel-chaos-organizer/frontend/app/index.tsx +0 -16
- package/apps/travel-chaos-organizer/frontend/app/onboarding.tsx +0 -119
- package/apps/travel-chaos-organizer/frontend/app.config.ts +0 -54
- package/apps/travel-chaos-organizer/frontend/assets/adaptive-icon.svg +0 -66
- package/apps/travel-chaos-organizer/frontend/assets/icon.svg +0 -79
- package/apps/travel-chaos-organizer/frontend/assets/splash.svg +0 -15
- package/apps/travel-chaos-organizer/frontend/components/BottomSheet.tsx +0 -102
- package/apps/travel-chaos-organizer/frontend/components/ConfettiCannon.tsx +0 -107
- package/apps/travel-chaos-organizer/frontend/components/ConfirmDialog.tsx +0 -109
- package/apps/travel-chaos-organizer/frontend/components/ErrorBoundary.tsx +0 -45
- package/apps/travel-chaos-organizer/frontend/components/FileUploadButton.tsx +0 -19
- package/apps/travel-chaos-organizer/frontend/components/ImportSheet.tsx +0 -155
- package/apps/travel-chaos-organizer/frontend/components/OfflineBadge.tsx +0 -55
- package/apps/travel-chaos-organizer/frontend/components/QRCodeViewer.tsx +0 -80
- package/apps/travel-chaos-organizer/frontend/components/ScoreRing.tsx +0 -39
- package/apps/travel-chaos-organizer/frontend/components/Screen.tsx +0 -39
- package/apps/travel-chaos-organizer/frontend/components/Skeleton.tsx +0 -70
- package/apps/travel-chaos-organizer/frontend/components/SwipeableInboxItem.tsx +0 -121
- package/apps/travel-chaos-organizer/frontend/components/SwipeableTimelineItem.tsx +0 -70
- package/apps/travel-chaos-organizer/frontend/components/TimelineItem.tsx +0 -73
- package/apps/travel-chaos-organizer/frontend/components/TimelineItemDetail.tsx +0 -130
- package/apps/travel-chaos-organizer/frontend/components/Toast.tsx +0 -60
- package/apps/travel-chaos-organizer/frontend/components/ToastContext.tsx +0 -42
- package/apps/travel-chaos-organizer/frontend/components/TripCard.tsx +0 -146
- package/apps/travel-chaos-organizer/frontend/components/TripQRModal.tsx +0 -70
- package/apps/travel-chaos-organizer/frontend/components/UpgradeBanner.tsx +0 -44
- package/apps/travel-chaos-organizer/frontend/eas.json +0 -22
- package/apps/travel-chaos-organizer/frontend/hooks/useInbox.ts +0 -24
- package/apps/travel-chaos-organizer/frontend/hooks/useNetworkSync.ts +0 -60
- package/apps/travel-chaos-organizer/frontend/hooks/useTrips.ts +0 -112
- package/apps/travel-chaos-organizer/frontend/lib/api.ts +0 -223
- package/apps/travel-chaos-organizer/frontend/lib/auth.ts +0 -93
- package/apps/travel-chaos-organizer/frontend/lib/db.ts +0 -86
- package/apps/travel-chaos-organizer/frontend/lib/fileCache.ts +0 -54
- package/apps/travel-chaos-organizer/frontend/lib/haptics.ts +0 -13
- package/apps/travel-chaos-organizer/frontend/lib/notifications.ts +0 -112
- package/apps/travel-chaos-organizer/frontend/lib/offlineQueue.ts +0 -145
- package/apps/travel-chaos-organizer/frontend/lib/quota.tsx +0 -43
- package/apps/travel-chaos-organizer/frontend/lib/sentry.ts +0 -28
- package/apps/travel-chaos-organizer/frontend/lib/shareIntent.ts +0 -44
- package/apps/travel-chaos-organizer/frontend/package-lock.json +0 -13221
- package/apps/travel-chaos-organizer/frontend/package.json +0 -44
- package/apps/travel-chaos-organizer/frontend/tsconfig.json +0 -23
- package/apps/travel-chaos-organizer/keycloak/realm-export.json +0 -59
- package/apps/travel-chaos-organizer/landing/index.html +0 -773
- package/apps/travel-chaos-organizer/scripts/backup.sh +0 -14
- package/apps/travel-chaos-organizer/scripts/configure-env.sh +0 -82
- package/apps/travel-chaos-organizer/scripts/deploy.sh +0 -54
- package/apps/travel-chaos-organizer/scripts/health-check.sh +0 -36
- package/apps/travel-chaos-organizer/scripts/migrate.sh +0 -7
- package/apps/travel-chaos-organizer/scripts/server-setup.sh +0 -85
- package/apps/travel-chaos-organizer/scripts/smoke-test.sh +0 -29
- package/apps/travel-chaos-organizer/scripts/verify-tracking.sh +0 -71
- package/apps/travel-chaos-organizer/telegram-bot/.env.example +0 -3
- package/apps/travel-chaos-organizer/telegram-bot/Dockerfile +0 -6
- package/apps/travel-chaos-organizer/telegram-bot/bot.py +0 -504
- package/apps/travel-chaos-organizer/telegram-bot/requirements.txt +0 -3
- package/dist/src/__tests__/auth.test.d.ts +0 -1
- package/dist/src/__tests__/auth.test.js +0 -107
- package/dist/src/__tests__/auth.test.js.map +0 -1
- package/dist/src/__tests__/brain-flow.test.d.ts +0 -12
- package/dist/src/__tests__/brain-flow.test.js +0 -1241
- package/dist/src/__tests__/brain-flow.test.js.map +0 -1
- package/dist/src/__tests__/confidence.test.d.ts +0 -13
- package/dist/src/__tests__/confidence.test.js +0 -233
- package/dist/src/__tests__/confidence.test.js.map +0 -1
- package/dist/src/__tests__/e2e/api-auth.test.d.ts +0 -7
- package/dist/src/__tests__/e2e/api-auth.test.js +0 -162
- package/dist/src/__tests__/e2e/api-auth.test.js.map +0 -1
- package/dist/src/__tests__/e2e/api-health.test.d.ts +0 -7
- package/dist/src/__tests__/e2e/api-health.test.js +0 -95
- package/dist/src/__tests__/e2e/api-health.test.js.map +0 -1
- package/dist/src/__tests__/e2e/cli.test.d.ts +0 -10
- package/dist/src/__tests__/e2e/cli.test.js +0 -204
- package/dist/src/__tests__/e2e/cli.test.js.map +0 -1
- package/dist/src/__tests__/e2e/config.d.ts +0 -35
- package/dist/src/__tests__/e2e/config.js +0 -53
- package/dist/src/__tests__/e2e/config.js.map +0 -1
- package/dist/src/__tests__/e2e/funnel.test.d.ts +0 -13
- package/dist/src/__tests__/e2e/funnel.test.js +0 -90
- package/dist/src/__tests__/e2e/funnel.test.js.map +0 -1
- package/dist/src/__tests__/e2e/mcp-tools.test.d.ts +0 -7
- package/dist/src/__tests__/e2e/mcp-tools.test.js +0 -129
- package/dist/src/__tests__/e2e/mcp-tools.test.js.map +0 -1
- package/dist/src/__tests__/e2e/provisioning.test.d.ts +0 -15
- package/dist/src/__tests__/e2e/provisioning.test.js +0 -123
- package/dist/src/__tests__/e2e/provisioning.test.js.map +0 -1
- package/dist/src/__tests__/handlers-unit.test.d.ts +0 -12
- package/dist/src/__tests__/handlers-unit.test.js +0 -505
- package/dist/src/__tests__/handlers-unit.test.js.map +0 -1
- package/dist/src/__tests__/namespace.test.d.ts +0 -1
- package/dist/src/__tests__/namespace.test.js +0 -114
- package/dist/src/__tests__/namespace.test.js.map +0 -1
- package/dist/src/__tests__/rerank.test.d.ts +0 -1
- package/dist/src/__tests__/rerank.test.js +0 -125
- package/dist/src/__tests__/rerank.test.js.map +0 -1
- package/dist/src/__tests__/utils.test.d.ts +0 -1
- package/dist/src/__tests__/utils.test.js +0 -83
- package/dist/src/__tests__/utils.test.js.map +0 -1
- package/dist/src/bench/cachly-bench.d.ts +0 -39
- package/dist/src/bench/cachly-bench.js +0 -223
- package/dist/src/bench/cachly-bench.js.map +0 -1
- package/dist/src/bench/fixtures.d.ts +0 -37
- package/dist/src/bench/fixtures.js +0 -225
- package/dist/src/bench/fixtures.js.map +0 -1
- package/dist/src/search.test.d.ts +0 -1
- package/dist/src/search.test.js +0 -713
- package/dist/src/search.test.js.map +0 -1
- package/eslint.config.js +0 -16
- package/glama.json +0 -36
- package/llms.txt +0 -155
- package/packages/telegram-notify/SPLIT_PLAN.md +0 -106
- package/packages/telegram-notify/client.ts +0 -88
- package/packages/telegram-notify/emojis.json +0 -22
- package/packages/telegram-notify/pyproject.toml +0 -17
- package/packages/telegram-notify/telegram_notify/__init__.py +0 -3
- package/packages/telegram-notify/telegram_notify/client.py +0 -87
- package/packages/telegram-notify/telegram_notify/emojis.json +0 -22
- package/scripts/e2e-run.sh +0 -160
- package/scripts/generate-icons.js +0 -28
- package/smithery.yaml +0 -45
- package/src/__tests__/auth.test.ts +0 -147
- package/src/__tests__/brain-flow.test.ts +0 -1472
- package/src/__tests__/confidence.test.ts +0 -285
- package/src/__tests__/e2e/api-auth.test.ts +0 -182
- package/src/__tests__/e2e/api-health.test.ts +0 -103
- package/src/__tests__/e2e/cli.test.ts +0 -228
- package/src/__tests__/e2e/config.ts +0 -53
- package/src/__tests__/e2e/funnel.test.ts +0 -99
- package/src/__tests__/e2e/mcp-tools.test.ts +0 -191
- package/src/__tests__/e2e/provisioning.test.ts +0 -128
- package/src/__tests__/handlers-unit.test.ts +0 -677
- package/src/__tests__/namespace.test.ts +0 -126
- package/src/__tests__/rerank.test.ts +0 -141
- package/src/__tests__/utils.test.ts +0 -81
- package/src/auth.ts +0 -46
- package/src/bench/cachly-bench.ts +0 -263
- package/src/bench/fixtures.ts +0 -256
- package/src/ckg.ts +0 -103
- package/src/confidence.ts +0 -38
- package/src/embeddings.ts +0 -217
- package/src/handlers/advanced.ts +0 -647
- package/src/handlers/brain.ts +0 -2622
- package/src/handlers/cache.ts +0 -633
- package/src/handlers/context.ts +0 -222
- package/src/handlers/fedbrain.ts +0 -1232
- package/src/handlers/instances.ts +0 -180
- package/src/handlers/roadmap.ts +0 -201
- package/src/handlers/syndicate.ts +0 -460
- package/src/handlers/tco.ts +0 -345
- package/src/handlers/team.ts +0 -1249
- package/src/index.ts +0 -2815
- package/src/namespace.ts +0 -128
- package/src/notifier.ts +0 -5
- package/src/rerank.ts +0 -148
- package/src/search.test.ts +0 -848
- package/src/search.ts +0 -1781
- package/src/tools.ts +0 -2056
- package/src/utils.ts +0 -90
- package/test-features.cjs +0 -23
- package/tsconfig.json +0 -16
- package/vitest.config.ts +0 -14
package/LAUNCH_TEXTS.md
DELETED
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
# Launch Texts — cachly AI Brain
|
|
2
|
-
|
|
3
|
-
---
|
|
4
|
-
|
|
5
|
-
## Product Hunt
|
|
6
|
-
|
|
7
|
-
### Tagline (60 chars max)
|
|
8
|
-
Persistent memory + causal AI for Claude, Cursor & Copilot
|
|
9
|
-
|
|
10
|
-
### Description (260 chars)
|
|
11
|
-
Your AI forgets everything between sessions. cachly fixes that permanently. One command sets it up: detects your editors, writes all configs, bootstraps lessons from your git history. Free forever. No credentials required.
|
|
12
|
-
|
|
13
|
-
### Full Description
|
|
14
|
-
|
|
15
|
-
**The problem:** Every morning you re-explain your architecture to your AI. Every bug gets re-researched. Every fix gets re-discovered. The average developer wastes 45 minutes/day on this.
|
|
16
|
-
|
|
17
|
-
**The fix:** `npx @cachly-dev/mcp-server@latest setup`
|
|
18
|
-
|
|
19
|
-
One command. It signs you in (one browser click), detects every editor you have (Claude Code, Cursor, Windsurf, VS Code, Copilot, Cline, Zed), writes the correct config for each, bootstraps your Brain from your git history, and installs a git hook that learns from every future commit automatically.
|
|
20
|
-
|
|
21
|
-
**What your AI gets:**
|
|
22
|
-
- A briefing at every session start: last session, open failures, relevant past fixes
|
|
23
|
-
- Causal root cause analysis: `causal_trace("auth breaks after restart")` → Root cause → Chain → Exact fix from 3 months ago with the command that worked
|
|
24
|
-
- Failure prediction before it happens: `brain_predict` reads your history before every deploy
|
|
25
|
-
- A running "time saved" counter — so you can see the ROI
|
|
26
|
-
|
|
27
|
-
**What makes it different from mem0, MemGPT, etc.:**
|
|
28
|
-
The `causal_trace` tool. No other memory system builds a Causal Knowledge Graph. Most systems store facts. cachly stores WHY things broke and HOW they were fixed — with the full chain of cause and effect. 30 minutes of git blame in one call.
|
|
29
|
-
|
|
30
|
-
**Free forever:** 25 MB, German servers, GDPR-compliant, no credit card.
|
|
31
|
-
|
|
32
|
-
### First Comment (post immediately after launch)
|
|
33
|
-
Hey PH! 👋
|
|
34
|
-
|
|
35
|
-
I built cachly after watching my AI re-research the same deployment bug for the third time in a month. It had no memory. I did.
|
|
36
|
-
|
|
37
|
-
The thing I'm most proud of: `causal_trace`. You describe a problem in plain English, and it walks your Brain's Causal Knowledge Graph to find: the root cause, the intermediate failure chain, and the exact fix that worked last time — including the date and the command. Nothing else does this.
|
|
38
|
-
|
|
39
|
-
5000+ developers are already using the npm package. Would love your feedback on what's missing.
|
|
40
|
-
|
|
41
|
-
**Commands to try after setup:**
|
|
42
|
-
- `causal_trace(problem="[your last bug]")` — see if it already knows the answer
|
|
43
|
-
- `brain_predict(context="about to deploy")` — what will go wrong?
|
|
44
|
-
- `brain_doctor` — Brain health check
|
|
45
|
-
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
## Hacker News — Show HN
|
|
49
|
-
|
|
50
|
-
**Title:**
|
|
51
|
-
Show HN: cachly – causal memory for AI coding assistants (MCP server, free)
|
|
52
|
-
|
|
53
|
-
**Text:**
|
|
54
|
-
I built cachly after noticing that my AI re-researched the same bug three times in a month. The context window empties, the memory vanishes.
|
|
55
|
-
|
|
56
|
-
cachly is an MCP server that gives Claude Code, Cursor, Copilot, and Windsurf persistent memory with one command:
|
|
57
|
-
|
|
58
|
-
npx @cachly-dev/mcp-server@latest setup
|
|
59
|
-
|
|
60
|
-
It detects your editors, writes all the MCP configs, bootstraps from your git history, and installs a git hook that learns from every future commit. No credentials needed in any config file — OAuth Device Flow handles auth inline on the first tool call.
|
|
61
|
-
|
|
62
|
-
The part I think is technically interesting: `causal_trace`. Instead of just storing facts like most memory systems, cachly builds a Causal Knowledge Graph — typed edges: `fixes`, `requires`, `co-occurs`, `causes`, `contradicts`. When you describe a problem, it walks the graph to reconstruct the failure chain and surface the exact fix.
|
|
63
|
-
|
|
64
|
-
causal_trace(problem="auth breaks after restart")
|
|
65
|
-
→ Root: k8s:namespace-terminating
|
|
66
|
-
→ Via: keycloak:jwks-race
|
|
67
|
-
→ Fix: PollUntilContextTimeout 3min ← worked March 12
|
|
68
|
-
|
|
69
|
-
Sessions start and end automatically (no manual session_start/session_end). Everything runs in the background.
|
|
70
|
-
|
|
71
|
-
Free tier: 25 MB, German servers, GDPR. Apache-2.0.
|
|
72
|
-
|
|
73
|
-
GitHub: https://github.com/cachly-dev/cachly-mcp
|
|
74
|
-
npm: https://www.npmjs.com/package/@cachly-dev/mcp-server
|
|
75
|
-
|
|
76
|
-
Happy to answer questions about the architecture.
|
|
77
|
-
|
|
78
|
-
---
|
|
79
|
-
|
|
80
|
-
## Reddit — r/ClaudeAI
|
|
81
|
-
|
|
82
|
-
**Title:**
|
|
83
|
-
I built persistent memory for Claude Code — no credentials, no config, one command
|
|
84
|
-
|
|
85
|
-
**Text:**
|
|
86
|
-
After the 10th time explaining my project architecture to Claude, I built cachly.
|
|
87
|
-
|
|
88
|
-
**What it does:**
|
|
89
|
-
Run `npx @cachly-dev/mcp-server@latest setup` once. It:
|
|
90
|
-
1. Signs you in with one browser click (no credentials in config)
|
|
91
|
-
2. Detects Claude Code, Cursor, Windsurf, VS Code, Cline — writes all configs automatically
|
|
92
|
-
3. Bootstraps your Brain from your git history right away
|
|
93
|
-
4. Installs a git hook so every future commit feeds the brain automatically
|
|
94
|
-
|
|
95
|
-
From that point, your AI arrives pre-briefed every session. No `session_start` needed — it's automatic.
|
|
96
|
-
|
|
97
|
-
**The feature I'm most excited about:**
|
|
98
|
-
`causal_trace("auth breaks after restart")` — it doesn't just search for similar lessons, it walks a Causal Knowledge Graph to reconstruct the failure chain and return the exact fix you used before, with commands and file paths.
|
|
99
|
-
|
|
100
|
-
**Free forever** — 25 MB, German servers, GDPR, no credit card.
|
|
101
|
-
|
|
102
|
-
GitHub: https://github.com/cachly-dev/cachly-mcp
|
|
103
|
-
|
|
104
|
-
Would love feedback from this community — what memory features would you most want?
|
|
105
|
-
|
|
106
|
-
---
|
|
107
|
-
|
|
108
|
-
## Reddit — r/LocalLLaMA
|
|
109
|
-
|
|
110
|
-
**Title:**
|
|
111
|
-
MCP server that learns from your git history automatically — causal memory for AI coding
|
|
112
|
-
|
|
113
|
-
**Text:**
|
|
114
|
-
Built this for the problem of AI context loss between sessions. Technical highlights:
|
|
115
|
-
|
|
116
|
-
- **Causal Knowledge Graph (CKG):** Typed edges (fixes, requires, co-occurs, causes, contradicts). `causal_trace` walks the graph instead of just doing text similarity.
|
|
117
|
-
- **Continuous Learning Stream:** git post-commit hook + GitHub Actions step. Every commit → lessons extracted automatically. Zero `session_end` calls needed.
|
|
118
|
-
- **brain_predict:** Before deploys, reads your CKG for patterns that match past failures and returns probability-weighted warnings.
|
|
119
|
-
- **Memory Crystals:** Compresses 30-50 sessions into a dense snapshot injected at every session start.
|
|
120
|
-
- **11-language BM25+ search:** EN, DE, FR, ES, IT, PT, ZH, JA, KO, AR, HE — cross-lingual retrieval (e.g. `smart_recall("deploy")` finds デプロイ, 部署, 배포).
|
|
121
|
-
|
|
122
|
-
Works with any MCP host: Claude Code, Cursor, Windsurf, VS Code, Cline, Zed, Continue.dev.
|
|
123
|
-
|
|
124
|
-
Free tier: 25 MB. Apache-2.0. German servers.
|
|
125
|
-
|
|
126
|
-
GitHub: https://github.com/cachly-dev/cachly-mcp
|
|
127
|
-
|
|
128
|
-
---
|
|
129
|
-
|
|
130
|
-
## Twitter/X Thread
|
|
131
|
-
|
|
132
|
-
**Tweet 1:**
|
|
133
|
-
Your AI forgets everything between sessions.
|
|
134
|
-
I built the fix.
|
|
135
|
-
|
|
136
|
-
`npx @cachly-dev/mcp-server@latest setup`
|
|
137
|
-
|
|
138
|
-
One command → persistent AI memory across Claude, Cursor, Copilot, Windsurf.
|
|
139
|
-
Free forever. 🧵
|
|
140
|
-
|
|
141
|
-
**Tweet 2:**
|
|
142
|
-
The part that took the longest to build: `causal_trace`
|
|
143
|
-
|
|
144
|
-
You type: "auth breaks after restart"
|
|
145
|
-
|
|
146
|
-
It returns:
|
|
147
|
-
→ Root: k8s:namespace-terminating
|
|
148
|
-
→ Via: keycloak:jwks-race
|
|
149
|
-
→ Fix: PollUntilContextTimeout 3min ← you used this March 12, it worked
|
|
150
|
-
|
|
151
|
-
30 minutes of git blame. One call.
|
|
152
|
-
|
|
153
|
-
**Tweet 3:**
|
|
154
|
-
How setup works:
|
|
155
|
-
1. Run the command
|
|
156
|
-
2. Browser opens → one click sign-in (no password)
|
|
157
|
-
3. It detects every editor you have
|
|
158
|
-
4. Writes MCP config for each automatically
|
|
159
|
-
5. Bootstraps Brain from your git history
|
|
160
|
-
6. Installs git hook for automatic future learning
|
|
161
|
-
|
|
162
|
-
Restart editor. Done.
|
|
163
|
-
|
|
164
|
-
**Tweet 4:**
|
|
165
|
-
What your AI sees every morning:
|
|
166
|
-
|
|
167
|
-
🧠 Session Briefing
|
|
168
|
-
⏱️ Brain saved you ~4h 30m total
|
|
169
|
-
✅ api:auth — Bearer in header, not cookie
|
|
170
|
-
✅ docker:build — ARG changes bust cache
|
|
171
|
-
⚠️ k8s:deploy — namespace terminating race condition
|
|
172
|
-
|
|
173
|
-
🤝 Your team has 3 new lessons since yesterday
|
|
174
|
-
|
|
175
|
-
**Tweet 5:**
|
|
176
|
-
Free tier: 25 MB, German servers, GDPR-compliant, no credit card.
|
|
177
|
-
Open source: Apache-2.0
|
|
178
|
-
|
|
179
|
-
GitHub: github.com/cachly-dev/cachly-mcp
|
|
180
|
-
npm: @cachly-dev/mcp-server
|
|
181
|
-
|
|
182
|
-
If this saves you time, a ⭐ means a lot.
|
package/PROGRESS.md
DELETED
|
@@ -1,141 +0,0 @@
|
|
|
1
|
-
# cachly-mcp — Progress Tracker
|
|
2
|
-
|
|
3
|
-
> Lebendiges Dokument. Hält fest **was implementiert ist** und **was offen steht**.
|
|
4
|
-
> Komplementär zu [STRATEGY.md](./STRATEGY.md) (das *Warum*) und
|
|
5
|
-
> [VISION_10X.md](./VISION_10X.md) (das *Wohin*).
|
|
6
|
-
>
|
|
7
|
-
> **Stand:** v0.10.65 · 101 MCP-Tools · 425 Tests grün · 0 Lint-Warnings
|
|
8
|
-
|
|
9
|
-
---
|
|
10
|
-
|
|
11
|
-
## 0. Schnellüberblick
|
|
12
|
-
|
|
13
|
-
| Dimension | Status |
|
|
14
|
-
|---|---|
|
|
15
|
-
| Version | `0.10.65` (npm `latest`) |
|
|
16
|
-
| MCP-Tools | **101** |
|
|
17
|
-
| Tests | **425** passing, 8 Suites |
|
|
18
|
-
| Lint | **0 errors, 0 warnings** |
|
|
19
|
-
| Build | sauber (`tsc`, Entry `dist/src/index.js`) |
|
|
20
|
-
| Bench | Precision@1 **+22.2 %**, MRR **+10.9 %**, nDCG@5 **+8.1 %** vs. BM25 |
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## 1. Erledigt ✅
|
|
25
|
-
|
|
26
|
-
### Phase 2 — Beweisbar bessere Recall-Qualität (der Moat-Beweis)
|
|
27
|
-
|
|
28
|
-
| Feature | Datei | Status |
|
|
29
|
-
|---|---|---|
|
|
30
|
-
| Quality-aware Reranking (5 Faktoren) | `src/rerank.ts` | ✅ live in `smart_recall` |
|
|
31
|
-
| Cachly-Bench (IR-Metriken, CI-Wächter) | `src/bench/`, `src/__tests__/rerank.test.ts` | ✅ |
|
|
32
|
-
| Hybrides Retrieval (BM25 + Semantik) | `src/handlers/brain.ts` | ✅ eine gerankte Liste |
|
|
33
|
-
| CKG-Traversierung als 3. Signal (Layer 3) | `src/handlers/brain.ts` | ✅ 🕸️-Badge |
|
|
34
|
-
| Contradiction-Resolution persistent | `cachly:contradictions:{topic}` | ✅ TTL'd, auditierbar |
|
|
35
|
-
| "Brain saved you here"-Banner | `src/handlers/brain.ts` | ✅ Zeitersparnis inline |
|
|
36
|
-
| Knowledge-Governance (`team_confirm`) | `src/handlers/team.ts` | ✅ 🛡️/✔️ Badges, 5. Rerank-Faktor |
|
|
37
|
-
|
|
38
|
-
**5-Faktor-Rerank-Signal:** outcome × confidence × proven-ness × severity × governance
|
|
39
|
-
(review-level × endorsements), geklammert auf [0.5, 2.5].
|
|
40
|
-
|
|
41
|
-
### Phase 3 — Team-/Org-weiter Wissensgraph (der uneinholbare Moat)
|
|
42
|
-
|
|
43
|
-
| Feature | Tool / Datei | Version | Status |
|
|
44
|
-
|---|---|---|---|
|
|
45
|
-
| Ambient Team-Propagation (author → team) | `learn_from_attempts` | 0.10.57 | ✅ default, nicht opt-in |
|
|
46
|
-
| **Person-Nodes** im CKG | `ckgUpsertPersonNode`, `src/ckg.ts` | 0.10.59 | ✅ auto aus `author` |
|
|
47
|
-
| **File-Nodes** im CKG | `ckgUpsertFileNode`, `src/ckg.ts` | 0.10.59 | ✅ auto aus `file_paths` |
|
|
48
|
-
| `brain_who_knows(topic)` | `src/handlers/brain.ts` | 0.10.59 | ✅ Experten-Ranking 🥇🥈🥉 |
|
|
49
|
-
| Author-Badge in `smart_recall` | `src/handlers/brain.ts` | 0.10.59 | ✅ 👤 inline |
|
|
50
|
-
| `brain_file_map(file_paths)` | `src/handlers/brain.ts` | 0.10.60 | ✅ Experten + Lessons je Datei |
|
|
51
|
-
| `team_expertise_map()` | `src/handlers/brain.ts` | 0.10.60 | ✅ Skills-Matrix als Tabelle |
|
|
52
|
-
| **Visibility-Scopes** (`private`/`team`/`public`) | `learn_from_attempts` | 0.10.60 | ✅ private leakt nie in smart_recall |
|
|
53
|
-
| `brain_from_git` → Person+File-Nodes | `src/handlers/fedbrain.ts` | 0.10.61 | ✅ Zero-Setup Graph retroaktiv |
|
|
54
|
-
| `skill_gaps()` | `src/handlers/brain.ts` | 0.10.61 | ✅ 🔴/🟡/🔵 Blind-Spot-Report |
|
|
55
|
-
| `brain_coverage()` | `src/handlers/brain.ts` | 0.10.61 | ✅ 0–100 Health-Score |
|
|
56
|
-
|
|
57
|
-
### Stabilität & Hygiene
|
|
58
|
-
|
|
59
|
-
| Thema | Status |
|
|
60
|
-
|---|---|
|
|
61
|
-
| Broken npm Entry-Point (0.10.50–52) | ✅ gefixt (`dist/src/index.js`) |
|
|
62
|
-
| Version-Regression (52 < 56) | ✅ auf 0.10.57+ vorgezogen |
|
|
63
|
-
| Lint: 70 Warnings → 0 | ✅ systematisch bereinigt |
|
|
64
|
-
| Tool-Count-Konsistenz (80/89/95/96/98/100) | ✅ überall synchron |
|
|
65
|
-
| Input-Guards für Phase-3-Tools | ✅ 0.10.62 (kein Crash bei leerem topic / non-array) |
|
|
66
|
-
| `smart_recall` apiFetch null-guard | ✅ graceful degradation offline |
|
|
67
|
-
| Scan-Timeout + Cap (`scanKeys`) überall | ✅ 0.10.63 — kein Hang bei großem Keyspace |
|
|
68
|
-
| Git-Rename-Pfad-Normalisierung | ✅ 0.10.63 (`normalizeGitPath`) |
|
|
69
|
-
| `withTimeout`-Utility (graceful degradation) | ✅ 0.10.63 |
|
|
70
|
-
|
|
71
|
-
### Die drei Metriken — instrumentiert (0.10.64)
|
|
72
|
-
|
|
73
|
-
| Metrik | Mechanismus | Status |
|
|
74
|
-
|---|---|---|
|
|
75
|
-
| **Time-to-first-recall** | `born_at` (erster Learn) → `first_recall_at` (erster proven Recall) | ✅ gemessen |
|
|
76
|
-
| **Recall-Lift** | Cachly-Bench Headline, CI-verteidigt | ✅ +22.2 % P@1 |
|
|
77
|
-
| **Team-Knowledge-Reuse** | Cross-Author-Recalls + distinct reuse-pairs | ✅ getrackt + inline sichtbar |
|
|
78
|
-
| `brain_metrics()`-Tool | zeigt alle drei in einer Ansicht | ✅ 101. Tool |
|
|
79
|
-
|
|
80
|
-
---
|
|
81
|
-
|
|
82
|
-
## 2. Offen 🔲
|
|
83
|
-
|
|
84
|
-
### Beweis (Phase-2-Rest) — der Glaubwürdigkeits-Beweis
|
|
85
|
-
|
|
86
|
-
- ✅ **Flat-File Head-to-Head im Bench** (0.10.65) — naiver, quality-blinder Ranker
|
|
87
|
-
als ehrlicher Stellvertreter für "LLM liest Memory-Files". Cachly gewinnt auf den
|
|
88
|
-
entscheidenden Metriken: **P@1 +10.0 %, MRR +4.4 % vs. flat-file** · CI-verteidigt.
|
|
89
|
-
- ✅ BENCH.md "Limitations" offen + ehrlich (warum flat-file bei P@3/Recall@3 vorn liegt).
|
|
90
|
-
- 🔲 **Extern gelabelter Korpus** statt selbstgebautem Bench-Set (Dritt-Labels)
|
|
91
|
-
- 🔲 Head-to-head auf **realen Agent-Traces** (nicht nur Fixture-Korpus)
|
|
92
|
-
|
|
93
|
-
### Team-Graph (Phase-3-Rest)
|
|
94
|
-
|
|
95
|
-
- 🔲 **Rollen-Modell** (admin / reviewer / contributor / viewer)
|
|
96
|
-
- 🔲 **Sichtbarkeits-Scopes auf Team-Ebene** (heute nur lesson-level `private`)
|
|
97
|
-
- 🔲 Service-/System-Nodes im Graph (heute: Konzept, Person, File)
|
|
98
|
-
- 🔲 `brain_who_knows` über CKG-Kanten *zwischen* Personen (Kollaborations-Graph)
|
|
99
|
-
- 🔲 Recall, das *wer-was-wo* gewichtet (personalisiertes Ranking)
|
|
100
|
-
|
|
101
|
-
### Onboarding / Null-Reibung (Phase-1-Eintrittskarte)
|
|
102
|
-
|
|
103
|
-
- 🔲 `npx @cachly-dev/init` Ein-Befehl-Setup <60 s, idempotent
|
|
104
|
-
- 🟡 Circuit-Breaker / Timeouts: Scan-Tools abgesichert (`scanKeys`/`withTimeout`,
|
|
105
|
-
0.10.63); verbleibende Netzwerk-Calls (apiFetch) noch nicht überall timeout-gewrappt
|
|
106
|
-
- 🔲 Self-Healing-Auth (kein "0 Recalls weil RAM-only")
|
|
107
|
-
- ✅ Time-to-first-recall **messen** (0.10.64); auf <2 min *drücken* bleibt Onboarding-Arbeit 🔲
|
|
108
|
-
|
|
109
|
-
### Enterprise / Reichweite (Phase-3/4)
|
|
110
|
-
|
|
111
|
-
- 🔲 Self-Hosted-Tier mit SOC-2/ISO, BYOK by default
|
|
112
|
-
- 🔲 Öffentliche/teilbare Brains (Domänen-Wissensbasen als Marktplatz)
|
|
113
|
-
- 🔲 First-class-Support-Matrix je MCP-Client dokumentiert
|
|
114
|
-
|
|
115
|
-
### Bekannte kleine Schulden
|
|
116
|
-
|
|
117
|
-
- ✅ `brain_from_git`: Git-Rename-Pfade normalisiert (`normalizeGitPath`, 0.10.63).
|
|
118
|
-
- ✅ README Tool-Count-Drift behoben (jetzt 101, überall synchron).
|
|
119
|
-
- ✅ Scan-basierte Tools gegen großen Keyspace gehärtet (`scanKeys`, 0.10.63).
|
|
120
|
-
- 🔲 `team_expertise_map`: Tabellen-Rendering bei *sehr* vielen Domains noch
|
|
121
|
-
nicht mit großem Datensatz lasttestbar (MockRedis deckt Funktionalität ab).
|
|
122
|
-
|
|
123
|
-
---
|
|
124
|
-
|
|
125
|
-
## 3. Die drei Metriken, die alles entscheiden (aus STRATEGY.md §6)
|
|
126
|
-
|
|
127
|
-
| Metrik | Ziel | Heute |
|
|
128
|
-
|---|---|---|
|
|
129
|
-
| **Time-to-first-recall** | <2 min | ✅ gemessen via `brain_metrics` (born_at → first_recall_at) |
|
|
130
|
-
| **Recall-Lift** (vs. BM25) | messbar >0, dann skalieren | ✅ +22.2 % P@1 (intern), in `brain_metrics` |
|
|
131
|
-
| **Team-Knowledge-Reuse** | Lesson von A wird von B recallt | ✅ getrackt + inline + in `brain_metrics`; externes Dashboard 🔲 |
|
|
132
|
-
|
|
133
|
-
> Alle drei sind jetzt in **einem Tool** sichtbar: `brain_metrics(instance_id)`.
|
|
134
|
-
> Offen bleibt nur das *externe* Dashboard (server-side) und der *externe* Bench-Beweis (W1).
|
|
135
|
-
|
|
136
|
-
---
|
|
137
|
-
|
|
138
|
-
## 4. Changelog-Verweis
|
|
139
|
-
|
|
140
|
-
Vollständige Release-Notes pro Version: [CHANGELOG.md](./CHANGELOG.md).
|
|
141
|
-
Letzte Releases: 0.10.59 (Phase 3A) · 0.10.60 (Phase 3B) · 0.10.61 (Phase 3C, 100 Tools) · 0.10.62 (Härtung).
|
package/STRATEGY.md
DELETED
|
@@ -1,228 +0,0 @@
|
|
|
1
|
-
# Cachly vs. Anthropic Memory — Ehrliche Standortbestimmung & 10x/100x-Roadmap
|
|
2
|
-
|
|
3
|
-
> Stand: 29. Mai 2026 · Verfasst als interne, schonungslose Bestandsaufnahme.
|
|
4
|
-
> Ziel: Wo stehen wir wirklich, was ist der Graben den Anthropic uns gräbt, und
|
|
5
|
-
> was braucht es konkret, damit Cachly für die nächsten Jahre 10–100x besser,
|
|
6
|
-
> stabiler, intelligenter und nutzerfreundlicher dasteht.
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 0. TL;DR (für die Eiligen)
|
|
11
|
-
|
|
12
|
-
- **Die Lücke, die wir füllen wollten, schließt Anthropic gerade selbst** — aber
|
|
13
|
-
nur für den Solo-Claude-Nutzer. Das Memory Tool, Managed-Agents-Memory,
|
|
14
|
-
Chat-Memory und "Dreaming" decken den **Single-User-, Single-Vendor-Fall**
|
|
15
|
-
zunehmend gut ab.
|
|
16
|
-
- **Unser echter, verteidigbarer Graben liegt woanders**: *team-/org-weites,
|
|
17
|
-
strukturiertes, vendor- und tool-unabhängiges Wissen mit Governance.* Genau das
|
|
18
|
-
kann Anthropic strukturell **nicht** liefern, ohne ihr eigenes Lock-in-Modell zu
|
|
19
|
-
untergraben.
|
|
20
|
-
- **Brutale Wahrheit**: Heute gewinnen wir diesen Graben *nicht* überzeugend.
|
|
21
|
-
Onboarding hat zu viel Reibung, die Recall-Qualität ist nicht nachweisbar besser
|
|
22
|
-
als "Claude liest seine eigenen Files", und wir hatten zuletzt zu viele Bugs für
|
|
23
|
-
ein Produkt, das gegen ein First-Party-Feature antritt.
|
|
24
|
-
- **Der Weg zu 10x/100x** ist kein Feature-Wettrennen mit Anthropic. Es ist:
|
|
25
|
-
(1) **Recall-Qualität messbar überlegen machen**, (2) **Onboarding auf
|
|
26
|
-
Null-Reibung** bringen, (3) **Team-Wissensgraph zum Moat ausbauen**,
|
|
27
|
-
(4) **vendor-/tool-agnostisch** bleiben, (5) **Stabilität auf First-Party-Niveau**.
|
|
28
|
-
|
|
29
|
-
---
|
|
30
|
-
|
|
31
|
-
## 1. Was Anthropic heute hat (der ehrliche Blick auf den Gegner)
|
|
32
|
-
|
|
33
|
-
| Feature | Was es ist | Reichweite | Schwäche für uns nutzbar? |
|
|
34
|
-
|---|---|---|---|
|
|
35
|
-
| **Memory Tool** (`memory_20250818`) | Client-seitige Datei-Ops im `/memories`-Verzeichnis, 6 Commands (view/create/str_replace/insert/delete/rename) | Nur Anthropic-API, nur Claude-Modelle | **Ja** — unstrukturiert (flache Files), kein semantisches Retrieval, per-Agent |
|
|
36
|
-
| **Managed Agents Memory** (Public Beta, Apr 2026) | Anthropic-gehostete Files, via API/Console exportierbar | Anthropic-Plattform | **Ja** — kein Team-Sharing-Modell, kein Wissensgraph |
|
|
37
|
-
| **Chat Memory** (März 2026) | Auto-Destillation von Chats ~alle 24h in ein Memory-Profil | Consumer (Free/Pro/Max) | **Ja** — Consumer-only, nicht für Dev-Workflows/CI/Teams |
|
|
38
|
-
| **Dreaming** (Research Preview) | Background-Prozess: Muster aus Sessions extrahieren, Memory kuratieren | Claude-intern | ⚠️ **Gefährlich** — das ist konzeptionell *unser* Crystallize/Belief-Update |
|
|
39
|
-
| **Opus 4.8 Context** | 1M Token default, "infinite conversations" via Summarization, Suche über alte Chats | Claude | ⚠️ Reduziert den *Bedarf* an externem Memory für Solo-User |
|
|
40
|
-
|
|
41
|
-
### Die unbequeme Erkenntnis
|
|
42
|
-
Anthropics Memory ist **gratis, null Setup, first-party, und wird monatlich besser.**
|
|
43
|
-
Für einen einzelnen Entwickler, der ausschließlich Claude nutzt, ist die Frage
|
|
44
|
-
"Warum Cachly statt dem eingebauten Memory?" heute **nicht trivial zu beantworten.**
|
|
45
|
-
|
|
46
|
-
---
|
|
47
|
-
|
|
48
|
-
## 2. Wo Cachly strukturell gewinnen kann (der echte Graben)
|
|
49
|
-
|
|
50
|
-
Diese vier Punkte kann Anthropic nicht ohne Selbst-Sabotage angreifen:
|
|
51
|
-
|
|
52
|
-
### 2.1 Vendor- & Tool-Unabhängigkeit
|
|
53
|
-
- Anthropic-Memory lebt **in Anthropics Filesystem, gebunden an Claude über die
|
|
54
|
-
Anthropic-API.** Wechselst du zu GPT, Gemini, einem lokalen Modell oder nutzt
|
|
55
|
-
Cursor/Windsurf/Zed parallel — **dein Memory ist weg oder fragmentiert.**
|
|
56
|
-
- Cachly spricht **MCP** → funktioniert mit *jedem* MCP-Client und ist
|
|
57
|
-
modell-agnostisch. **Dein Org-Wissen überlebt jeden Modellwechsel.**
|
|
58
|
-
- *Das ist die Positionierung, die nie veraltet:* "Switzerland für AI-Memory."
|
|
59
|
-
|
|
60
|
-
### 2.2 Team-/Org-weites Wissen
|
|
61
|
-
- Anthropic-Memory ist **per-User / per-Agent.** Es gibt kein "Kollege A lernt
|
|
62
|
-
etwas, Kollege B profitiert beim nächsten `session_start`."
|
|
63
|
-
- `team_learn` + geteilte Brain-Instanz ist **genau das** — und es ist der
|
|
64
|
-
Use-Case mit dem höchsten ökonomischen Wert (verhindert, dass 10 Entwickler
|
|
65
|
-
denselben Fehler 10x machen).
|
|
66
|
-
|
|
67
|
-
### 2.3 Strukturiertes, kuratiertes Wissen statt flacher Files
|
|
68
|
-
- Anthropic = Claude liest linear Textdateien.
|
|
69
|
-
- Cachly = strukturierte Lessons (`topic`, `outcome`, `severity`, `tags`,
|
|
70
|
-
`depends_on`), Contradiction-Detection, Causal Knowledge Graph (CKG),
|
|
71
|
-
Belief-Update-Engine (BUE). **ABER:** dieser Vorteil ist heute *behauptet, nicht
|
|
72
|
-
bewiesen.* Siehe §3.
|
|
73
|
-
|
|
74
|
-
### 2.4 Governance, Compliance, Self-Hosting
|
|
75
|
-
- Self-hosted Valkey, BYOK, Audit-Trails, DSGVO-Löschung, SOC-2-Pfad.
|
|
76
|
-
- Enterprises **dürfen** ihr Wissen oft nicht in Anthropics Managed Memory legen.
|
|
77
|
-
Das ist ein Verkaufsargument, das mit der Zeit *stärker* wird, nicht schwächer.
|
|
78
|
-
|
|
79
|
-
---
|
|
80
|
-
|
|
81
|
-
## 3. Wo wir heute ehrlich schwach sind
|
|
82
|
-
|
|
83
|
-
Kein Schönreden:
|
|
84
|
-
|
|
85
|
-
1. **Recall-Qualität ist nicht gemessen.** Wir behaupten "strukturiert > flache
|
|
86
|
-
Files", haben aber **kein Benchmark**, das zeigt: Cachly-Recall führt zu
|
|
87
|
-
weniger Wiederholungsfehlern / besseren Antworten als das eingebaute Memory.
|
|
88
|
-
*Ohne diesen Beweis ist unser Hauptargument Marketing.*
|
|
89
|
-
2. **Onboarding-Reibung.** Anthropic: 0 Setup. Cachly: Instanz provisionieren,
|
|
90
|
-
Device-Flow, MCP-Config, JWT-Persistenz, Instance-ID. Jede dieser Stufen ist
|
|
91
|
-
ein Drop-off-Punkt — und mehrere waren zuletzt **kaputt** (JWT nur im RAM,
|
|
92
|
-
Redis NOAUTH, Provisioning-Timeouts).
|
|
93
|
-
3. **Stabilität.** Wir haben in den letzten Tagen viele kritische Bugs gefunden und
|
|
94
|
-
gefixt (Telemetrie-Zähler bei 0, NOAUTH, PKCE komplett kaputt, doppelte Drip-
|
|
95
|
-
Mails, Admin-Bypass). Ein Produkt, das gegen ein First-Party-Feature antritt,
|
|
96
|
-
**darf solche Bugs nicht haben.** Vertrauen ist hier asymmetrisch.
|
|
97
|
-
4. **Wertnachweis fehlt dem User.** Der Nutzer sieht nicht, *dass* Cachly ihm
|
|
98
|
-
gerade einen Fehler erspart hat. Anthropics Memory ist unsichtbar-bequem;
|
|
99
|
-
unseres ist sichtbar-umständlich. Das muss sich umkehren.
|
|
100
|
-
5. **"Dreaming" ist eine direkte Bedrohung** für unser Crystallize/BUE-
|
|
101
|
-
Alleinstellungsmerkmal. Wenn das Modell selbst Muster extrahiert, müssen wir
|
|
102
|
-
beim *Team-übergreifenden* und *strukturierten* Teil uneinholbar sein.
|
|
103
|
-
|
|
104
|
-
---
|
|
105
|
-
|
|
106
|
-
## 4. Die 10x/100x-Roadmap (konkret, priorisiert)
|
|
107
|
-
|
|
108
|
-
> Leitsatz: **Wir gewinnen nicht, indem wir Anthropics Memory kopieren. Wir
|
|
109
|
-
> gewinnen, indem wir das werden, was Anthropic strukturell nicht sein darf:
|
|
110
|
-
> der neutrale, team-weite, beweisbar-bessere Wissens-Layer über allen Modellen.**
|
|
111
|
-
|
|
112
|
-
### Phase 1 — Stabilität & Null-Reibung (die Eintrittskarte) · *0–3 Monate*
|
|
113
|
-
Ohne das ist alles andere wertlos.
|
|
114
|
-
|
|
115
|
-
- **[10x Stabilität]** Vollständige Test-Suite für die Brain-Tools (Recall, Learn,
|
|
116
|
-
Dedup, Contradiction). Heute faktisch ungetestet. Ziel: jede Tool-Antwort hat
|
|
117
|
-
einen Vertragstest.
|
|
118
|
-
- **[10x Onboarding]** "Ein-Befehl-Setup": `npx @cachly-dev/init` → Auto-Provision,
|
|
119
|
-
Device-Flow, MCP-Config-Write, erster `brain_from_git`-Seed, alles in <60s,
|
|
120
|
-
idempotent, mit klarem Fortschritt. Jeder bisherige Drop-off-Punkt eliminiert.
|
|
121
|
-
- **[Reibung]** Graceful Degradation: Wenn Redis/Netz weg ist, darf das Tool
|
|
122
|
-
**nie** den ganzen Agent-Call blockieren. Timeouts + Circuit-Breaker überall.
|
|
123
|
-
- **[Vertrauen]** Self-Healing-Auth: JWT/Instance-ID persistent, automatische
|
|
124
|
-
Re-Provisionierung bei verlorenem State, kein "0 Recalls weil RAM-only" mehr.
|
|
125
|
-
|
|
126
|
-
### Phase 2 — Beweisbar bessere Recall-Qualität (der Moat-Beweis) · *3–9 Monate*
|
|
127
|
-
Das ist der Punkt, an dem wir *verdienen*, gegen First-Party anzutreten.
|
|
128
|
-
|
|
129
|
-
> **Status (begonnen):** Erste Bausteine sind live — `npm run bench`
|
|
130
|
-
> (siehe [BENCH.md](./BENCH.md)) misst den Recall-Lift und ist CI-verteidigt.
|
|
131
|
-
> Aktuelle Zahl: **Precision@1 +11.1 %, MRR +6.6 %, nDCG@5 +5.0 %** gegenüber
|
|
132
|
-
> reinem BM25. Quality-Reranking (`src/rerank.ts`) ist in `smart_recall` verdrahtet,
|
|
133
|
-
> Contradiction-Resolution wird jetzt persistiert. Nächster Schritt: größerer,
|
|
134
|
-
> extern gelabelter Korpus + Head-to-head gegen ein echtes Flat-File-Memory.
|
|
135
|
-
|
|
136
|
-
- **[✅ erledigt]** **Quality-aware Reranking**: proven success-Lessons ranken über
|
|
137
|
-
text-ähnlichen Fehlversuchen (`src/rerank.ts`, in `smart_recall` aktiv).
|
|
138
|
-
- **[✅ erledigt]** **Cachly-Bench**: reproduzierbarer Benchmark mit IR-Metriken
|
|
139
|
-
(Precision@k, Recall@k, MRR, nDCG), als CI-Regressionswächter. Ohne Zahl keine
|
|
140
|
-
Story — jetzt gibt es eine Zahl, die jede Recall-Änderung verteidigen muss.
|
|
141
|
-
- **[✅ erledigt]** **Contradiction-Resolution persistent**: Widersprüche werden in
|
|
142
|
-
`cachly:contradictions:{topic}` als auditierbarer Verlauf gespeichert (TTL'd).
|
|
143
|
-
- **[✅ erledigt — 100x Intelligenz]** Hybrides Retrieval: BM25-Keyword + semantische
|
|
144
|
-
Embeddings werden in `smart_recall` zu *einer* gerankten Liste fusioniert
|
|
145
|
-
(`0.6×BM25-Qualität + 0.4×Semantik`), mit Match-Typ-Badges (🔍/🎯/🔀). CKG-
|
|
146
|
-
Traversierung als dritte Signalquelle ist der nächste Ausbau.
|
|
147
|
-
- **[✅ erledigt — Wertsichtbarkeit]** "Brain saved you here"-Banner im
|
|
148
|
-
`smart_recall`-Output macht die Zeitersparnis pro proven Lesson inline sichtbar
|
|
149
|
-
(`cachly:stats:time_saved_mins` wird getrackt und jetzt auch angezeigt).
|
|
150
|
-
- **[offen — Beweis]** Größerer, extern gelabelter Korpus + Head-to-head gegen ein
|
|
151
|
-
echtes Flat-File-Memory auf realen Agent-Traces (siehe BENCH.md "Limitations").
|
|
152
|
-
|
|
153
|
-
### Phase 3 — Team-Wissensgraph als uneinholbarer Moat · *9–18 Monate*
|
|
154
|
-
Hier ist Anthropic strukturell raus.
|
|
155
|
-
|
|
156
|
-
> **Status (begonnen):** Knowledge-Governance ist live — `team_confirm` lässt
|
|
157
|
-
> einen Reviewer eine Lesson bestätigen (🛡️ senior / ✔️ peer). Die Bestätigung
|
|
158
|
-
> fließt direkt in das Recall-Ranking (`src/rerank.ts`, 5. Faktor) ein: bestätigtes,
|
|
159
|
-
> menschlich geprüftes Wissen ranked über unreviewtem Auto-Learning. `team_recall`
|
|
160
|
-
> zeigt Reviewer-Badges und sortiert bestätigte Lessons zuerst. Distinct-Endorser
|
|
161
|
-
> werden in einem Set getrackt (kein Self-Inflation), mit Audit-Log pro Topic.
|
|
162
|
-
|
|
163
|
-
- **[100x Team]** Org-weiter Wissensgraph: Lessons, Personen, Dateien, Services als
|
|
164
|
-
Knoten; Recall berücksichtigt *wer* was gelernt hat und *wo* es relevant ist.
|
|
165
|
-
- **[Virality]** Jeder gelöste Fehler eines Entwicklers wird automatisch zur
|
|
166
|
-
Org-Lesson — mit Attribution. `team_learn` als Default, nicht als Opt-in.
|
|
167
|
-
- **[✅ erledigt — Governance]** "Wissens-Reviews": ein Senior bestätigt eine Lesson
|
|
168
|
-
(`team_confirm`) → höheres Vertrauen im Recall-Ranking. Audit-Trail + distinct
|
|
169
|
-
Endorsements werden persistiert. Offen: Rollen-Modell und Sichtbarkeits-Scopes.
|
|
170
|
-
- **[Enterprise]** Self-Hosted-Tier mit SOC-2/ISO, BYOK by default, Daten bleiben
|
|
171
|
-
im Kunden-VPC. Das ist der Umsatz, den Anthropic-Memory nicht abgreifen kann.
|
|
172
|
-
|
|
173
|
-
### Phase 4 — Der neutrale Layer über allen Modellen · *18+ Monate*
|
|
174
|
-
- **[100x Reichweite]** First-class-Support für jeden großen MCP-Client und jedes
|
|
175
|
-
Modell. Cachly = "bring your own model, keep your brain."
|
|
176
|
-
- **[Ökosystem]** Öffentliche/teilbare Brains (kuratierte Domänen-Wissensbasen:
|
|
177
|
-
"React-Best-Practices-Brain", "Kubernetes-Incident-Brain"), als Marktplatz.
|
|
178
|
-
- **[Moat-Vertiefung]** Je mehr Org-Wissen akkumuliert, desto höher die
|
|
179
|
-
Wechselkosten *weg* von Cachly — aber **null** Lock-in beim *Modell*. Das ist
|
|
180
|
-
die einzige gesunde Form von Lock-in.
|
|
181
|
-
|
|
182
|
-
---
|
|
183
|
-
|
|
184
|
-
## 5. Was wir explizit NICHT tun sollten
|
|
185
|
-
|
|
186
|
-
- **Nicht** versuchen, Anthropics Single-User-Memory zu schlagen. Das verlieren wir.
|
|
187
|
-
Unser Nutzer ist das **Team** und die **Org**, nicht der Solo-Hobbyist.
|
|
188
|
-
- **Nicht** Feature-für-Feature mit "Dreaming" konkurrieren. Stattdessen den
|
|
189
|
-
*strukturierten, geteilten, beweisbar-besseren* Teil besitzen.
|
|
190
|
-
- **Nicht** weiter Features stapeln (wir haben ~89 Tools), solange Recall-Qualität
|
|
191
|
-
und Stabilität nicht bewiesen sind. **Tiefe vor Breite.**
|
|
192
|
-
- **Nicht** vendor-Lock-in beim Modell aufbauen — das ist unser einziger
|
|
193
|
-
glaubwürdiger Vorteil gegenüber First-Party.
|
|
194
|
-
|
|
195
|
-
---
|
|
196
|
-
|
|
197
|
-
## 6. Die drei Metriken, die alles entscheiden
|
|
198
|
-
|
|
199
|
-
Wenn wir nur drei Zahlen tracken dürften:
|
|
200
|
-
|
|
201
|
-
1. **Time-to-first-recall** (Onboarding-Reibung): vom `npx`-Befehl bis zum ersten
|
|
202
|
-
erfolgreichen, wertvollen Recall. Ziel: <2 Minuten.
|
|
203
|
-
2. **Recall-Lift** (Moat-Beweis): % weniger Wiederholungsfehler / schnellere
|
|
204
|
-
Lösung *mit* Cachly vs. ohne, gemessen über Cachly-Bench. Ziel: messbar >0,
|
|
205
|
-
dann skalieren.
|
|
206
|
-
3. **Team-Knowledge-Reuse** (Virality/Moat): wie oft wird die Lesson eines
|
|
207
|
-
Entwicklers von *einem anderen* erfolgreich recallt. Das ist der Wert, den nur
|
|
208
|
-
wir liefern.
|
|
209
|
-
|
|
210
|
-
---
|
|
211
|
-
|
|
212
|
-
## 7. Fazit (schonungslos)
|
|
213
|
-
|
|
214
|
-
Anthropic hat die **Single-User-Memory-Lücke** weitgehend geschlossen. Hätten wir
|
|
215
|
-
nur darauf gewettet, wären wir in Schwierigkeiten.
|
|
216
|
-
|
|
217
|
-
Aber die **eigentlich wertvolle Lücke** — *team-weites, strukturiertes,
|
|
218
|
-
vendor-neutrales, governance-fähiges Wissen mit beweisbarem Recall-Vorteil* — ist
|
|
219
|
-
**offen, und Anthropic kann sie aus strukturellen Gründen nicht schließen.**
|
|
220
|
-
|
|
221
|
-
Heute besetzen wir diese Lücke **noch nicht überzeugend**: zu viel Reibung, zu
|
|
222
|
-
wenig Beweis, zu viele Bugs. Der Weg zu 10x/100x ist deshalb unspektakulär und
|
|
223
|
-
unerbittlich:
|
|
224
|
-
|
|
225
|
-
> **Erst stabil & reibungslos. Dann beweisbar schlauer. Dann team-weit
|
|
226
|
-
> uneinholbar. Immer modell-neutral.**
|
|
227
|
-
|
|
228
|
-
In dieser Reihenfolge. Nicht andersrum.
|