@gorlitzer-labs/seldon 0.1.0 → 0.1.1

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 (3) hide show
  1. package/README.md +51 -11
  2. package/bin/seldon.js +10 -1
  3. package/package.json +24 -6
package/README.md CHANGED
@@ -1,18 +1,58 @@
1
1
  # @gorlitzer-labs/seldon
2
2
 
3
- The installer for **the Seldon stack**. Pick the tools you want from a checklist;
4
- each installs via its native method (npm for the node tools, the shell installer
5
- for bifrost, a venv for demerzel).
3
+ ```
4
+ ███████╗███████╗██╗ ██████╗ ██████╗ ███╗ ██╗
5
+ ██╔════╝██╔════╝██║ ██╔══██╗██╔═══██╗████╗ ██║
6
+ ███████╗█████╗ ██║ ██║ ██║██║ ██║██╔██╗ ██║
7
+ ╚════██║██╔══╝ ██║ ██║ ██║██║ ██║██║╚██╗██║
8
+ ███████║███████╗███████╗██████╔╝╚██████╔╝██║ ╚████║
9
+ ╚══════╝╚══════╝╚══════╝╚═════╝ ╚═════╝ ╚═╝ ╚═══╝
10
+ ```
11
+
12
+ **The installer for the Seldon stack** — a software factory of AI agents.
13
+ Pick the tools you want from a checklist; each installs via its native method
14
+ (npm for the Node tools, a shell installer for bifrost, a venv for demerzel).
15
+
16
+ ## Install
6
17
 
7
18
  ```bash
8
19
  npm i -g @gorlitzer-labs/seldon
9
- seldon # open the checklist — space to pick, enter to install
10
- seldon install factory # or install named modules (pulls in apiary + foundation)
11
- seldon doctor # check external deps (tmux, sops, age, tailscale, python)
12
- seldon list
13
- seldon --dev # link node modules from a monorepo checkout instead of npm
20
+ seldon # open the checklist — ↑↓ move · space pick · a all · enter install
21
+ ```
22
+
23
+ Or name the modules directly:
24
+
25
+ ```bash
26
+ seldon install foundation comb # install just these
27
+ seldon doctor # check external deps (tmux, sops, age, tailscale, python)
28
+ seldon list # everything available
29
+ ```
30
+
31
+ ## The stack
32
+
33
+ | module | what it is | ships via |
34
+ |---|---|---|
35
+ | **foundation** | the seam — a deterministic plan agents follow | npm |
36
+ | **apiary** | the conversation — shared rooms where agents coordinate | npm |
37
+ | **comb** | the vault — keys by name, never by value | npm |
38
+ | **factory** | the floor — 24/7 supervisor + sandboxed agents | npm |
39
+ | **bifrost** | the bridge — many machines, one workspace | shell |
40
+ | **demerzel** | the voice — a fully-local voice assistant | python (macOS / Apple silicon) |
41
+
42
+ Ticking **factory** auto-includes **apiary** + **foundation** (it needs them on PATH).
43
+
44
+ ## Pick the combo for the job
45
+
46
+ It's a stack, not a bundle — install only what you use:
47
+
48
+ - **Solo, one agent** → `seldon install foundation comb` — a plan + secured keys. Add **factory** for the sandbox, **demerzel** for voice.
49
+ - **A team of agents** → add **apiary** (shared rooms) + **factory** (the supervisor).
50
+ - **Across machines / from your phone** → add **bifrost**.
51
+
52
+ ## From a checkout
53
+
54
+ ```bash
55
+ seldon --dev # link Node modules from a monorepo checkout instead of npm
14
56
  ```
15
57
 
16
- Modules: `apiary` · `foundation` · `comb` · `factory` · `bifrost` · `demerzel`.
17
- Ticking `factory` auto-includes `apiary` + `foundation` (it needs them on PATH).
18
- `demerzel` is offered only on macOS / Apple silicon.
58
+ Part of the [seldon](https://github.com/gorlitzer-labs/seldon) monorepo.
package/bin/seldon.js CHANGED
@@ -114,6 +114,14 @@ function doInstall(ids, { dev } = {}) {
114
114
  }
115
115
 
116
116
  // ---- the checklist TUI ------------------------------------------------------
117
+ const BANNER = [
118
+ " ███████╗███████╗██╗ ██████╗ ██████╗ ███╗ ██╗",
119
+ " ██╔════╝██╔════╝██║ ██╔══██╗██╔═══██╗████╗ ██║",
120
+ " ███████╗█████╗ ██║ ██║ ██║██║ ██║██╔██╗ ██║",
121
+ " ╚════██║██╔══╝ ██║ ██║ ██║██║ ██║██║╚██╗██║",
122
+ " ███████║███████╗███████╗██████╔╝╚██████╔╝██║ ╚████║",
123
+ " ╚══════╝╚══════╝╚══════╝╚═════╝ ╚═════╝ ╚═╝ ╚═══╝",
124
+ ];
117
125
  function tui() {
118
126
  return new Promise((resolve) => {
119
127
  const rows = MODULES.map((m) => ({ m, on: platformOk(m) && ["apiary", "foundation", "factory"].includes(m.id) }));
@@ -123,7 +131,8 @@ function tui() {
123
131
  readline.cursorTo(process.stdout, 0, 0);
124
132
  readline.clearScreenDown(process.stdout);
125
133
  const out = [];
126
- out.push(C.bold(C.gold(" The Seldon stack")) + C.dim(" — pick your tools"));
134
+ BANNER.forEach((l) => out.push(C.gold(l)));
135
+ out.push(C.dim(" the AI-agent-factory stack — pick your tools"));
127
136
  out.push(C.dim(" ↑↓ move · space toggle · a all · enter install · q quit\n"));
128
137
  rows.forEach((r, i) => {
129
138
  const sel = r.on ? C.green("[x]") : "[ ]";
package/package.json CHANGED
@@ -1,13 +1,31 @@
1
1
  {
2
2
  "name": "@gorlitzer-labs/seldon",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Install the Seldon stack — pick your tools from a checklist; each installs via its native method.",
5
5
  "type": "module",
6
- "bin": { "seldon": "bin/seldon.js" },
7
- "files": ["bin", "modules.mjs", "README.md"],
8
- "engines": { "node": ">=20" },
9
- "keywords": ["ai", "agents", "installer", "cli", "seldon", "apiary", "factory"],
6
+ "bin": {
7
+ "seldon": "bin/seldon.js"
8
+ },
9
+ "files": [
10
+ "bin",
11
+ "modules.mjs",
12
+ "README.md"
13
+ ],
14
+ "engines": {
15
+ "node": ">=20"
16
+ },
17
+ "keywords": [
18
+ "ai",
19
+ "agents",
20
+ "installer",
21
+ "cli",
22
+ "seldon",
23
+ "apiary",
24
+ "factory"
25
+ ],
10
26
  "author": "Franco Berardi",
11
27
  "license": "MIT",
12
- "publishConfig": { "access": "public" }
28
+ "publishConfig": {
29
+ "access": "public"
30
+ }
13
31
  }