@cachly-dev/mcp-server 0.10.59 → 0.10.61
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/CHANGELOG.md +43 -0
- package/README.md +1 -1
- package/dist/src/__tests__/brain-flow.test.js +174 -9
- package/dist/src/__tests__/brain-flow.test.js.map +1 -1
- package/dist/src/handlers/brain.js +386 -7
- package/dist/src/handlers/brain.js.map +1 -1
- package/dist/src/handlers/fedbrain.js +37 -10
- package/dist/src/handlers/fedbrain.js.map +1 -1
- package/dist/src/index.js +3 -3
- package/dist/src/index.js.map +1 -1
- package/dist/src/tools.d.ts +77 -1
- package/dist/src/tools.js +73 -1
- package/dist/src/tools.js.map +1 -1
- package/package.json +2 -2
- package/server.json +3 -3
- package/src/__tests__/brain-flow.test.ts +202 -9
- package/src/handlers/brain.ts +428 -7
- package/src/handlers/fedbrain.ts +38 -10
- package/src/index.ts +3 -3
- package/src/tools.ts +77 -1
package/src/tools.ts
CHANGED
|
@@ -575,7 +575,12 @@ const TOOLS = [
|
|
|
575
575
|
},
|
|
576
576
|
author: {
|
|
577
577
|
type: 'string',
|
|
578
|
-
description: 'Name or handle of the person storing this lesson (e.g. "alice", "bob"). Used for Team Telepathy — teammates see each other\'s lessons in session_start.',
|
|
578
|
+
description: 'Name or handle of the person storing this lesson (e.g. "alice", "bob"). Used for Team Telepathy — teammates see each other\'s lessons in session_start. Also powers brain_who_knows and team_expertise_map.',
|
|
579
|
+
},
|
|
580
|
+
visibility: {
|
|
581
|
+
type: 'string',
|
|
582
|
+
enum: ['team', 'private', 'public'],
|
|
583
|
+
description: 'Who can see this lesson. "team" (default) = all team members. "private" = only accessible via exact recall_best_solution, never surfaced in smart_recall or team_recall. "public" = same as team (public syndication planned).',
|
|
579
584
|
},
|
|
580
585
|
},
|
|
581
586
|
required: ['instance_id', 'topic', 'outcome', 'what_worked'],
|
|
@@ -817,6 +822,77 @@ const TOOLS = [
|
|
|
817
822
|
required: ['instance_id', 'topic'],
|
|
818
823
|
},
|
|
819
824
|
},
|
|
825
|
+
{
|
|
826
|
+
name: 'brain_file_map',
|
|
827
|
+
description:
|
|
828
|
+
'Show what cachly knows about a list of files — experts + related lessons per file. ' +
|
|
829
|
+
'Call this before starting work on unfamiliar files, or in sync_file_changes to see what knowledge exists. ' +
|
|
830
|
+
'For each file path: shows who has previously touched it (from learn_from_attempts author+file_paths) ' +
|
|
831
|
+
'and which lessons reference it. ' +
|
|
832
|
+
'Example: brain_file_map(file_paths=["src/auth/jwt.ts"]) → "🥇 alice (3× · today) — related: fix:jwt-expiry".',
|
|
833
|
+
inputSchema: {
|
|
834
|
+
type: 'object',
|
|
835
|
+
properties: {
|
|
836
|
+
instance_id: { type: 'string', description: 'UUID of the cache instance' },
|
|
837
|
+
file_paths: {
|
|
838
|
+
type: 'array',
|
|
839
|
+
items: { type: 'string' },
|
|
840
|
+
description: 'File paths to look up (max 10)',
|
|
841
|
+
},
|
|
842
|
+
},
|
|
843
|
+
required: ['instance_id', 'file_paths'],
|
|
844
|
+
},
|
|
845
|
+
},
|
|
846
|
+
{
|
|
847
|
+
name: 'team_expertise_map',
|
|
848
|
+
description:
|
|
849
|
+
'Full team expertise overview — who knows what, at a glance. ' +
|
|
850
|
+
'Returns a ranked table of all contributors with their lesson count, top domains, and last-active date. ' +
|
|
851
|
+
'Use for onboarding (who to ask about X?), retrospectives, or to find knowledge gaps. ' +
|
|
852
|
+
'Built automatically from learn_from_attempts(author=...) calls — no setup needed.',
|
|
853
|
+
inputSchema: {
|
|
854
|
+
type: 'object',
|
|
855
|
+
properties: {
|
|
856
|
+
instance_id: { type: 'string', description: 'UUID of the cache instance' },
|
|
857
|
+
top_n: { type: 'number', description: 'Max contributors to show (default: 20)' },
|
|
858
|
+
},
|
|
859
|
+
required: ['instance_id'],
|
|
860
|
+
},
|
|
861
|
+
},
|
|
862
|
+
{
|
|
863
|
+
name: 'skill_gaps',
|
|
864
|
+
description:
|
|
865
|
+
'Show knowledge blind spots in your Brain — domains with unresolved failures, ' +
|
|
866
|
+
'lessons with missing attribution, and areas where brain_who_knows cannot help. ' +
|
|
867
|
+
'Run periodically to find where to focus knowledge capture effort. ' +
|
|
868
|
+
'Returns a prioritized list: 🔴 critical (failures with no solutions) → 🟡 warn → 🔵 info. ' +
|
|
869
|
+
'Pairs with brain_coverage for a full knowledge-health picture.',
|
|
870
|
+
inputSchema: {
|
|
871
|
+
type: 'object',
|
|
872
|
+
properties: {
|
|
873
|
+
instance_id: { type: 'string', description: 'UUID of the cache instance' },
|
|
874
|
+
min_failures: { type: 'number', description: 'Min failure count to flag a domain as a gap (default: 1)' },
|
|
875
|
+
},
|
|
876
|
+
required: ['instance_id'],
|
|
877
|
+
},
|
|
878
|
+
},
|
|
879
|
+
{
|
|
880
|
+
name: 'brain_coverage',
|
|
881
|
+
description:
|
|
882
|
+
'Knowledge-coverage health score for your codebase — scored 0-100. ' +
|
|
883
|
+
'Reports: total lessons, success ratio, attribution completeness, team engagement, and file coverage vs git ls-files. ' +
|
|
884
|
+
'Run after brain_from_git or periodically to track knowledge-capture progress. ' +
|
|
885
|
+
'Use skill_gaps to find what to fix. ' +
|
|
886
|
+
'Example: brain_coverage() → "🟢 Overall score: 78/100 · 42 lessons · 6 contributors · 31% files covered".',
|
|
887
|
+
inputSchema: {
|
|
888
|
+
type: 'object',
|
|
889
|
+
properties: {
|
|
890
|
+
instance_id: { type: 'string', description: 'UUID of the cache instance' },
|
|
891
|
+
repo_path: { type: 'string', description: 'Path to the git repository (default: current directory)' },
|
|
892
|
+
},
|
|
893
|
+
required: ['instance_id'],
|
|
894
|
+
},
|
|
895
|
+
},
|
|
820
896
|
{
|
|
821
897
|
name: 'sync_file_changes',
|
|
822
898
|
description:
|