@imunitic/synapse 0.2.6 → 0.2.7
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.
|
@@ -43,7 +43,7 @@ frontmatter (unlike task notes) -- a content match, scoped to `designs/`. Needs
|
|
|
43
43
|
synapse vault-search --fields frontmatter.title <<'EOF'
|
|
44
44
|
{"and": [
|
|
45
45
|
{"glob": ["designs/*", {"var": "path"}]},
|
|
46
|
-
{"regexp": ["## Status
|
|
46
|
+
{"regexp": ["## Status\nDiscussing", {"var": "content"}]}
|
|
47
47
|
]}
|
|
48
48
|
EOF
|
|
49
49
|
```
|
|
@@ -57,7 +57,7 @@ only the title:
|
|
|
57
57
|
synapse vault-search --fields frontmatter.title <<'EOF'
|
|
58
58
|
{"and": [
|
|
59
59
|
{"glob": ["designs/*", {"var": "path"}]},
|
|
60
|
-
{"regexp": ["## Status
|
|
60
|
+
{"regexp": ["## Status\nReady", {"var": "content"}]},
|
|
61
61
|
{"!": [{"regexp": ["Compiled task:", {"var": "content"}]}]}
|
|
62
62
|
]}
|
|
63
63
|
EOF
|
|
@@ -74,22 +74,24 @@ rather than reading the note again:
|
|
|
74
74
|
synapse vault-search --fields frontmatter.title,content <<'EOF'
|
|
75
75
|
{"and": [
|
|
76
76
|
{"glob": ["designs/*", {"var": "path"}]},
|
|
77
|
-
{"regexp": ["## Open Questions
|
|
77
|
+
{"regexp": ["## Open Questions\n- ", {"var": "content"}]}
|
|
78
78
|
]}
|
|
79
79
|
EOF
|
|
80
80
|
```
|
|
81
81
|
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
82
|
+
This spans every status, so take two things from each row's `content` column directly instead of
|
|
83
|
+
chaining further status-specific `regexp` branches onto the query: the line following `## Status`
|
|
84
|
+
(normally `Discussing`/`Ready`/`Reference`, but a note written before the three-word convention can
|
|
85
|
+
carry free text instead, e.g. `Superseded by [[...]]` -- report that verbatim rather than forcing it
|
|
86
|
+
into a bucket, surfacing an odd note beats losing it) and the target of a `> Compiled task: [[...]]`
|
|
87
|
+
line, if present -- that's the compiled task, parsed straight out of the wikilink text rather than
|
|
88
|
+
resolved through any vault-wide link index.
|
|
89
|
+
|
|
90
|
+
A `regexp` pattern containing a literal newline (`\n`) must be written with a single backslash, byte-
|
|
91
|
+
for-byte, in the JSON text piped to `vault-search` -- the heredocs above are unquoted-delimiter
|
|
92
|
+
(`<<'EOF'`), so nothing here re-escapes it; `\\n` would reach the JSON parser as a literal backslash
|
|
93
|
+
followed by `n`, never matching a real line break, and every one of this command's five queries would
|
|
94
|
+
silently stop finding anything under a multi-line pattern.
|
|
93
95
|
|
|
94
96
|
**4. Open task notes with at least one unchecked item.** Task notes carry `status:` in frontmatter,
|
|
95
97
|
unlike design notes -- filter there first, and request `content` to count `- [ ]` lines directly from
|
|
@@ -45,7 +45,7 @@ frontmatter (unlike task notes) -- a content match, scoped to `designs/`. Needs
|
|
|
45
45
|
synapse vault-search --fields frontmatter.title <<'EOF'
|
|
46
46
|
{"and": [
|
|
47
47
|
{"glob": ["designs/*", {"var": "path"}]},
|
|
48
|
-
{"regexp": ["## Status
|
|
48
|
+
{"regexp": ["## Status\nDiscussing", {"var": "content"}]}
|
|
49
49
|
]}
|
|
50
50
|
EOF
|
|
51
51
|
```
|
|
@@ -59,7 +59,7 @@ title -- "`Ready` and missing that line" is a direct signal, not fuzzy title-mat
|
|
|
59
59
|
synapse vault-search --fields frontmatter.title <<'EOF'
|
|
60
60
|
{"and": [
|
|
61
61
|
{"glob": ["designs/*", {"var": "path"}]},
|
|
62
|
-
{"regexp": ["## Status
|
|
62
|
+
{"regexp": ["## Status\nReady", {"var": "content"}]},
|
|
63
63
|
{"!": [{"regexp": ["Compiled task:", {"var": "content"}]}]}
|
|
64
64
|
]}
|
|
65
65
|
EOF
|
|
@@ -75,21 +75,23 @@ the status directly out of the returned text rather than reading the note again:
|
|
|
75
75
|
synapse vault-search --fields frontmatter.title,content <<'EOF'
|
|
76
76
|
{"and": [
|
|
77
77
|
{"glob": ["designs/*", {"var": "path"}]},
|
|
78
|
-
{"regexp": ["## Open Questions
|
|
78
|
+
{"regexp": ["## Open Questions\n- ", {"var": "content"}]}
|
|
79
79
|
]}
|
|
80
80
|
EOF
|
|
81
81
|
```
|
|
82
82
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
83
|
+
This spans every status, so take the line following `## Status` directly out of each row's `content`
|
|
84
|
+
column instead of chaining further status-specific `regexp` branches onto the query -- normally
|
|
85
|
+
`Discussing`/`Ready`/`Reference`, but a design note written before that three-word convention was
|
|
86
|
+
standardized can carry free text there instead (e.g. `Superseded by [[...]]`); report that verbatim
|
|
87
|
+
rather than forcing it into a bucket, surfacing an odd note beats losing it, the same reasoning behind
|
|
88
|
+
reporting a 0-unchecked task instead of hiding it (see Query 4 below).
|
|
89
|
+
|
|
90
|
+
A `regexp` pattern containing a literal newline (`\n`) must be written with a single backslash, byte-
|
|
91
|
+
for-byte, in the JSON text piped to `vault-search` -- the heredocs above are unquoted-delimiter
|
|
92
|
+
(`<<'EOF'`), so nothing here re-escapes it; `\\n` would reach the JSON parser as a literal backslash
|
|
93
|
+
followed by `n`, never matching a real line break, and every one of this skill's five queries would
|
|
94
|
+
silently stop finding anything under a multi-line pattern.
|
|
93
95
|
|
|
94
96
|
**4. Open task notes with at least one unchecked item.** Task notes carry `status:` in frontmatter,
|
|
95
97
|
unlike design notes -- filter there first, and request `content` to count `- [ ]` lines directly from
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@imunitic/synapse",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.7",
|
|
4
4
|
"description": "Memory for Claude Code, Codex CLI, and OpenCode: a durable Obsidian vault plus a per-repo code graph.",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -22,9 +22,9 @@
|
|
|
22
22
|
"*.conf.template"
|
|
23
23
|
],
|
|
24
24
|
"optionalDependencies": {
|
|
25
|
-
"@imunitic/synapse-darwin-arm64": "0.2.
|
|
26
|
-
"@imunitic/synapse-linux-x64": "0.2.
|
|
27
|
-
"@imunitic/synapse-linux-arm64": "0.2.
|
|
25
|
+
"@imunitic/synapse-darwin-arm64": "0.2.7",
|
|
26
|
+
"@imunitic/synapse-linux-x64": "0.2.7",
|
|
27
|
+
"@imunitic/synapse-linux-arm64": "0.2.7"
|
|
28
28
|
},
|
|
29
29
|
"license": "SEE LICENSE IN LICENSE"
|
|
30
30
|
}
|