@sesamespace/hivemind 0.2.0 → 0.3.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.
- package/PLANNING.md +383 -0
- package/TASKS.md +60 -0
- package/install.sh +187 -0
- package/npm-package.json +28 -0
- package/package.json +13 -20
- package/packages/cli/package.json +23 -0
- package/{dist/chunk-DVR2KBL7.js → packages/cli/src/commands/fleet.ts} +50 -30
- package/packages/cli/src/commands/init.ts +230 -0
- package/{dist/chunk-MBS5A6BZ.js → packages/cli/src/commands/service.ts} +51 -42
- package/{dist/chunk-RNK5Q5GR.js → packages/cli/src/commands/start.ts} +12 -14
- package/{dist/main.js → packages/cli/src/main.ts} +12 -18
- package/packages/cli/tsconfig.json +8 -0
- package/packages/memory/Cargo.lock +6480 -0
- package/packages/memory/Cargo.toml +21 -0
- package/packages/memory/src/context.rs +179 -0
- package/packages/memory/src/embeddings.rs +51 -0
- package/packages/memory/src/main.rs +626 -0
- package/packages/memory/src/promotion.rs +637 -0
- package/packages/memory/src/scoring.rs +131 -0
- package/packages/memory/src/store.rs +460 -0
- package/packages/memory/src/tasks.rs +321 -0
- package/packages/runtime/package.json +24 -0
- package/packages/runtime/src/__tests__/fleet-integration.test.ts +235 -0
- package/packages/runtime/src/__tests__/fleet.test.ts +207 -0
- package/packages/runtime/src/__tests__/integration.test.ts +434 -0
- package/packages/runtime/src/agent.ts +255 -0
- package/packages/runtime/src/config.ts +130 -0
- package/packages/runtime/src/context.ts +192 -0
- package/packages/runtime/src/fleet/fleet-manager.ts +399 -0
- package/packages/runtime/src/fleet/memory-sync.ts +362 -0
- package/packages/runtime/src/fleet/primary-client.ts +285 -0
- package/packages/runtime/src/fleet/worker-protocol.ts +158 -0
- package/packages/runtime/src/fleet/worker-server.ts +246 -0
- package/packages/runtime/src/index.ts +57 -0
- package/packages/runtime/src/llm-client.ts +65 -0
- package/packages/runtime/src/memory-client.ts +309 -0
- package/packages/runtime/src/pipeline.ts +151 -0
- package/packages/runtime/src/prompt.ts +173 -0
- package/packages/runtime/src/sesame.ts +174 -0
- package/{dist/start.js → packages/runtime/src/start.ts} +7 -9
- package/packages/runtime/src/task-engine.ts +113 -0
- package/packages/runtime/src/worker.ts +339 -0
- package/packages/runtime/tsconfig.json +8 -0
- package/pnpm-workspace.yaml +2 -0
- package/run-aidan.sh +23 -0
- package/scripts/bootstrap.sh +196 -0
- package/scripts/build-npm.sh +94 -0
- package/scripts/com.hivemind.agent.plist +44 -0
- package/scripts/com.hivemind.memory.plist +31 -0
- package/tsconfig.json +22 -0
- package/tsup.config.ts +28 -0
- package/dist/chunk-2I2O6X5D.js +0 -1408
- package/dist/chunk-2I2O6X5D.js.map +0 -1
- package/dist/chunk-DVR2KBL7.js.map +0 -1
- package/dist/chunk-MBS5A6BZ.js.map +0 -1
- package/dist/chunk-NVJ424TB.js +0 -731
- package/dist/chunk-NVJ424TB.js.map +0 -1
- package/dist/chunk-RNK5Q5GR.js.map +0 -1
- package/dist/chunk-XNOWVLXD.js +0 -160
- package/dist/chunk-XNOWVLXD.js.map +0 -1
- package/dist/commands/fleet.js +0 -9
- package/dist/commands/fleet.js.map +0 -1
- package/dist/commands/init.js +0 -7
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/service.js +0 -7
- package/dist/commands/service.js.map +0 -1
- package/dist/commands/start.js +0 -9
- package/dist/commands/start.js.map +0 -1
- package/dist/index.js +0 -41
- package/dist/index.js.map +0 -1
- package/dist/main.js.map +0 -1
- package/dist/start.js.map +0 -1
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -euo pipefail
|
|
3
|
+
|
|
4
|
+
# Hivemind Agent Bootstrap
|
|
5
|
+
# Usage: curl -sL hivemind.team | bash -s -- <sesame-api-key>
|
|
6
|
+
#
|
|
7
|
+
# This script:
|
|
8
|
+
# 1. Installs system dependencies (Homebrew, Node.js, pnpm, Rust, Ollama)
|
|
9
|
+
# 2. Installs @sesamespace/hivemind from npm
|
|
10
|
+
# 3. Runs hivemind init with your Sesame API key
|
|
11
|
+
# 4. Builds the memory daemon
|
|
12
|
+
# 5. Starts the agent
|
|
13
|
+
|
|
14
|
+
BOLD='\033[1m'
|
|
15
|
+
GREEN='\033[0;32m'
|
|
16
|
+
YELLOW='\033[0;33m'
|
|
17
|
+
RED='\033[0;31m'
|
|
18
|
+
NC='\033[0m'
|
|
19
|
+
|
|
20
|
+
info() { echo -e "${GREEN}[✓]${NC} $1"; }
|
|
21
|
+
warn() { echo -e "${YELLOW}[!]${NC} $1"; }
|
|
22
|
+
err() { echo -e "${RED}[✗]${NC} $1"; }
|
|
23
|
+
step() { echo -e "\n${BOLD}→ $1${NC}"; }
|
|
24
|
+
|
|
25
|
+
SESAME_KEY="${1:-}"
|
|
26
|
+
|
|
27
|
+
echo -e "${BOLD}"
|
|
28
|
+
echo " ╦ ╦╦╦ ╦╔═╗╔╦╗╦╔╗╔╔╦╗"
|
|
29
|
+
echo " ╠═╣║╚╗╔╝║╣ ║║║║║║║ ║║"
|
|
30
|
+
echo " ╩ ╩╩ ╚╝ ╚═╝╩ ╩╩╝╚╝═╩╝"
|
|
31
|
+
echo -e "${NC}"
|
|
32
|
+
echo " Agent Bootstrap — hivemind.team"
|
|
33
|
+
echo ""
|
|
34
|
+
|
|
35
|
+
if [ -z "$SESAME_KEY" ]; then
|
|
36
|
+
echo -e "${RED}Error: Sesame API key required${NC}"
|
|
37
|
+
echo ""
|
|
38
|
+
echo "Usage: curl -sL hivemind.team | bash -s -- <sesame-api-key>"
|
|
39
|
+
echo ""
|
|
40
|
+
echo "Get your API key at https://sesame.space"
|
|
41
|
+
exit 1
|
|
42
|
+
fi
|
|
43
|
+
|
|
44
|
+
# --- 1. System dependencies ---
|
|
45
|
+
step "Checking system dependencies"
|
|
46
|
+
|
|
47
|
+
# macOS check
|
|
48
|
+
if [ "$(uname)" != "Darwin" ]; then
|
|
49
|
+
err "This installer currently supports macOS only"
|
|
50
|
+
exit 1
|
|
51
|
+
fi
|
|
52
|
+
|
|
53
|
+
# Homebrew
|
|
54
|
+
if ! command -v brew &>/dev/null; then
|
|
55
|
+
warn "Homebrew not found — installing..."
|
|
56
|
+
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
|
|
57
|
+
eval "$(/opt/homebrew/bin/brew shellenv)"
|
|
58
|
+
else
|
|
59
|
+
info "Homebrew found"
|
|
60
|
+
fi
|
|
61
|
+
|
|
62
|
+
# Node.js
|
|
63
|
+
if ! command -v node &>/dev/null; then
|
|
64
|
+
warn "Node.js not found — installing..."
|
|
65
|
+
brew install node
|
|
66
|
+
else
|
|
67
|
+
NODE_VER=$(node -v | sed 's/v//' | cut -d. -f1)
|
|
68
|
+
if [ "$NODE_VER" -lt 20 ]; then
|
|
69
|
+
warn "Node.js too old — upgrading..."
|
|
70
|
+
brew upgrade node
|
|
71
|
+
else
|
|
72
|
+
info "Node.js $(node -v)"
|
|
73
|
+
fi
|
|
74
|
+
fi
|
|
75
|
+
|
|
76
|
+
# Rust
|
|
77
|
+
if ! command -v cargo &>/dev/null; then
|
|
78
|
+
warn "Rust not found — installing..."
|
|
79
|
+
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
|
|
80
|
+
source "$HOME/.cargo/env"
|
|
81
|
+
else
|
|
82
|
+
info "Rust $(rustc --version | awk '{print $2}')"
|
|
83
|
+
fi
|
|
84
|
+
|
|
85
|
+
# Ollama
|
|
86
|
+
if ! command -v ollama &>/dev/null; then
|
|
87
|
+
warn "Ollama not found — installing..."
|
|
88
|
+
brew install ollama
|
|
89
|
+
else
|
|
90
|
+
info "Ollama found"
|
|
91
|
+
fi
|
|
92
|
+
|
|
93
|
+
# --- 2. Install Hivemind ---
|
|
94
|
+
step "Installing Hivemind"
|
|
95
|
+
|
|
96
|
+
npm install -g @sesamespace/hivemind
|
|
97
|
+
info "Hivemind CLI installed"
|
|
98
|
+
|
|
99
|
+
# Verify
|
|
100
|
+
if ! command -v hivemind &>/dev/null; then
|
|
101
|
+
# Try finding it in npm global bin
|
|
102
|
+
NPM_BIN=$(npm config get prefix)/bin
|
|
103
|
+
export PATH="$NPM_BIN:$PATH"
|
|
104
|
+
fi
|
|
105
|
+
|
|
106
|
+
# --- 3. Setup working directory ---
|
|
107
|
+
HIVEMIND_HOME="${HIVEMIND_HOME:-$HOME/hivemind}"
|
|
108
|
+
step "Setting up agent at $HIVEMIND_HOME"
|
|
109
|
+
|
|
110
|
+
mkdir -p "$HIVEMIND_HOME"
|
|
111
|
+
cd "$HIVEMIND_HOME"
|
|
112
|
+
|
|
113
|
+
# Copy config from installed package
|
|
114
|
+
PKG_DIR=$(npm root -g)/@sesamespace/hivemind
|
|
115
|
+
if [ -d "$PKG_DIR/config" ]; then
|
|
116
|
+
cp -n "$PKG_DIR/config/default.toml" config/default.toml 2>/dev/null || true
|
|
117
|
+
cp -n "$PKG_DIR/config/TEAM-CHARTER.md" config/TEAM-CHARTER.md 2>/dev/null || true
|
|
118
|
+
fi
|
|
119
|
+
|
|
120
|
+
# --- 4. Initialize from Sesame ---
|
|
121
|
+
step "Initializing from Sesame"
|
|
122
|
+
|
|
123
|
+
hivemind init "$SESAME_KEY"
|
|
124
|
+
|
|
125
|
+
# --- 5. Build memory daemon ---
|
|
126
|
+
step "Building memory daemon"
|
|
127
|
+
|
|
128
|
+
if [ -d "$PKG_DIR/packages/memory" ]; then
|
|
129
|
+
cp -r "$PKG_DIR/packages/memory" "$HIVEMIND_HOME/packages/memory"
|
|
130
|
+
cd "$HIVEMIND_HOME/packages/memory"
|
|
131
|
+
cargo build --release 2>&1 | tail -3
|
|
132
|
+
cd "$HIVEMIND_HOME"
|
|
133
|
+
info "Memory daemon built"
|
|
134
|
+
else
|
|
135
|
+
warn "Memory daemon source not found — skipping build"
|
|
136
|
+
fi
|
|
137
|
+
|
|
138
|
+
# --- 6. Pull embedding model ---
|
|
139
|
+
step "Setting up Ollama"
|
|
140
|
+
|
|
141
|
+
if ! curl -s http://localhost:11434/api/tags &>/dev/null; then
|
|
142
|
+
warn "Starting Ollama..."
|
|
143
|
+
ollama serve &>/dev/null &
|
|
144
|
+
sleep 3
|
|
145
|
+
fi
|
|
146
|
+
|
|
147
|
+
if ollama list 2>/dev/null | grep -q "nomic-embed-text"; then
|
|
148
|
+
info "nomic-embed-text ready"
|
|
149
|
+
else
|
|
150
|
+
warn "Pulling embedding model..."
|
|
151
|
+
ollama pull nomic-embed-text
|
|
152
|
+
info "nomic-embed-text ready"
|
|
153
|
+
fi
|
|
154
|
+
|
|
155
|
+
# --- 7. Create start script ---
|
|
156
|
+
step "Creating launch script"
|
|
157
|
+
|
|
158
|
+
cat > "$HIVEMIND_HOME/start.sh" <<'LAUNCH'
|
|
159
|
+
#!/usr/bin/env bash
|
|
160
|
+
set -euo pipefail
|
|
161
|
+
cd "$(dirname "$0")"
|
|
162
|
+
|
|
163
|
+
# Load env
|
|
164
|
+
if [ -f .env ]; then set -a; source .env; set +a; fi
|
|
165
|
+
|
|
166
|
+
# Start memory daemon if not running
|
|
167
|
+
if ! curl -s http://localhost:3434/health &>/dev/null; then
|
|
168
|
+
echo "[hivemind] Starting memory daemon..."
|
|
169
|
+
nohup ./packages/memory/target/release/hivemind-memory > /tmp/hivemind-memory.log 2>&1 &
|
|
170
|
+
sleep 2
|
|
171
|
+
fi
|
|
172
|
+
|
|
173
|
+
# Start Ollama if not running
|
|
174
|
+
if ! curl -s http://localhost:11434/api/tags &>/dev/null; then
|
|
175
|
+
ollama serve &>/dev/null &
|
|
176
|
+
sleep 3
|
|
177
|
+
fi
|
|
178
|
+
|
|
179
|
+
# Start agent (auto-restart)
|
|
180
|
+
echo "[hivemind] Starting agent..."
|
|
181
|
+
while true; do
|
|
182
|
+
hivemind start --config config/default.toml
|
|
183
|
+
echo "[hivemind] Agent exited — restarting in 5s..."
|
|
184
|
+
sleep 5
|
|
185
|
+
done
|
|
186
|
+
LAUNCH
|
|
187
|
+
|
|
188
|
+
chmod +x "$HIVEMIND_HOME/start.sh"
|
|
189
|
+
|
|
190
|
+
# --- Done ---
|
|
191
|
+
echo ""
|
|
192
|
+
echo -e "${GREEN}${BOLD} ✓ Hivemind agent installed at $HIVEMIND_HOME${NC}"
|
|
193
|
+
echo ""
|
|
194
|
+
echo " To start: cd $HIVEMIND_HOME && ./start.sh"
|
|
195
|
+
echo " Background: cd $HIVEMIND_HOME && nohup ./start.sh > /tmp/hivemind.log 2>&1 &"
|
|
196
|
+
echo ""
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
set -euo pipefail
|
|
3
|
+
|
|
4
|
+
# Build a flat npm-publishable package from the monorepo
|
|
5
|
+
# Output: dist/npm/
|
|
6
|
+
|
|
7
|
+
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
|
|
8
|
+
ROOT="$(dirname "$SCRIPT_DIR")"
|
|
9
|
+
OUT="$ROOT/dist/npm"
|
|
10
|
+
|
|
11
|
+
echo "→ Building npm package..."
|
|
12
|
+
|
|
13
|
+
# Clean
|
|
14
|
+
rm -rf "$OUT"
|
|
15
|
+
mkdir -p "$OUT/dist" "$OUT/config" "$OUT/packages/memory/src"
|
|
16
|
+
|
|
17
|
+
# Build TypeScript
|
|
18
|
+
cd "$ROOT"
|
|
19
|
+
pnpm build
|
|
20
|
+
|
|
21
|
+
# Copy compiled JS (flatten cli + runtime into one dist/)
|
|
22
|
+
cp -r packages/runtime/dist/* "$OUT/dist/"
|
|
23
|
+
cp -r packages/cli/dist/* "$OUT/dist/"
|
|
24
|
+
|
|
25
|
+
# Copy config files
|
|
26
|
+
cp config/default.toml "$OUT/config/"
|
|
27
|
+
cp config/TEAM-CHARTER.md "$OUT/config/"
|
|
28
|
+
|
|
29
|
+
# Copy Rust memory daemon source
|
|
30
|
+
cp -r packages/memory/src "$OUT/packages/memory/src"
|
|
31
|
+
cp packages/memory/Cargo.toml "$OUT/packages/memory/"
|
|
32
|
+
cp packages/memory/Cargo.lock "$OUT/packages/memory/" 2>/dev/null || true
|
|
33
|
+
|
|
34
|
+
# Copy install script
|
|
35
|
+
cp "$ROOT/install.sh" "$OUT/"
|
|
36
|
+
chmod +x "$OUT/install.sh"
|
|
37
|
+
|
|
38
|
+
# Copy README
|
|
39
|
+
cp "$ROOT/README.md" "$OUT/"
|
|
40
|
+
|
|
41
|
+
# Write package.json for npm
|
|
42
|
+
cat > "$OUT/package.json" <<'EOF'
|
|
43
|
+
{
|
|
44
|
+
"name": "@sesamespace/hivemind",
|
|
45
|
+
"version": "0.1.0",
|
|
46
|
+
"description": "Cognitive architecture for AI agents with multi-layered memory",
|
|
47
|
+
"type": "module",
|
|
48
|
+
"bin": {
|
|
49
|
+
"hivemind": "dist/main.js"
|
|
50
|
+
},
|
|
51
|
+
"files": [
|
|
52
|
+
"dist/",
|
|
53
|
+
"config/",
|
|
54
|
+
"packages/memory/",
|
|
55
|
+
"install.sh",
|
|
56
|
+
"README.md"
|
|
57
|
+
],
|
|
58
|
+
"engines": {
|
|
59
|
+
"node": ">=20.0.0"
|
|
60
|
+
},
|
|
61
|
+
"dependencies": {
|
|
62
|
+
"@iarna/toml": "^2.2.5",
|
|
63
|
+
"@sesamespace/sdk": "^0.1.6",
|
|
64
|
+
"ws": "^8.18.0"
|
|
65
|
+
},
|
|
66
|
+
"keywords": [
|
|
67
|
+
"hivemind",
|
|
68
|
+
"ai-agent",
|
|
69
|
+
"memory",
|
|
70
|
+
"sesame",
|
|
71
|
+
"cognitive-architecture"
|
|
72
|
+
],
|
|
73
|
+
"license": "UNLICENSED",
|
|
74
|
+
"repository": {
|
|
75
|
+
"type": "git",
|
|
76
|
+
"url": "https://github.com/baileydavis2026/hivemind"
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
EOF
|
|
80
|
+
|
|
81
|
+
# Add shebang to CLI entry
|
|
82
|
+
MAIN="$OUT/dist/main.js"
|
|
83
|
+
if ! head -1 "$MAIN" | grep -q "#!/"; then
|
|
84
|
+
echo '#!/usr/bin/env node' | cat - "$MAIN" > "$MAIN.tmp" && mv "$MAIN.tmp" "$MAIN"
|
|
85
|
+
fi
|
|
86
|
+
chmod +x "$MAIN"
|
|
87
|
+
|
|
88
|
+
echo "✓ Package built at: $OUT"
|
|
89
|
+
echo ""
|
|
90
|
+
echo "To publish:"
|
|
91
|
+
echo " cd $OUT && npm publish --access public"
|
|
92
|
+
echo ""
|
|
93
|
+
echo "To test locally:"
|
|
94
|
+
echo " npm install -g $OUT"
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>Label</key>
|
|
6
|
+
<string>com.hivemind.agent</string>
|
|
7
|
+
|
|
8
|
+
<key>ProgramArguments</key>
|
|
9
|
+
<array>
|
|
10
|
+
<string>/bin/bash</string>
|
|
11
|
+
<string>-c</string>
|
|
12
|
+
<string>cd __HIVEMIND_HOME__ && set -a && source .env 2>/dev/null && set +a && exec /opt/homebrew/bin/node packages/cli/dist/main.js start --config config/default.toml</string>
|
|
13
|
+
</array>
|
|
14
|
+
|
|
15
|
+
<key>EnvironmentVariables</key>
|
|
16
|
+
<dict>
|
|
17
|
+
<key>HIVEMIND_HOME</key>
|
|
18
|
+
<string>__HIVEMIND_HOME__</string>
|
|
19
|
+
<key>PATH</key>
|
|
20
|
+
<string>/opt/homebrew/bin:/usr/local/bin:/usr/bin:/bin</string>
|
|
21
|
+
</dict>
|
|
22
|
+
|
|
23
|
+
<key>WorkingDirectory</key>
|
|
24
|
+
<string>__HIVEMIND_HOME__</string>
|
|
25
|
+
|
|
26
|
+
<key>RunAtLoad</key>
|
|
27
|
+
<true/>
|
|
28
|
+
|
|
29
|
+
<key>KeepAlive</key>
|
|
30
|
+
<dict>
|
|
31
|
+
<key>SuccessfulExit</key>
|
|
32
|
+
<false/>
|
|
33
|
+
</dict>
|
|
34
|
+
|
|
35
|
+
<key>ThrottleInterval</key>
|
|
36
|
+
<integer>5</integer>
|
|
37
|
+
|
|
38
|
+
<key>StandardOutPath</key>
|
|
39
|
+
<string>/tmp/hivemind-agent.log</string>
|
|
40
|
+
|
|
41
|
+
<key>StandardErrorPath</key>
|
|
42
|
+
<string>/tmp/hivemind-agent.log</string>
|
|
43
|
+
</dict>
|
|
44
|
+
</plist>
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
|
2
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
3
|
+
<plist version="1.0">
|
|
4
|
+
<dict>
|
|
5
|
+
<key>Label</key>
|
|
6
|
+
<string>com.hivemind.memory</string>
|
|
7
|
+
|
|
8
|
+
<key>ProgramArguments</key>
|
|
9
|
+
<array>
|
|
10
|
+
<string>__HIVEMIND_HOME__/packages/memory/target/release/hivemind-memory</string>
|
|
11
|
+
</array>
|
|
12
|
+
|
|
13
|
+
<key>WorkingDirectory</key>
|
|
14
|
+
<string>__HIVEMIND_HOME__</string>
|
|
15
|
+
|
|
16
|
+
<key>RunAtLoad</key>
|
|
17
|
+
<true/>
|
|
18
|
+
|
|
19
|
+
<key>KeepAlive</key>
|
|
20
|
+
<true/>
|
|
21
|
+
|
|
22
|
+
<key>ThrottleInterval</key>
|
|
23
|
+
<integer>5</integer>
|
|
24
|
+
|
|
25
|
+
<key>StandardOutPath</key>
|
|
26
|
+
<string>/tmp/hivemind-memory.log</string>
|
|
27
|
+
|
|
28
|
+
<key>StandardErrorPath</key>
|
|
29
|
+
<string>/tmp/hivemind-memory.log</string>
|
|
30
|
+
</dict>
|
|
31
|
+
</plist>
|
package/tsconfig.json
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
{
|
|
2
|
+
"compilerOptions": {
|
|
3
|
+
"target": "ES2022",
|
|
4
|
+
"module": "ES2022",
|
|
5
|
+
"moduleResolution": "bundler",
|
|
6
|
+
"strict": true,
|
|
7
|
+
"esModuleInterop": true,
|
|
8
|
+
"skipLibCheck": true,
|
|
9
|
+
"forceConsistentCasingInFileNames": true,
|
|
10
|
+
"resolveJsonModule": true,
|
|
11
|
+
"declaration": true,
|
|
12
|
+
"declarationMap": true,
|
|
13
|
+
"sourceMap": true,
|
|
14
|
+
"outDir": "dist",
|
|
15
|
+
"rootDir": "src",
|
|
16
|
+
"paths": {
|
|
17
|
+
"@hivemind/runtime": ["./packages/runtime/src/index.ts"],
|
|
18
|
+
"@hivemind/runtime/*": ["./packages/runtime/src/*"]
|
|
19
|
+
}
|
|
20
|
+
},
|
|
21
|
+
"exclude": ["node_modules", "dist"]
|
|
22
|
+
}
|
package/tsup.config.ts
ADDED
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { defineConfig } from "tsup";
|
|
2
|
+
|
|
3
|
+
export default defineConfig({
|
|
4
|
+
entry: {
|
|
5
|
+
"main": "packages/cli/src/main.ts",
|
|
6
|
+
"commands/init": "packages/cli/src/commands/init.ts",
|
|
7
|
+
"commands/start": "packages/cli/src/commands/start.ts",
|
|
8
|
+
"commands/fleet": "packages/cli/src/commands/fleet.ts",
|
|
9
|
+
"commands/service": "packages/cli/src/commands/service.ts",
|
|
10
|
+
"index": "packages/runtime/src/index.ts",
|
|
11
|
+
"start": "packages/runtime/src/start.ts",
|
|
12
|
+
},
|
|
13
|
+
format: ["esm"],
|
|
14
|
+
target: "node20",
|
|
15
|
+
platform: "node",
|
|
16
|
+
splitting: true,
|
|
17
|
+
sourcemap: true,
|
|
18
|
+
dts: false,
|
|
19
|
+
clean: true,
|
|
20
|
+
outDir: "dist",
|
|
21
|
+
outExtension: () => ({ js: ".js" }),
|
|
22
|
+
external: [
|
|
23
|
+
"@iarna/toml",
|
|
24
|
+
"@sesamespace/sdk",
|
|
25
|
+
"ws",
|
|
26
|
+
],
|
|
27
|
+
noExternal: ["@hivemind/runtime"],
|
|
28
|
+
});
|