@karmaniverous/jeeves-watcher 0.5.0-1 → 0.5.0
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.
|
@@ -1,19 +1,44 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: jeeves-watcher
|
|
3
3
|
description: >
|
|
4
|
-
Semantic search
|
|
5
|
-
|
|
6
|
-
|
|
4
|
+
Semantic search across a structured document archive. Use when you need to
|
|
5
|
+
recall prior context, find documents, answer questions that require searching
|
|
6
|
+
across domains (email, Slack, Jira, codebase, meetings, projects), or enrich
|
|
7
|
+
document metadata.
|
|
7
8
|
---
|
|
8
9
|
|
|
9
10
|
# jeeves-watcher — Search & Discovery
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
## Theory of Operation
|
|
13
|
+
|
|
14
|
+
You have access to a **semantic archive** of your human's working world: email, Slack messages, Jira tickets, code repositories, meeting notes, project documents, and more. Everything is indexed, chunked, embedded, and searchable. This is your long-term memory for anything beyond the current conversation.
|
|
15
|
+
|
|
16
|
+
**When to reach for the watcher:**
|
|
17
|
+
|
|
18
|
+
- **Someone asks about something that happened.** A meeting, a decision, a conversation, a ticket. You weren't there, but the archive was. Search it.
|
|
19
|
+
- **You need context you don't have.** Before asking the human "what's the status of X?", search for X. The answer is probably already indexed.
|
|
20
|
+
- **You're working on a project and need background.** Architecture decisions, prior discussions, related tickets, relevant code. Search by topic, filter by domain.
|
|
21
|
+
- **You need to verify something.** Don't guess from stale memory. Search for the current state.
|
|
22
|
+
- **You want to connect dots across domains.** The same topic might appear in a Jira ticket, a Slack thread, an email, and a code commit. A single semantic search surfaces all of them.
|
|
23
|
+
|
|
24
|
+
**When NOT to use it:**
|
|
25
|
+
|
|
26
|
+
- You already have the information in the current conversation
|
|
27
|
+
- The question is about general knowledge, not the human's specific context
|
|
28
|
+
- The watcher is unreachable (fall back to filesystem browsing)
|
|
29
|
+
|
|
30
|
+
**How it works, conceptually:**
|
|
31
|
+
|
|
32
|
+
The watcher monitors directories on the filesystem. When files change, it extracts text, applies **inference rules** (config-driven pattern matching) to derive structured metadata, and embeds everything into a vector store. Each inference rule defines a record type: what files it matches, what metadata schema applies, how to extract fields.
|
|
33
|
+
|
|
34
|
+
You don't need to know the rules in advance. The config is introspectable at runtime. Orient once per session, then search with confidence.
|
|
35
|
+
|
|
36
|
+
**Key mental model:** Think of it as a search engine scoped to your human's data, with structured metadata on every result. Plain semantic search works. Adding metadata filters makes it precise.
|
|
12
37
|
|
|
13
38
|
## Quick Start
|
|
14
39
|
|
|
15
|
-
1. **Orient yourself** (once per session) —
|
|
16
|
-
2. **Search** —
|
|
40
|
+
1. **Orient yourself** (once per session) — learn the deployment's organizational strategy and available record types
|
|
41
|
+
2. **Search** — semantic search with optional metadata filters
|
|
17
42
|
3. **Read source** — retrieve full file content for complete context
|
|
18
43
|
|
|
19
44
|
## Tools
|
|
@@ -388,16 +413,6 @@ Use `watcher_enrich` to tag documents after analysis (e.g., `reviewed: true`, pr
|
|
|
388
413
|
|
|
389
414
|
---
|
|
390
415
|
|
|
391
|
-
## Memory Recall
|
|
392
|
-
|
|
393
|
-
If `$.slots.memory` is present during orientation, this instance indexes memory files. Before answering questions about prior work, decisions, dates, people, preferences, or todos:
|
|
394
|
-
|
|
395
|
-
1. Search with `watcher_search` using the memory slot filter
|
|
396
|
-
2. Use `read` with offset/limit for full context from matched files
|
|
397
|
-
3. Include `Source: <file_path>` citations in your response
|
|
398
|
-
|
|
399
|
-
---
|
|
400
|
-
|
|
401
416
|
## Error Handling
|
|
402
417
|
|
|
403
418
|
If the watcher is unreachable:
|
package/package.json
CHANGED