thread
/thread
Make an agent thread in Claude or Codex: a titled session that starts in its workspace and boots its seat, in the Claude app, a terminal, or Codex. Use for /thread (list the agents and offer the missing threads), /thread <agent>, /thread lead <workspace>, or the thread step of setup.
- Author
- foxrun-ai ↗
- Repository
- foxrun ↗
- Licence
- MIT
- Last repository change
- 26.10.2026
Assessment and security
- Files in this package
- 3
- Scripts
- 0
- HTML comments
- 0
- URLs in SKILL.md
- 0
No signals detected. Repository changed on 26.10.2026, without references to retired models or APIs.
MIT, open: use and modify while retaining author attribution.
What it does and when to use it
Make an agent thread in Claude or Codex: a titled session that starts in its workspace and boots its seat, in the Claude app, a terminal, or Codex. Use for /thread (list the agents and offer the missing threads), /thread <agent>, /thread lead <workspace>, or the thread step of setup.
Arguments
/thread [<agent> | lead <workspace>]
Original author description
Make an agent thread in Claude or Codex: a titled session that starts in its workspace and boots its seat, in the Claude app, a terminal, or Codex. Use for /thread (list the agents and offer the missing threads), /thread <agent>, /thread lead <workspace>, or the thread step of setup.
How it works
- Steps
- Gotchas
SKILL.md preview
---
type: note
workspace: system
timestamp: 2026-10-23T22:07:53-04:00
name: thread
description: "Make an agent thread in Claude or Codex: a titled session that starts in its workspace and boots its seat, in the Claude app, a terminal, or Codex. Use for /thread (list the agents and offer the missing threads), /thread <agent>, /thread lead <workspace>, or the thread step of setup."
kind: tool
argument-hint: "[<agent> | lead <workspace>]"
---
# thread
One agent gets one thread: a titled conversation that starts in its workspace and boots its seat.
The title is `<emoji> <workspace> · <role>`, so the person finds the agent in the sidebar by sight.
`bin/thread` does the lookups and the writes. It prints JSON. Run `bin/thread --help` for the flags.
## Steps
1. **Pick the form.**
- `/thread`: run `bin/thread list`. Show each agent with its emoji and whether it has a thread. Then offer to make the missing ones, one question at a time.
- `/thread <agent>`: the agent is a seat id from the list, such as `architect`.
An agent made for one workspace (`agent_new create --client <ws>`) lives in `<ws>/team/<id>.md`. The list shows its workspace.
- `/thread lead <workspace>`: the workspace lead, seat `lead-<workspace>`.
Done when you know the seat, or the person picked the seats from the list.
2. **Ask what the plan needs.** Use the runtime's question tool, one question each:
- The workspace, for an agent thread. A lead thread or a workspace agent's thread starts in its own workspace.
- The runtime: `claude-desktop`, `claude-cli`, or `codex`. Offer the one you run in first.
- The model tier: `judgment`, `work`, `cheap`, or `code`, from `~/.foxrun/config/models.yaml`. The seat's own tier is the default. Name the model each tier gives.
Done when each answer is in hand. Skip a question when the person already answered it.
3. **Pick the emoji.** Suggest one emoji that fits this thread's work, such as 📦 for a shipping thread. Offer the seat's default as the other choice: `bin/thread plan` prints it with `emoji_state` `default`. The person can type another one. The emoji varies by thread; the map holds only defaults. Done when the person picked one.
4. **Plan.** Run `bin/thread plan <seat | lead ws> --runtime <r> --workspace <ws> --tier <t> --emoji <picked>`. Leave out `--emoji` when the person took the default. Show the person the `title`, `cwd`, and `model`, and let them change the emoji or any answer before you go on. Done when the person says yes to that plan.
5. **Make it.** Pass the same `--emoji` as the plan. The route depends on the runtime:
- `claude-desktop`: call the Claude app's own new-session tool with the plan's `title`, `cwd`, and `prompt`. Then run `bin/thread record <seat> --runtime claude-desktop --workspace <ws> --id <session id>`.
- `codex`: run `bin/thread make ... --runtime codex`. It starts `codex app-server`, then sends `thread/start`, `thread/name/set`, and `turn/start`, and waits for the boot turn to end.
- `claude-cli`: run `bin/thread make ... --runtime claude-cli`. It runs `claude --bg -n "<title>" --model <model> "<prompt>"` in the workspace folder.
Done when the JSON shows `"made": true` or a `recorded` entry with an `id`.
6. **Report.** Give the title, the runtime, and where the person finds it: the Claude sidebar, the Codex sidebar, or `claude agents`. Done when the person has the title and the place.
## Gotchas
- `claude --bg` refuses a folder Claude does not trust yet. The error says to open `claude` once in that folder and accept the prompt. Tell the person that, then retry.
- A `claude --bg` session shows in `claude agents`, not in the Claude app sidebar. Use `claude-desktop` when the person wants the sidebar.
- The Codex app may not show a new thread until it refreshes. The thread exists when `make` returns its id.
- During the Codex boot turn, `make` declines each approval request. The person approves later steps in the app.
- `list` reads Codex thread names read-only from `~/.codex/state_5.sqlite`. It matches a title by its workspace and role, whatever the emoji. It never reads Claude's session files. A Claude thread shows only after `make` or `record` saved it.
- No hosted session tool is needed. Do not use herdr for a thread.
- `--emoji` wins over the defaults in `~/.foxrun/config/threads.json`, key `emoji`, which win over the shipped defaults. Change a default there, not in the script.
- Use `--dry-run` on `make` or `record` to see the exact plan. A dry run writes and starts nothing.
Files in this package (3)
- README.md 1 KB
- SKILL.md 4 KB
- bin/thread 21 KB
Versions
| Repository | Score | Licence |
|---|---|---|
| This page · foxrun-ai/foxrun | 90 | MIT |
| mschmdb/wakemux | 100 | MIT |
| biliboss/skills | 96 | MIT |
Database snapshot: 13.11.2026 · package version 90f1851cb77e (SHA-256 digest of the entire package)
Downloads in the last 30 days: 0 · ranking
Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.
Similar skills
- 100codex-app-link
Create Codex threads and send messages into Codex desktop-app (GUI) threads, then wait for and read their replies, so Claude can orchestrate Codex agents. Use when the user asks to message, direct, steer, start, check on, or hand work to a Codex thread or agent (often given as a… - 100ask
Ask another agent: message any running Claude Code session or Codex thread, or hand work to a fresh Claude or Codex worker, in any direction (Claude to Claude, Claude to Codex, Codex to Claude, Codex to Codex), on this machine or another over ssh. Use when the user says… - 100codex-thread-reader
Locate and read a Codex thread by a codex thread link, thread id, or rollout path across all local CODEX_HOME directories (~/.codex, ~/.codex-gpt, ...). Use when the user pastes a codex:// link, asks to understand the 前因后果 of a Codex session, wants a timeline of what a… - 100codex-app-threads
Create, list, read, message, wait on, fork, rename, archive, and pin Codex threads (sidebar tasks), plus automations and app navigation, using the app-native codex_app tools. Use when the session uses a custom (non-OpenAI) model, for example deepseek-v4-flash or mimo-v2.5, and… - 100message-codex
Queue a message from Claude Code, another agent, or a script to an existing Codex session. Use when Claude needs to report back to Codex or the user asks to "send this to Codex", "tell another Codex session", "notify the Codex session", or "queue a message for Codex". Not for… - 100t3-side-chat
Read the user's T3 Code chats (projects, threads, transcripts) so a terminal agent can work as a side chat alongside a T3 Code agent. Use when the user mentions T3 / T3 Code, a T3 thread or project, a t3-thread:// link, or refers to "the other chat", "the agent in T3", or a…