본문으로 건너뛰기

When Sessions Load Prompts

Installing or upgrading a kit changes files on disk. Whether a session sees the change depends on how it gets its instructions. There are two paths.

PathWhen it is readPicks up a kit update
Profile (system prompt)Once, when the session process startsOn the next isesh start after a stop
Prompt (skit prompt show <name>)Every time the AI runs the commandImmediately, on the next call

Profiles: read at session start​

isesh start <name> -p <profile> stores only the profile name in the session's config. Each time the session starts, isesh loads the profile file from ~/.ist/profiles/ (<profile>.md, or <profile>.json if there is no .md) and hands its body to the AI CLI as the system prompt:

  • Claude Code and Codex receive it when the CLI is launched (for Claude Code, as --system-prompt). {{SESSION_NAME}} in the profile is replaced with the session name.
  • Other CLIs have no such flag. When started with -d, isesh waits for the CLI to become ready and sends the profile as the first message.

The profile's tool permissions are applied at launch in the same way.

After that, the running process holds the system prompt it was started with. Editing or upgrading the profile file does not change a session that is already running.

To pick up a new profile:

isesh stop <name>
isesh start <name>

isesh start refuses to start a session that is still running, so stop it first. A restart begins a new conversation; earlier context in that session is not carried over.

Prompts: read on demand​

Prompts are not loaded at start. A profile tells the AI which prompts to read and when, for example:

Before starting any development work, run
skit prompt show conventions --profile tda-worker 2>/dev/null
|| skit prompt show conventions

skit prompt show reads the installed file every time it runs. So:

  • After skit install upgrades a kit, the next skit prompt show in any session returns the new content, including in sessions that are already running.
  • Content the AI already read earlier stays in its conversation as it was. A running session does not re-read a prompt on its own; it reads it again only when its instructions tell it to (or you ask it to).
  • A prompt the new kit version removed returns Prompt not found on the next call.

The same applies to slots like conventions: edit the file, and the next lookup sees it.

Putting it together​

When you upgrade a kit (or an IST release) while sessions are running:

What changedRunning sessionWhat to do
Prompt contentSees it on its next skit prompt showAsk the session to re-read the prompt if it matters now
Profile (system prompt, allowed tools)Keeps the old oneRestart the session: isesh stop, then isesh start
CLIs (isesh, itda, …)Each new command uses the new versionNothing, unless the running AI relies on options that changed
Your own slot filesSeen on the next lookupNothing

This split is deliberate. Keep the profile short and stable (role, rules, which prompts to read), and put detail that changes often in prompts. Then most kit updates reach running sessions without a restart.

Next​