pi-vault-mind 0.9.1 → 0.9.4
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/settings-ui.js
CHANGED
|
@@ -8,10 +8,10 @@ const ONBOARDING_PLUGIN_REQUIREMENTS = [
|
|
|
8
8
|
id: "obsidian42-brat",
|
|
9
9
|
label: "BRAT (Beta Reviewer's Auto-update Tester)",
|
|
10
10
|
required: true,
|
|
11
|
-
reason: "required to install
|
|
11
|
+
reason: "required to install vault-mind plugin (not yet in community registry)",
|
|
12
12
|
},
|
|
13
13
|
{
|
|
14
|
-
id: "
|
|
14
|
+
id: "vault-mind",
|
|
15
15
|
label: "Vault Mind plugin",
|
|
16
16
|
required: true,
|
|
17
17
|
reason: "native setup/status/chat UI and local bridge controls",
|
|
@@ -67,7 +67,7 @@ const formatExecError = (err) => {
|
|
|
67
67
|
}
|
|
68
68
|
return err instanceof Error ? err.message : String(err);
|
|
69
69
|
};
|
|
70
|
-
const BRAT_REPO = "kylebrodeur/obsidian-
|
|
70
|
+
const BRAT_REPO = "kylebrodeur/obsidian-vault-mind";
|
|
71
71
|
const installViaBrat = () => {
|
|
72
72
|
try {
|
|
73
73
|
execFileSync("obsidian", ["eval", `app.plugins.getPlugin("obsidian42-brat").addPlugin("${BRAT_REPO}")`], { encoding: "utf-8", stdio: ["ignore", "pipe", "pipe"] });
|
|
@@ -79,7 +79,7 @@ const installViaBrat = () => {
|
|
|
79
79
|
};
|
|
80
80
|
const installObsidianPlugin = (pluginId) => {
|
|
81
81
|
// vault-mind plugin must be installed via BRAT (not in community registry)
|
|
82
|
-
if (pluginId === "
|
|
82
|
+
if (pluginId === "vault-mind") {
|
|
83
83
|
return installViaBrat();
|
|
84
84
|
}
|
|
85
85
|
try {
|
|
@@ -94,8 +94,8 @@ const installObsidianPlugin = (pluginId) => {
|
|
|
94
94
|
}
|
|
95
95
|
};
|
|
96
96
|
export const buildPluginInstallGuidance = (plugins) => {
|
|
97
|
-
const bratPlugins = plugins.filter((p) => p.id === "
|
|
98
|
-
const registryPlugins = plugins.filter((p) => p.id !== "
|
|
97
|
+
const bratPlugins = plugins.filter((p) => p.id === "vault-mind");
|
|
98
|
+
const registryPlugins = plugins.filter((p) => p.id !== "vault-mind");
|
|
99
99
|
const lines = ["Install missing Obsidian plugins:", ""];
|
|
100
100
|
if (registryPlugins.length > 0) {
|
|
101
101
|
lines.push("CLI (when Obsidian CLI is available):", ...registryPlugins.map((plugin) => ` obsidian plugin:install id=${plugin.id} enable`), "", "Deep links (open each URI):", ...registryPlugins.map((plugin) => ` obsidian://show-plugin?id=${encodeURIComponent(plugin.id)}`), "", "GUI fallback: Obsidian → Settings → Community plugins → Browse");
|
|
@@ -54,7 +54,7 @@ describe("setupWizard plugin onboarding helpers", () => {
|
|
|
54
54
|
const guidance = buildPluginInstallGuidance(getMissingOnboardingPlugins(vault));
|
|
55
55
|
assert.match(guidance, /obsidian plugin:install id=obsidian42-brat enable/);
|
|
56
56
|
assert.match(guidance, /obsidian plugin:install id=actions-uri enable/);
|
|
57
|
-
assert.match(guidance, /BRAT.*kylebrodeur\/obsidian-
|
|
57
|
+
assert.match(guidance, /BRAT.*kylebrodeur\/obsidian-vault-mind/);
|
|
58
58
|
fs.rmSync(vault, { recursive: true, force: true });
|
|
59
59
|
});
|
|
60
60
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pi-vault-mind",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.4",
|
|
4
4
|
"description": "Passive Obsidian vault extension for pi. Watches @agent markers, dispatches forked subagents (Miner, Broadcaster, Heavy-Lifter), stores in LanceDB with vector + FTS + graph. Multi-agent 'Drop & Forget' workflow for the pi agent ecosystem.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# scripts/publish-obsidian-plugin.sh
|
|
3
|
+
#
|
|
4
|
+
# Publishes the Obsidian plugin from packages/obsidian/ to the separate
|
|
5
|
+
# kylebrodeur/obsidian-vault-mind repo and creates a GitHub release.
|
|
6
|
+
#
|
|
7
|
+
# Usage:
|
|
8
|
+
# ./scripts/publish-obsidian-plugin.sh [version]
|
|
9
|
+
#
|
|
10
|
+
# If version is omitted, reads from packages/obsidian/manifest.json.
|
|
11
|
+
# Requires: gh (GitHub CLI), git, jq
|
|
12
|
+
|
|
13
|
+
set -euo pipefail
|
|
14
|
+
|
|
15
|
+
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
16
|
+
REPO_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
17
|
+
PLUGIN_DIR="$REPO_ROOT/packages/obsidian"
|
|
18
|
+
TARGET_REPO="kylebrodeur/obsidian-vault-mind"
|
|
19
|
+
|
|
20
|
+
# Get version from manifest or argument
|
|
21
|
+
VERSION="${1:-$(jq -r .version "$PLUGIN_DIR/manifest.json")}"
|
|
22
|
+
echo "Publishing vault-mind plugin v$VERSION"
|
|
23
|
+
|
|
24
|
+
# Verify required files exist
|
|
25
|
+
for f in main.js manifest.json styles.css; do
|
|
26
|
+
if [ ! -f "$PLUGIN_DIR/$f" ]; then
|
|
27
|
+
echo "ERROR: $PLUGIN_DIR/$f not found. Run the plugin build first."
|
|
28
|
+
exit 1
|
|
29
|
+
fi
|
|
30
|
+
done
|
|
31
|
+
|
|
32
|
+
# Clone the target repo into a temp dir
|
|
33
|
+
TMPDIR="$(mktemp -d)"
|
|
34
|
+
trap 'rm -rf "$TMPDIR"' EXIT
|
|
35
|
+
|
|
36
|
+
if [ -n "${GH_TOKEN:-}" ]; then
|
|
37
|
+
git clone "https://x-access-token:${GH_TOKEN}@github.com/$TARGET_REPO.git" "$TMPDIR/repo" --depth 1
|
|
38
|
+
else
|
|
39
|
+
git clone "git@github.com:$TARGET_REPO.git" "$TMPDIR/repo" --depth 1
|
|
40
|
+
fi
|
|
41
|
+
cd "$TMPDIR/repo"
|
|
42
|
+
|
|
43
|
+
# Copy built assets
|
|
44
|
+
cp "$PLUGIN_DIR/main.js" .
|
|
45
|
+
cp "$PLUGIN_DIR/manifest.json" .
|
|
46
|
+
cp "$PLUGIN_DIR/styles.css" .
|
|
47
|
+
cp "$PLUGIN_DIR/versions.json" .
|
|
48
|
+
cp "$PLUGIN_DIR/README.md" .
|
|
49
|
+
|
|
50
|
+
# Commit and push if anything changed
|
|
51
|
+
if git diff --quiet && git diff --cached --quiet; then
|
|
52
|
+
echo "No changes to plugin files."
|
|
53
|
+
else
|
|
54
|
+
git add -A
|
|
55
|
+
git commit -m "release: v$VERSION"
|
|
56
|
+
git push origin main
|
|
57
|
+
echo "Pushed updated plugin files to $TARGET_REPO"
|
|
58
|
+
fi
|
|
59
|
+
|
|
60
|
+
# Create release with assets (tag = version, no 'v' prefix per Obsidian convention)
|
|
61
|
+
if gh release view "$VERSION" --repo "$TARGET_REPO" >/dev/null 2>&1; then
|
|
62
|
+
echo "Release $VERSION already exists, skipping."
|
|
63
|
+
else
|
|
64
|
+
gh release create "$VERSION" \
|
|
65
|
+
main.js \
|
|
66
|
+
manifest.json \
|
|
67
|
+
styles.css \
|
|
68
|
+
--repo "$TARGET_REPO" \
|
|
69
|
+
--title "v$VERSION" \
|
|
70
|
+
--notes "Release v$VERSION of the Vault Mind Obsidian plugin.
|
|
71
|
+
|
|
72
|
+
Install via BRAT: add \`kylebrodeur/obsidian-vault-mind\` as a beta plugin.
|
|
73
|
+
Or download assets and extract to \`.obsidian/plugins/vault-mind/\`."
|
|
74
|
+
echo "Created release $VERSION on $TARGET_REPO"
|
|
75
|
+
fi
|
|
76
|
+
|
|
77
|
+
echo "Done."
|