@alexnodeland/claude-telegram 0.2.0 → 0.2.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.
- package/CHANGELOG.md +8 -0
- package/package.json +1 -1
- package/scripts/daemon.sh +4 -0
- package/src/orchestrator.ts +2 -1
package/CHANGELOG.md
CHANGED
|
@@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file.
|
|
|
5
5
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
|
|
6
6
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
7
|
|
|
8
|
+
## [0.2.1] - 2026-03-22
|
|
9
|
+
|
|
10
|
+
### Fixed
|
|
11
|
+
|
|
12
|
+
- **`claude` not found in daemon** — orchestrator now reads `CLAUDE_BIN` env var for the CLI path, falling back to `"claude"` from `$PATH`. Fixes "Executable not found" when launchd/systemd don't inherit the user's full `$PATH`.
|
|
13
|
+
- Daemon install script (`daemon.sh`) auto-detects the `claude` binary path and passes `CLAUDE_BIN` into the launchd plist / systemd unit.
|
|
14
|
+
|
|
8
15
|
## [0.2.0] - 2025-03-22
|
|
9
16
|
|
|
10
17
|
### Added
|
|
@@ -37,5 +44,6 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
|
|
37
44
|
- **HTML formatting** — all output uses Telegram HTML parse mode for reliable rendering
|
|
38
45
|
- **Zero Telegram SDK** — all API calls use native `fetch`
|
|
39
46
|
|
|
47
|
+
[0.2.1]: https://github.com/alexnodeland/claude-telegram/releases/tag/v0.2.1
|
|
40
48
|
[0.2.0]: https://github.com/alexnodeland/claude-telegram/releases/tag/v0.2.0
|
|
41
49
|
[0.1.0]: https://github.com/alexnodeland/claude-telegram/releases/tag/v0.1.0
|
package/package.json
CHANGED
package/scripts/daemon.sh
CHANGED
|
@@ -8,6 +8,7 @@ BUN="$(which bun 2>/dev/null || echo "$HOME/.bun/bin/bun")"
|
|
|
8
8
|
SCRIPT_DIR="$(cd "$(dirname "$0")/.." && pwd)"
|
|
9
9
|
ORCHESTRATOR="$SCRIPT_DIR/src/orchestrator.ts"
|
|
10
10
|
TOKEN="${TELEGRAM_BOT_TOKEN:-}"
|
|
11
|
+
CLAUDE_BIN="${CLAUDE_BIN:-$(which claude 2>/dev/null || echo "claude")}"
|
|
11
12
|
|
|
12
13
|
if [ -z "$TOKEN" ] && [ "$1" != "uninstall" ] && [ "$1" != "status" ] && [ "$1" != "logs" ]; then
|
|
13
14
|
echo "Error: TELEGRAM_BOT_TOKEN is not set"
|
|
@@ -37,6 +38,8 @@ install_launchd() {
|
|
|
37
38
|
<dict>
|
|
38
39
|
<key>TELEGRAM_BOT_TOKEN</key>
|
|
39
40
|
<string>$TOKEN</string>
|
|
41
|
+
<key>CLAUDE_BIN</key>
|
|
42
|
+
<string>$CLAUDE_BIN</string>
|
|
40
43
|
<key>PATH</key>
|
|
41
44
|
<string>/usr/local/bin:/usr/bin:/bin:$HOME/.bun/bin</string>
|
|
42
45
|
</dict>
|
|
@@ -93,6 +96,7 @@ After=network.target
|
|
|
93
96
|
[Service]
|
|
94
97
|
ExecStart=$BUN run $ORCHESTRATOR
|
|
95
98
|
Environment=TELEGRAM_BOT_TOKEN=$TOKEN
|
|
99
|
+
Environment=CLAUDE_BIN=$CLAUDE_BIN
|
|
96
100
|
Restart=on-failure
|
|
97
101
|
RestartSec=5
|
|
98
102
|
|
package/src/orchestrator.ts
CHANGED
|
@@ -348,6 +348,7 @@ const MAX_TURNS = Number(process.env.ORCHESTRATOR_MAX_TURNS ?? "50");
|
|
|
348
348
|
let globalModel = process.env.ORCHESTRATOR_MODEL;
|
|
349
349
|
|
|
350
350
|
// Absolute path to the sidecar script
|
|
351
|
+
const CLAUDE_BIN = process.env.CLAUDE_BIN ?? "claude";
|
|
351
352
|
const RELAY_SCRIPT = resolve(import.meta.dir, "permission-relay.ts");
|
|
352
353
|
|
|
353
354
|
process.stderr.write(
|
|
@@ -1258,7 +1259,7 @@ async function runQuery(
|
|
|
1258
1259
|
await writeFile(mcpConfigPath, JSON.stringify(mcpConfig));
|
|
1259
1260
|
|
|
1260
1261
|
const args = [
|
|
1261
|
-
|
|
1262
|
+
CLAUDE_BIN,
|
|
1262
1263
|
"-p",
|
|
1263
1264
|
"--output-format",
|
|
1264
1265
|
"stream-json",
|