|
874 | 874 | ] |
875 | 875 | }, |
876 | 876 | "name": { |
877 | | - "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nProgrammatic name of the tool being invoked.\n\nThis field is optional and has patch semantics. Omission means no\nchange, `null` clears the name, and a string replaces it. For a tool\ncall ID the client has not seen before, omission or `null` means that no\ntool name is available.", |
| 877 | + "description": "Programmatic name of the tool being invoked.\n\nThis field is optional and has patch semantics. Omission means no\nchange, `null` clears the name, and a string replaces it. For a tool\ncall ID the client has not seen before, omission or `null` means that no\ntool name is available.", |
878 | 878 | "type": [ |
879 | 879 | "string", |
880 | 880 | "null" |
|
5812 | 5812 | "x-method": "session/set_config_option" |
5813 | 5813 | }, |
5814 | 5814 | "PromptResponse": { |
5815 | | - "description": "Response acknowledging that a user prompt was accepted.\n\nThis response does not indicate that the agent has finished processing.\nProcessing and completion are reported through `state_update` session updates.\n\nSee protocol docs: [Prompt Accepted](https://agentclientprotocol.com/protocol/v2/draft/prompt-lifecycle#2-prompt-accepted)", |
| 5815 | + "description": "Response acknowledging that a user prompt was inserted into the ACP conversation.\n\nThis response does not indicate that the prompt was merely received or queued, nor that the\nagent has finished processing it.\nProcessing and completion are reported through `state_update` session updates.\n\nSee protocol docs: [Prompt Accepted](https://agentclientprotocol.com/protocol/v2/draft/prompt-lifecycle#2-prompt-accepted)", |
5816 | 5816 | "type": "object", |
5817 | 5817 | "properties": { |
| 5818 | + "messageId": { |
| 5819 | + "description": "Identifies the user message inserted into the ACP conversation.\n\nRequired and non-null. Omission and explicit `null` are both invalid.\n\nThe corresponding user-message session update carries this same identifier and may arrive\nbefore or after this response. Agents must echo the message during the live session, but are\nnot required to retain it. If retained and replayed, the message keeps this identifier.", |
| 5820 | + "allOf": [ |
| 5821 | + { |
| 5822 | + "$ref": "#/$defs/MessageId" |
| 5823 | + } |
| 5824 | + ] |
| 5825 | + }, |
5818 | 5826 | "_meta": { |
5819 | 5827 | "description": "The _meta property is reserved by ACP to allow clients and agents to attach additional\nmetadata to their interactions. Implementations MUST NOT make assumptions about values at\nthese keys.\n\nSee protocol docs: [Extensibility](https://agentclientprotocol.com/protocol/v2/draft/extensibility)", |
5820 | 5828 | "type": [ |
|
5825 | 5833 | "additionalProperties": true |
5826 | 5834 | } |
5827 | 5835 | }, |
| 5836 | + "required": [ |
| 5837 | + "messageId" |
| 5838 | + ], |
5828 | 5839 | "x-side": "agent", |
5829 | 5840 | "x-method": "session/prompt" |
5830 | 5841 | }, |
| 5842 | + "MessageId": { |
| 5843 | + "description": "Unique identifier for a message within a session.", |
| 5844 | + "type": "string" |
| 5845 | + }, |
5831 | 5846 | "StartNesResponse": { |
5832 | 5847 | "description": "Response to `nes/start`.", |
5833 | 5848 | "type": "object", |
|
6853 | 6868 | } |
6854 | 6869 | ] |
6855 | 6870 | }, |
| 6871 | + { |
| 6872 | + "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nAdvisory information for the user that is not part of session history.\n\nNo Client capability is required. Clients that do not understand or\npresent notices may ignore them.", |
| 6873 | + "type": "object", |
| 6874 | + "properties": { |
| 6875 | + "sessionUpdate": { |
| 6876 | + "type": "string", |
| 6877 | + "const": "notice" |
| 6878 | + } |
| 6879 | + }, |
| 6880 | + "required": [ |
| 6881 | + "sessionUpdate" |
| 6882 | + ], |
| 6883 | + "allOf": [ |
| 6884 | + { |
| 6885 | + "$ref": "#/$defs/Notice" |
| 6886 | + } |
| 6887 | + ] |
| 6888 | + }, |
6856 | 6889 | { |
6857 | 6890 | "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nA context compaction has been created or updated.", |
6858 | 6891 | "type": "object", |
|
7108 | 7141 | "sessionUpdate" |
7109 | 7142 | ] |
7110 | 7143 | }, |
| 7144 | + { |
| 7145 | + "type": "object", |
| 7146 | + "properties": { |
| 7147 | + "sessionUpdate": { |
| 7148 | + "type": "string", |
| 7149 | + "const": "notice" |
| 7150 | + } |
| 7151 | + }, |
| 7152 | + "required": [ |
| 7153 | + "sessionUpdate" |
| 7154 | + ] |
| 7155 | + }, |
7111 | 7156 | { |
7112 | 7157 | "type": "object", |
7113 | 7158 | "properties": { |
|
7138 | 7183 | } |
7139 | 7184 | ] |
7140 | 7185 | }, |
7141 | | - "MessageId": { |
7142 | | - "description": "Unique identifier for a message within a session.", |
7143 | | - "type": "string" |
7144 | | - }, |
7145 | 7186 | "ContentChunk": { |
7146 | 7187 | "description": "A streamed item of message content.", |
7147 | 7188 | "type": "object", |
|
8416 | 8457 | "size" |
8417 | 8458 | ] |
8418 | 8459 | }, |
| 8460 | + "NoticeSeverity": { |
| 8461 | + "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nSeverity hint for a session notice.", |
| 8462 | + "anyOf": [ |
| 8463 | + { |
| 8464 | + "description": "Informational notice.", |
| 8465 | + "type": "string", |
| 8466 | + "const": "info" |
| 8467 | + }, |
| 8468 | + { |
| 8469 | + "description": "Warning notice.", |
| 8470 | + "type": "string", |
| 8471 | + "const": "warning" |
| 8472 | + }, |
| 8473 | + { |
| 8474 | + "description": "Error notice.", |
| 8475 | + "type": "string", |
| 8476 | + "const": "error" |
| 8477 | + }, |
| 8478 | + { |
| 8479 | + "title": "other", |
| 8480 | + "description": "Custom or future notice severity.\n\nValues beginning with `_` are reserved for implementation-specific\nextensions. Other unknown values are reserved for future ACP severities.", |
| 8481 | + "type": "string" |
| 8482 | + } |
| 8483 | + ] |
| 8484 | + }, |
| 8485 | + "Notice": { |
| 8486 | + "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nFire-and-forget advisory information for the user.\n\nNotices are live events rather than session history. Agents must not rely on\na notice being received, displayed, or seen by the user.\nNo Client capability is required, and unsupported Clients may ignore notices.\n\nSee RFD: [Session Notices](https://agentclientprotocol.com/rfds/session-notices)", |
| 8487 | + "type": "object", |
| 8488 | + "properties": { |
| 8489 | + "severity": { |
| 8490 | + "description": "Presentation severity hint.", |
| 8491 | + "allOf": [ |
| 8492 | + { |
| 8493 | + "$ref": "#/$defs/NoticeSeverity" |
| 8494 | + } |
| 8495 | + ] |
| 8496 | + }, |
| 8497 | + "title": { |
| 8498 | + "description": "Required non-empty plain-text title that can stand alone.", |
| 8499 | + "type": "string", |
| 8500 | + "minLength": 1 |
| 8501 | + }, |
| 8502 | + "description": { |
| 8503 | + "description": "Optional plain-text detail or guidance.\n\nOmitted and `null` are equivalent and mean no description was supplied.", |
| 8504 | + "type": [ |
| 8505 | + "string", |
| 8506 | + "null" |
| 8507 | + ], |
| 8508 | + "x-deserialize-default-on-error": true |
| 8509 | + }, |
| 8510 | + "_meta": { |
| 8511 | + "description": "Metadata scoped to this notice.\n\nOmitted and `null` are equivalent and mean no metadata was supplied.", |
| 8512 | + "type": [ |
| 8513 | + "object", |
| 8514 | + "null" |
| 8515 | + ], |
| 8516 | + "x-deserialize-default-on-error": true, |
| 8517 | + "additionalProperties": true |
| 8518 | + } |
| 8519 | + }, |
| 8520 | + "required": [ |
| 8521 | + "severity", |
| 8522 | + "title" |
| 8523 | + ] |
| 8524 | + }, |
8419 | 8525 | "CompactionId": { |
8420 | 8526 | "description": "**UNSTABLE**\n\nThis capability is not part of the spec yet, and may be removed or changed at any point.\n\nUnique identifier for a context compaction within a session.", |
8421 | 8527 | "type": "string" |
|
8727 | 8833 | }, |
8728 | 8834 | { |
8729 | 8835 | "title": "ResumeSessionRequest", |
8730 | | - "description": "Resumes an existing session.\n\nThe agent should resume the session context, allowing the conversation\nto continue. If `replayFrom` is set, the agent should replay\nconversation history before responding.", |
| 8836 | + "description": "Resumes an existing session.\n\nThe agent should resume the session context, allowing the conversation\nto continue. If `replayFrom` is set, the agent should replay\nretained conversation history before responding.", |
8731 | 8837 | "allOf": [ |
8732 | 8838 | { |
8733 | 8839 | "$ref": "#/$defs/ResumeSessionRequest" |
|
8754 | 8860 | }, |
8755 | 8861 | { |
8756 | 8862 | "title": "PromptRequest", |
8757 | | - "description": "Processes a user prompt within a session.\n\nThis request accepts the prompt:\n- Receives user messages with optional context (files, images, etc.)\n- Returns once the prompt is accepted\n\nAfter acceptance, the Agent reports the accepted user message,\nprocessing state, output, tool calls, and completion through\n`session/update` notifications.\n\nSee protocol docs: [Prompt Lifecycle](https://agentclientprotocol.com/protocol/v2/draft/prompt-lifecycle)", |
| 8863 | + "description": "Processes a user prompt within a session.\n\nAcceptance means insertion into the ACP conversation:\n- Receives user messages with optional context (files, images, etc.)\n- Returns the inserted user message's ID without waiting for processing to finish\n\nThe Agent reports the user message with the same ID through `session/update`;\nthis notification may arrive before or after the response. Processing state,\noutput, tool calls, and completion are also reported through session updates.\n\nSee protocol docs: [Prompt Lifecycle](https://agentclientprotocol.com/protocol/v2/draft/prompt-lifecycle)", |
8758 | 8864 | "allOf": [ |
8759 | 8865 | { |
8760 | 8866 | "$ref": "#/$defs/PromptRequest" |
|
9695 | 9801 | "x-method": "session/fork" |
9696 | 9802 | }, |
9697 | 9803 | "ResumeSessionRequest": { |
9698 | | - "description": "Request parameters for resuming an existing session.\n\nResumes an existing session and optionally replays prior conversation\nhistory according to `replayFrom`.", |
| 9804 | + "description": "Request parameters for resuming an existing session.\n\nResumes an existing session and optionally replays retained conversation\nhistory according to `replayFrom`.", |
9699 | 9805 | "type": "object", |
9700 | 9806 | "properties": { |
9701 | 9807 | "sessionId": { |
|
9733 | 9839 | "x-deserialize-skip-invalid-items": true |
9734 | 9840 | }, |
9735 | 9841 | "replayFrom": { |
9736 | | - "description": "Inclusive cursor describing where conversation replay should begin.\n\nOptional. Omitted or `null` both mean the Agent should resume without\nreplaying previous conversation history. Replay cursors are inclusive:\nreplay includes the position identified by the cursor. Supplying\n`{ \"type\": \"start\" }` means the Agent should replay the whole\nconversation before responding.", |
| 9842 | + "description": "Inclusive cursor describing where conversation replay should begin.\n\nOptional. Omitted or `null` both mean the Agent should resume without\nreplaying previous conversation history. Replay cursors are inclusive:\nreplay includes the position identified by the cursor. Supplying\n`{ \"type\": \"start\" }` means the Agent should replay all retained\nconversation history before responding.", |
9737 | 9843 | "anyOf": [ |
9738 | 9844 | { |
9739 | 9845 | "$ref": "#/$defs/ReplayFrom" |
|
9765 | 9871 | "description": "Inclusive cursor describing where replayed session history should begin.\n\nReplay includes the position identified by the cursor.", |
9766 | 9872 | "anyOf": [ |
9767 | 9873 | { |
9768 | | - "description": "Replay the whole conversation from its first replayable entry.", |
| 9874 | + "description": "Replay all retained conversation history from its first replayable entry.", |
9769 | 9875 | "type": "object", |
9770 | 9876 | "properties": { |
9771 | 9877 | "type": { |
|
9825 | 9931 | ] |
9826 | 9932 | }, |
9827 | 9933 | "ReplayFromStart": { |
9828 | | - "description": "Inclusive replay cursor requesting replay from the start of the conversation.", |
| 9934 | + "description": "Inclusive replay cursor requesting replay from the start of retained conversation history.", |
9829 | 9935 | "type": "object", |
9830 | 9936 | "properties": { |
9831 | 9937 | "_meta": { |
|
0 commit comments