feat(gjc): add ACP provider catalog and lifecycle sessions - #3407
feat(gjc): add ACP provider catalog and lifecycle sessions#3407suho-han wants to merge 16 commits into
Conversation
|
| Filename | Overview |
|---|---|
| packages/server/src/server/agent/providers/acp-agent.ts | Adds generic lifecycle starter, tracker, and closer hooks while ensuring probe aborts can hand late session responses to cleanup. |
| packages/server/src/server/agent/providers/gjc-acp-agent.ts | Implements GJC lifecycle creation, ACP loading, cancellation cleanup, session closing, capability mapping, and lifecycle-mode filtering. |
| packages/server/src/server/agent/provider-registry.ts | Routes derived GJC providers to the dedicated GJC ACP adapter. |
| packages/app/src/provider-selection/provider-selection.ts | Includes thinking-option-qualified model identifiers and labels in provider search fields. |
| packages/app/src/data/acp-provider-catalog.ts | Adds Gajae Code catalog metadata and its ACP launch command. |
| packages/protocol/src/provider-icon-names.ts | Adds the GJC icon identifier to the shared provider icon-name contract. |
Sequence Diagram
sequenceDiagram
participant Paseo as Paseo ACP adapter
participant GJC as GJC lifecycle CLI
participant ACP as GJC ACP process
Paseo->>GJC: session.create
GJC-->>Paseo: lifecycle session ID
Paseo->>ACP: loadSession(session ID)
ACP-->>Paseo: session state
alt initialization or probe cleanup
Paseo->>GJC: session.close(session ID)
GJC-->>Paseo: close result
end
Reviews (13): Last reviewed commit: "Include launch env in ACP terminal deleg..." | Re-trigger Greptile
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: f89f2bc90c
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 047caa96d6
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
047caa9 to
89359ee
Compare
89359ee to
47ad860
Compare
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 47ad860fc5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 8e630a77d1
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: bd3dbb098a
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 6524452d78
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: aa7a879c28
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 66f375d5ec
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Want your agent to iterate on Greptile's feedback? Try greploops. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 574d815382
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
There was a problem hiding this comment.
💡 Codex Review
When GJC emits a current_mode_update for either filtered plan identifier, transformGjcModeId() returns null, and this assignment immediately clears currentMode and emits a mode_changed event with null. This contradicts initial-session handling, which maps the same lifecycle mode to default, and causes AgentManager to clear the agent's displayed and subsequently persisted mode. Ignore filtered updates or map them to the same default used by transformGjcSessionResponse().
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
What
Adds Gajae Code as an ACP-backed provider and teaches the GJC adapter how to create/load sessions through GJC's lifecycle API before attaching over ACP.
This PR also:
Why
GJC's plain ACP `session/new` path can exceed the generic readiness window or start without the runtime lifecycle state Paseo needs. Creating the GJC session with `gjc sdk session raw global --op session.create` gives the provider a longer readiness budget, then Paseo attaches to the returned session via ACP `loadSession`.
Existing issue / PR check
Validation
Before publishing:
After merging latest `origin/main` into the PR branch to resolve conflicts:
Known limitation: real prompt send smoke still failed with `SDK request outcome is uncertain after the frame was sent`, so this PR should be reviewed as catalog/startup/readiness work, not full message-send completion.