@swarmvaultai/cli 0.1.0 → 0.1.2
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/LICENSE +21 -0
- package/README.md +88 -6
- package/dist/index.js +1 -1
- package/package.json +21 -2
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 SwarmVault
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,21 +1,103 @@
|
|
|
1
1
|
# @swarmvaultai/cli
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
`@swarmvaultai/cli` is the globally installable entry point for SwarmVault.
|
|
4
|
+
|
|
5
|
+
It gives you the `swarmvault` command for creating and operating a local-first LLM knowledge vault that compiles into markdown, graph data, and local search artifacts.
|
|
4
6
|
|
|
5
7
|
## Install
|
|
6
8
|
|
|
9
|
+
SwarmVault requires Node `>=24`.
|
|
10
|
+
|
|
7
11
|
```bash
|
|
8
12
|
npm install -g @swarmvaultai/cli
|
|
9
13
|
```
|
|
10
14
|
|
|
11
|
-
|
|
15
|
+
Installed commands:
|
|
16
|
+
|
|
17
|
+
- `swarmvault`
|
|
18
|
+
- `vault` as a compatibility alias
|
|
19
|
+
|
|
20
|
+
## First Run
|
|
12
21
|
|
|
13
22
|
```bash
|
|
23
|
+
mkdir my-vault
|
|
24
|
+
cd my-vault
|
|
14
25
|
swarmvault init
|
|
15
|
-
swarmvault ingest
|
|
26
|
+
swarmvault ingest ./notes.md
|
|
16
27
|
swarmvault compile
|
|
17
|
-
swarmvault query "What
|
|
18
|
-
swarmvault lint
|
|
28
|
+
swarmvault query "What themes keep recurring?" --save
|
|
19
29
|
swarmvault graph serve
|
|
20
|
-
swarmvault install --agent codex
|
|
21
30
|
```
|
|
31
|
+
|
|
32
|
+
## Commands
|
|
33
|
+
|
|
34
|
+
### `swarmvault init`
|
|
35
|
+
|
|
36
|
+
Creates a new SwarmVault workspace in the current directory, including:
|
|
37
|
+
|
|
38
|
+
- `raw/`
|
|
39
|
+
- `wiki/`
|
|
40
|
+
- `state/`
|
|
41
|
+
- `agent/`
|
|
42
|
+
- `swarmvault.config.json`
|
|
43
|
+
|
|
44
|
+
### `swarmvault ingest <path-or-url>`
|
|
45
|
+
|
|
46
|
+
Adds a local file or URL to the vault and records a manifest in `state/manifests/`.
|
|
47
|
+
|
|
48
|
+
### `swarmvault compile`
|
|
49
|
+
|
|
50
|
+
Compiles the current manifests into:
|
|
51
|
+
|
|
52
|
+
- generated markdown in `wiki/`
|
|
53
|
+
- structured graph data in `state/graph.json`
|
|
54
|
+
- local search data in `state/search.sqlite`
|
|
55
|
+
|
|
56
|
+
### `swarmvault query "<question>" [--save]`
|
|
57
|
+
|
|
58
|
+
Queries the compiled vault. Use `--save` to write the result into `wiki/outputs/` so the answer becomes part of the vault.
|
|
59
|
+
|
|
60
|
+
### `swarmvault lint`
|
|
61
|
+
|
|
62
|
+
Runs anti-drift checks and other health checks against the current vault state.
|
|
63
|
+
|
|
64
|
+
### `swarmvault graph serve`
|
|
65
|
+
|
|
66
|
+
Starts the local graph UI backed by `state/graph.json`.
|
|
67
|
+
|
|
68
|
+
### `swarmvault install --agent <codex|claude|cursor>`
|
|
69
|
+
|
|
70
|
+
Writes agent-specific rules into the current project so your coding agent understands the SwarmVault directory contract and workflow.
|
|
71
|
+
|
|
72
|
+
## Provider Configuration
|
|
73
|
+
|
|
74
|
+
SwarmVault defaults to a local heuristic provider so the CLI can run without API keys, but real vaults should usually point at an actual model provider.
|
|
75
|
+
|
|
76
|
+
Inside an existing `swarmvault.config.json`, your `providers` and `tasks` sections can look like this:
|
|
77
|
+
|
|
78
|
+
```json
|
|
79
|
+
{
|
|
80
|
+
"providers": {
|
|
81
|
+
"ollama-local": {
|
|
82
|
+
"type": "ollama",
|
|
83
|
+
"model": "qwen3:latest",
|
|
84
|
+
"baseUrl": "http://127.0.0.1:11434/v1",
|
|
85
|
+
"capabilities": ["chat", "structured", "vision", "local"]
|
|
86
|
+
}
|
|
87
|
+
},
|
|
88
|
+
"tasks": {
|
|
89
|
+
"compileProvider": "ollama-local",
|
|
90
|
+
"queryProvider": "ollama-local",
|
|
91
|
+
"lintProvider": "ollama-local",
|
|
92
|
+
"visionProvider": "ollama-local"
|
|
93
|
+
}
|
|
94
|
+
}
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Generic OpenAI-compatible APIs are also supported through config alone when the provider follows the same request shape closely enough.
|
|
98
|
+
|
|
99
|
+
## Troubleshooting
|
|
100
|
+
|
|
101
|
+
- If `graph serve` says the viewer build is missing, run `pnpm build` in the repository first
|
|
102
|
+
- If a provider claims OpenAI compatibility but fails structured generation, declare only the capabilities it actually supports
|
|
103
|
+
- Node 24 may emit an experimental warning for `node:sqlite`; this is expected in the current release
|
package/dist/index.js
CHANGED
|
@@ -13,7 +13,7 @@ import {
|
|
|
13
13
|
startGraphServer
|
|
14
14
|
} from "@swarmvaultai/engine";
|
|
15
15
|
var program = new Command();
|
|
16
|
-
program.name("swarmvault").description("SwarmVault is a local-first LLM wiki compiler with graph outputs and pluggable providers.").version("0.1.
|
|
16
|
+
program.name("swarmvault").description("SwarmVault is a local-first LLM wiki compiler with graph outputs and pluggable providers.").version("0.1.2");
|
|
17
17
|
program.command("init").description("Initialize a SwarmVault workspace in the current directory.").action(async () => {
|
|
18
18
|
await initVault(process.cwd());
|
|
19
19
|
process.stdout.write("Initialized SwarmVault workspace.\n");
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@swarmvaultai/cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"description": "Global CLI for SwarmVault.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -8,6 +8,25 @@
|
|
|
8
8
|
"files": [
|
|
9
9
|
"dist"
|
|
10
10
|
],
|
|
11
|
+
"repository": {
|
|
12
|
+
"type": "git",
|
|
13
|
+
"url": "git+https://github.com/swarmclawai/swarmvault.git"
|
|
14
|
+
},
|
|
15
|
+
"homepage": "https://swarmvault.ai",
|
|
16
|
+
"bugs": {
|
|
17
|
+
"url": "https://github.com/swarmclawai/swarmvault/issues"
|
|
18
|
+
},
|
|
19
|
+
"keywords": [
|
|
20
|
+
"swarmvault",
|
|
21
|
+
"llm",
|
|
22
|
+
"knowledge-base",
|
|
23
|
+
"markdown",
|
|
24
|
+
"obsidian",
|
|
25
|
+
"graph",
|
|
26
|
+
"cli",
|
|
27
|
+
"local-first"
|
|
28
|
+
],
|
|
29
|
+
"license": "MIT",
|
|
11
30
|
"bin": {
|
|
12
31
|
"swarmvault": "dist/index.js",
|
|
13
32
|
"vault": "dist/index.js"
|
|
@@ -20,7 +39,7 @@
|
|
|
20
39
|
},
|
|
21
40
|
"dependencies": {
|
|
22
41
|
"commander": "^14.0.1",
|
|
23
|
-
"@swarmvaultai/engine": "0.1.
|
|
42
|
+
"@swarmvaultai/engine": "0.1.2"
|
|
24
43
|
},
|
|
25
44
|
"devDependencies": {
|
|
26
45
|
"@types/node": "^24.6.0",
|