import-external-sessions

Solid

Import coding-agent sessions started outside Walnut (terminal `claude`, Claude Desktop, codex TUI, other SDK apps) into Walnut as tasks. Use when the user says "import my sessions", "find sessions opened outside Walnut", asks why a session id isn't in Walnut, or wants the external-session scan run NOW instead of waiting for the background tick.

AI & Automation 32 stars 8 forks Updated 4 days ago MIT

Install

View on GitHub

Quality Score: 82/100

Stars 20%
51
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Import External Sessions Walnut automatically imports sessions that were started outside it (someone ran `claude` in a terminal, used Claude Desktop or the codex TUI, or another SDK app spawned sessions). A background job runs every 10 minutes; this skill is the on-demand path. Each imported session becomes **its own task**, titled with the session's auto-generated name, grouped under a per-host project: **"Imported from this Mac"** / **"Imported from \<host\>"**. ## Run an import now ```bash curl -s -X POST http://localhost:3456/api/sessions/import-external \ -H 'Content-Type: application/json' -d '{"days":30}' ``` - `days` widens/narrows the lookback window (default 30). - Response fields: `imported` (new tasks created), `skipped` (already tracked), `hostsScanned` / `hostsSkipped` (a skipped host = its daemon isn't connected or is too old — it self-heals on the next daemon auto-deploy), `truncated` (hit the 100-per-run cap — **run the command again** until `imported` is 0 and `truncated` is false to drain a big backlog). ## Check whether a specific session made it in ```bash walnut sessions --json | grep <session-id-prefix> ``` If it's missing after an import run, the usual reasons: 1. **Host not scanned** — check `hostsSkipped` in the response. The host's daemon must be connected and advertise `external-scan-v1`. 2. **Older than the window** — re-run with a bigger `days`. 3. **Temp-dir session** — programmatic (SDK) sessions running under /tmp or ...

Details

Author
EvanZhang008
Repository
EvanZhang008/open-walnut
Created
6 months ago
Last Updated
4 days ago
Language
TypeScript
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Solid

walnut-session-messaging

Talk to the user's OTHER Walnut coding sessions: discover them with `session_list`, send one a message with `session_send`, ask for a result with `expect_reply`, answer a request with `in_reply_to`, and block with `walnut wait` only when you cannot continue without the answer. Use when you need to hand off findings, tell a sibling session that shared work is ready, ask another session a question and get its answer back, or see what else is running. Works on any host that runs a Walnut daemon, inside a Walnut-launched session or a plain terminal.

32 Updated 4 days ago
EvanZhang008
AI & Automation Solid

walnut-peer-sessions

Discover and message the user's other Walnut-managed coding sessions with the `walnut` CLI (peer sessions on this or other machines). Use when a session needs to hand off context, notify a sibling session that shared work is ready, or check what other sessions are running. Works on any host that runs a Walnut daemon, inside a Walnut-launched session or a plain terminal.

32 Updated 4 days ago
EvanZhang008
AI & Automation Featured

alivesession-context-rebuild

Merge multiple sessions into one working context and detect conflicts between parallel sessions. Dispatches subagent swarm to read files touched, extract log history, and resolve contradictory state. Use when resuming after days away or when parallel sessions may have written conflicting decisions. For browsing or reviving individual sessions, use alive:session-history instead.

127 Updated today
alivecontext