instar 0.24.18 → 0.24.21
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/.claude/settings.json +120 -0
- package/.claude/skills/setup-wizard/skill.md +2 -2
- package/dashboard/index.html +221 -336
- package/dist/cli.js +0 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +22 -4
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/server.d.ts.map +1 -1
- package/dist/commands/server.js +18 -1
- package/dist/commands/server.js.map +1 -1
- package/dist/commands/setup.d.ts.map +1 -1
- package/dist/commands/setup.js +23 -2
- package/dist/commands/setup.js.map +1 -1
- package/dist/core/GitSync.d.ts +3 -2
- package/dist/core/GitSync.d.ts.map +1 -1
- package/dist/core/GitSync.js +19 -4
- package/dist/core/GitSync.js.map +1 -1
- package/dist/core/SessionManager.d.ts +1 -1
- package/dist/core/SessionManager.d.ts.map +1 -1
- package/dist/core/SessionManager.js.map +1 -1
- package/dist/lifeline/ServerSupervisor.d.ts.map +1 -1
- package/dist/lifeline/ServerSupervisor.js +31 -0
- package/dist/lifeline/ServerSupervisor.js.map +1 -1
- package/dist/messaging/slack/SlackAdapter.d.ts +25 -4
- package/dist/messaging/slack/SlackAdapter.d.ts.map +1 -1
- package/dist/messaging/slack/SlackAdapter.js +156 -12
- package/dist/messaging/slack/SlackAdapter.js.map +1 -1
- package/dist/messaging/slack/SocketModeClient.d.ts.map +1 -1
- package/dist/messaging/slack/SocketModeClient.js +11 -4
- package/dist/messaging/slack/SocketModeClient.js.map +1 -1
- package/dist/messaging/slack/types.d.ts +30 -0
- package/dist/messaging/slack/types.d.ts.map +1 -1
- package/dist/messaging/slack/types.js.map +1 -1
- package/package.json +1 -1
- package/src/data/builtin-manifest.json +4 -4
- package/upgrades/0.24.14.md +26 -0
- package/upgrades/0.24.18-beta.0.md +35 -0
- package/upgrades/0.24.18.md +26 -26
- package/upgrades/0.24.19.md +21 -0
- package/upgrades/0.24.21.md +25 -0
- package/upgrades/NEXT.md +45 -0
- /package/.claude/skills/secret-setup/{skill.md → SKILL.md} +0 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# v0.24.18-beta.0 — Slack Messaging Adapter (Beta)
|
|
2
|
+
|
|
3
|
+
## What Changed
|
|
4
|
+
|
|
5
|
+
Native Slack support joins Telegram and WhatsApp as a first-class messaging adapter. Your agent can now live in Slack — receiving messages via Socket Mode, responding in channels, and managing conversations with the same features Telegram has.
|
|
6
|
+
|
|
7
|
+
This is a beta release for early testing. The core adapter is complete and working, with setup wizard support, session management, and feature parity across most Telegram capabilities.
|
|
8
|
+
|
|
9
|
+
## What to Tell Your User
|
|
10
|
+
|
|
11
|
+
Your agent can now talk to you through Slack. If you already use Slack for work, you can add it alongside Telegram — no need to switch. Setup takes about 5 minutes: you log into Slack, and the agent handles creating the workspace, app, and channels automatically.
|
|
12
|
+
|
|
13
|
+
Slack sessions show up in the dashboard with their own platform badge, and you can create new sessions linked to Slack channels right from the dashboard. Commands work with an exclamation mark prefix — type !sessions or !new in any channel the agent is in.
|
|
14
|
+
|
|
15
|
+
This also includes a new autonomous mode skill that lets the agent work independently for hours with structural enforcement — it literally cannot stop until the work is done.
|
|
16
|
+
|
|
17
|
+
## Summary of New Capabilities
|
|
18
|
+
|
|
19
|
+
- Slack messaging adapter with Socket Mode (real-time WebSocket, no webhooks needed)
|
|
20
|
+
- DIY app model — each user creates their own Slack app, no shared infrastructure
|
|
21
|
+
- Browser-automated setup wizard (Playwright drives workspace creation, app config, token extraction)
|
|
22
|
+
- Session channel registry with bidirectional channel-to-session mapping
|
|
23
|
+
- Channel resume map for conversation continuity across session restarts
|
|
24
|
+
- Attention channel for critical alerts (auto-created, users auto-invited)
|
|
25
|
+
- Dashboard link broadcast to Slack dashboard channel (update-in-place, no spam)
|
|
26
|
+
- Slash commands via ! prefix (!sessions, !new, !help)
|
|
27
|
+
- Platform badges on dashboard session cards
|
|
28
|
+
- Platform dropdown when creating new sessions
|
|
29
|
+
- Job scheduler integration (per-job Slack channels)
|
|
30
|
+
- Cross-platform alerts (Slack added alongside Telegram and WhatsApp)
|
|
31
|
+
- Presence proxy routing to correct session channels
|
|
32
|
+
- SlackLifeline process for persistent Socket Mode connection
|
|
33
|
+
- Autonomous mode skill with stop hook enforcement and session isolation
|
|
34
|
+
- Unanswered message detection in Slack context hook
|
|
35
|
+
- Message logging, search, and retention for Slack
|
package/upgrades/0.24.18.md
CHANGED
|
@@ -1,35 +1,35 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
<!-- Valid values: patch, minor, major -->
|
|
5
|
+
<!-- patch = bug fixes, refactors, test additions, doc updates -->
|
|
6
|
+
<!-- minor = new features, new APIs, new capabilities (backwards-compatible) -->
|
|
7
|
+
<!-- major = breaking changes to existing APIs or behavior -->
|
|
4
8
|
|
|
5
|
-
|
|
9
|
+
## What Changed
|
|
6
10
|
|
|
7
|
-
|
|
11
|
+
<!-- Describe what changed technically. What new features, APIs, behavioral changes? -->
|
|
12
|
+
<!-- Write this for the AGENT — they need to understand the system deeply. -->
|
|
8
13
|
|
|
9
14
|
## What to Tell Your User
|
|
10
15
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
+
<!-- Write talking points the agent should relay to their user. -->
|
|
17
|
+
<!-- This should be warm, conversational, user-facing — not a changelog. -->
|
|
18
|
+
<!-- Focus on what THEY can now do, not internal plumbing. -->
|
|
19
|
+
<!-- -->
|
|
20
|
+
<!-- PROHIBITED in this section (will fail validation): -->
|
|
21
|
+
<!-- camelCase config keys: silentReject, maxRetries, telegramNotify -->
|
|
22
|
+
<!-- Inline code backtick references like silentReject: false -->
|
|
23
|
+
<!-- Fenced code blocks -->
|
|
24
|
+
<!-- Instructions to edit files or run commands -->
|
|
25
|
+
<!-- -->
|
|
26
|
+
<!-- CORRECT style: "I can turn that on for you" not "set X to false" -->
|
|
27
|
+
<!-- The agent relays this to their user — keep it human. -->
|
|
28
|
+
|
|
29
|
+
- **[Feature name]**: "[Brief, friendly description of what this means for the user]"
|
|
16
30
|
|
|
17
31
|
## Summary of New Capabilities
|
|
18
32
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
- Session channel registry with bidirectional channel-to-session mapping
|
|
23
|
-
- Channel resume map for conversation continuity across session restarts
|
|
24
|
-
- Attention channel for critical alerts (auto-created, users auto-invited)
|
|
25
|
-
- Dashboard link broadcast to Slack dashboard channel (update-in-place, no spam)
|
|
26
|
-
- Slash commands via ! prefix (!sessions, !new, !help)
|
|
27
|
-
- Platform badges on dashboard session cards
|
|
28
|
-
- Platform dropdown when creating new sessions
|
|
29
|
-
- Job scheduler integration (per-job Slack channels)
|
|
30
|
-
- Cross-platform alerts (Slack added alongside Telegram and WhatsApp)
|
|
31
|
-
- Presence proxy routing to correct session channels
|
|
32
|
-
- SlackLifeline process for persistent Socket Mode connection
|
|
33
|
-
- Autonomous mode skill with stop hook enforcement and session isolation
|
|
34
|
-
- Unanswered message detection in Slack context hook
|
|
35
|
-
- Message logging, search, and retention for Slack
|
|
33
|
+
| Capability | How to Use |
|
|
34
|
+
|-----------|-----------|
|
|
35
|
+
| [Capability] | [Endpoint, command, or "automatic"] |
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Upgrade Guide — vNEXT
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
### Systems Dashboard CSS Fix — v3 Styles Restored
|
|
8
|
+
|
|
9
|
+
The Systems dashboard CSS was still referencing old v2 class names (`.capability-card`, `.cap-info`, `.cap-label`) while the JavaScript had been updated to generate v3 classes (`.cap-card`, `.cap-card-name`, `.cap-card-desc`, `.cap-grid`). This mismatch caused the dashboard cards to render without proper styling.
|
|
10
|
+
|
|
11
|
+
The CSS has been fully replaced with v3 styles covering: card grid layout, detail views, stat cards, process list indicators, and responsive grid breakpoints.
|
|
12
|
+
|
|
13
|
+
## What to Tell Your User
|
|
14
|
+
|
|
15
|
+
The Systems dashboard styling has been fixed. If the cards and layout looked broken or unstyled, that's now resolved — everything renders cleanly with the new card grid design.
|
|
16
|
+
|
|
17
|
+
## Summary of New Capabilities
|
|
18
|
+
|
|
19
|
+
| Capability | How to Use |
|
|
20
|
+
|-----------|-----------|
|
|
21
|
+
| Systems dashboard CSS fix | Automatic — dashboard renders correctly now |
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# v0.24.21 — Slack Stability & Image Support
|
|
2
|
+
|
|
3
|
+
## What Changed
|
|
4
|
+
|
|
5
|
+
**Slack Socket Mode heartbeat** — Fixed a reconnect death loop where the connection cycled every ~90 seconds on quiet channels. The heartbeat timeout is now 5 minutes instead of 60 seconds, since Slack only sends events when someone posts a message.
|
|
6
|
+
|
|
7
|
+
**Workspace modes** — New workspaceMode config (dedicated or shared) with sensible defaults. Dedicated mode auto-joins channels and responds to all messages. Shared mode only responds when mentioned and does not auto-join. All settings individually overridable.
|
|
8
|
+
|
|
9
|
+
**Image/file support in Slack** — Messages with file attachments are now downloaded and passed to sessions with explicit read instructions, matching the Telegram image pipeline.
|
|
10
|
+
|
|
11
|
+
**Session injection race condition** — Fixed a timing issue where messages arriving shortly after session spawn could fail to inject because Claude was not ready yet. Now waits for Claude readiness before injection.
|
|
12
|
+
|
|
13
|
+
**Smart port allocation** — New agents scan for free ports instead of blindly defaulting to 4040 when registry allocation fails.
|
|
14
|
+
|
|
15
|
+
## What to Tell Your User
|
|
16
|
+
|
|
17
|
+
Slack got more reliable this update. The bot no longer disconnects and reconnects in a loop on quiet channels. Images and files sent in Slack are now fully supported, just like Telegram. There is also a new workspace mode setting that controls whether the bot responds to every message or only when mentioned.
|
|
18
|
+
|
|
19
|
+
## Summary of New Capabilities
|
|
20
|
+
|
|
21
|
+
- Slack workspace modes: dedicated (respond to everything, auto-join channels) and shared (mention-only, no auto-join)
|
|
22
|
+
- Slack image and file attachment support with automatic download and session delivery
|
|
23
|
+
- Socket Mode connection stability fix (5-minute heartbeat instead of 60 seconds)
|
|
24
|
+
- Session injection race condition fix for rapid message sequences
|
|
25
|
+
- Smart port allocation for new agent initialization
|
package/upgrades/NEXT.md
ADDED
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Upgrade Guide — v0.24.20
|
|
2
|
+
|
|
3
|
+
<!-- bump: patch -->
|
|
4
|
+
|
|
5
|
+
## What Changed
|
|
6
|
+
|
|
7
|
+
### Fix: Slack Socket Mode Heartbeat Death Loop
|
|
8
|
+
|
|
9
|
+
The heartbeat timeout for Slack Socket Mode connections was 60 seconds — far too aggressive for quiet channels with no activity. This caused a connect-disconnect loop every ~90 seconds, dropping messages during reconnection windows. Increased to 5 minutes, which correctly detects zombie connections without false-positiving on idle channels.
|
|
10
|
+
|
|
11
|
+
### Slack Workspace Modes (Dedicated vs Shared)
|
|
12
|
+
|
|
13
|
+
SlackAdapter now supports two workspace modes:
|
|
14
|
+
- **dedicated** (default): Agent owns the workspace. Auto-joins all public channels, responds to all messages.
|
|
15
|
+
- **shared**: Agent is a guest in an existing workspace. Only responds to @mentions and DMs. Does not auto-join channels.
|
|
16
|
+
|
|
17
|
+
Configure via `slack.workspaceMode` in config. The `respondMode` and `autoJoinChannels` settings can also be set independently.
|
|
18
|
+
|
|
19
|
+
### Fix: GitSync Crash on Empty Repos
|
|
20
|
+
|
|
21
|
+
GitSync now handles repos with no commits (freshly `git init`'d). Previously, `rev-parse HEAD` would throw and crash the sync process.
|
|
22
|
+
|
|
23
|
+
### Fix: ServerSupervisor Grace Period After Restart
|
|
24
|
+
|
|
25
|
+
When the Supervisor starts and finds the server already running (e.g., after a Lifeline self-restart for an update), it now correctly sets `spawnedAt` and checks for planned-exit markers. This prevents false "server down" alerts during update transitions.
|
|
26
|
+
|
|
27
|
+
### Slack Image/Document Tags in Session Bootstrap
|
|
28
|
+
|
|
29
|
+
`[image:path]` and `[document:path]` tags in Slack messages are now transformed into explicit read instructions before being passed to Claude sessions, improving reliability of file handling.
|
|
30
|
+
|
|
31
|
+
### Browsable Stat Cards — Click Metrics to View Content
|
|
32
|
+
|
|
33
|
+
Stat cards in the Systems detail view are now interactive. When a metric maps to browsable content, clicking the card fetches and displays the actual data inline.
|
|
34
|
+
|
|
35
|
+
## What to Tell Your User
|
|
36
|
+
|
|
37
|
+
A few reliability fixes in this release. If you were having trouble with Slack integration (agent not responding, connection dropping), that's fixed now — the connection was being too aggressive about reconnecting. Also added support for "shared" workspace mode if you want to install an agent into an existing Slack workspace without it taking over every channel.
|
|
38
|
+
|
|
39
|
+
## Summary of New Capabilities
|
|
40
|
+
|
|
41
|
+
| Capability | How to Use |
|
|
42
|
+
|-----------|-----------|
|
|
43
|
+
| Slack workspace modes | Set `slack.workspaceMode: "shared"` for guest-in-existing-workspace behavior |
|
|
44
|
+
| Slack mention-only mode | Set `slack.respondMode: "mention-only"` to only respond to @mentions |
|
|
45
|
+
| Browsable stat cards | Click any stat card with browsable content to expand it inline |
|
|
File without changes
|