PR #125 scopes bootstrap delivery to each canonical project within a ChatGPT conversation. That keeps the common workflow simple, but opening a different project in the same conversation can resend global context such as the global AGENTS.md, global skills, and global agent metadata. This is intentionally non-blocking for #125 and can be optimized later if real usage justifies it.
Keep the existing flat, model-facing open_workspace output schema. Internally, retain enough origin information to claim global bootstrap delivery once per conversation and project bootstrap delivery once per canonical project, then merge only the context due for delivery into the existing agentsFiles, skills, agents, and related arrays. The hidden workspace-card payload should continue receiving the complete effective context.
Acceptance criteria:
- The first project opened in a ChatGPT conversation receives global and project-specific bootstrap context.
- The first open of another project in that conversation receives only its project-specific bootstrap context.
- Repeated checkout or worktree opens continue omitting context already delivered.
- The model-facing schema remains flat; do not add
globalContext or projectContext keys.
- Existing precedence and collision behavior for global and project skills, agents, and instructions is preserved.
- Non-ChatGPT clients without conversation metadata retain the current behavior.
- Tests cover sequential projects, restart persistence, and concurrent first-open claims.
Related PR: #125
PR #125 scopes bootstrap delivery to each canonical project within a ChatGPT conversation. That keeps the common workflow simple, but opening a different project in the same conversation can resend global context such as the global
AGENTS.md, global skills, and global agent metadata. This is intentionally non-blocking for #125 and can be optimized later if real usage justifies it.Keep the existing flat, model-facing
open_workspaceoutput schema. Internally, retain enough origin information to claim global bootstrap delivery once per conversation and project bootstrap delivery once per canonical project, then merge only the context due for delivery into the existingagentsFiles,skills,agents, and related arrays. The hidden workspace-card payload should continue receiving the complete effective context.Acceptance criteria:
globalContextorprojectContextkeys.Related PR: #125