@veolab/discoverylab 1.4.4 → 1.6.5

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 (33) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/README.md +70 -211
  4. package/assets/applab-bundle-icon.png +0 -0
  5. package/assets/icons/icons8-claude-150.png +0 -0
  6. package/assets/icons/icons8-claude-500.png +0 -0
  7. package/dist/{chunk-CUBQRT5L.js → chunk-JAA53ES7.js} +111 -2
  8. package/dist/{chunk-HB3YPWF3.js → chunk-Q7Q3A2ZI.js} +301 -10
  9. package/dist/{chunk-XKX6NBHF.js → chunk-TWRWARU4.js} +52 -2
  10. package/dist/{chunk-2UUMLAVR.js → chunk-V6RREMYD.js} +332 -38
  11. package/dist/cli.js +164 -28
  12. package/dist/export/infographic-template.html +254 -0
  13. package/dist/import-W2JEW254.js +180 -0
  14. package/dist/index.d.ts +30 -6
  15. package/dist/index.html +473 -11
  16. package/dist/index.js +5 -5
  17. package/dist/infographic-GQAHEOAA.js +183 -0
  18. package/dist/mcpb/node_modules/@anthropic-ai/sdk/src/lib/.keep +4 -0
  19. package/dist/mcpb/node_modules/better-sqlite3/build/Release/.deps/Release/better_sqlite3.node.d +1 -0
  20. package/dist/mcpb/node_modules/better-sqlite3/build/Release/.deps/Release/obj.target/better_sqlite3/src/better_sqlite3.o.d +133 -0
  21. package/dist/mcpb/node_modules/better-sqlite3/build/Release/.deps/Release/obj.target/deps/locate_sqlite3.stamp.d +1 -0
  22. package/dist/mcpb/node_modules/better-sqlite3/build/Release/.deps/Release/obj.target/sqlite3/gen/sqlite3/sqlite3.o.d +4 -0
  23. package/dist/mcpb/node_modules/better-sqlite3/build/Release/.deps/Release/obj.target/test_extension/deps/test_extension.o.d +7 -0
  24. package/dist/mcpb/node_modules/better-sqlite3/build/Release/.deps/Release/sqlite3.a.d +1 -0
  25. package/dist/mcpb/node_modules/better-sqlite3/build/Release/.deps/Release/test_extension.node.d +1 -0
  26. package/dist/mcpb/node_modules/better-sqlite3/build/Release/.deps/ba23eeee118cd63e16015df367567cb043fed872.intermediate.d +1 -0
  27. package/dist/{server-QFNKZCOJ.js → server-C2NZM2RV.js} +1 -1
  28. package/dist/{server-OVOACIOJ.js → server-WN6DCCUA.js} +1 -1
  29. package/dist/{setup-6JJYKKBS.js → setup-SMN7FJNZ.js} +5 -2
  30. package/dist/{tools-Q7OZO732.js → tools-VXU3JEQP.js} +6 -4
  31. package/doc/esvp-protocol.md +116 -0
  32. package/package.json +9 -3
  33. package/skills/knowledge-brain/SKILL.md +44 -43
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  name: knowledge-brain
3
- description: Search app knowledge from captured flows - UI, screens, behaviors
3
+ description: Search and visualize app knowledge from captured flows
4
4
  context: fork
5
5
  agent: general-purpose
6
6
  always: true
@@ -11,71 +11,72 @@ tags:
11
11
  - app-flow
12
12
  - ui
13
13
  - screens
14
+ - brain
14
15
  ---
15
16
 
16
17
  # DiscoveryLab Knowledge Brain
17
18
 
18
- DiscoveryLab captures app recordings and analyzes them with OCR + AI, building a knowledge base of every flow, screen, and UI element. This skill lets you query that knowledge.
19
+ DiscoveryLab captures app recordings and analyzes them with AI, building a knowledge base of every flow, screen, and UI element. This skill lets you query and visualize that knowledge.
19
20
 
20
- ## When to Use
21
+ ## Default behavior: Visual first
21
22
 
22
- Use this whenever the user asks about:
23
- - How a specific screen or flow works in their app
24
- - What UI elements exist on a page (buttons, inputs, labels)
25
- - The user journey through a feature (onboarding, checkout, settings)
26
- - Comparing different captures of the same flow
27
- - Any reference to app screens, recordings, or captured content
28
- - Context about what was tested or recorded
29
-
30
- Also use proactively when:
31
- - The user is working on code related to a feature that was captured
32
- - You need visual context about the app to give better answers
33
- - The user mentions a Jira ticket that might be linked to a project
23
+ When the user asks about an app flow, **show it visually by default** using `dlab.knowledge.open`. The returned HTML renders as an interactive canvas with animated frame player, annotations, and navigation. Only fall back to text if the user explicitly asks for text or if no frames are available.
34
24
 
35
25
  ## Tools
36
26
 
37
- ### `dlab.knowledge.search`
38
- Semantic search across all captured projects. Matches against: project names, AI analysis summaries, OCR text from every screen, tags, and linked tickets.
27
+ ### `dlab.knowledge.open` (primary - visual)
28
+ Opens an interactive infographic of an app flow. Returns self-contained HTML.
39
29
 
40
30
  ```
41
- dlab.knowledge.search { query: "login" }
42
- dlab.knowledge.search { query: "paywall" }
43
- dlab.knowledge.search { query: "onboarding flow" }
31
+ dlab.knowledge.open { query: "login" }
32
+ dlab.knowledge.open { query: "onboarding flow" }
33
+ dlab.knowledge.open { projectId: "abc123" }
34
+ ```
35
+
36
+ Use when:
37
+ - User asks "how does the login work?"
38
+ - User asks "show me the onboarding"
39
+ - User says "what does the settings screen look like?"
40
+ - Any question about a captured flow where visual context helps
41
+
42
+ ### `dlab.knowledge.search` (text answers)
43
+ Search across all projects. Returns text with overview, flow steps, UI elements.
44
+
45
+ ```
46
+ dlab.knowledge.search { query: "checkout" }
44
47
  dlab.knowledge.search { query: "PROJ-123" }
45
- dlab.knowledge.search { query: "settings profile" }
46
48
  ```
47
49
 
48
- Returns per match:
49
- - App overview (what the screen/flow does)
50
- - User flow steps (numbered sequence)
51
- - UI elements found (buttons, inputs, navigation)
52
- - OCR text sample (actual text visible on screens)
53
- - Project ID for deeper lookup
50
+ Use when:
51
+ - User asks a specific factual question ("what buttons are on the paywall?")
52
+ - User references a Jira ticket
53
+ - You need quick context without opening a visual
54
54
 
55
- ### `dlab.knowledge.summary`
56
- High-level overview of the entire knowledge base - all projects grouped by app with stats.
55
+ ### `dlab.knowledge.summary` (overview)
56
+ Lists all captured knowledge grouped by app.
57
57
 
58
58
  ```
59
59
  dlab.knowledge.summary {}
60
60
  ```
61
61
 
62
- Use this when:
63
- - The user asks "what do we have captured?"
64
- - You need to orient yourself on what apps/flows exist
65
- - Starting a new conversation and need context
62
+ Use when:
63
+ - User asks "what do we have captured?"
64
+ - Starting a new conversation
65
+ - Need to orient on available projects
66
66
 
67
- ### `dlab.project.get`
68
- Full details on a specific project found via search. Use when the search result summary is not enough.
67
+ ### `dlab.project.import` (sharing)
68
+ Import a shared .applab project file.
69
69
 
70
70
  ```
71
- dlab.project.get { projectId: "<id from search results>" }
71
+ dlab.project.import { filePath: "/path/to/project.applab" }
72
72
  ```
73
73
 
74
- ## How to Respond
74
+ Use when someone shares a .applab file.
75
+
76
+ ## How to respond
75
77
 
76
- 1. **Search first** - never say "I don't have information about that" without searching
77
- 2. **No match?** - run `dlab.knowledge.summary` to show the user what's available
78
- 3. **Multiple results** - present the most recent first, note if there are different versions
79
- 4. **Cite the source** - mention which project/recording the information comes from
80
- 5. **Suggest captures** - if the user asks about a flow that doesn't exist, suggest they capture it with DiscoveryLab
81
- 6. **Be specific** - use the OCR text and UI elements from results to give precise answers, not generic ones
78
+ 1. **Visual first** - use `dlab.knowledge.open` by default for flow questions
79
+ 2. **Search first** - never say "I don't know" without searching
80
+ 3. **No match?** - run `dlab.knowledge.summary` to show what's available
81
+ 4. **Cite the source** - mention which project the information comes from
82
+ 5. **Suggest captures** - if a flow doesn't exist, suggest capturing it